- Reikalinga medžiaga:
- IR jutiklio modulis:
- Grandinės schema ir paaiškinimas:
- „Raspberry Pi“ programavimas:
- Darbas:
Kaip visi žinome, „ Raspberry Pi“ yra nuostabi „Developing“ platforma, pagrįsta ARM mikroprocesoriumi. Turėdamas didelę skaičiavimo galią, jis gali sukurti stebuklus elektronikos mėgėjų ar studentų rankose. Visa tai gali būti įmanoma tik tada, jei žinome, kaip priversti jį sąveikauti su realiu pasauliu. Yra daug jutiklių, kurie gali aptikti tam tikrus realaus laiko parametrus ir perkelti juos į skaitmeninį pasaulį. Mes apėmėme daugybę „Raspberry Pi“ projektų su daugeliu jutiklių. „Raspberry Pi“ taip pat yra naudingas daiktų interneto projektams, nes tai kišeninis kompiuteris su įmontuotu „Wi-Fi“, turintis mikrovaldiklio galimybes.
Šioje pamokoje sužinosime, kaip susieti IR jutiklį su „Raspberry pi“. Šie jutikliai dažniausiai naudojami mažuose robotuose, pvz., Linijos sekimo robotu, krašto išvengiančiu robotu ir kt. Paprasčiau tariant, jis gali aptikti prieš jį esančių objektų buvimą ir atskirti baltą ir juodą spalvas. Skamba šauniai, tiesa?
Taigi galime išmokti susieti šį jutiklį su „Raspberry Pi“. Šiame projekte, kai prieš IR jutiklį nėra jokio objekto, raudonas šviesos diodas lieka įjungtas ir kai tik mes ką nors pastatome prieš IR jutiklį, raudonas šviesos diodas išsijungia ir žalias šviesos diodas. Ši grandinė taip pat gali būti naudojama kaip apsaugos signalizacijos grandinė.
Reikalinga medžiaga:
- Raspberry Pi 3 (bet koks modelis)
- IR jutiklio modulis
- Žalios ir raudonos spalvos LED lemputės
- Bandomoji Lenta
- Jungiamieji laidai
IR jutiklio modulis:
IR jutikliai (infraraudonųjų spindulių jutikliai) yra moduliai, kurie nustato objektų buvimą prieš juos. Jei objektas yra, jo išėjimas turi būti 3,3 V, o jei jo nėra - 0 voltų. Tai įmanoma naudojant porą IR poros (siųstuvas ir imtuvas), siųstuvas (IR šviesos diodas) skleidžia IR spindulį, kuris atsispindės, jei prieš jį yra objektas. Šį IR spindulį ims atgal imtuvas (fotodiodas), o išėjimas bus aukštas, kai bus sustiprintas naudojant op-amp jungtį LM358. Čia galite sužinoti daugiau apie IR jutiklio modulio grandinę.
IR jutiklis, naudojamas šiame projekte, parodytas aukščiau. Kaip ir visi IR jutikliai, jis turi tris kaiščius, atitinkamai 5V, Gnd ir Out. Modulį maitina „Raspberry Pi“ 5 V kaištis, o išvesties kaištis yra prijungtas prie „Raspberry Pi“ GPIO14. Modulio viršuje esančiu potenciometru galima reguliuoti IR jutiklio diapazoną.
Grandinės schema ir paaiškinimas:
Žemiau parodyta „ Raspberry Pi“ prijungimo prie IR jutiklio schema. Kaip matote, grandinės schema yra labai paprasta. Mes tiesiogiai maitinome IR modulį iš „Raspberry Pi“ 5 V ir įžeminto kaiščio. IR modulio išvesties kaištis yra prijungtas prie GPIO14. Mes taip pat naudojome du šviesos diodus (žalią ir raudoną) objekto būsenai nurodyti. Šie du šviesos diodai yra prijungti prie GPIO3 ir GPIO2.
Kadangi „Raspberry Pi“ GPIO kaiščiai yra 3,3 V, srovę ribojantis rezistorius nėra privalomas. Tačiau, jei pageidaujama, tarp šviesos diodų įžeminimo kaiščio ir „Raspberry Pi“ galima pridėti 470 omų vertės rezistorių. Visą grandinę maitina 5 V mobilusis įkroviklis per „Raspberry pi“ mikro USB prievadą.
Pastaba: Prijungdami bet kurį jutiklį, įsitikinkite, kad jutiklio žemė yra prijungta prie MCU arba MPU (čia „Raspberry Pi“) žemės. Tik tada jie galės bendrauti.
„Raspberry Pi“ programavimas:
Čia programavimui RPi naudojame Python programavimo kalbą. Yra daugybė būdų, kaip užprogramuoti „Raspberry Pi“. Šioje pamokoje mes naudojame „ Python 3 IDE“, nes ji yra dažniausiai naudojama. Visa „ Python“ programa pateikiama šios pamokos pabaigoje. Sužinokite daugiau apie programą ir vykdykite „Raspberry Pi“ kodą čia.
Mes kalbėsime apie keletą komandų, kurias ketiname naudoti PYHTON programoje,
Mes ketiname importuoti GPIO failą iš bibliotekos, žemiau pateikta funkcija leidžia mums užprogramuoti PI GPIO kaiščius. Mes taip pat pervadiname „GPIO“ į „IO“, todėl programoje, kai norime nurodyti GPIO kaiščius, naudosime žodį „IO“.
importuoti RPi.GPIO kaip IO
Kartais, kai GPIO kaiščiai, kuriuos bandome naudoti, gali atlikti kitas funkcijas. Tokiu atveju vykdydami programą gausime įspėjimus. Žemiau komanda liepia PI nepaisyti įspėjimų ir tęsti programą.
IO.setwarnings (False)
Mes galime nurodyti PI GPIO kaiščius pagal PIN kodą laive arba pagal jų funkcijos numerį. Kaip lentoje esantis „PIN 29“ yra „GPIO5“. Taigi mes sakome, kad čia mes smeigtuką atvaizduosime „29“ arba „5“.
IO.setmode (IO.BCM)
Mes nustatome 3 kaiščius kaip įvesties / išvesties kaiščius. Du išvesties kaiščiai valdys šviesos diodą, o įvesties kaištis nuskaitys signalą iš IR jutiklio.
IO.setup (2, IO.OUT) #GPIO 2 -> Raudonas šviesos diodas kaip išėjimas IO.setup (3, IO.OUT) #GPIO 3 -> Žalias LED kaip išėjimas IO.setup (14, IO.IN) #GPIO 14 -> IR jutiklis kaip įvestis
Dabar mes turime išjungti žalią šviesos diodą ir įjungti raudoną šviesos diodą, kai objektas yra toli. Tai galima padaryti patikrinus GPIO14 kaištį.
jei (IO.input (14) == True): #objektas yra toli IO.output (2, True) #Red led ON IO.output (3, False) # Žalia LED OFF
Panašiai turime įjungti žalią šviesos diodą ir išjungti raudoną šviesos diodą, kai objektas yra šalia.
jei (IO.input (14) == False): #objektas yra netoli IO.output (3, True) #Green led ON IO.output (2, False) # Raudonas LED OFF
Žemiau komanda naudojama kaip amžinai kilpa, su šia komanda šios kilpos teiginiai bus vykdomi nuolat.
Nors 1:
Darbas:
Sukūrę savo python kodą, vykdykite jį naudodami komandą run. Jei programa vykdoma be klaidų, turėtumėte gauti šį ekraną.
Taip pat turėtumėte pamatyti, kad raudonos spalvos šviesos diodas eina aukštai, kai priešais jutiklį nėra jokių objektų, kaip parodyta žemiau.
Dabar priartinkite ką nors prie IR lemputės ir turėtumėte pastebėti, kad raudonas šviesos diodas išsijungia ir žalias įsijungia. Pilną darbą galite rasti toliau pateiktame vaizdo įraše.
Tikiuosi, kad supratote projektą ir sugebėjote su juo sukurti ką nors naudingo. Jei turite kokių nors klausimų, paskelbkite juos žemiau esančiame komentarų skyriuje arba forume.