في الدروس السابقة تعلمنا عن بروتوكول ZigBee وبنيته ، وتعلمنا أيضًا عن الاتصال اللاسلكي بين وحدتي Xbee. الآن في هذا البرنامج التعليمي سنقوم بواجهة وحدة XBee مع لوحة Arduino Uno. سيعمل XBee المتصل بلوحة Arduino كجهاز استقبال وسوف يتصل لاسلكيًا بوحدة XBee الأخرى المتصلة تسلسليًا بالكمبيوتر المحمول باستخدام لوحة Explorer. لذلك دعنا نستكشف المزيد عن اتصالات Arduino اللاسلكية باستخدام XBee.
متطلبات الأجهزة
- 1 × اردوينو أونو
- 2 × وحدات XBee Pro S2C (يمكن استخدام أي طراز آخر)
- 1 × إكسبي إكسبلورر بورد (اختياري)
- 1 × Xbee Breakout board (اختياري)
- كبلات USB
- المصابيح
تكوين وحدات XBee باستخدام XCTU
كما تعلمنا في البرامج التعليمية السابقة ، يمكن أن تعمل وحدة XBee كمنسق أو جهاز توجيه أو جهاز نهاية ولكن يجب تكوينها للعمل في الوضع المطلوب. لذا قبل استخدام وحدات XBee مع Arduino ، يتعين علينا تكوين هذه الوحدات باستخدام برنامج XCTU.
لتوصيل وحدة XBee بالكمبيوتر المحمول ، يتم استخدام USB إلى محول تسلسلي أو لوحة مستكشف مصممة خصيصًا. ما عليك سوى توصيل وحدة XBee بلوحة Explorer وتوصيلها بالكمبيوتر المحمول باستخدام كابل USB.
إذا لم يكن لديك أي محول أو لوحة مستكشف ، فيمكن استخدام لوحة Arduino كجهاز USB إلى جهاز تسلسلي يمكنه التواصل بسهولة مع XBee والكمبيوتر المحمول. ما عليك سوى تحميل رسم فارغ في لوحة Arduino والآن يمكن أن يتصرف مثل محول USB إلى Serial.
تظهر الاتصالات الخاصة بتوصيل وحدة ZigBee مع Arduino في مخطط الدائرة.
روابط:
- Tx (pin2) من XBee -> Tx of Arduino board
- Rx (pin3) من Xbee -> Rx للوحة Arduino
- Gnd (pin10) من Xbee -> GND للوحة Arduino
- Vcc (Pin1) لـ Xbee -> 3.3 فولت من لوحة Arduino
هنا في هذا البرنامج التعليمي ، يتم استخدام لوحة Explorer لتكوين وحدات XBee النمطية.
قم بتنزيل برنامج XCTU من هذا الرابط وقم بتثبيته. بعد تنزيل برنامج XCTU وتثبيته ، افتحه وتأكد من توصيل وحدة XBee بشكل صحيح. تحقق من منفذ COM بلوحة Arduino في مدير الجهاز.
الخطوة الأولى: - الآن ، انقر فوق زر البحث. سيُظهر لك هذا جميع أجهزة التردد اللاسلكي المتصلة بجهاز الكمبيوتر المحمول. في حالتنا ، ستظهر وحدة XBee واحدة فقط.
الخطوة 2: - حدد المنفذ التسلسلي للوحة Explorer / لوحة Arduino وانقر فوق التالي.
الخطوة 3: - في النافذة التالية ، اضبط معلمات منفذ USB كما هو موضح أدناه وانقر فوق إنهاء.
الخطوة 4: - حدد الجهاز الذي تم اكتشافه وانقر فوق إضافة جهاز محدد . ستضيف هذه العملية وحدة XBee إلى لوحة معلومات XCTU.
الخطوة 5: - الآن ، يمكنك تكوين وحدة XBee الخاصة بك في هذه النافذة. استخدم إما أوامر AT أو ضع البيانات يدويًا. كما ترى ، هناك R تظهر على اللوحة اليسرى مما يعني أن Xbee في وضع جهاز التوجيه. علينا أن نجعله المنسق لجزء الارسال.
أولاً ، قم بتحديث البرنامج الثابت بالنقر فوق تحديث البرنامج الثابت.
الخطوة 6: - اختر عائلة المنتج الخاصة بجهازك والمتوفرة على ظهر وحدة XBee. حدد مجموعة الوظائف وإصدار البرنامج الثابت كما هو موضح أدناه وانقر فوق تحديث.
الخطوة 7: الآن ، يجب عليك تقديم بيانات ID و MY و DL لإجراء اتصال مع XBee الأخرى. المعرف يظل كما هو لكل من الوحدات النمطية. فقط تبادل البيانات MY و DL ، أي MY لجهاز الاستقبال XBee يصبح DL لجهاز الإرسال XBee (المنسق) و DL لجهاز الاستقبال XBee يصبح MY لجهاز الإرسال XBee. اجعل CE منسقًا ثم اضغط على زر الكتابة. كما هو مبين أدناه.
ATDL |
ATMY |
||
منسق XBee 1 |
|||
جهاز XBee 2 الطرفي |
الخطوة 8: - بعد كتابة البيانات أعلاه إلى جزء جهاز الإرسال ، قم بتوصيلها من لوحة المستكشف وقم بتوصيلها بوحدة XBee الثانية. كرر نفس العملية على النحو الوارد أعلاه فقط التغييرات هي DL و MY و CE. نظرًا لأننا سنصنع XBee الثاني كجهاز End ، في القائمة المنسدلة CE ، حدد جهاز النهاية واضغط على زر الكتابة.
الخطوة 9: الآن ، وحدات XBee جاهزة للتفاعل مع لوحة Arduino. سنقوم بتوصيل جهاز الإرسال XBee بجهاز الكمبيوتر المحمول وجهاز الاستقبال XBee بلوحة Arduino. ثم أعط أوامر لجزء المتلقي باستخدام الكمبيوتر المحمول.
مخطط الدائرة لجزء المستقبل:
روابط:
- Tx (pin2) من XBee -> Rx للوحة Arduino
- Rx (pin3) من Xbee -> Tx of Arduino board
- Gnd (pin10) من Xbee -> GND للوحة Arduino
- Vcc (Pin1) لـ Xbee -> 3.3 فولت من لوحة Arduino
إذا كنت تستخدم لوحة Arduino لتوصيل جهاز الإرسال ZigBee بالكمبيوتر المحمول ، فستكون الاتصالات مماثلة لبرمجة ZigBee.
برمجة واختبار اتصالات XBee باستخدام Arduino
الآن ، سنكتب رمزًا لجهاز الاستقبال Arduino لتشغيل مؤشر LED عندما يتلقى جزء المتلقي "a" ، ويومض مؤشر LED كلما تلقى الحرف "b" ، بالنسبة للأحرف الأخرى ، سيظل LED مغلقًا.
الكود بسيط وسهل الفهم. سنقوم فقط بفحص الأحرف الواردة باستخدام دالة Serial.available () وتخزين هذه الشخصية في متغير باستخدام Serial.read () ؛ وظيفة ومطابقتها مع "أ" و "ب". إذا كانت المطابقة صحيحة ، فقم بتنفيذ المهمة المحددة في الشرط. يتم إعطاء رمز كامل لجزء المستقبل في النهاية. قم بتحميل الكود في جزء جهاز الاستقبال Arduino. قم بإزالة أسلاك Tx و Rx من XBee قبل التحميل.
الآن ، قررنا جميعًا اختبار جهاز الإرسال والاستقبال. لإعطاء الأوامر لجزء المرسل ، سنستخدم محطة وحدة التحكم XCTU. انقر فوق أيقونة وحدة التحكم بالقرب من خيار الإعدادات. ثم ، انقر فوق الزر فتح لتوصيل XBee بالكمبيوتر المحمول.
أدخل "أ" في سجل وحدة التحكم. سترى أن LED سيتم تشغيله لمدة ثانيتين وبعد ذلك أدخل "b" لجعل وميض LED 5 مرات.
يمكنك أيضًا توصيل جهاز الإرسال XBee بلوحة Arduino ، فقط قم بتغيير رمز جهاز الاستقبال قليلاً. بدلاً من وظيفة Serial.read () ، استخدم الدالة Serial.println () لإرسال الأحرف.
تحقق من الفيديو التوضيحي أدناه.
هذا الإعداد XBee-اردوينو يمكن ان تستخدم في صنع العديد من التطبيقات المفيدة مثل اللاسلكية الرئيسية نظام التشغيل الآلي، وغرفة الدردشة الخ