- Mga Kinakailangan sa Hardware
- Pag-configure ng XBee Modules gamit ang XCTU
- Programming at Testing XBee komunikasyon gamit ang Arduino
Sa mga nakaraang tutorial natutunan namin ang tungkol sa ZigBee protocol at ang arkitektura nito, at natutunan din ang tungkol sa wireless na komunikasyon sa pagitan ng dalawang mga module ng Xbee. Ngayon sa tutorial na ito ay ia- interface namin ang module ng XBee sa Arduino Uno board. Ang XBee na konektado sa board ng Arduino ay kumikilos bilang isang tatanggap at makikipag-usap ito nang wireless sa iba pang module ng XBee na serial na konektado sa laptop gamit ang isang Explorer Board. Hinahayaan ka ring galugarin ang karagdagang para sa Arduino wireless na komunikasyon gamit ang XBee.
Mga Kinakailangan sa Hardware
- 1 x Arduino Uno
- 2 x XBee Pro S2C modules (anumang iba pang mga modelo ay maaaring magamit)
- 1 x Xbee explorer board (opsyonal)
- 1 x Xbee Breakout board (opsyonal)
- Mga USB cable
- Mga LED
Pag-configure ng XBee Modules gamit ang XCTU
Tulad ng natutunan sa mga nakaraang tutorial na ang module ng XBee ay maaaring kumilos bilang isang Coordinator, Router o isang End device ngunit kailangan itong mai-configure upang gumana sa nais na mode. Kaya bago gamitin ang mga module ng XBee na may Arduino, kailangan nating i-configure ang mga modyul na ito gamit ang XCTU software.
Upang ikonekta ang XBee module sa laptop, ginagamit ang isang USB sa serial converter o partikular na idinisenyo na explorer board. I-hook up lamang ang module ng XBee sa Explorer board at i-plug ito sa laptop gamit ang USB cable.
Kung wala kang anumang converter o explorer board, kung gayon ang isang Arduino board ay maaaring magamit bilang isang USB sa serial device na maaaring madaling makipag-usap sa XBee at laptop. I-upload lamang ang blangko na sketch sa Arduino board at ngayon maaari itong kumilos tulad ng isang USB sa Serial converter.
Ang mga koneksyon para sa interfacing module ng ZigBee na may Arduino ay ipinapakita sa diagram ng circuit.
Mga koneksyon:
- Tx (pin2) ng XBee -> Tx ng Arduino board
- Rx (pin3) ng Xbee -> Rx ng Arduino board
- Gnd (pin10) ng Xbee -> GND ng Arduino board
- Vcc (Pin1) ng Xbee -> 3.3v ng Arduino board
Dito sa tutorial na ito, ginagamit ang isang Explorer board upang i-configure ang mga module ng XBee.
I-download ang XCTU software mula sa link na ito at i-install ito. Matapos ang pag-download at pag-install ng XCTU software, buksan ito at tiyakin na ang iyong XBee module ay maayos na konektado. Suriin ang COM port ng Arduino board sa manager ng aparato.
Hakbang 1: - Ngayon, mag-click sa pindutan ng paghahanap. Ipapakita nito sa iyo ang lahat ng mga aparatong RF na konektado sa iyong laptop. Sa aming kaso, ipapakita lamang nito ang isang module ng XBee.
Hakbang 2: - Piliin ang Serial port ng Explorer board / Arduino board at mag-click sa Susunod.
Hakbang 3: - Sa susunod na window, itakda ang mga parameter ng USB port tulad ng ipinakita sa ibaba at mag-click sa Tapusin.
Hakbang 4: - Piliin ang Natuklasan na aparato at mag-click sa Magdagdag ng napiling aparato . Ang prosesong ito ay idaragdag ang iyong module na XBee sa XCTU dashboard.
Hakbang 5: - Ngayon, maaari mong i-configure ang iyong module na XBee sa window na ito. Gumamit ng alinman sa mga utos ng AT o ilagay nang manu-mano ang data. Tulad ng nakikita mo, mayroong R na nagpapakita sa kaliwang panel na nangangahulugang ang Xbee ay nasa router mode. Kailangan naming gawin itong Coordinator para sa bahagi ng transmitter.
Una, i-update ang Firmware sa pamamagitan ng pag-click sa Update firmware.
Hakbang 6: - Piliin ang pamilya ng Produkto ng iyong aparato na magagamit sa likod ng module ng XBee. Piliin ang set ng function at bersyon ng firmware na naka-highlight sa ibaba at mag- click sa I-update.
Hakbang 7: - Ngayon, kailangan mong bigyan ang data ng ID, MY at DL upang makakonekta sa ibang XBee. Ang ID ay mananatiling pareho para sa parehong mga module. Ang MY at DL data interchange ie lamang na MY para sa tatanggap na XBee ay naging DL ng transmiter XBee (coordinator) at ang DL para sa receiver na XBee ay naging AKIN ng transmiter XBee. Gawin ang CE bilang Coordinator at pagkatapos ay pindutin ang pindutan ng Sumulat. Tulad ng ipinakita sa ibaba.
ATDL |
SA AKING |
||
XBee 1 coordinator |
|||
XBee 2 end na aparato |
Hakbang 8: - Matapos isulat ang data sa itaas sa bahagi ng transmitter, i-plug ito mula sa explorer board at i-plug ito sa pangalawang module ng XBee. Ulitin ang parehong proseso tulad ng mga pagbabago sa itaas lamang ang DL, MY, at CE. Gagawin namin ang pangalawang XBee bilang End device kaya't sa drop down na menu ng CE, piliin ang End device at pindutin ang pindutang Isulat.
Hakbang 9: - Ngayon, ang aming mga module ng XBee ay handa nang mag-interface sa Arduino board. Susubukan naming ikonekta ang transmiter XBee sa laptop at receiver XBee sa Arduino board. Pagkatapos ay magbigay ng mga utos sa bahagi ng tatanggap gamit ang laptop.
Circuit Diagram para sa Bahaging Tagatanggap:
Mga koneksyon:
- Tx (pin2) ng XBee -> Rx ng Arduino board
- Rx (pin3) ng Xbee -> Tx ng Arduino board
- Gnd (pin10) ng Xbee -> GND ng Arduino board
- Vcc (Pin1) ng Xbee -> 3.3v ng Arduino board
Kung gumagamit ka ng Arduino board upang ikonekta ang transmitter ZigBee sa laptop, ang mga koneksyon ay magiging katulad ng para sa pagprograma ng ZigBee.
Programming at Testing XBee komunikasyon gamit ang Arduino
Ngayon, magsusulat kami ng isang code para sa tatanggap na Arduino upang buksan ON ang LED tuwing ang bahagi ng tatanggap ay tumatanggap ng 'a', at kumurap sa LED tuwing nakakatanggap ito ng 'b', para sa iba pang mga character na LED ay mananatiling OFF.
Ang code ay simple at madaling maunawaan. Susuriin lamang namin ang mga papasok na character gamit ang Serial.available () function at iimbak ang character na ito sa isang variable gamit ang Serial.read (); pagpapaandar at itugma ito sa 'a' at 'b'. Kung ang tugma ay tama pagkatapos ay isagawa ang gawain na tinukoy sa kundisyon. Ang kumpletong code para sa bahagi ng Receiver ay ibinibigay sa huli. I-upload ang code sa bahagi ng Tatanggap na Arduino. Alisin ang Tx at Rx wires ng XBee bago i-upload.
Ngayon, nakatakda kaming lahat upang subukan ang aming transmiter at tatanggap. Upang maibigay ang utos sa bahagi ng transmiter, gagamitin namin ang terminal ng console ng XCTU. Mag-click sa icon ng Console malapit sa pagpipilian ng mga setting. Pagkatapos, mag-click sa Buksan na pindutan upang ikonekta ang XBee sa laptop.
Ipasok ang 'a' sa log ng Console. Makikita mo na ang LED ay ON ON ng 2 segundo at pagkatapos ay ipasok ang 'b' upang gawin ang led blink para sa 5 beses.
Maaari mo ring ikonekta ang transmitter XBee sa Arduino board, baguhin lamang nang kaunti ang code ng tagatanggap. Sa lugar ng pagpapaandar ng Serial.read (), gamitin ang Serial.println () na pagpapaandar upang maipadala ang mga character.
Suriin ang Video ng Demonstrasyon na ibinigay sa ibaba.
Ang XBee-Arduino setup na ito ay maaaring magamit upang makagawa ng maraming kapaki-pakinabang na mga wireless application tulad ng Home automation system, chat room atbp.