السلام عليكم تحية طيبة لكل الدرر الطيبين ..
هذا العمل يهدى الى كل طالب علم وبالاخص منتدى درر العراق
اسم الموضوع/التحكم بالاجهزة الكهربائية والالكترونية بواسطة بلوتوث
العناصر المستخدمة
1- بورد اردوينو
2-قطعة بلوتوث بلوتوث HC-06
3-ريلي 12 امبير و 4امبير
4-محولة فولتية 220-9 v
5- مصدر كهربائي 220v
'طريقة العمل
بعد تنصيب برنامج من كوكل بلي برنامج ArduDroid في الموبايل لاجهزة الاندرويد نقوم بعدها ادخال لغة الكود الخاص بالبرنامج ليتوافق مع الجهاز والموبايل واللغة المستخدمة هي لغة C بعدها يمكن التحكم بالازرار الموجودة في البرنامج من اطفاء وتشغيل والتحكم بالسرعة بالنسبة للمحرك او غيره ..بعدها تربط الدائرة كما موضحة ادناه للدائرتين..
الكود
#define START_CMD_CHAR '*'
#define END_CMD_CHAR '#'
#define DIV_CMD_CHAR '|'
#define CMD_DIGITALWRITE 10
#define CMD_ANALOGWRITE 11
#define CMD_TEXT 12
#define CMD_READ_ARDUDROID 13
#define MAX_COMMAND 20 // max command number code. used for error checking.
#define MIN_COMMAND 10 // minimum command number code. used for error checking.
#define IN_STRING_LENGHT 40
#define MAX_ANALOGWRITE 255
#define PIN_HIGH 3
#define PIN_LOW 2
String inText;
void setup() {
Serial.begin(9600);
Serial.println("ArduDroid 0.12 Alpha by TechBitar (2013)");
Serial.flush();
}
void loop()
{
Serial.flush();
int ard_command = 0;
int pin_num = 0;
int pin_value = 0;
char get_char = ' '; //read serial
// wait for incoming data
if (Serial.available() < 1) return; // if serial empty, return to loop().
// parse incoming command start flag
get_char = Serial.read();
if (get_char != START_CMD_CHAR) return; // if no command start flag, return to loop().
// parse incoming command type
ard_command = Serial.parseInt(); // read the command
// parse incoming pin# and value
pin_num = Serial.parseInt(); // read the pin
pin_value = Serial.parseInt(); // read the value
// 1) GET TEXT COMMAND FROM ARDUDROID
if (ard_command == CMD_TEXT){
inText =""; //clears variable for new input
while (Serial.available()) {
char c = Serial.read(); //gets one byte from serial buffer
delay(5);
if (c == END_CMD_CHAR) { // if we the complete string has been read
// add your code here
break;
}
else {
if (c != DIV_CMD_CHAR) {
inText += c;
delay(5);
}
}
}
}
// 2) GET digitalWrite DATA FROM ARDUDROID
if (ard_command == CMD_DIGITALWRITE){
if (pin_value == PIN_LOW) pin_value = LOW;
else if (pin_value == PIN_HIGH) pin_value = HIGH;
else return; // error in pin value. return.
set_digitalwrite( pin_num, pin_value); // Uncomment this function if you wish to use
return; // return from start of loop()
}
// 3) GET analogWrite DATA FROM ARDUDROID
if (ard_command == CMD_ANALOGWRITE) {
analogWrite( pin_num, pin_value );
// add your code here
return; // Done. return to loop();
}
// 4) SEND DATA TO ARDUDROID
if (ard_command == CMD_READ_ARDUDROID) {
// char send_to_android[] = "Place your text here." ;
// Serial.println(send_to_android); // Example: Sending text
Serial.print(" Analog 0 = ");
Serial.println(analogRead(A0)); // Example: Read and send Analog pin value to Arduino
return; // Done. return to loop();
}
}
void set_digitalwrite(int pin_num, int pin_value)
{
switch (pin_num) {
case 13:
pinMode(13, OUTPUT);
digitalWrite(13, pin_value);
break;
case 12:
pinMode(12, OUTPUT);
digitalWrite(12, pin_value);
break;
case 11:
pinMode(11, OUTPUT);
digitalWrite(11, pin_value);
break;
case 10:
pinMode(10, OUTPUT);
digitalWrite(10, pin_value);
break;
case 9:
pinMode(9, OUTPUT);
digitalWrite(9, pin_value);
break;
case 8:
pinMode(8, OUTPUT);
digitalWrite(8, pin_value);
break;
case 7:
pinMode(7, OUTPUT);
digitalWrite(7, pin_value);
break;
case 6:
pinMode(6, OUTPUT);
digitalWrite(6, pin_value);
break;
case 5:
pinMode(5, OUTPUT);
digitalWrite(5, pin_value);
break;
case 4:
pinMode(4, OUTPUT);
digitalWrite(4, pin_value);
break;
case 3:
pinMode(3, OUTPUT);
digitalWrite(3, pin_value);
break;
case 2:
pinMode(2, OUTPUT);
digitalWrite(2, pin_value);
break;
}
}
طبعا هذا الكود تنطيه كوبي بيست لان شلعان كلب اذا تكتب .....
الدائرة الخاصة بتحكم المصابيح
الدائرة الخاصة بتحكم ب المحرك استخدمنه مروحة هع
وهذا الفيديو تم رفعه من الفيس الخاص لان قناتي مشتغلت ..
فيديو من الفيس بوكالمصدر
اردوينو ميسان/ العمارة /مجاور حسينية منتجع جنة عدن
واي استفسار حول الجهاز او حول السيطرة الكهربائية تدللون وبالخدمة ..