Croduino (Arduino) lekcije

poruka: 40
|
čitano: 28.928
|
moderatori: DrNasty, pirat, XXX-Man, Lazarus Long, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Pozdrav svima, 

 

vjerujem da ima mnogih koji žele naučiti nešto o elektronici, shemama, komponentama, mikrokontrolerima itd., ali sav sadržaj dostupan je na engleskom. Elektroniku sam povezao s Croduinom(Arduinom) koji je po meni super-pogodan za početak i započeo s video-lekcijama o svemu tome. Pričat ću o Croduinu(Arduinu), njeogovom hardwareu i softwareu, osnovama elektronike kao što su upozavanje s osnovnim komponentama, čitanje el. shema, prototipiranje i slično, C programskom jeziku... Cilj svega ovoga je probuditi zainteresiranost za ovaj hobi i na kraju omogućiti svakome da nauči ili napravi nešto što je oduvijek želio. Nove epizode ponedjeljkom koliko stignem :)

 

Lekcija 1: Uvod

Saznajemo što je Croduino i Arduino, upoznajemo njegove dijelove, pokazujemo kako ga spojiti i podesiti s računalom i pišemo naš prvi C program za bljeskanje LEDice. 

Vimeo

 

Lekcija 2: Sve digitalno

u drugoj lekciji se na početku detaljno upoznajemo s eksperimenalnom pločicom koju ćemo koristiti od ove lekcije nadalje, ugurubo saznajemo što je to otpornik, LEDica, pushbutton i pull-up otpornik, upozajemo s digitalnim principom te digitalnim ulazima i izlazima na Croduino te učimo if / else funkciju u Arduino softwareu.

Vimeo

 

Lekcija 3: Sve analogno

U trećoj lekciji se upoznajemo s malo kompliciranijim analognim protokolom, proučavamo analogne izlaze te opciju PWM, učimo što sve možemo napraviti s analognim senzorima, upozajemo se s foto-otponikom te učimo funkcije analogRead, analogWrite i map.

Lekcija 4: Osnovni el. pojmovi
U četvrtoj po redu lekciji, upoznajemo se s nekim osnovnijim pravilima, zakonima i praksama koje se koriste te ih prikazujemo na primjerima, kao što su Ohmov zakon, pull-up i pull-down otpornici, potenciometrom te regulatorom napona.

 

Lekcija 5: Serijska komunikacija

U petoj lekciji učimo o serijskoj komunikaciji. Što je to ona, kako radi i kako ju mi možemo iskoristiti da bi nam pomogla u riješavanju problema s projektima. Učimo i par novih funkcija u Arduino softwareu.

Vimeo

 

Lekcija 6: DHT11 senzor temperature i vlage

Bavimo se DHT11 senzorom temperature i vlage, učimo što je library, kako ga instalirati i koristiti te, naravno, još neke funkcije u Arduino softwareu. 

Vimeo

 

Lekcija 7: Croduino logika i još programiranja

U sedmoj lekciji pričamo s metodama uspoređivanja varijabla, učimo logiku na kojoj radi Croduino, brojne metode skraćivanja zapisa pri pisanju koda te funkciju "random".

Vimeo

 

Lekcija 8: Tranzistori

Bavimo se NPN i MOSFET tranzistorima, učimo još neke osnove elektronike te funkciju for.

Vimeo

 

Lekcija 9: LEDice
LEDice, njihove osobine, načini spajanja, RGB LEDica.

Vimeo

 

 

Lekcija 10: Serijska komunikacija 2

U ovoj lekciji učimo se koristiti array-ovima i još poneke stvari vezi serijske komunikacije.

Vimeo

 

Lekcija 11: SPI komunikacija

SPI komunikaciji, načini spajanja + primjer korištenja.

Vimeo

 

Lekcija 12: I2C komunikacija

Kako funkcionira I2C komunikacija, primjeri korištenja na LCD, primjer implementacije s Croduinom. 

 

Lekcija 13: Često postavljana pitanja

U 13.-oj lekciji odgovaramo na Vaša najčešće postavljana pitanja. Popis pitanja na YT. 

 

