- Aparatinės įrangos reikalavimai
- XBee modulių konfigūravimas naudojant XCTU
- Imtuvo dalies grandinės schema
- Nustatykite „Raspberry Pi“ nuosekliam ryšiui
- „Raspberry Pi“ programavimas „XBee“ ryšiui
- Bevielio „XBee“ ryšio testavimas naudojant „Raspberry Pi“
Ankstesnėje mokymo programoje mes sujungėme „XBee“ modulį su „Arduino Uno“ ir privertėme juos bendrauti belaidžiu būdu naudojant „XBee“ modulį. Dabar susiesime „XBee“ modulį su „Raspberry Pi“, kuris veiks kaip imtuvas ir leis belaidžiu ryšiu bendrauti su kitu „XBee“ moduliu („XBee explorer“ plokštė), nuosekliai sujungtu su nešiojamuoju kompiuteriu.
Aparatinės įrangos reikalavimai
- 1 x „Raspberry Pi“ su jame įdiegta „Raspbian“
- 2 x „XBee Pro S2C“ moduliai (galima naudoti bet kurį kitą modelį)
- 1 x „XBee Explorer“ plokštė (nebūtina)
- 1 x „Xbee Breakout“ plokštė (pasirinktinai)
- USB laidai
- Šviesos diodai
Daroma prielaida, kad jūsų „Raspberry Pi“ jau yra su operacine sistema. Jei ne, prieš tęsdami vadovaukitės instrukcija „Pradėti naudoti„ Raspberry Pi ““. Čia mes naudojame Rasbian Jessie įdiegtą „Raspberry Pi 3“.
Išorinis monitorius, naudojant HDMI kabelį, naudojamas kaip ekranas, kad galėtumėte prisijungti prie „Raspberry Pi“. Jei neturite monitoriaus, galite naudoti SSH klientą (glaistą) arba VNC serverį, kad prisijungtumėte prie „Raspberry pi“ naudodami nešiojamąjį kompiuterį ar kompiuterį. Sužinokite daugiau apie „Raspberry Pi“ nustatymą be galvos čia.
XBee modulių konfigūravimas naudojant XCTU
Kaip sužinojome ankstesnėje „ZigBee Introduction“ pamokoje, „XBee“ modulis gali veikti kaip koordinatorius, maršrutizatorius ar „End“ įrenginys, tačiau jį reikia sukonfigūruoti veikti norimu režimu. Taigi, prieš naudodami „ XBee“ modulius su „Raspberry Pi“, turime sukonfigūruoti šiuos modulius naudodami „XCTU“ programinę įrangą.
Norėdami prijungti „XBee“ modulį su nešiojamuoju kompiuteriu, naudojamas USB į nuoseklųjį keitiklį arba specialiai sukurta naršyklės plokštė. Tiesiog prijunkite „XBee“ modulį prie „Explorer“ plokštės ir prijunkite jį prie nešiojamojo kompiuterio naudodami USB laidą.
Jei neturite keitiklio ar naršyklės plokštės, „ Arduino“ plokštė gali būti naudojama kaip USB į nuoseklųjį įrenginį, kuris gali lengvai bendrauti su „XBee“ ir nešiojamuoju kompiuteriu. Tiesiog įkelkite tuščią eskizą į „Arduino“ lentą ir dabar jis gali elgtis kaip iš USB į nuoseklų keitiklį.
„XBee“ modulių konfigūravimas:
Čia, šioje pamokoje, „ Explorer“ plokštė naudojama „XBee“ moduliams konfigūruoti.
Iš šios nuorodos atsisiųskite „XCTU“ programinę įrangą ir įdiekite ją. Atsisiuntę ir įdiegę „XCTU“ programinę įrangą, atidarykite ją ir įsitikinkite, kad „XBee“ modulis yra tinkamai prijungtas. Įrenginių tvarkytuvėje patikrinkite „Arduino“ plokštės COM prievadą.
1. Dabar spustelėkite paieškos mygtuką. Tai parodys visus su jūsų nešiojamuoju kompiuteriu prijungtus RF įrenginius. Mūsų atveju jis parodys tik vieną „XBee“ modulį.
2. Pasirinkite „Explorer“ / „Arduino“ plokštės nuoseklųjį prievadą ir spustelėkite Pirmyn.
3. Kitame lange nustatykite USB prievado parametrus, kaip parodyta žemiau, ir spustelėkite Baigti.
4. Pasirinkite „Atrastas įrenginys“ ir spustelėkite Pridėti pasirinktą įrenginį . Šis procesas pridės jūsų „XBee“ modulį prie „XCTU“ informacijos suvestinės.
5. Dabar šiame lange galite sukonfigūruoti savo „XBee“ modulį. Galite naudoti AT komandas arba įdėti duomenis rankiniu būdu. Kaip matote, kairiajame skydelyje rodomas R, o tai reiškia, kad „XBee“ yra maršrutizatoriaus režime. Turime jį padaryti siųstuvo dalies koordinatoriumi.
Pirmiausia atnaujinkite programinę-aparatinę įrangą spustelėdami Atnaujinti programinę aparatinę įrangą.
6. Pasirinkite savo prietaiso produktų grupę, kuri yra jūsų „XBee“ modulio gale. Pasirinkite funkcijų rinkinį ir programinės aparatinės įrangos versiją, kaip paryškinta toliau, ir spustelėkite Atnaujinti.
7. Dabar, norėdami užmegzti ryšį su kitu „XBee“, turite pateikti ID, MY ir DL duomenis. Abiejų modulių ID išlieka tas pats. Tik MY ir DL duomenų mainai, ty MY imtuvui XBee, tampa siųstuvo XBee (koordinatoriumi) DL, o imtuvo XBee DL tampa siųstuvo XBee MY. Padarykite CE koordinatoriumi ir paspauskite mygtuką Rašyti. Kaip parodyta žemiau.
ATDL |
MANO |
||
„XBee 1“ koordinatorius |
|||
„XBee 2“ galinis įrenginys |
8. Parašę aukščiau nurodytus duomenis į siųstuvo dalį, ištraukite juos iš naršyklės plokštės ir įjunkite joje esantį antrąjį „XBee“ modulį. Pakartokite tą patį procesą kaip ir aukščiau, tik DL, MY ir CE pakeitimai. Kadangi mes padarysime antrąjį „XBee“ kaip „End“ įrenginį, CE išskleidžiamajame meniu pasirinkite „End“ įrenginį ir paspauskite mygtuką „Write“.
9. Dabar mūsų „XBee“ moduliai yra paruošti sąsajai su „Raspberry Pi“. Mes prijungti siųstuvą XBee prie nešiojamojo kompiuterio ir imtuvas XBee su Aviečių Pi. Tada duokite komandas imtuvo daliai naudodami nešiojamąjį kompiuterį. nešiojamas kompiuteris.
Imtuvo dalies grandinės schema
Jungtys, skirtos „ ZigBee“ moduliui susieti su „Raspberry PI“, parodytos grandinės schemoje.
Jungtys:
- Tx (pin2) iš XBee -> Tx pin Raspberry Pi
- Rx (pin3) iš XBee -> Rx pin Raspberry Pi
- XBee Gnd (pin10) -> Raspberry Pi kaiščio GND
- „XBee“ Vcc („Pin1“) -> 3,3 v kaiščio „Raspberry Pi“
- „Led“ yra prijungtas prie GPIO 23
Nustatykite „Raspberry Pi“ nuosekliam ryšiui
Dabar mes nustatysime „Raspberry Pi“ nuosekliam ryšiui. Pagal numatytuosius nustatymus nuoseklus aparatinės įrangos Pi prievadas yra išjungtas. Taigi, prieš pradėdami ryšį, turime jį įgalinti.
1. Terminale paleiskite komandą raspi-config .
2. Eikite į 5 sąsajos parinkčių parinktį ir paspauskite „Enter“. Dabar pasirinkite „ P6 Serial“ parinktį, įjunkite ją ir išsaugokite.
Išeikite iš terminalo ir būsite pasirengę užmegzti ryšį tarp „Raspberry Pi“ ir „XBee“. GPIO14 ir 15 veiks atitinkamai kaip Tx ir Rx, ir juos galima rasti / dev / ttyS0 aviečių pi uoste.
Dabar, kai gausime „a“ iš siųstuvo pusės „XBee“, ant ON LED užrašysime pitono scenarijų.
„Raspberry Pi“ programavimas „XBee“ ryšiui
Pabaigoje pateikiama visa „python“ programa, skirta „XBee“ susieti su „Raspberry Pi“.
Pirma, mes turime importuoti laiko, serijos ir RPi.GPIO bibliotekas naudodami importavimo funkciją.
importavimo laikas importuoti serijinį importavimą RPi.GPIO kaip GPIO …
Dabar parašykite nuoseklaus ryšio ypatybes, apibrėžkite prievadą, baudos greitį ir paritetus, kaip nurodyta toliau.
ser = nuoseklus. Serija ( prievadas = '/ dev / ttyS0', baudos greitis = 9600, paritetas = nuoseklus. PARITY_NONE, stopbitai = nuoseklus. STOPBITS_ONE, baitų dydis = nuoseklus. EIGHTBITS, skirtasis laikas = 1 )
Parašykite visus siuntimo ir priėmimo elementus „ while“ cikle.
o 1:
Jei norite siųsti pranešimus į siųstuvo pusę, galite naudoti ser.write funkciją. Jei norite siųsti suskaičiavimus, atžymėkite šias eilutes.
# ser.write (str.encode ('Rašyti skaitiklį:% d \ n'% (skaitiklis))) # time.sleep (1) #counter + = 1
Norėdami gauti pranešimus, turime naudoti ser.readline () funkciją. Saugokite gaunamą pranešimą kintamajame ir patikrinkite jo būklę. Jei gaunamas pranešimas yra „a“, 3 sekundėms įjunkite šviesos diodą ir tada išjunkite LED.
x = ser.readline (). strip () print (x) if x == 'a': GPIO.output (23, GPIO.HIGH) time.sleep (3)….
Pamokos pabaigoje pateikiamas pilnas „Python“ kodas su demonstraciniu vaizdo įrašu. Įklijuokite kodą į bet kurį „Pi“ teksto redaktorių ir išsaugokite. Paleiskite scenarijų terminale naudodami sudo python script_name.py ARBA galite naudoti „Python IDE“ ir „Shell“ scenarijui vykdyti.
Bevielio „XBee“ ryšio testavimas naudojant „Raspberry Pi“
Dabar mes visi pasiruošėme išbandyti savo „XBee“ siųstuvą ir imtuvą. Norėdami duoti komandą siųstuvo daliai, naudosime XCTU konsolės terminalą. Šalia nustatymų parinkties spustelėkite konsolės piktogramą. Tada spustelėkite mygtuką Atidaryti, kad prijungtumėte „XBee“ prie nešiojamojo kompiuterio.
Pulto žurnale įveskite „a“. Pamatysite, kad šviesos diodas įsijungs 3 sekundes ir tada išsijungs.
Tokiu būdu taip pat galite prijungti siųstuvą „XBee“ prie „Arduino“ plokštės, kaip aprašyta ankstesnėje pamokoje, ir priversti „Raspberry Pi“ ir „Arduino“ bendrauti tarpusavyje.