- Zahteve glede strojne opreme
- Konfiguriranje modulov XBee z uporabo XCTU
- Programiranje in testiranje XBee komunikacije z uporabo Arduina
V prejšnjih vajah smo spoznali protokol ZigBee in njegovo arhitekturo ter spoznali tudi brezžično komunikacijo med dvema moduloma Xbee. Zdaj bomo v tej vadnici povezali modul XBee z ploščo Arduino Uno. XBee, povezan z Arduino ploščo, bo deloval kot sprejemnik in bo brezžično komuniciral z drugim modulom XBee, ki je serijsko povezan s prenosnikom z uporabo plošče Explorer. Tako lahko še naprej raziščemo brezžično komunikacijo Arduino z uporabo XBee.
Zahteve glede strojne opreme
- 1 x Arduino Uno
- 2 x modula XBee Pro S2C (lahko se uporabi kateri koli drug model)
- 1 x plošča Xbee explorer (neobvezno)
- 1 x Xbee Breakout deska (neobvezno)
- USB kabli
- LED
Konfiguriranje modulov XBee z uporabo XCTU
Kot smo že izvedeli v prejšnjih vajah, lahko modul XBee deluje kot koordinator, usmerjevalnik ali končna naprava, vendar ga je treba konfigurirati za delovanje v želenem načinu. Pred uporabo modulov XBee z Arduino moramo te module konfigurirati s pomočjo programske opreme XCTU.
Za povezavo modula XBee s prenosnikom se uporablja pretvornik USB v serijski pretvornik ali posebej zasnovana plošča raziskovalca. Preprosto priključite modul XBee na ploščo Explorer in ga s kablom USB priključite na prenosni računalnik.
Če nimate pretvornika ali raziskovalne plošče, lahko ploščo Arduino uporabite kot serijsko napravo USB, ki zlahka komunicira z XBeejem in prenosnikom. Preprosto naložite prazno skico na ploščo Arduino in zdaj se lahko obnaša kot pretvornik USB v serijski.
Povezave za povezovanje modula ZigBee z Arduinom so prikazane v vezju.
Povezave:
- Tx (pin2) XBee -> Tx plošče Arduino
- Rx (pin3) Xbee -> Rx plošče Arduino
- Gnd (pin10) Xbee -> GND plošče Arduino
- Vcc (Pin1) Xbee -> 3.3v plošče Arduino
V tej vadnici se za konfiguracijo modulov XBee uporablja plošča Explorer.
Prenesite programsko opremo XCTU s te povezave in jo namestite. Po prenosu in namestitvi programske opreme XCTU jo odprite in se prepričajte, da je modul XBee pravilno povezan. V upravitelju naprav preverite vrata COM plošče Arduino.
1. korak: - Zdaj kliknite gumb za iskanje. To vam bo pokazalo vse RF naprave, povezane z vašim prenosnikom. V našem primeru bo prikazal samo en modul XBee.
2. korak: - Izberite serijska vrata plošče Explorer / plošče Arduino in kliknite Naprej.
3. korak: - V naslednjem oknu nastavite parametre vrat USB, kot je prikazano spodaj, in kliknite Finish.
4. korak: - Izberite odkrito napravo in kliknite Dodaj izbrano napravo . Ta postopek bo dodal vaš modul XBee na nadzorno ploščo XCTU.
5. korak: - V tem oknu lahko zdaj konfigurirate svoj modul XBee. Uporabite ukaze AT ali podatke vnesite ročno. Kot lahko vidite, se na levi plošči prikazuje R, kar pomeni, da je Xbee v načinu usmerjevalnika. Postati moramo koordinator dela oddajnika.
Najprej posodobite vdelano programsko opremo s klikom na Posodobi vdelano programsko opremo.
6. korak: - Izberite družino izdelkov vaše naprave, ki je na voljo na zadnji strani modula XBee. Izberite nabor funkcij in različico vdelane programske opreme, kot je poudarjeno spodaj, in kliknite Posodobi.
7. korak: - Zdaj morate dati podatke ID, MY in DL, da vzpostavite povezavo z drugimi XBee. ID ostaja enak za oba modula. Samo MY in DL izmenjava podatkov, tj. MY za sprejemnik XBee, postane DL oddajnika XBee (koordinator), DL za sprejemnik XBee pa MY oddajnika XBee. Označite CE za koordinatorja in pritisnite tipko Write. Kot je prikazano spodaj.
ATDL |
ATMY |
||
Koordinator XBee 1 |
|||
Končna naprava XBee 2 |
8. korak: - Po zapisu zgornjih podatkov na del oddajnika ga izvlecite iz plošče raziskovalca in v drugi modul XBee. Ponovite isti postopek kot zgoraj, samo spremembe so DL, MY in CE. Ker bomo drugi XBee naredili kot končno napravo, bomo v spustnem meniju CE izbrali Končno napravo in pritisnili gumb Write.
9. korak: - Zdaj so naši moduli XBee pripravljeni na vmesnik z ploščo Arduino. Oddajnik XBee bomo povezali z prenosnikom in sprejemnikom XBee s ploščo Arduino. Nato s prenosnikom dajte ukaze delu sprejemnika.
Shema vezja za del sprejemnika:
Povezave:
- Tx (pin2) XBee -> Rx plošče Arduino
- Rx (pin3) Xbee -> Tx plošče Arduino
- Gnd (pin10) Xbee -> GND plošče Arduino
- Vcc (Pin1) Xbee -> 3.3v plošče Arduino
Če uporabljate ploščo Arduino za povezavo oddajnika ZigBee z prenosnikom, bodo povezave enake kot pri programiranju ZigBee.
Programiranje in testiranje XBee komunikacije z uporabo Arduina
Zdaj bomo napisali kodo za sprejemnik Arduino, da vklopi LED, ko bo sprejemnik prejel 'a', in utripati LED, ko bo prejel 'b', za ostale znake LED ostane IZKLOPLJENA.
Koda je preprosta in lahko razumljiva. Preverili bomo samo dohodne znake s funkcijo Serial.available () in ta znak shranili v spremenljivko s pomočjo Serial.read (); funkcijo in jo povežite z 'a' in 'b'. Če je ujemanje pravilno, izvedite nalogo, določeno v pogoju. Na koncu je podana celotna koda za del sprejemnika. Kodo naložite v sprejemnik Arduino. Pred nalaganjem odstranite žice Tx in Rx XBee.
Zdaj smo pripravljeni preizkusiti oddajnik in sprejemnik. Za ukaz delu oddajnika bomo uporabili konzolo XCTU. Kliknite ikono konzole blizu možnosti nastavitev. Nato kliknite gumb Odpri, da XBee povežete s prenosnikom.
V dnevnik konzole vnesite 'a'. Videli boste, da se LED dioda vklopi za 2 sekundi in po tem vnesite 'b', da bo LED-lučka petkrat utripala.
Oddajnik XBee lahko priključite tudi na ploščo Arduino, le malo spremenite kodo sprejemnika. Namesto funkcije Serial.read () za pošiljanje znakov uporabite funkcijo Serial.println ().
Oglejte si spodnji predstavitveni video.
Ta nastavitev XBee-Arduino se lahko uporablja za izdelavo številnih uporabnih brezžičnih aplikacij, kot so sistem za avtomatizacijo doma, klepetalnica itd.