Pre začiatočníkov: arduino projekty

Sekcia určená pre Arduino nadšencov

Moderátor: Moderátori

Používateľov profilový obrázok
Gavin Milarrr
Ultimate člen
Ultimate člen
Príspevky: 2533
Dátum registrácie: 06 Okt 2008, 00:00
Bydlisko: Liberec
Vek: 47

Re: arduino projekty

Príspevok od používateľa Gavin Milarrr » 13 Máj 2017, 12:08

Raspberry je ARM mikropočítač. Pokud chceš, bude fungovat jako trochu pomalejší PC c Linuxem (zjednodušeně řečeno). Pokud chceš, bude z něj normální průmyslová řídící jednotka.

Co se týče programování, dá se říct, že cokoli umí komunikovat s GPIO lze použít. Já například pro připojovaná zařízení píšu moduly do jádra, není to nic složitého. Jediné úskalí je v obtížnosti synchronního zpracování dat -- jedna akce trvá pokaždé jinou dobu. Ale hlavně, máš zařízení, na které nainstaluješ normální operační systém, se kterým můžeš komunikovat třeba přes SSH nebo si k němu připojit normální monitor a klávesnici, a zároveň máš cca 22 jednobitových portů libovolně nastavitelných. Arduino je spíš jednočipák bez terminálu.
0
Taky vás štve debilita a sopláctví? Na http://efis.tul.cz/forum běží experimentální odblbené fórum.

martin knocik
Ultimate člen
Ultimate člen
Príspevky: 1639
Dátum registrácie: 23 Jan 2008, 00:00
Bydlisko: Trenčianska Turná
Vek: 33
Kontaktovať používateľa:

Re: arduino projekty

Príspevok od používateľa martin knocik » 13 Máj 2017, 12:53

gavinn, nevieš povedať aka je momentálne situacia ohladom prevádzky nejakého RTOS na Rasberry ? Čo som čítal na webe tak udajne existuje nejaký základný port FreeRTOS.

Pod RTOS si minimálne predstavujem systém kde sú ulohy zoradene podla priority (aspon 2 - 3 úrovne) a v prípdade nedostatku výkonu spúšťané podla priority. Úlohy sú vykonávané v nejakom definovatelnom časovom limite.

tažko stavať riadiacu jednotku s obyčajným linuxom ked ssh alebo iný systémový/hardvérový proces zaťaží ARM procák a pridá napríklad 10ms oneskorenie nejakej úlohy riadiacej jednotky.
0
http://mkbci.com

FEL UNIZA 2015, Ing.

ľudstvo je vírus ktorý napadol Zem

nerobme si ťažkú hlavu z debilov čo nám ani po členky nesiahajú, buďme radi že my dačo dokážeme a smejme sa im akí sú sprostí

Používateľov profilový obrázok
lucky62
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1151
Dátum registrácie: 14 Feb 2012, 20:16
Bydlisko: Liptovský Mikuláš, SK

Re: arduino projekty

Príspevok od používateľa lucky62 » 13 Máj 2017, 16:57

E001 napísal:Tak trocha zneužijem túto tému. Už dva dni vlastním ten malý zázrak, zvaný Arduino ... Plánujem ho využiť na Up - Down počítadlo impulzov s ôsmimi sedemsegmentovkami cez MAX 7219. Tak som na začiatok chcel vyskúšať jednoduchý demo program, ktorý by na displeji vypísal arduino. No nevypísal...
Aby sme mohli trochu pomôcť, môžeš sem dať schému a program? Aké máš arduino? UNO, Nano, Mega?
0
....môj bazar....

...Nikdy sa nehádaj s blbcom...

Používateľov profilový obrázok
E001
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1213
Dátum registrácie: 18 Nov 2012, 19:05
Vek: 66

Re: arduino projekty

Príspevok od používateľa E001 » 13 Máj 2017, 19:34

Tak od číňana som kúpil DCcELe DDcdruimo uno , displej 8x7segmentovky s MAX7219.
Program používam Arduino 1.8.2. Vyskúšať som chcel na začiatok toto:


// Program: Display 7 segments - 8 digit MAX7219
// Load the LedControl library
#include "LedControl.h"

// Definitions pins and number of modules in the circuit
LedControl lc = LedControl ( 7 , 6 , 5 , 1 );

void setup ()
{
// Initialize the module
lc.shutdown ( 0 , false);
// display brightness adjustment
lc.setIntensity ( 0 , 3 );
// Delete the display
lc.clearDisplay ( 0 );
}