Nadam se da će biti zainteresiranih. Ako imate nekakva pitanja u vezi lekcija ili neko konkretno u vezi Arduina, slobodno ga postavite ispod :)

 

Poruka je uređivana zadnji put uto 11.4.2017 19:38 (Dava).
Moj PC  
30 0 hvala 23
12 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije

Svaka čast. nadam se ad ce biti nesto u vezi pic programiranja

NA OVOM FORUMU SVAKI PUT KAD OTVORIM NOVU TEMU ILI NESTO PITAM MORAM DVA PUTA PITATI TJ PONOVITI DA BI MI NETKO ODGOVORIO...PA PITAM SE PITAM ZAŠTO :/
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Druga lekcija izašla!

Moj PC  
4 1 hvala 6
13 godina
offline
Croduino (Arduino) lekcije

Odlicno ti je ovo, samo nastavi.

 

Samo si mogao malo bolje objasnit ovaj uvjet za IF, tj. dva znaka jednakosti (==).

Jedan znak jednakosti pridodaje vrijednost varijabli( var = 5 ), dok dva znaka jednakosti provjeravaju jeli varijabla jednaka necemu ( if( var == 5 ) )

 

Music is our life-So live oure life
Moj PC  
0 0 hvala 1
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Treća lekcija je tu!

Moj PC  
2 0 hvala 4
14 godina
offline
Croduino (Arduino) lekcije

Ovako,

trenutno imam slozen sustav za grijanje tople vode solarnim kolektorima koji sam slozio arduino unom, sad je problem da danima kad nema sunca temperatura vode u boileru(posebni boiler je za solarni sistem, a posebni za plinsko grijanje-1 boiler 120L koji koristi kao spremnik i 1 protocni boiler koji grije vodu) je preniska(oko 30stupnjeva) i sad planiram sustav prosiriti tako da bi pumpa prepumpavala boilera za solarno u 120L i onda kolektori dogriju do tih 120L koje su dosle hladne iz 120L boilera i jos onda plinski zgrije tih 120L na 45 stupnjeva i to se koristi dok temperatura ne padne i sve bi bilo super da meni ne fali digitalnih ulaza/izlaza.

E, sad pitanje:

Ima li neke bitne razlike izmedu Arduino Mega i Funduino Mega?

(na kvalitetu  i trajnost mislim)

 

EDIT: Ne treba mi vise odgovor, narucio sam originala.

:D
Poruka je uređivana zadnji put sub 31.8.2013 13:28 (CroNk3r).
Moj PC  
0 1 hvala 0
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Svejedno, ako mene pitaš. Sumnjam da ćeš primjetiti neke razlike u kvaliteti/trajnosti.

 

 

btw. četvrta lekcija je izašla!

Moj PC  
1 0 hvala 3
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Lekcija o serijskoj komunikaciji je spremna!

Moj PC  
1 0 hvala 3
10 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije

da li si mislio i dalje snimat lekcije, posto me pravo zanima ovo

:D

 

14 godina
offline
Re: Croduino (Arduino) lekcije
IKON kaže...

da li si mislio i dalje snimat lekcije, posto me pravo zanima ovo

:D

 

Pise ti Nove epizode ponedjeljkom, ja cu poceti pratiti kad dodu neki malo kompliciraniji tutoriali.

 

EDIT: vidim da na lekciji 3 nisi napravio 1 stvarcicu s kojom sam ja imao probleme:

 

Kad sam izradivao elektroniku za solarne panele imao sam problem(a i pridonosi preciznosti mjerenog rezultata) da su se senzori "gubili"(znalo se dogoditi da tu i tamo zbog smetnja neka vrijednost skoci za +-10), a to se rjesava tako da napravis 1 varijablu u koju pomocu for petlje pribrojis analog read 1000 puta i onda nakon petlje podijelis tu varijablu sa 1000 da bi dobio rezultat

NAPOMENA: prije petlje u kojoj zbraja uzorke treba varijablu resetirati na 0.

:D
Poruka je uređivana zadnji put čet 12.9.2013 21:06 (CroNk3r).
10 godina
neaktivan
offline
Croduino (Arduino) lekcije

