تعرف على كيفية إنشاء اتصال بعيد المدى باستخدام اثنين من Arduinos من خلال وحدة HC-12.
غالبًا ما نرغب في تشغيل العديد من المشغلات عن بُعد مثل المصابيح والمحركات والمحركات الأخرى.
ومع ذلك ، هناك حالات يصبح فيها استخدام الأنظمة السلكية لقيادة هذه المشغلات غير عملي بسبب المسافة بين المشغل ونظام القيادة أو صعوبة تنفيذ تركيب الكابلات اللازمة لتنفيذ العملية المطلوبة.
في هذه الحالات ، يكون جهاز التحكم عن بعد بديلاً لاستخدامه ، وهناك العديد من أجهزة الإرسال والاستقبال اللاسلكية التي يمكن استخدامها ، مثل وحدة HC-12 و NRF24L01 و Lora وغيرها.
في هذه المقالة ، سوف نتعلم كيفية بناء NEXTPCB Electronic Board لإنشاء نظام أتمتة والتحكم في العديد من الأجهزة عن بعد.
سوف يحتوي NEXTPCBPCB على وحدة الإرسال / الاستقبال الراديوي HC-12 و Arduino Nano الذي سيكون المستقبل و HC-12 مع Arduino Uno الذي سيكون جهاز الإرسال لأداء تنشيط LEDs على مسافة
من خلال هذا المقال سوف:
قم بإجراء تجميع الدائرة على اللوحة الأولية
افهم كيف تعمل وحدة HC-12
قم بإجراء اتصال Arduino Nano / Arduino Nano بوحدة HC-12
تفعيل الجهاز عن بعد
افهم كيف يعمل الاتصال التسلسلي مع جهاز الإرسال والاستقبال اللاسلكي
قم بإنشاء NEXTPCB ثنائي الفينيل متعدد الكلور
بناء نظام أتمتة التحكم عن بعد
كما ذكرنا سابقًا ، يتكون المشروع من إنشاء نظام لتنشيط الأجهزة عن بُعد وإنشاء لوحة دوائر مطبوعة NEXTPCB للتحكم في الأجهزة.
وحدة HC-12 هي جهاز إرسال واستقبال لاسلكي وتردد تشغيلها من 433.4 ميجاهرتز إلى 473 ميجاهرتز.
من الممكن توصيل نوعين من الهوائيات في هذه الوحدة ، هوائي حلزوني يأتي مع الوحدة أو هوائي آخر يتم توصيله بموصل UFL.
يمكن أن يصل مدى هذه الوحدة إلى كيلومتر واحد حسب الإعدادات والهوائي المستخدم.
تأتي هذه الوحدات عادةً مع بعض إعدادات المصنع ، حتى نتمكن من التواصل بين وحدتي HC-12. على سبيل المثال ، يمكننا التواصل بين جهازي Arduinos.
لتنفيذ هذه العملية ، يجب علينا تعديل بعض المعلمات مثل سرعة الاتصال وقناة الاتصال ووضع التشغيل باستخدام أوامر AT.
لتكوين الوحدة النمطية ، يجب توصيل دبوس المجموعة بـ GND كما هو موضح في الشكل 1. تسمح هذه العملية للوحدة بالدخول في وضع التكوين.
يوصى بتزويد وحدة HC-12 بمصدر خارجي 5 فولت ، حيث تحتوي على بعض محولات USB-SERIAL التي لا توفر تيارًا كافيًا لتزويد الوحدة.
لتحسين التصميم ، سنقوم بإنشاء لوحة دوائر مطبوعة NEXTPCB لضمان الطاقة الكافية لـ HC
12.
يجب توصيل GND الخاص بمحول USB-SERIAL بـ GND الخاص بمصدر الطاقة.
#include <SoftwareSerial.h> // Inclui a biblioteca Software Serial
SoftwareSerial HC12(8,7); // 8 RX vai ligado no Tx do modulo HC 12, 7 TX vai
ligado no RX do módulo
#define B0 2
#define B1 3
void setup()
{
pinMode(B0,INPUT);
pinMode(B1,INPUT);
Serial.begin(9600);
HC12.begin(9600);
}
void loop()
{
if(!digitalRead(B0))
{
Serial.println("B0 pressionado ");
Serial.print('1');
HC12.print('1');
while(digitalRead(B0)==0);
}
if(!digitalRead(B1))
{
Serial.println("B1 pressionado ");
Serial.print('2');
HC12.print('2');
while(digitalRead(B1)==0);
}
}
أولاً ، قمنا بتضمين مكتبة البرامج التسلسلية حتى نتمكن من استخدام أي دبوس رقمي كدبوس TX أو RX لاستخدامه كجهاز إرسال بيانات.
#include <SoftwareSerial.h> // Inclui a biblioteca Software Serial
نقوم بإنشاء كائن باستخدام المسامير التي ستؤدي الاتصال التسلسلي. SoftwareSerial HC12(8,7); // 8 RX vai ligado no Tx do modulo HC 12, 7 TX vai
ligado no RX do módulo
نقوم بتسمية المسامير 2 B0 و 3 B1 باستخدام التعريف ، كما هو موضح أدناه. #define B0 2
#define B1 3
في وظيفة الإعداد الفارغ ، يتم تكوين المسامير 2 و 3 كمدخلات ، وتكوين سرعة الاتصال التسلسلي لـ USB والاتصال التسلسلي مع وحدة HC-12. void setup()
{
pinMode(B0,INPUT);
pinMode(B1,INPUT);
Serial.begin(9600);
HC12.begin(9600);
}