void loop ()
{
// Send Arduino for display
writeArduinoOn7Segment ();
// Countdown
countdown();

// Init counter 0 1 million
for ( long i = 0 ; i < 1000000 ; i ++)
{
printNumber (i);
}
delay ( 500 );
}
void printNumber ( long v)
{
// Variable value digit
int digito1;
int digito2;
int digito3;
int digito4;
int digito5;
int digito6;
int digito7;
int digito8;

// Calculate the value of each digit
digito1 v =% 10 ;
digito2 = (V / 10 )% 10 ;
digito3 = (V / 100 )% 10 ;
digito4 = (V / 1000 )% 10 ;
digito5 = (V / 10000 )% 10 ;
digito6 = (v / 100000 )% 10 ;
digito7 = (v / 1000000 )% 10 ;
digito8 = (v / 10000000 )% 10 ;

// Display the value of each digit in the display
lc.setDigit ( 0 , 7 , (byte) digito8, false);
lc.setDigit ( 0 , 6 , (byte) digito7, false);
lc.setDigit ( 0 , 5 , (byte) digito6, false);
lc.setDigit ( 0 , 4 , (byte) digito5, false);
lc.setDigit ( 0 , 3 , (byte) digito4, false);
lc.setDigit ( 0 , 2 , (byte) digito3, false);
lc.setDigit ( 0 , 1 , (byte) digito2, false);
lc.setDigit ( 0 , 0 , (byte) digito1, false);
delay ( 00 );
}

void writeArduinoOn7Segment ()
{
// Arduino on the display
for ( int i = 0 ; i < 21 ; i ++)
{
lc.setChar ( 0 , i, 'a' , false);
lc.setRow ( 0 , i 1 , 0x05 );
lc.setChar ( 0 , i- 2 , 'd' , false);
lc.setRow ( 0 , i- 3 , 0x1c );
lc.setRow ( 0 , i- 4 , B00010000);
lc.setRow ( 0 , i 5 , 0x15 );
lc.setRow ( 0 , i- 6 , 0x1D );
lc.setChar ( 0 , i- 7 , '' , false);
lc.setChar ( 0 , i- 8 , 'and' , false);
lc.setChar ( 0 , i- 9 , '' , false);
lc.setRow ( 0 , i- 10 , B1001110);
lc.setRow ( 0 , i- 11 , B0010000);
lc.setChar ( 0 , i- 12 , 'a' , false);
lc.setChar ( 0 , i- 13 , '' , false);
delay ( 300 );
}
0

Používateľov profilový obrázok
misocko
Ultimate člen
Ultimate člen
Príspevky: 4319
Dátum registrácie: 14 Jún 2009, 00:00
Vek: 47

Re: arduino projekty

Príspevok od používateľa misocko » 13 Máj 2017, 19:52

a co to robi / nrobi
kompilacia a napalenie programu OK?
0

Používateľov profilový obrázok
E001
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1213
Dátum registrácie: 18 Nov 2012, 19:05
Vek: 66

Re: arduino projekty

Príspevok od používateľa E001 » 13 Máj 2017, 20:03

Pri verifikácii napíše Exit status 1. Nastala chyba pri kompilácii pre dosku Arduino/Genuino uno.
0

Používateľov profilový obrázok
misocko
Ultimate člen
Ultimate člen
Príspevky: 4319
Dátum registrácie: 14 Jún 2009, 00:00
Vek: 47

Re: arduino projekty

Príspevok od používateľa misocko » 13 Máj 2017, 20:17

nemas kniznicu "LedControl.h" v PC

-- Spojený príspevok 13 Máj 2017, 20:02 --

ten kod co si dal nefunguje, aj po natiahnuti kniznice ma v sebe vela chyb
vobec nepozna funckciu Countodwn, v kode sa nachadza velke "V" na mieste kde ma byt male, niekde chyba zatvorka, a dva minusy v "i - 1" a "i - 5"
odporucam pohladat nieco funkcne
0

Používateľov profilový obrázok
E001
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1213
Dátum registrácie: 18 Nov 2012, 19:05
Vek: 66

Re: arduino projekty

Príspevok od používateľa E001 » 13 Máj 2017, 21:09

Ďakujem.
0

Používateľov profilový obrázok
lucky62
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1151
Dátum registrácie: 14 Feb 2012, 20:16
Bydlisko: Liptovský Mikuláš, SK

Re: arduino projekty

Príspevok od používateľa lucky62 » 13 Máj 2017, 21:24

Inak Arduino IDE by malo zobraziť okrem tejto všeobecnej hlášky aj nejakú konkrétnejšiu a riadok, na ktorom je chyba, by mal byť farebne zvýraznený. Viď príklad...

Ja mám Arduino IDE nastavenú tmavú tému, ale je to vidieť - chybný riadok je tmavočervený.

EDIT: Konkrétne pre chýbajúcu knižnicu to napíše niečo takéto:
/SHARED/SSD_DATA/00_MyProjects/ArduinoProjects/empty/empty.ino:1:22: fatal error: hovadina.h: No such file or directory
#include <hovadina.h>
^
compilation terminated.
exit status 1
Prílohy
ArduinoIDE_Chyba.png
0
....môj bazar....

...Nikdy sa nehádaj s blbcom...

Používateľov profilový obrázok
E001
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1213
Dátum registrácie: 18 Nov 2012, 19:05
Vek: 66

Re: arduino projekty

Príspevok od používateľa E001 » 13 Máj 2017, 22:51

:applause: Tak som ho rozchodil :applause: Knižnicu na Max som nainštaloval, našiel som aj iný demo program, ktorý je chodivý.
Sa teším, ako keď vnuk spravil prvý krôčik.
0

Používateľov profilový obrázok
zen
Stály člen
Stály člen
Príspevky: 484
Dátum registrácie: 22 Nov 2013, 14:33
Bydlisko: Cadca

Re: arduino projekty

Príspevok od používateľa zen » 13 Máj 2017, 23:27

Gavin Milarrr napísal:Nechci vám brát elán, ale Arduino mě přijde spíš jako marketingový projekt než seriozní platforma. Doporučuji Raspberry Pi.
Ja mam oboje.

Arduino bohate postaci na meranie teploty, kupis za babku v Cine, strcis do USB a bezi.

RPI pozivam s kamerou (doporucujem, za tu cenu som velmi spokojny s kvalitou). Uz mi znicil 3 SD cards ked vypadla elektrina, konfigurace mi vezme cele odpoledne.

Pripomina mi to: co je lepsie, kladivo alebo sroubovak?
0
Samozřejmě, že dědeček nemá kapesní hodinky poháněné elektřinou. Takový nesmysl si může vymyslit jen Saturnin. (Zdenek Jirotka, 1942)

sf777
Nový člen
Nový člen
Príspevky: 83
Dátum registrácie: 01 Nov 2017, 10:20
Bydlisko: Vranov nad Topľou

Re: arduino projekty

Príspevok od používateľa sf777 » 03 Nov 2017, 17:15

Nasiel som simulator arduina ak by niekto chcel na vyskusanie. TU.
0

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: arduino projekty

Príspevok od používateľa alidedko » 03 Nov 2017, 19:03

Iniciativa zatial fajn.

Uz si nieco kupil?
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

sf777
Nový člen
Nový člen
Príspevky: 83
Dátum registrácie: 01 Nov 2017, 10:20
Bydlisko: Vranov nad Topľou

Re: arduino projekty

Príspevok od používateľa sf777 » 03 Nov 2017, 19:19

Iniciative sa medze nekladu. :mrgreen:
Este bohuzial nie. Na bazosi uz to stiahli a inde su dost slahnute ceny za kit. Ak mas typa posli.
0

sf777
Nový člen
Nový člen
Príspevky: 83
Dátum registrácie: 01 Nov 2017, 10:20
Bydlisko: Vranov nad Topľou

Re: arduino projekty

Príspevok od používateľa sf777 » 03 Nov 2017, 20:19

Tak som si na tom simulatore urobil hada z 8 lediek, ale zacal som s blikacom o jednej ledke :)
tu je program. Urcite sa to daj nejako zjednodusit ale na zciatok celkom ok si myslim.

