آموزش رزبری پایپروژه رزبری پای

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

در این پروژه ما ماژول ایکس بی را به رزبری پای متصل میکنیم. رزبری پای در اینجا به عنوان گیرنده عمل میکند و ماژول Xbee explorer به لپتاپ متصل است.ماژول های XBee و برد رزبری پای

پیکربندی ماژول 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 را نشان می دهد.

پیکربندی ماژول XBee با استفاده از XCTU

2. پورت سریال برد Explorer / Arduino را انتخاب کرده و روی Next کلیک کنید.

پیکربندی ماژول های XBee

3. در پنجره بعدی ، پارامترهای پورت USB را مطابق شکل زیر تنظیم کنید و بر روی Finish کلیک کنید.

استفاده از ماژول ایکس بی با Raspberry pi

4. دستگاه را انتخاب کرده و بر روی Add selected device کلیک کنید. این فرآیند ماژول XBee شما را به داشبورد XCTU اضافه می کند.

ماژول XBee شما را به داشبورد XCTU

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید

5. اکنون می توانید ماژول XBee خود را در این پنجره پیکربندی کنید. می توانید از دستورات AT استفاده کنید یا داده ها را به صورت دستی قرار دهید. همانطور که می بینید ، R در صفحه سمت چپ وجود دارد که به معنی این است که XBee در حالت روتر است. ما باید آن را برای قسمت فرستنده هماهنگ کنیم.

ابتدا Firmware را با کلیک روی سیستم عامل Update به روز کنید.

بروزرسانی XBee Firmware

6. Product family دستگاه خود را که در پشت ماژول XBee موجود است انتخاب کنید. نسخه عملکرد و نسخه سیستم عامل را مطابق شکل زیر انتخاب کنید و بر روی Update کلیک کنید.

پیکربندی بندی اطلاعات ماژول Xbee

7. حالا ، شما باید داده های ID ، MY و DL را بدهید تا با سایر ماژول های  XBee ارتباط برقرار کنید. ID برای هر دو ماژول یکسان است. فقط تبادل داده MY و DL ، یعنی MY برای گیرنده XBee به DL فرستنده XBee (هماهنگ کننده) تبدیل می شود و DL برای گیرنده XBee به MY فرستنده XBee تبدیل می شود. CE را به عنوان Coordinator درست کنید و سپس دکمه Write را بزنید. مطابق شکل زیر :

آموزش کامل برقراری ارتباط رزبری پای و Xbee

 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 در شماتیک مدار نشان داده شده است.

اتصالات ماژول 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

قطعات مورد نیاز

  1. رزبری پای
  2. دو عدد ماژول XBee Pro S2C (هر مدل دیگری قابل استفاده است)
  3. اکسپلورر XBee (اختیاری)
  4. برد Xbee Breakout (اختیاری)
  5. ال ای دی
قطعات مورد نیاز را از فروشگاه قطعات آیرنکس تهیه کنید.

تنظیم ارتباط سریال در رزبری پای

اکنون 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 فسمت فرستنده مانند تصویر زیر وارد کنید.

برنامه نویسی Raspberry Pi برای ارتباطات XBee

موارد موجود در فایل : سورس کامل ، شماتیک

5 (4 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *