Kazalo:

Airduino: 6 korakov
Airduino: 6 korakov

Video: Airduino: 6 korakov

Video: Airduino: 6 korakov
Video: XOD — графический язык программирования Arduino. Обзор языка и среды разработки 2024, November
Anonim
Airduino
Airduino
Airduino
Airduino

Nekaj besed, preden razložim, kako sem ustvaril svoj Airduino. Celoten projekt je pravzaprav šolski projekt in ker smo imeli strogo časovno omejitev, marsikaj ni popolno, vendar osnovna funkcionalnost deluje.

Kaj je torej Airduino? Na kratko: to je domišljijski brezžični monitor za zrak. Dolgo: Arduino meri kakovost zraka, vse podatke pošlje v Raspberry Pi prek Bluetootha in jih shrani v bazo podatkov. Naredil sem preprosto spletno mesto za vizualni prikaz podatkov. Najpomembnejša stvar pa je, da ima močan krmiljen RGB LED!

Kaj natančno meri? Odločil sem se, da izmerim temperaturo, vlažnost, zračni tlak, CO2 in CO. Izmerite lahko vse, kar želite, če obstaja zanj združljiv senzor.

Priložil sem podroben seznam zalog s povezavami do nekaterih izdelkov, ki sem jih kupil.

Zaloge

To so vse komponente, ki sem jih uporabil:

Arduino

Malina Pi

LCD zaslon

HC-05, kateri koli modul Bluetooth bo deloval

BMP-180 (senzor zračnega tlaka)

DHT-11 (senzor vlažnosti zraka)

MQ-7 (senzor CO)

MQ-135 (senzor CO2)

9W RGB LED (3x3W)

XL4015 Pretvorniki dolarjev za znižanje (povezava) (2x)

XL6009E1 povečevalni pretvornik (povezava)

Baterijska plošča MH CD42 (povezava)

18650 Baterijska celica (4x)

Nosilec baterije 4 ležišča 18650

Tranzistorji BC337 (5x)

Upori (1 Kohm (5x), 10 Kohm)

Preklopite

Gumb

Micro USB v DIP adapter

Žice

Perfboard

Hladilnik (iz starega računalnika)

Korak: Arduino vezje

Arduino vezje
Arduino vezje
Arduino vezje
Arduino vezje

Najtežji del je del Arduina, ker v bistvu obravnava vse.

V priloženih shemah si lahko ogledate shemo. Morda je sprva videti veliko in težko, vendar je dokaj enostavno. Najprej sestavim celotno vezje brez vezja za LED, na drobcu, da vidim, če vse deluje. Po besedah sem spajkal vse perfboard, vsaj poskusil sem.

Večina senzorjev je precej naravnost naprej, razen MQ-7. Po mojih izkušnjah je ta senzor težko vključiti v projekt. Sledil sem enemu od edinih dobrih navodil, ki sem jih našel, in zdelo se je, da deluje, če priključim samo ta senzor. Če sem priključil druge senzorje, je deloval čudno, zato sem moral narediti nekaj manipulacij s kodo, več o tem kasneje.

2. korak: Arduino koda

Če ste svoje vezje zgradili na plošči, lahko večino preizkusite. Arduino povežite z računalnikom in naložite priloženo kodo. Če odklopite zatiče tx in rx, lahko ukaze pošljete prek monitorja Arduino IDE. Če pošljete 'BMPTemp', bi morali dobiti odgovor, če ste vse naredili pravilno.

3. korak: Raspberry Pi vezje

V svoj Pi sem dodal zaslon za prikaz naslova IP, na katerem gostuje spletno mesto. najtežje je bilo ugotoviti prave zatiče.

4. korak: Koda Raspberry Pi

Najprej morate konfigurirati vgrajen Bluetooth. Vse sem naredil z ukazno vrstico, lahko tudi z grafičnim vmesnikom, vendar tega ne bom obravnaval. Predvidevam, da poznate osnove Raspberry PI in Rasbian, operacijskega sistema.

Gre takole:

1. korak: Povežite se s Pi prek SSH, uporabljam Putty.

Korak: V terminal vnesite naslednje ukaze:

  1. 'sudo bluetoothctl'
  2. 'vklop'
  3. 'agent on'
  4. 'skeniraj'

3. korak: Zdaj počakajte, da odkrijete HC-05, ga morate vklopiti.

4. korak: Zdaj morate napravo seznaniti in zaupati, vnesite naslednje ukaze:

  1. "par xx: xx: xx: xx: xx: xx", z mac naslovom modula HC-05 na mestu x'es.
  2. 'connect xx: xx: xx: xx: xx: xx', vendar bo to najverjetneje povzročilo napako.
  3. 'zaupanje xx: xx: xx: xx: xx: xx'

5. korak: Zdaj, ko je modul seznanjen in mu zaupate, ga moramo povezati s serijskimi vrati. To lahko storite z naslednjim ukazom: 'sudo rfcomm bind 0 xx: xx: xx: xx: xx: xx', spet z x'es, ki predstavljajo mac-naslov modula HC-05. Običajno, če pogledate v '/dev', bi morali videti 'rfcomm0', če ne poskusite znova zagnati.

Težava je v tem, da morate ta ukaz ročno izvesti vsakič, ko zaženete Pi. Če želite to narediti samodejno, sem ukaz dodal '/etc/rc.local' pred 'exit 0'. Zdaj bo samodejno vezal modul.

Zdaj, ko ste konfigurirali Bluetooth, lahko zaženete vključeno kodo. Pazite, da sem na svoj Pi postavil zbirko podatkov MariaDB, ne bom podrobno opisal, kako to nastaviti, vključil bom le model svoje zbirke podatkov in neumno datoteko. Če želite zagnati kodo brez baze podatkov in spletnega mesta, sem za to vključil preprost program.

Kopirajte vsebino datoteke zip v svoj Pi in jo zaženite z naslednjim ukazom: 'python3 airduino.py', ob predpostavki, da ste v isti mapi. Če je vaš Arduino vklopljen in so zatiči tx in rx povezani, bi morali videti nekaj sporočil o vstavljanju podatkov v bazo podatkov. Če želite samodejno zagnati program, dodajte to vrstico v '/etc/rc.local': 'python3 //arduino.py', zamenjajte z dejansko potjo.

Za spletno stran sem namestil strežnik appache za gostovanje spletnega mesta. Kopirajte datoteke iz zip datoteke v '/var/www/html/'. Če greste na naslov IP vašega PI, bi morali videti spletno mesto in podatke, če je vse delovalo pravilno.

5. korak: Izdelava ohišja in spajkanje

Gradnja ohišja in spajkanje
Gradnja ohišja in spajkanje
Gradnja ohišja in spajkanje
Gradnja ohišja in spajkanje
Gradnja ohišja in spajkanje
Gradnja ohišja in spajkanje

Arduino

Zdaj, ko vse deluje, razen LED, je čas, da vse pospravite v lepo torbico. Odločim se, da bom naredil stolp, kjer bodo povezane vse komponente, in ga obkrožil s preprostim ohišjem.

Toda najprej sem vse komponente spajkal na ploščo in pritrdil nekaj žic za Ground in Vcc. Na en kos sem dal večinoma eno ali dve komponenti in jih postavil okoli stolpa.

Nosilec baterije ima daljše žice in ni pritrjen, lahko se premika in spreminja celice.

Na tej točki sem postavil voznike za led na zadnji ravni mojega stolpa. Izklopil sem izhodno napetost gonilnikov na 2,2 za rdečo LED in 3,2 za zeleno in modro LED. Priključil sem vodilo na hladilnik in ventilator z zadrgami. Nato sem uporabil nekaj lesa, da sem ga držal na mestu.

Večino ozemljitvenih žic in žic Vcc sem priključil z vijačnimi sponkami.

Poskrbite, da bo vaša osnovna plošča dovolj velika, da bo zunanji del ohišja lepo poravnan. Zunanje ohišje je le škrinjica iz lesa. Na vrh sem položil prozorno plastično čarovnico, ki sem jo malo brušil, da je svetloba postala mehkejša. Dodal sem tudi gumb za vklop.

Malina Pi

Za Raspberry Pi sem pravkar naredil preprosto leseno škatlo z LCD -zaslonom na vrhu in gumbom ob strani.

6. korak: Finale

Ko ste vse spajkali in zgradili ohišje, je čas za zadnje testiranje. Vklopite vse in obiščite spletno mesto, če je vse v redu, bi morali videti nekaj podatkov v živo.

O baterijah:

Če uporabljate več kot 1 baterijo vzporedno, se morate prepričati, da so njihove napetosti enake ali blizu.

Github:

Tukaj je povezava do mojega skladišča Github, kjer se nahajajo vse najnovejše datoteke.

Priporočena: