آموزش راه اندازی ماژول XBee با رزبری پای

محتویات
در این پروژه ما ماژول ایکس بی را به رزبری پای متصل میکنیم. رزبری پای در اینجا به عنوان گیرنده عمل میکند و ماژول Xbee explorer به لپتاپ متصل است.
پیکربندی ماژول XBee با استفاده از XCTU
ماژول XBee می تواند به عنوان یک کوردیناتور ، روتر یا یک دستگاه End عمل کند اما برای کار در حالت دلخواه باید پیکربندی شود. بنابراین ، قبل از استفاده از ماژول های XBee با Raspberry Pi ، باید این ماژول ها را با استفاده از نرم افزار XCTU پیکربندی کنیم.
برای اتصال ماژول XBee به لپ تاپ ، از مبدل USB به سریال یا برد explorer استفاده می شود. فقط کافی است ماژول XBee را به برد Explorer وصل کرده و با استفاده از کابل USB آن را به لپ تاپ وصل کنید.
فیلم زیر به شما در درک نحوه ارتباط بی سیم Xbee با برد رزبری پای و لپ تاپ کمک میکند.
اگر برد مبدل یا اکسپلورر ندارید ، می توان از برد Arduino به عنوان USB به دستگاه سریال استفاده کنید که به راحتی با XBee و لپ تاپ ارتباط برقرار می کند. کافیست کد خالی را در برد آردوینو بارگذاری کنید و اکنون می تواند مانند مبدل USB به Serial رفتار کند.
پیکربندی ماژول های XBee
در این آموزش ، از یک برد اکسپلورر برای پیکربندی ماژول های XBee استفاده می شود.
نرم افزار XCTU را بارگیری (دانلود نرم افزار XCTU) و نصب کنید. پس از بارگیری و نصب نرم افزار XCTU ، آن را باز کنید و مطمئن شوید که ماژول XBee به درستی وصل شده است. پورت COM از برد Arduino را در قسمت device manager بررسی کنید.
1. اکنون ، بر روی دکمه جستجو کلیک کنید. این به شما تمام دستگاههای RF متصل به لپ تاپ شما را نشان می دهد. در مورد ما ، فقط یک ماژول XBee را نشان می دهد.
2. پورت سریال برد Explorer / Arduino را انتخاب کرده و روی Next کلیک کنید.
3. در پنجره بعدی ، پارامترهای پورت USB را مطابق شکل زیر تنظیم کنید و بر روی Finish کلیک کنید.
4. دستگاه را انتخاب کرده و بر روی Add selected device کلیک کنید. این فرآیند ماژول XBee شما را به داشبورد XCTU اضافه می کند.
5. اکنون می توانید ماژول XBee خود را در این پنجره پیکربندی کنید. می توانید از دستورات AT استفاده کنید یا داده ها را به صورت دستی قرار دهید. همانطور که می بینید ، R در صفحه سمت چپ وجود دارد که به معنی این است که XBee در حالت روتر است. ما باید آن را برای قسمت فرستنده هماهنگ کنیم.
ابتدا Firmware را با کلیک روی سیستم عامل Update به روز کنید.
6. Product family دستگاه خود را که در پشت ماژول XBee موجود است انتخاب کنید. نسخه عملکرد و نسخه سیستم عامل را مطابق شکل زیر انتخاب کنید و بر روی Update کلیک کنید.
7. حالا ، شما باید داده های ID ، MY و DL را بدهید تا با سایر ماژول های XBee ارتباط برقرار کنید. ID برای هر دو ماژول یکسان است. فقط تبادل داده MY و DL ، یعنی MY برای گیرنده XBee به DL فرستنده XBee (هماهنگ کننده) تبدیل می شود و DL برای گیرنده XBee به MY فرستنده XBee تبدیل می شود. CE را به عنوان Coordinator درست کنید و سپس دکمه Write را بزنید. مطابق شکل زیر :
ATDL | ATMY | ATID | |
XBee 1 coordinator | 1234 | 5678 | 2244 |
XBee 2 end device | 5678 | 1234 | 2244 |
8. بعد از نوشتن داده های فوق در قسمت فرستنده ، آن را از صفحه اکسپلورر جدا کرده و ماژول دوم XBee را در آن وصل کنید. همان فرآیند قبلی را تکرار کنید. تغییرات فقط DL ، MY و CE هستند. ما دومین XBee را بعنوان دستگاه End خواهیم ساخت ، بنابراین در منوی کشویی CE ، دستگاه End را انتخاب کرده و دکمه Write را بزنید.
9. اکنون ، ماژول های XBee ما آماده هستند تا با رزبری پای ارتباط برقرار کنند. ما فرستنده XBee را به لپ تاپ و گیرنده XBee را به Raspberry pi متصل می کنیم. سپس با استفاده از لپ تاپ دستوراتی را به قسمت گیرنده میفرستیم.
شماتیک مدار قسمت گیرنده
اتصالات ماژول ZigBee با Raspberry PI در شماتیک مدار نشان داده شده است.
- Tx (pin2)XBee -> Tx Raspberry Pi
- Rx(pin3) XBee -> Rx Raspberry Pi
- Gnd (pin10) XBee -> GND Raspberry Pi
- Vcc (Pin1) XBee -> 3.3v Raspberry Pi
- Led -> GPIO 23 Raspberry Pi
قطعات مورد نیاز
- رزبری پای
- دو عدد ماژول XBee Pro S2C (هر مدل دیگری قابل استفاده است)
- اکسپلورر XBee (اختیاری)
- برد Xbee Breakout (اختیاری)
- ال ای دی
تنظیم ارتباط سریال در رزبری پای
اکنون Raspberry Pi را برای ارتباط سریال تنظیم خواهیم کرد. به طور پیش فرض ، پورت سریال سخت افزاری Pi غیرفعال است. بنابراین ، ما باید قبل از شروع اتصال ، آن را فعال کنیم.
1. در ترمینال ، دستور raspi-config را اجرا کنید.
2. به گزینه 5 Interfacing بروید و Enter را بزنید. اکنون گزینه P6 Serial را انتخاب کرده و Enable کنید و سپس ذخیره کنید.
اکنون ، هر زمان که از طرف فرستنده XBee سیگنالی دریافت کنیم ، یک اسکریپت پایتون اجرا میشود..
برنامه نویسی Raspberry Pi برای ارتباطات XBee
کد کامل پایتون در انتهای صفحه در فایل دانلودی قرار داده شده است. در اینجا بعضی از قسمت های کد را بررسی میکنیم.
ابتدا باید کتابخانه های time، serial و RPi.GPIO را با استفاده از عملکرد import وارد کنیم.
import time import serial import RPi.GPIO as GPIO …
اکنون ، اتصال سریال را پیکربندی میکنیم،
ser = serial.Serial( port='/dev/ttyS0', baudrate = 9600, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout=1 )
تمام عناصر ارسال و دریافت را در While مینویسیم.
while 1:
برای ارسال پیام به سمت فرستنده می توانید از عملکرد ser.write استفاده کنید. خطوط زیر را برای ارسال شمارش هستند.
#ser.write(str.encode('Write counter: %d \n'%(counter))) #time.sleep(1) #counter += 1
برای دریافت پیام ها باید از تابع ser.readline () استفاده کنیم. پیام ورودی را در یک متغیر ذخیره میکنیم و شرایط را بررسی میکنیم. اگر پیام دریافتی “a” است ، 3 ثانیه LED روشن میشود و سپس LED خاموش میشود.
x=ser.readline().strip() print(x) if x == 'a': GPIO.output(23,GPIO.HIGH) time.sleep(3) .. ..
سپس شما فقط باید عبارت a را در Console Log فسمت فرستنده مانند تصویر زیر وارد کنید.
موارد موجود در فایل : سورس کامل ، شماتیک
برای دانلود فایل ها باید حساب کاربری داشته باشید ثبت نام / ورود