السبت، 8 ديسمبر 2018

جهاز تحكم مزود بتقنية Bluetooth Controlled Servo

المكونات

 Arduino   UNO او   Genuino UNO
SG90 Micro-servo motor
HC-05 Bluetooth Module

حول هذا المشروع
في هذا المشروع سوف أريكم كيف يمكنك التحكم في محرك سيرفو بمساعدة تطبيق الهاتف الذكي عبر البلوتوث.

بالنسبة لهذا المشروع ، سوف نستخدم وحدة Bluetooth HC-05 مع Arduino Uno للتحكم في سيرفر 9g.


-> كيف يعمل هذا المشروع؟
يحتوي هذا المشروع على جزئين:

1. تطبيق الروبوت - سيقوم هذا التطبيق بإرسال حزم البيانات المختلفة إلى وحدة HC-05 Bluetooth الخاصة بنا. (انقر هنا لتحميل التطبيق)

2. الأجهزة - يتكون هذا من وحدة بلوتوث HC-05 ، و Arduino Uno ومحرك سيرفو.

-> هذه طريقة عملها -
يرسل تطبيق Android حزم البيانات إلى وحدة Bluetooth. ترسل وحدات Bluetooth حزمة البيانات هذه إلى Arduino Uno من خلال الاتصال التسلسلي. مبرمج اردوينو أونو لتوليد إشارة التحكم لمحرك سيرفو اعتمادا على قيمة حزمة البيانات. هنا مخطط انسيابي لفهم أفضل.


Flowchart

-> كيف تبدأ

1. قم بتنزيل تطبيق الروبوت. (انقر هنا)

2. قم بتحميل الرمز  الكود على Arduino uno.

3. اتصل بين الاردوينو والبلوتوث.

يرجى ملاحظة أن وحدة بلوتوث HC-05 يجب أن تكون متصلة مع 3.3v وليس مع vcc 5v لأنه يمكن أن يتلف الوحدة.

4. قم بتوصيل وحدة Bluetooth إلى تطبيق android - عندما تشغل جهازك ، ستصبح وحدة Bluetooth مرئية. حتى فتح التطبيق وانقر على العثور على الأجهزة المجاورة. حدد HC-05. بمجرد أن تظهر متصلا أنك على ما يرام!

يمكنك استخدام شريط التمرير أو إدخال القيمة يدويًا للتحكم في ذراع الماكينة.

الكود

#include<SoftwareSerial.h>
#include<Servo.h>
Servo x;
int bttx=0;    //tx of bluetooth module is connected to rx (pin 0) of arduino
int btrx=1;    //rx of bluetooth module is connected to tx (pin 1) of arduino
SoftwareSerial bluetooth(bttx,btrx);
void setup()
{
  x.attach(11);        // servo is connected to pin 11 of arduino
  Serial.begin(9600);
  bluetooth.begin(9600);
}
void loop()
{
  if(bluetooth.available()>0)    //if bluetooth module is transmitting data
  {
    int pos=bluetooth.read(); // store the data in pos variable
    Serial.println(pos);
    x.write(pos);             //move servo head to the given position
  }
}



Servo bt 8pvsjepd7u