da li je bolje poceti sa arduino leonardo plocom ili uno r3, ustvari reci mi i kako cu razlikovat ploce, koja je dobra koja nije, posto sam pocetnik

 
0 0 hvala 0
12 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije
CroNk3r kaže...
IKON kaže...

da li si mislio i dalje snimat lekcije, posto me pravo zanima ovo

:D

 

Kad sam izradivao elektroniku za solarne panele imao sam problem(a i pridonosi preciznosti mjerenog rezultata) da su se senzori "gubili"(znalo se dogoditi da tu i tamo zbog smetnja neka vrijednost skoci za +-10), a to se rjesava tako da napravis 1 varijablu u koju pomocu for petlje pribrojis analog read 1000 puta i onda nakon petlje podijelis tu varijablu sa 1000 da bi dobio rezultat

NAPOMENA: prije petlje u kojoj zbraja uzorke treba varijablu resetirati na 0.

 

Ja sam za svoj MIDI kontroler koristio ovaj algoritam koji radi savršeno:

 

 

#define ANALOGUE_VALUE_CHANGE_TIMEOUT 250000

#define FILTER_AMOUNT 16

...

...

 

void OpenDeck::readPotentiometers() {

 

   //get potentiometer readings from 4051 multiplexers

   //parts of code taken from here: http://www.instructables.com/id/Arcade-Button-MIDI-Controller/step7/Programming/

 

   //main loop checks 4 analogue inputs from 4 4051 analogue multiplexers

   for (int i=0; i<NUMBER_OF_MUX; i++)   {

 

       int potNumber = (i*8) + column;

 

       //read analogue value from mux

       int tempValue = analogRead(analogueInputArray[i]);

 

       //calculate difference between current and previous reading

       int analogueDiff = abs(tempValue - lastAnalogueValue[potNumber]);

 

         //only continue if the threshold was exceeded, or the input was already changing

         if (analogueDiff >= FILTER_AMOUNT || (analogueValueChanging[potNumber] == true && analogueDiff > 0))   {

 

   //input change detected

   //only restart the timer if we're sure the input isn't 'between' a value

   //ie. it's moved more than FILTER_AMOUNT

 

           if ((analogueValueChanging[potNumber] == false) || (analogueDiff >= FILTER_AMOUNT))  {

 

             //reset the last time the input was moved

             analogueValueTimer[potNumber] = micros();

             //the analogue input is moving

             analogueValueChanging[potNumber] = true;

 

   }

 

             else if ((micros() - analogueValueTimer[potNumber]) > ANALOGUE_VALUE_CHANGE_TIMEOUT)

 

                 analogueValueChanging[potNumber] = false;

 

 

               //only send data if we know the analogue input is moving

               if (analogueValueChanging[potNumber] == true)  {

 

           sendPotentiometerData(tempValue, potNumber);

       }

     }

   }

}

Poruka je uređivana zadnji put pet 13.9.2013 11:11 (paradajz).
12 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije
IKON kaže...

da li je bolje poceti sa arduino leonardo plocom ili uno r3, ustvari reci mi i kako cu razlikovat ploce, koja je dobra koja nije, posto sam pocetnik

 

Skroz ti je svejedno ako si početnik.

14 godina
offline
Re: Croduino (Arduino) lekcije
IKON kaže...

da li je bolje poceti sa arduino leonardo plocom ili uno r3, ustvari reci mi i kako cu razlikovat ploce, koja je dobra koja nije, posto sam pocetnik

Bas ti je svejedno, mozes ti i s arduino megom poceti, jedina razlika ti je u broju ulaza/izlaza i memoriji.

:D
13 godina
neaktivan
offline
Croduino (Arduino) lekcije

Za početak svaka čast na lekcijama, na ideji, volji i trudu!

 

Imam pitanje, ne tiče se lekcija, nego općenito Arduina..

 

Imam Uno i Mega, na Mega imam spojene senzore temperature, tlaka, vlage i program koji očitava senzore, radi log... Želio bih koristiti Uno za neku drugu funkciju i potrebni su mi na njemu podaci sa tih senzora koji su spojeni na Mega. Na koji način da dobim te podatke na Uno? Probao sam jednostavno spojiti senzore na Uno i Mega istovremeno, ali nisu mi sva očitanja točna onda, nekad zna čudne rezultate očitavat. Čitao sam nešto o komunikaciji preko SDA i SCL portova, ali nije mi uspjelo to. Znači trebam poslati 6 varijabli z Mega na Uno, da ih Uno spremi sebi u neke varijable.

Moj PC  
0 0 hvala 0
12 godina
neaktivan
offline
Croduino (Arduino) lekcije

To bi vjerojatno mogo preko RX/TX pinova, nisam se bavio s tim baš pa guglaj o tom.

 
0 0 hvala 0
13 godina
neaktivan
offline
Croduino (Arduino) lekcije

Ide to preko SDA i SCL pinova, I2C se zove standard komunikacije putem tih pinova, no međutim nailazim ponovno na probleme. Uspio sam povezati i poslati varijable na Uno, no problem je što mi neki senzori očitavaju vrijednosti tipa Float, a float se ne može poslati preko I2C, pa je u tome slućaju potrebno koristiti polja. Čini mi se da se sve više komplicira. Radim završni sa Arduinom, izgleda da ću preskočiti taj dio, rok mi je do kraja mjeseca :D

Moj PC  
0 0 hvala 0
12 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije
eblagus kaže...

Ide to preko SDA i SCL pinova, I2C se zove standard komunikacije putem tih pinova, no međutim nailazim ponovno na probleme. Uspio sam povezati i poslati varijable na Uno, no problem je što mi neki senzori očitavaju vrijednosti tipa Float, a float se ne može poslati preko I2C, pa je u tome slućaju potrebno koristiti polja. Čini mi se da se sve više komplicira. Radim završni sa Arduinom, izgleda da ću preskočiti taj dio, rok mi je do kraja mjeseca :D

 

Hm, jako čudno da ti treba baš float. Možda da staviš kod koji te muči tu ili u neku drugu temu?

Poruka je uređivana zadnji put pon 16.9.2013 16:27 (paradajz).
13 godina
neaktivan
offline
Croduino (Arduino) lekcije

Ma problem je u tome I2C načinu komunikacije što je moguće prenjeti najviše 8 bitnu vrijednost, znači vrijednosti od 0 do 255. E sad meni do 255 nije dovoljno, jer imam senzor tlaka koji mjeri 1011.5 hPa i sad mi je problem što je to prevelik broj. Da se to nekako preko polja riješiti, al opet treba dosta čitati o tome... Ma nema veze, još ću malo čitati, ako danas ne uspijem, odustajem od toga, hvala svejedno na odgovoru... :)

Moj PC  
0 0 hvala 0
16 godina
offline
Re: Croduino (Arduino) lekcije
eblagus kaže...

Ma problem je u tome I2C načinu komunikacije što je moguće prenjeti najviše 8 bitnu vrijednost, znači vrijednosti od 0 do 255. E sad meni do 255 nije dovoljno, jer imam senzor tlaka koji mjeri 1011.5 hPa i sad mi je problem što je to prevelik broj. Da se to nekako preko polja riješiti, al opet treba dosta čitati o tome... Ma nema veze, još ću malo čitati, ako danas ne uspijem, odustajem od toga, hvala svejedno na odgovoru... :)

 

float x;

 i2c.write(addr, (char*)&x, sizeof(x));

 ...

 i2c.read(addr, (char*)&x, sizeof(x));

 

 

10 godina
neaktivan
offline
Croduino (Arduino) lekcije

Hoće li biti uskoro kakvih novih tutoriala? :)

Moj PC  
1 0 hvala 0
14 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije
kljaja89 kaže...

Hoće li biti uskoro kakvih novih tutoriala? :)

Moje isprike što kasnim! I meni je žao što nisam bio mogućnosti snimati lekcije, škola me zagušila, i na umu su mi zadnja dva tjedna. Vjerujem da ću jako brzo moći nastaviti s lekcijama, a čim sljedeća bude, odmah ću ju objaviti ovdje :)

14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Nakon velike pauze, šesta lekcija je tu. Isprike zbog kašnjenja i trudim se da više ne bude ovakvih ogromnih pauza.

Moj PC  
2 0 hvala 2
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Sedma lekcija izašla!

