- Persyaratan Hardware
- Konfigurasi Modul XBee menggunakan XCTU
- Diagram Sirkuit untuk Bagian Penerima
- Atur Raspberry Pi untuk komunikasi Serial
- Pemrograman Raspberry Pi untuk komunikasi XBee
- Menguji komunikasi XBee nirkabel menggunakan Raspberry Pi
Dalam tutorial sebelumnya kami menghubungkan modul XBee dengan Arduino Uno dan membuatnya berkomunikasi secara nirkabel menggunakan modul XBee. Sekarang kita akan menghubungkan modul XBee dengan Raspberry Pi yang akan bertindak sebagai penerima dan membuatnya berkomunikasi secara nirkabel dengan modul XBee lain (papan penjelajah XBee) yang terhubung secara serial dengan laptop.
Persyaratan Hardware
- 1 x Raspberry Pi dengan Raspbian Terpasang di dalamnya
- 2 x XBee Pro S2C modul (model lain dapat digunakan)
- 1 x papan penjelajah XBee (opsional)
- 1 x Xbee Breakout board (opsional)
- Kabel USB
- LED
Diasumsikan bahwa Raspberry Pi Anda sudah di-flash dengan sistem operasi. Jika tidak, ikuti tutorial Memulai Raspberry Pi sebelum melanjutkan. Di sini kami menggunakan Rasbian Jessie yang diinstal Raspberry Pi 3.
Di sini Monitor Eksternal yang menggunakan kabel HDMI digunakan sebagai tampilan untuk terhubung dengan Raspberry Pi. Jika Anda tidak memiliki monitor, Anda dapat menggunakan klien SSH (Putty) atau server VNC untuk terhubung ke Raspberry pi menggunakan Laptop atau komputer. Pelajari lebih lanjut tentang menyiapkan Raspberry Pi tanpa kepala di sini.
Konfigurasi Modul XBee menggunakan XCTU
Seperti yang telah kita pelajari di tutorial sebelumnya tentang Pengenalan ZigBee bahwa modul XBee dapat bertindak sebagai Koordinator, Router, atau perangkat Akhir tetapi harus dikonfigurasi untuk bekerja dalam mode yang diinginkan. Jadi, sebelum menggunakan modul XBee dengan Raspberry Pi, kita harus mengkonfigurasi modul tersebut menggunakan software XCTU.
Untuk menghubungkan modul XBee dengan laptop, USB ke serial converter atau papan penjelajah yang dirancang khusus digunakan. Cukup hubungkan modul XBee ke papan Explorer dan hubungkan dengan laptop menggunakan kabel USB.
Jika Anda tidak memiliki papan konverter atau penjelajah, maka papan Arduino dapat digunakan sebagai perangkat USB ke serial yang dapat dengan mudah berkomunikasi dengan XBee dan laptop. Cukup unggah sketsa kosong di papan Arduino dan sekarang dapat berperilaku seperti konverter USB ke Serial.
Konfigurasi Modul XBee:
Di sini, di tutorial ini, papan Explorer digunakan untuk mengkonfigurasi modul XBee.
Unduh perangkat lunak XCTU dari tautan ini dan instal. Setelah mengunduh dan menginstal perangkat lunak XCTU, buka dan pastikan modul XBee Anda terhubung dengan benar. Periksa port COM dari papan Arduino di pengelola perangkat.
1. Sekarang, klik tombol pencarian. Ini akan menunjukkan kepada Anda semua perangkat RF yang terhubung dengan laptop Anda. Dalam kasus kami, ini hanya akan menampilkan satu modul XBee.
2. Pilih port Serial dari papan Explorer / papan Arduino dan klik Berikutnya.
3. Di jendela berikutnya, atur parameter port USB seperti yang ditunjukkan di bawah ini dan klik Selesai.
4. Pilih perangkat yang Ditemukan dan klik Tambahkan perangkat yang dipilih . Proses ini akan menambahkan modul XBee Anda ke dashboard XCTU.
5. Sekarang, Anda dapat mengkonfigurasi modul XBee Anda di jendela ini. Anda dapat menggunakan perintah AT atau memasukkan data secara manual. Seperti yang Anda lihat, ada R yang ditampilkan di panel kiri yang berarti XBee dalam mode router. Kita harus menjadikannya sebagai Koordinator untuk bagian pemancar.
Pertama, perbarui Firmware dengan mengklik Perbarui firmware.
6. Pilih keluarga Produk perangkat Anda yang tersedia di belakang modul XBee Anda. Pilih set fungsi dan versi firmware seperti yang disorot di bawah ini dan klik Perbarui.
7. Sekarang, Anda harus memberikan data ID, MY dan DL untuk membuat koneksi dengan XBee lain. ID tetap sama untuk kedua modul. Hanya pertukaran data MY dan DL yaitu MY untuk penerima XBee menjadi DL dari pemancar XBee (koordinator) dan DL untuk penerima XBee menjadi MY dari pemancar XBee. Jadikan CE sebagai Koordinator lalu tekan tombol Write. Seperti gambar dibawah ini.
ATDL |
ATMY |
||
Koordinator XBee 1 |
|||
Perangkat akhir XBee 2 |
8. Setelah menulis data di atas ke bagian pemancar, cabut dari papan penjelajah dan colokkan modul XBee kedua di dalamnya. Ulangi proses yang sama seperti di atas hanya perubahan DL, MY, dan CE. Karena kita akan menjadikan XBee kedua sebagai perangkat Akhir, jadi di menu drop-down CE, pilih perangkat Akhir dan tekan tombol Tulis.
9. Sekarang, modul XBee kami siap untuk berinteraksi dengan Raspberry Pi. Kami akan menghubungkan pemancar XBee ke laptop dan penerima XBee dengan Raspberry Pi. Kemudian berikan perintah ke bagian penerima menggunakan laptop. laptop.
Diagram Sirkuit untuk Bagian Penerima
Koneksi untuk menghubungkan modul ZigBee dengan Raspberry PI ditunjukkan pada diagram sirkuit.
Koneksi:
- Tx (pin2) dari XBee -> Tx dari pin Raspberry Pi
- Rx (pin3) dari XBee -> Rx dari pin Raspberry Pi
- Gnd (pin10) dari XBee -> GND dari pin Raspberry Pi
- Vcc (Pin1) dari XBee -> 3.3v dari pin Raspberry Pi
- Led terhubung ke GPIO 23
Atur Raspberry Pi untuk komunikasi Serial
Sekarang, kita akan mengatur Raspberry Pi untuk komunikasi Serial. Secara default, port serial perangkat keras Pi dinonaktifkan. Jadi, kami harus mengaktifkannya sebelum memulai koneksi.
1. Di terminal, jalankan perintah raspi-config .
2. Pergi ke opsi 5 opsi Interfacing dan tekan enter. Sekarang, pilih opsi P6 Serial dan Aktifkan dan kemudian simpan.
Keluar dari terminal dan Anda siap untuk membuat koneksi antara Raspberry Pi dan XBee. GPIO14 dan 15 masing-masing akan bertindak sebagai Tx dan Rx dan ini tersedia di port / dev / ttyS0 dari raspberry pi.
Sekarang, kita akan menulis skrip python ke ON LED setiap kali kita menerima 'a' dari sisi pemancar XBee.
Pemrograman Raspberry Pi untuk komunikasi XBee
Program python lengkap untuk menghubungkan XBee dengan Raspberry Pi diberikan di bagian akhir.
Pertama, kita harus mengimpor pustaka waktu, serial dan RPi.GPIO menggunakan fungsi import.
impor waktu impor serial impor RPi.GPIO sebagai GPIO …
Sekarang, tulis properti koneksi serial, tentukan port, baudrate dan paritas seperti di bawah ini.
ser = serial.Serial ( port = '/ dev / ttyS0', baudrate = 9600, parity = serial.PARITY_NONE, stopbits = serial.STOPBITS_ONE, bytesize = serial.EIGHTBITS, timeout = 1 )
Tulis semua elemen pengirim dan penerima di loop sementara .
sedangkan 1:
Anda dapat menggunakan fungsi ser.write untuk mengirim pesan ke sisi pemancar. Batalkan komentar pada baris di bawah ini untuk mengirim hitungan.
# ser.write (str.encode ('Write counter:% d \ n'% (counter))) # time.sleep (1) #counter + = 1
Untuk menerima pesan kita harus menggunakan fungsi ser.readline () . Simpan pesan masuk dalam variabel dan periksa kondisinya. Jika pesan yang masuk adalah 'a' maka nyalakan LED selama 3 detik lalu matikan LED.
x = ser.readline (). strip () print (x) if x == 'a': GPIO.output (23, GPIO.HIGH) time.sleep (3)….
Kode Python lengkap dengan Video Demonstrasi diberikan di akhir tutorial. Tempel kode di editor teks apa pun dari Pi dan simpan. Jalankan skrip di terminal menggunakan sudo python script_name.py ATAU Anda dapat menggunakan Python IDE dan Shell untuk menjalankan skrip.
Menguji komunikasi XBee nirkabel menggunakan Raspberry Pi
Sekarang, kami siap untuk menguji pemancar dan penerima XBee kami. Untuk memberikan perintah ke bagian pemancar, kita akan menggunakan terminal konsol XCTU. Klik ikon Konsol di dekat opsi pengaturan. Kemudian, klik tombol Buka untuk menghubungkan XBee ke laptop.
Masukkan 'a' di log Konsol. Anda akan melihat bahwa LED akan menyala selama 3 detik dan kemudian mati.
Dengan cara ini Anda juga dapat menghubungkan pemancar XBee ke papan Arduino seperti yang dijelaskan pada tutorial sebelumnya, dan membuat Raspberry Pi dan Arduino dapat berkomunikasi satu sama lain.