Kód: Vybrať všetko

void setup() {
	pinMode(01, OUTPUT);	//nastav pin 01 ako vystup
	pinMode(02, OUTPUT); 
	pinMode(03, OUTPUT);
	pinMode(04, OUTPUT);
	pinMode(05, OUTPUT);
	pinMode(06, OUTPUT);
	pinMode(07, OUTPUT);
	pinMode(13, OUTPUT);
	
}

void loop() {
	digitalWrite(01, HIGH);	//na pin 01 pust prud
	delay(50);			//pockaj 50 ms 
	digitalWrite(01,LOW);	//na pin 01 vypni prud
	delay(50);			//pockaj 50 ms 
	
	digitalWrite(02, HIGH); 
	delay(50); 
	digitalWrite(02,LOW); 
	delay(50);
	
	digitalWrite(03, HIGH); 
	delay(50); 
	digitalWrite(03,LOW); 
	delay(50);
	
	digitalWrite(04, HIGH); 
	delay(50);
	digitalWrite(04,LOW); 
	delay(50);
	
	digitalWrite(05, HIGH); 
	delay(50); 
	digitalWrite(05,LOW); 
	delay(50);
	
	digitalWrite(06, HIGH); 
	delay(50); 
	digitalWrite(06,LOW); 
	delay(50);
	
	digitalWrite(07, HIGH); 
	delay(50); 
	digitalWrite(07,LOW); 
	delay(50);
	
	digitalWrite(13, HIGH); 
	delay(50); 
	digitalWrite(13, LOW); 
	delay(50);
	
}
V prilohe je subor txt. Je konfiguracia komponentov v simulatore (aspon tak som to pochopil). Prejdi v programe simulatora do Configure / I/O Devices / Load
Daj nacitat a mas to. Program len skopiruj.
Prílohy
led had 8 lediek.txt
(385 Bajtov) 82 stiahnutí
0

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 2567
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 27

Re: arduino projekty

Príspevok od používateľa maskrtnik01 » 03 Nov 2017, 20:43

Pre začiatok, ten loop by sa dal podstatne skrátiť použitím cykla for. Indexy pinov, kde sú LEDky by som si nasypal do poľa.
0

sf777
Nový člen
Nový člen
Príspevky: 83
Dátum registrácie: 01 Nov 2017, 10:20
Bydlisko: Vranov nad Topľou

Re: arduino projekty

Príspevok od používateľa sf777 » 03 Nov 2017, 21:25

Takze som to trocha upravil. Najprv to musim pochopit polopatisticky a potom budem zjednodusovat. Ale dik za radu.

Kód: Vybrať všetko

byte led[] = {1,2,3,4,5,6,7,13}; 	//vystupy s LED diodami
byte pocet = 8; 						//pocet diod
int rychlost = 50; 					//prestavka medzi bliknutiami

void setup() {
	for(int i = 0; i < pocet; i++){
		pinMode(led[i], OUTPUT); 		//nastavenie pinu
	}
}

void loop() {
	for(int i = 0; i < pocet; i++){
		digitalWrite(led[i], HIGH);
		delay(rychlost/1);
		digitalWrite(led[i], LOW);
		delay(rychlost/1);
	}
}
Vedeli by ste mi povedat ako by sa to riesilo keby som chcel zapojit hada trebars z 15 alebo 20 led?
thx
0

Používateľov profilový obrázok
roboulbricht
Stály člen
Stály člen
Príspevky: 156
Dátum registrácie: 07 Jan 2015, 12:01
Bydlisko: Banská Bystrica
Vek: 54
Kontaktovať používateľa:

Re: arduino projekty

Príspevok od používateľa roboulbricht » 04 Nov 2017, 06:25

Pokiaľ ti stačia piny na Arduine, tak zapájaš podľa tvojho príkladu. 15 sa ti ešte dá použiť, lebo môžeš použiť aj piny na Arduine, ktoré sú označená ako A0-A5. Vyskúšaj, či mu to bude fungovať aj v simulátore.

20 už takto nezapojíš, lebo na Arduino Uno (ATmega328P) máš len 13+6 pinov. Tam musíš použiť napríklad posuvný register.

https://www.arduinoslovakia.eu/page/74h ... y-register
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: arduino projekty

Príspevok od používateľa peterple » 04 Nov 2017, 11:13

Aby si mal nad čím rozmýšľať. Viem že arduinisti hw nemusia a tak končia pri knižničných funkciách, ale..

Kód: Vybrať všetko

#include <avr/io.h>
#define RYCHLOST 50

void setup() {
   DDRD = 0xFF;  //cely port D nastav na vystup
}

void loop() {
   for(char i =8, out=1; i; i--, out<=1){ //8 krat rotuj out dolava
      PORTD = out; //zmen stav led na porte D podla out
      delay(RYCHLOST);
   }
}
alebo

Kód: Vybrať všetko

#include <avr/io.h>
#define RYCHLOST 50
void setup() {
   DDRD = 0xFF;
}

char out=0x80;
void loop() {
      if (!out){ //ak out==0 nastav vychodziu hodnotu
        out=0x80;
      }
      PORTD = out;
      delay(RYCHLOST);
      out>=1; //rotuj doprava
}

Čo sa týka pripojenia LED, tak sa síce zdá že na 20 LED to s arduinom uno už nepôjde, ale potom tu máme zase "hardveristov" a tak spravia 90 LED s desiatimi pinmi
https://en.wikipedia.org/wiki/Charlieplexing
0
Naposledy upravil/-a peterple v 06 Nov 2017, 18:38, upravené celkom 2 krát.
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

sf777
Nový člen
Nový člen
Príspevky: 83
Dátum registrácie: 01 Nov 2017, 10:20
Bydlisko: Vranov nad Topľou

Re: arduino projekty

Príspevok od používateľa sf777 » 04 Nov 2017, 11:22

Vyskúšaj, či mu to bude fungovať aj v simulátore.
Ano funguje. Jedno co mi nefunguje je pin "00" . Mam na nom vystup hned po zapnuti arduina. On sice spina ked ho zadefinujem, ale v pohotovostnom rezime arduina ma tam vystup cize "1" (led svieti)

Ten posuvny register je celkom fajn. Jednoduche take polopatisticke asi tomu aj principialne rozumiem.
0

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok