القائمة الرئيسية

الصفحات

أخبار الرياضة

صناعة روبوت أردوينو بإمكانيات بسيطة مع الكود

صناعة روبوت أردوينو بإمكانيات بسيطة

بداية

السلام عليكم أصدقائي الأعزاء  متابعي مدونة في الإفادة استفادة   اليوم سأضع بين أيديكم نموذج صنع  روبوت أردوينو  بسيط   طريقة عمله والكود البرمجي لهذا المشروع البسيط

يعد  هذا  الروبوت من فئة الروبوتات الثابتة Stationary Robots ، فعادةً ما يستخدم مثل هذا النوع في المصانع والمختبرات ومعامل الأبحاث لتؤدي عملها بشكل روتيني مستمر.

ماذا نتحتاج في هذا الروبوت بالذات :

     3                                                                          

 العدد النوع ترجمته دوره
 1 لوحة أردوينو أونو 3 Arduino Uno R3 استقبال الكود وتنفيذه
1 إضاءة ليد Red LED 
 3

موتور سيرفو 9ج
Micro Servo 9g 1- لرأس الروبوت

2-لأذرع الروبوت
 1 جهاز إنذار صوتي  Piezo ----
 1 حساس الاستشعار بالموجات فوق الصوتية  Ultrasonic sensor استشعار حركة الناس داخل الغرفة
 1 مقاومة 150 اوم
 150 ohm Resistor ------
 1 مفتاح فتح وإغلاق الدائرة  Slide switch -----
 1 حساس درجة الحرارة  Temperature sensor قياس درجة الحرارة والرطوبة للغرفة


الشكل




الدارة تركب عل هذا الشكل :



هذا الروبوت :

1. يقوم بشكل تلقائي بقياس المسافة المحيطة وإعطاء إنذار في حال اقتراب الاجسام لمسافة تقل عن 10 سم.
2. يقوم بحساب درجة حرارة الغرفه عند تلقي الامر “temp” عن طريق شاشة السيريال “serial port screen”
3. يقوم بالاستدارة في إلى اليمين واليسار مع تحريك الرأس عند تلقي الأمر “right” او “left” من شاشة السيريال مع تحريك الرأس جهه الاستداره لتوجية حساس الموجات الصوتية لمساحة اخرى.

3

شكل الروبو وطريقة تركيب أجزائه يعتمد على ابداعك انت  ، أنا عندما قمت بإنجاز هذا الروبو استعملت الورق المقوى في تصميم الشكل انت على حسب قدرتك وابداعك ....

الكود البرمجي هنا بعدما تقوم بتركيب الدارة قم بنسخه واستخدمه :

3

4

 
******************************************************************************************************************************  
/*
www.oopokni.info
*/

#include <Servo.h>

Servo Hservo,Rservo,Lservo; // create servo object to control a servo

// defines pins numbers
const int trigPin = 6;
const int echoPin = 7;
int piezoPin = 11;
int led = 13;
const int temperaturePin = 0;

// defines variables
long duration;
int distance,val;


void setup() {

pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
pinMode(led, OUTPUT);

Serial.begin(9600); // Starts the serial communication

Rservo.attach(8); // right arm servo
Hservo.attach(9); // head servo
Lservo.attach(10); // left arm servo
}
void loop() {

float voltage, degreesC;
voltage = getVoltage(temperaturePin);
degreesC = (voltage - 0.5) * 100.0;

// Clears the trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);
// Calculating the distance
distance= duration*0.034/2;

delay(50);

if (distance < 10) //
{
// Prints the distance on the Serial Monitor
Serial.print("Distance: ");
Serial.println(distance); // print the currnet distance on serial port
tone(piezoPin, 1000, 500); // this will alarm the sound every time distance
digitalWrite(led, HIGH);
delay(1000); // wait 1 1second
}
else
{
noTone(piezoPin);
digitalWrite(led, LOW);
delay(50);
}


if(Serial.available())
{
String value = Serial.readStringUntil('\n'); // read the string from serial window
Serial.println(value);
if(value == "left")
{
Hservo.write(80); // moving the head little left
delay(15);
Lservo.write(60); // left arm up
delay(15);
Rservo.write(20); // right arm down
delay(15);
}
else if(value == "right")
{
Hservo.write(40); // moving the head little right
delay(15);
Lservo.write(20); // left arm down
delay(15);
Rservo.write(60); // right arm up
delay(15);
}
else if(value == "temp")
{
Serial.print("voltage: "); // print temperature
Serial.print(voltage);
Serial.print(" deg C: ");
}
}
}

float getVoltage(int pin)
{
// point value, which is the true voltage on that pin (0 to 5V).
return (analogRead(pin) * 0.004882814);
}

****************************************************************************************************************

3

4


المدونة التي تعلمت منها فكرة الروبوت من هنا

reaction:
في الإفادة استفادة
في الإفادة استفادة
السلام عليكم ورحمة الله تعالى وبركاته : مرحباً ترحيبه الصبح للشّمس ، يا مرحباً لحظة عناق الليل مع طلوع النور ، يا مرحباً في لحظة كلّ المعاني غدت همس والقلب غارق في بحر أنس وسرور ، يا مرحباً فالعين جافاها نومها تنتظر قدومكم ببهجة وسرور ، يا مرحباً عدد ما غرد على غصن حديقتنا من عصفور يا مرحباً عدد ما نزلت قطرات ماء من السماء بحبور ، يا مرحباً ضيفنا بعدد الدقائق والثواني التي انتظرتكم بها من قلب صبور. كل شيء يرحب بك ، كل شيء يتبسم ، ويتوهج فرحاً بقدومك ، هذا الفضاء مخصص لك لكي تستفيد منا و معنا ومما لدينا !!!!

تعليقات