Moj PC  
2 0 hvala 1
14 godina
neaktivan
offline
Croduino (Arduino) lekcije

8. lekcija - out!

Moj PC  
4 0 hvala 2
16 godina
neaktivan
offline
Croduino (Arduino) lekcije

Kćer mi je u školi dobila Croduino set za početnike i počela izrađivati program po lekciji 2 e-radionice - Sve digitalno. Ima problem s uploadanjem programa na board, javlja: avrdude: stk500_recv(): programmer is not responding

Program je radila na mom iMacu (Core2Duo, Mavericks). Instalirali smo prema uputama iz videa Arduino 1.0.5 program i 64-bitni FTDIUSB Serial driver za OS X (2.2.18) sa ftdichip.com.

U Arduino programu je pod "Board" odabran "Arduino Uno" a pod "Serial port" uz kvačicu stoji "/dev/tty.Bluetooth-Incoming-Port

 

Imaš li ideju u čemu bi mogao biti problem? 

 

 

Moj PC  
0 0 hvala 0
14 godina
offline
Re: Croduino (Arduino) lekcije
morska psina kaže...

Kćer mi je u školi dobila Croduino set za početnike i počela izrađivati program po lekciji 2 e-radionice - Sve digitalno. Ima problem s uploadanjem programa na board, javlja: avrdude: stk500_recv(): programmer is not responding

Program je radila na mom iMacu (Core2Duo, Mavericks). Instalirali smo prema uputama iz videa Arduino 1.0.5 program i 64-bitni FTDIUSB Serial driver za OS X (2.2.18) sa ftdichip.com.

U Arduino programu je pod "Board" odabran "Arduino Uno" a pod "Serial port" uz kvačicu stoji "/dev/tty.Bluetooth-Incoming-Port

 

Imaš li ideju u čemu bi mogao biti problem? 

 

 

To je dosta cest problem s arduinom kolko po netu citam, isti taj problem imam i sa svojim arduino uno i mega(oba r3) i sad ih programiram preko vanjskog programera(USBasp) kojeg sam narducio za par funti s ebaya iz britanije, jedini problem je nemogucnost koristenja serijskog prozora u arduino IDE.

 

EDIT:

Skuzio sam da nisam napisao di je problem:

 

Ovako, na ardunu osim glavnog chipa(ATmega328p) postoji i atmega 16u2 koji sluzi za komunikaciju s racunalom i za programiranje glavnog chipa tako da je otisao taj chip ili je problem s njegovim bootloaderom.

:D
Poruka je uređivana zadnji put sri 29.1.2014 18:29 (CroNk3r).
16 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije
CroNk3r kaže...
EDIT:

Skuzio sam da nisam napisao di je problem:

 

Ovako, na ardunu osim glavnog chipa(ATmega328p) postoji i atmega 16u2 koji sluzi za komunikaciju s racunalom i za programiranje glavnog chipa tako da je otisao taj chip ili je problem s njegovim bootloaderom.

 

Hm, imam i Windowse na iMacu - probat ću na Windowsima da eliminiram eventualni problem s driverom.

14 godina
neaktivan
offline
Re: Croduino (Arduino) lekcije
morska psina kaže...

Hm, imam i Windowse na iMacu - probat ću na Windowsima da eliminiram eventualni problem s driverom.

Ako cete raditi na windowsima onda mi je taj error rijesen tek bio sa 2.08.24 verzijom drivera, dobro treba paziti da ista ta verzija bude i na USB sučelju, a ne samo za uređaj!

14 godina
neaktivan
offline
Croduino (Arduino) lekcije

Deveta lekcija o LEDicama je napokon izašla!

 

--

 

@morska psina - isprike na kasnom odgovoru. Taj error je greška s driverima. Konkretno, kod tebe, odmah vidim da si krivo odabrao serijski port. "/dev/tty.Bluetooth-Incoming-Port" je Bluetooth modul unutar laptopa koji isto radi serijski pa se prikazuje pod serial port.

Croduino će ti imati oblik npr. "/dev/tty.usbserial-A9C3V1PD". Ovih zadnjih 8 znamenki je serijski broj FTDI chipa(Croduino koristi FTDI, ne 16u2).

Moj PC  
0 0 hvala 1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice