Top 3 VIDILAB projekta za Arduino Uno - Projekt 2

Top 3 VIDILAB projekta za Arduino Uno - Projekt 2

Donosimo vam malu školu rada s Arduino Uno pločicom koja je malo drugačija od Micr:bita, a kako je rad s njom malo teži za početnike, vjerujemo da će vam se naši projekti dopasti i biti korisni za razvoj vlastitih.

Iako Arduino UNO pripada kategoriji malo drugačijih razvojnih pločica od primjerice Microbit pločica to ne znači da je manje zanimljiva. Neki će zamjeriti ne baš user-frendly for beginners razvojno okruženje (za razliku od Microbit platforme), ali svakako će biti vrlo uporabljiva kao jedna stepenica više u programiranju razvojnih pločica.

Od kud naziv Arduino? Tvorci Arduina su izabrali ime Arduino po imenu kafića u kojem su se dizajneri sastajali kada su stvarali taj projekt. Zvuči simpatično, ali i malo neobično. Na prvu Arduino više „vuče“ na nekakav tech gadget nego na ime kafića. Sigurno vam to ne bi bilo prvo ime da otvarate novi kafić u kvartu? O čemu se točno radi? Ispod haube Arduino UNO izgleda vrlo skromno naspram popularnog Raspberryja. Možda malo i preskromno. Odmah da tu podvučemo crtu. Arduino platforma spada u kategoriju mikrokontrolera (ne punokrvnih računala) dok je Raspberry Pi u suštini pravo „full-desktop“ računalo (CPU, RAM, Controller, Ethernet, USB, Video out (HDMI) te se pogoni posebnim OS-om (Raspibian) prilagođenim za tu vrstu računala.

Arduino platforma iako posjeduje sve računalne elemente (CPU, RAM,...) vrlo je skromnih karakteristika te taj mikrokontroler ne izvršava punokrvni operacijski sustav već samo izvršni kod zapisan u firmwareu i to isključivo jedan program u datom trenutku (low level C++ ako pričamo o programskom jeziku). Pojednostavljeno, to znači da na Arduinu nećete moći surfati, gledati video, spremati velike količine podataka već se ta platforma primarno koristiti za prikupljanje senzorskih očitanja spojenih senzora koja se prosljeđuju na nekakav poslužitelj, drugo računalo ili se prikazuju na licu mjesta (putem ugrađenog displaya npr.). U slijedećoj tablici možemo vidjeti usporedbu Arduina UNO s prvom generacijom Raspberry Pi model B računala (danas već postoji 3. generacija, Raspberry Pi 3). Kratak pogled dat će do znanja da je Arduino UNO „dječja igračka“ naspram Pi-ja. 

Screenshot 1


Ukratko smo pojasnili priču razlike (Arduino – Pi) te bi zaključak bio da treba razlikovati mikrokontrolere od pravih računala.

Iz naše kuhinje
STEM revolucija je nešto o čemu se intenzivno priča posljednjih mejseci te konkretni pomaci (na žalost) dolaze ne iz obrazovnog sustava već od grupa entuzijasta i privrednika koji se zalažu za bolju budućnost obrazovanja djece. Kako je i VIDI časopis koji potiče STEM revoluciju, iz naše „kuhinje“ smo pripremili nekoliko jednostavnih Arduino projekata koji vas mogu još više zainteresirati za programiranje mikrokontrolera kada rezultat bude konačan i vidljiv.

Gdje kupiti glavne sastojke?
Glavni (zbirni) sastojci projekta su:

Screenshot 2

Većinu sastojaka moguće je kupiti u našim trgovinama putem web shopa. Jedino senzor DHT22 nismo bili u mogućnosti pribaviti u lokalnim trgovinama već je isti moguće potražiti putem oglasa ili na E-bayu.


Senzor temperature i vlage s LCD prikazom te upozoravajućim zvukom

Važno!
Kako bi sve ispravno funkcioniralo potrebno je prethodno instalirati SW podršku na računalu. Upute za instalaciju možete pronaći na www.arduino.cc/en/guide/windows (ukoliko to radite na Windows platformi). Potrebna je instalacija IDE razvojnog okruženja putem kojeg će se izvršavati prijenos programa na Arduino. Mi smo koristili verziju 1.8.1. Također, postoji i on-line web verzija (out-of-the-box) pod nazivom Arduino web editor dostupna na https://create.arduino.cc/editor

Koristili smo

Ovaj projekt zamišljen je kao vremenska stanica koja će putem pripadajućeg senzora (oznake DHT 22 kineske no-name proizvodnje) prikupljati podatke iz okoline i prikazati vrijednosti temperature i vlage na LCD zaslonu našeg Arduina. Projekt ćemo nadograditi i s mogućnosti prosljeđivanja senzorskih očitanja na pripadajući server.

1....2....3....kreni

1

2

Za početak treba znati gdje spajamo elemente (senzor) na Arduino UNO. S lijeve i desne strane možemo vidjeti raspored pinova s oznakama. Napomenimo da jedna strana nudi napajanje (3,3 V i 5 V) te analogne izlaze A0 – A5 dok druga strana nudi digitalne izlaze s oznakama 0 – 13

3

Na Arduino UNO spojit ćemo  tzv. LCD Shield. LCD Shield je nadogradnja Arduina gdje će se senzorska očitanja prikazivati i na zaslonu. Za Arduino UNO postoje mnogi „shieldovi“ kao npr. Ethernet Shield, GSM Shield, Motor control Shield te mnogi drugi koji daju dodatnu funkcionalnost

4

Spajanje Arduina na LCD shield. Odabrali smo model proizvođača Vellman (www.vellman.eu) – Belgija. Dostupan je u Chipoteci po cijeni od 63 kune. Montaža LCD Shielda je jednostavna. Već sama orijentacija pločice može nam reći kako točno spojiti pinove (3,3 V, 5 V, GND, RX, TX).  Nakon montaže pripadajućeg Shielda vidjet ćemo da isti shield nudi dostupne priključke koji će nam trebati prilikom spajanja senzora. To su priključci GND (uzemljenje),  naponski  5 V (DHT22 radi na 5 V) te jedan od slobodnih digitalnih inputa (označenih brojkom na pločici od 1-13)

5

Spajanje DHT22 senzora za očitanje vlage i temperature u prostoriji. Senzor ćemo spojiti putem spojnih žica (u našem slučaju kombinacija muških i ženskih spojnih žica) na uzemljenje (GND) te na digitalni izlaz 3 (Pin 3), a napajanje na 5 V.
Spajanje speakera. Ako smo prethodno opisali da izrađujemo vremensku stanicu koja će upozoravati zvučnim signalom na granične vrijednosti tako ćemo za te potrebe instalirati i potreban speaker. Speaker spajamo na uzemljenje (GND) te digitalni izlaz 4 (Pin 4).

6

Nakon završne provjere možemo priključiti USB (A -> B) kabel čime osiguravamo podatkovnu vezu s našim PC-jem te samo napajanje Arduinu. Ovo je kraj hardverske pripreme.

7

Za neke projekte (kao i za ovaj, ali mi ga nismo koristili) možete koristiti i Breadboard bazu. Jednostavna je za eksperimentiranje kada vam je potreban prostor i preglednost. Dolaze u više dimenzija (veličina). Jednostavno slažete elektroničke elemente. Sastoji se od tzv. bus linije i terminalne linije.

Bus linije - koristi se da bi doveli napajanje kroz pločicu na određeni elektronički element (+ / -)
Terminalne linije – koriste se za izravno spajanje elektroničkih komponenata

 

Programski kod

8

Programiranje za Arduino podsjeća na C++ jezik. Poznavatelji C++ snaći će se odmah. Onima koji nisu vični programiranju savjetujemo da posjete stranicu: www.arduino.cc/en/Main/Education ili kupe neku od knjižnih edicija koje pojašnjavaju osnove programiranja za Arduino na amazon.com, apress.com, springer.com i dr.
Za programski dio koristli smo dvije programske biblioteke:
DHT.h – biblioteka za DHT22 senzor
LiquidCrystal.hr – biblioteka za spojeni LCD ekran
Skica > Include Library > Manage Libraries za upravljanje drugim programskim bibliotekama (ovisno o spojenim dodacima-senzorima)


Senzor razine tekućine s LCD prikazom

PROJEKT 2

Važno!
Kako bi sve ispravno funkcioniralo potrebno je prethodno instalirati SW podršku na računalu. Upute za instalaciju možete pronaći na www.arduino.cc/en/guide/windows (ukoliko to radite na Windows platformi). Potrebna je instalacija IDE razvojnog okruženja putem koje će se izvršavati prijenos programa na Arduino. Mi smo koristili verziju 1.8.1. Također, postoji i on-line web verzija (out-of-the-box) pod nazivom Arduino web editor dostupna na https://create.arduino.cc/editor 

Za programski dio nismo koristili niti jednu programsku biblioteku već smo koristili analogna očitanja senzora koji je spojen na analogni izlaz A0 (definrali smo izlaz kao konstantu). Za čitanje vrijednosti analognog izlaza A0 koristili smo naredbu analogRead(varijabla). Međutim, analognim očitanjem dobit ćemo vrijednosti koje bez dodatne modifikacije ne možemo precizno primijeniti za očitanje razine tekućine u posudi; stoga moramo definirati granice vrijednosti te im pridodati značenje.

Screenshot 3

Ovaj projekt je zamišljen kao mjerač razine vode. Pri tome koristili smo senzor belgijskog proizvođača „Vellman“. Velleman (www.vellman.eu) je tvrtka specijalizirana za elektroniku. Osnovana je 1975. godine u Belgiji te je poznati renomirani proizvođač elektronike. Senzor za mjerenje razine vode koji smo upotrijebili za ovaj mali projekt mjeri razinu vode do 6 cm. Senzor za mjerenje razine vode je analogni tip mjerača te ćemo isti spojiti na analogni izlaz Arduina (analogni izlazi oznake A0 – A5). Senzor nemojte dodirivati prstima po površini koja dolazi u kontakt s vodom jer bi ga mogli oštetiti.

11

Ponavljamo korak 1. iz prethodnog projekta. Spajamo na Arduino LCD Shield

12

Vellmanov senzor spajamo na uzemljenje (GND) i na analogni izlaz A5

13

Ovako to izgleda kada je sve spojeno

Programski kod

10

Za programski dio nismo koristili programsku biblioteku već smo izravno koristili očitanja senzora spojenog na analognom izlazu A0. U slučaju korištenja nekog drugog specifičnog senzora koristit ćete programsku biblioteku namijenjenu za taj senzor (ukoliko postoji).
Skica > Include Library > Manage Libraries za upravanje drugim programskim bibliotekama (ovisno o spojenim dodacima-senzorima)


Arduino s Monitorom - Nokia 3310 kao LCD

14

Monitor smo odabrali kao prikladan početnički projekt jer će vam dobro doći kako bi na njega ispisivali razne statuse senzora ili debuging informacije o statusu programa koji se trenutno izvodi.
Za ovaj zadatak odabrali smo monokromatski LCD display od legendarne Nokije 3310. Isto tako možete spojiti i druge displaye no morat ćete minimalno prilagoditi spoj pinova te eventualno biblioteke.

Screenshot 5
Krenut ćemo od rastavljanja Nokije. Do LCD-a ćete doći tako da prvo skinete stražnji poklopac, zatim možete skinuti i prednji poklopac. Ostaje vam tijelo mobitela. S prednje strane imate 6 zvjezdastih šarafa koje treba otšarafiti kako bi mogli odvojiti plastiku i LCD od matične ploče.
Sada na stražnju stranu, na mali konektor povezan s LCD-om, treba zalemiti 8 žica. To je najlakše učiniti tako da taj konektor fiksirate nekako na radnoj površini jer se radi o vrlo malim spojevima koje je teško izvesti kada se konektor nalazi slobodan na stolu.
Koristili smo običnu lemilicu 220 V snage 30 W. Prvo je trebalo pronaći tanku žicu koju bismo mogli iskoristiti za povezivanje tako malenog konektora
Sa starog 80-pinskog SATA kabela za disk računala smo škarama odrezali komad žice. Zatim smo odvojili njih 8, koliko nam treba za ovu namjenu.

Pri početku i kraju smo svaku od tih 8 odvojili zasebno. Upaljačem smo spalili vrh svake žice sa svrhom da lakše uklonimo izolaciju kako bi na taj dio mogli nanijeti lem te zalemiti žicu. Nakon skinute izolacije sa svih 8 žica, na svaku od njih treba nanijeti tinola kako bi se lakše zalemila na konektor. 

15

EL. SHEMA pokazuje raspored spajanja Nokia 3310 LCD-a s Arduinom

Pastu za lemljenje možete zamijeniti limunovim sokom. Limunov sok koristio se u industrijskom lemljenju jer ga je lakše oprati za razliku od paste koja je masna. Glavna svrha paste ili limunovog soka je skinuti površinske nečistoće s lemne površine kako bi se tinol žica lakše primila za podlogu

Tinol se nanosi tako da žicu umočite u pastu za lemljenje te tinol za lemljenje rastopite na vrhu lemilice, a zatim taj dio nanesete na žicu koja je prethodno umočena u pastu za lemljenje.

Isti postupak morat ćete primijeniti i na sitni konektor LCD-a. Bitno je da to lemljenje konektora traje jako kratko jer su komponente malene, pa ih lako možemo rastopiti ili spaliti kako je sugerirao trgovac s početka priče.
Dakle kada su i konektor i žica premazani tinol žicom za lemljenje lako ih je spojiti. To učinite tako da lemilicom grijete žicu te tako ugrijanu žicu prislonite na konektor. Taj kontakt ne bi smio trajati duže od sekundu - dvije, maksimalno. Ukoliko se u dvije sekunde nije ništa zalemilo, maknite lemilicu te pustite konektor da se ohladi i pokušajte ponovno. Kada vidite da se tinol na konektoru rastopio, maknite lemilicu i pustite da se spoj ohladi. Nemojte puhati u taj spoj kako bi ubrzali hlađenje.
Ukoliko lemljenje radite prvi puta, bitno je da ste smireni te da vas promašaji ne obeshrabre. Ukoliko treba danas zalemite dvije žice, pa dvije sutra i tako polako i sigurno prema cilju jer upravo je to lemljenje nešto što čovjeka može odvratiti od postizanja krajnjeg cilja projekta.

Mi smo konektor lemili kada je bio spojen s LCD displayem iako je moguće odvojiti limeni poklopac displaya te display odvoditi od konektora. Odlučili smo se na takav korak samo zato da vidimo hoće li LCD display preživjeti lemljenje, a i lakše je zalemiti tako sve u komadu nego kada imamo samo maleni konektor kojega je teško fiksirati pri lemljenju.
Kada ste gotovi s konektorom LCD-a isti postupak morate primijeniti na drugi kraj žica, na koji smo odlučili zalemiti pin konektore tj. njih 8 u nizu kako bi taj konektor mogli upiknuti u eksperimentalnu pločicu.

16

LCD možete kupiti kao shield ili komponentu koji s Arduinom samo treba spojiti prema priloženim uputama, bez potrebe za lemljenjem.

19

LEMLJENJE Kako bi uspjeli zalemiti “sitne” konektore treba ih učvrstiti za što smo koristiti ovakav stalak s povećalom i hvataljkama. Žicu je poželjno pridržavati pincetom jer se pri lemljenju toplina prenosi po žici  do prstiju ;)

HOW TO...

12345

21

STARE kabele od diskova moguće je iskoristiti za ovakve projekte jer su konektori kompatibilni s pin konektorima koje kupujemo posebno za ovakav tip projekata

22

ZAVRŠNICA Uspjeli smo zalemiti sve na svoje mjesto, a s obzirom da smo skinuli limeni okvir LCD-a, morali smo ga učvstiti žicom kako bi povratili konekciju između LCD-a i konektora na koji smo zalemili žice.

 

Softverski dio

Sa službene Arduino stranice, https://www.arduino.cc/en/Main/Software skinite Arduino Studio za programiranje Arduina. Najbolje je skinuti Windows Installer jer iako postoji ponuđeni download kroz Windows Store, nama ta inačica nije radila kako treba. Bilo je grešaka u kompajliranju demo skripti. Nakon instalacije otvorite demo skriptu „adafruit_demo.ino“.

17

Sada s glavnog padajućeg izbornika odaberite „Tools“, zatim „Board:“ te odaberite „Arduino Leonardo“ ukoliko posjedujete Leonardo ili odaberite inačicu Arduina kojeg posjedujete.
Sada s istog izbornika treba odabrati odgovarajući COM port na koji je spojen vaš Arduino. Najčešće je taj port odabran automatski. Ukoliko slučajno nije, odaberite onaj pored koje piše ime vaše inačice Arduina.

18

Pokušate li u ovom trenutku kompajlirati skicu, Studio će javiti grešku da mu fali „Library“. Možete ju dodati kroz izbornik „Sketch“, zatim „Include Library“ te „Add .ZIP Library…“ Sada navigirajte do lokacije .zip arhive s tom bibliotekom i kliknite Open.
Postupak ponovite za biblioteku „Adafruit-PCD8544-Nokia-5110-LCD-library“. Obje datoteke pronaći ćete na
http://bit.ly/lcd-arduino
Sada možete kliknuti na kompajliranje skice nakon čega dobivate poruku koliko memorije je skica zauzela te koliko će memorije ostati slobodno nakon uploada na Arduino.

23

Kliknite Upload. Uskoro bi vaš Arduino i LCD trebao pokazati znakove života. Ukoliko se to ne dogodi, morat ćete provjeriti jeste li sve dobro povezali. Ukoliko niste pokušajte ponovno. Mi smo morali LCD malo čvršće pritisnuti uz konektor za koji smo zalemili žice jer taj je konektor poput opruge pa se može desiti da jedan kontakt izdigne ostale te tu nastaje problem.
Nakon što je LCD proradio lako ćete pohvatati što radi softver. Na počeku ćete pronaći dio koda koji postavlja pinove koji se koriste:
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3);
Pronađete li na internetu još neki projekt koji želite dodati na ovaj, s našim LCD-om, pripazite da se pinovi ta dva projekta ne preklapaju. Tj. promijenite li pin 7 u pin 8 u skripti morat ćete to i fizički napraviti na Arduino pločici.

Za kraj

Zanimljivo bi bilo display, zvučnik i tipkovnicu iskoristiti na način da sve ostane u originalnom kućištu Nokije 3310 te se samo žice provedu prema Arduino pločici. Tako bi dobili jedan sasvim pristojan gadget koji bi mogao poslužiti kao igraća konzola. Uz odgovarajući softver, naravno, koji sami trebate napisati ;)

24

(Stranica 3 od 4)
« Prev All Pages Next » (Stranica 3 od 4)
Ocijeni sadržaj
(0 glasova)

// možda će vas zanimati

Newsletter prijava


Kako izgleda naš posljednji newsletter pogledajte na ovom linku.

Copyright © by: VIDI-TO d.o.o. Sva prava pridržana.