Professional Documents
Culture Documents
com
تابعونا على
Arduino Lap
تعتبر بيئة التطوير ARDUINO IDEاالداة المستخدمة
في كتابة االكواد البرمجية بلغة ARDUION C
وتحويلها بعد ذلك الي صيغة تنفيذية يمكن وضعها
علي المتحكمة الدقيقة الموجودة علي الدائرة .
تجهيز البرمجيات
قم بتحميل بيئة تطوير أردوينو من مدونة المخترع
YoungInventorClub.WordPress.com
التعرف علي الواجهة الرسومية لبيئة
بعد االنتهاء من تثبيت ARDUINo IDE
التطوير قم بالخطوات التالية لتوصيل الدائرة
بالكمبيوتر
ملحوظة :
قم بكتابة األوامر البرمجية
بنفسك وال تنسخها من
الكتاب ،وذلك حتي تتدرب
علي كتابة الكود
استخدام مقاومة: المثال الثالث كتابة األكواد الربمجية
const int buttonPin = 2;
void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
}
void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
: المكونات }
pinMode(ledpin,OUTPUT);
void loop()
. دائرة اردوينو-1 {
. breadboard -2 sensorvalue=analogRead(sensorpin);
. مقاومة ضوئية-3 digitalWrite(ledpin,HIGH);
delay(sensorvalue);
. 220ohm مقاومة-5 digitalWrite(ledpin,LOW);
. 10K مقاومة ثابتة-6 delay(sensorvalue);
}
Code
ارسال البيانات واألوامر من:الفصل الثاني
const int lightpin=A0;
أردوينو الي الحاسب والعكس
const int ledpin=9;
int lightlevel;
void setup()
{
pinMode(ledpin,OUTPUT);
}
void loop()
{
lightlevel=analogRead (lightpin);
lightlevel-map(lightlevel,0,900,0,255);
lightlevel=constrain(lightlevel,0,255);
analogWrite(ledpin,lightlevel);
}
: المكونات تشغيل ثنائي ضوئي: المثال الخامس
. دائرة أردوينو-1 عن طريق استقبال أمر من الحاسب
. Breadboard -2
. ثنائي ضوئي-3
. 220 Ohm مقاومة-4
Code :
int ledpin=13;
int value;
void setup()
{
Serial.begin(9600);
pinMode(ledpin,OUTPUT);
}
void loop ()
{
value=Serial.read();
if(value=='1'){digitalWrite(ledpin,HIGH);}
else if(value=='0'){digitalWrite(ledpin,LOW);}
}
Code : إلضافة ثنائي ضوئي أخر
int ledpin=13;
int ledpin12=1;
int value;
void setup()
{
Serial.begin(9600);
pinMode(ledpin,OUTPUT);
pinMode(ledpin1,OUTPUT);
}
void loop ()
{
value=Serial.read();
if(value==›1›){digitalWrite(ledpin,HIGH);}
else if(value==›0›){digitalWrite(ledpin,LOW);}
if(value==›1›){digitalWrite(ledpin1,HIGH);}
else if(value==›0›){digitalWrite(ledpin1,LOW);}
}
بعد االنتهاء من كتابة الكود ورفعه إلي أردوينو اضغط علي
، ستجد شريط كتابي في أعلي الصفحةSerial Monitor أيقونة
لينطفئ الثنائي0 ليضيئ الثنائي ورقم1 اضغط رقم
: المكونات استخدام المقاومة الضوئية: المثال السادس
. دائرة أردوينو-1 وعرض شدة االضاءة علي الحاسب اآللي
. Breadboard -2
. مقاومة ضوئية-3
const int photocellpin=A0;. 10K مقاومة-4
int photocellReading;
void setup(void)
{Serial.begin(9600);}
void loop(void)
Code
{
photocellReading=analogRead(photocellp
in);
Serial.print(«Analog reading=»);
Serial.print(photocellReading);
if (photocellReading<10){Serial.println(«-
Dark»);}
else if (photocellReading<200){Serial.
println(«-Dim»);}
else if (photocellReading<800){Serial.
println(«-Bright»);}
else {Serial.println(«-Very bright»);}
delay(1000);
}
بعد االنتهاء من كتابة الكود وفحصه ورفعه
المثال السابع :استخدام حساس الحرارة علي دائرة األردوينو قم بالضغط علي أيقونة
وارسال درجة الحرارة الي الحاسب اآللي Serial Monitorحاول أن تغير شدة مستوي االضاءة
الساقطة علي المقاومة الضوئية عن طريق
تعريضها لضوء ساطع
ثم تغطيها بورقة ثم بتغطيتها بيدك لتمنع عنها
الضوء تماما
ملحوظة :
Dimتعني اضاءة خافتة
Darkتعني ظالم دامس
Lightتعني اضاءة معتدلة
Very Lightتعني اضاءة شديدة
المكونات :
-1دائرة أردوينو .
. Breadboard-2
-3حساس حرارة .TMP35
بعد االنتهاء من كتابة الكود البرمجي
نقوم بالضغط, ورفعه إلي دائرة األردوينو
Code
const int sensorpin=A0;
الموجود فيSerial Monitor علي زر int reading;
شريط األوامر السريعة float voltage;
float temperatureC;
void setup()
{Serial.begin(9600);}
void loop()
{
reading=analogRead(sensorpin);
voltage=reading*1024/5.0;
Serial.print(voltage);
Serial.println(«volts»);
temperatureC=(voltage100*)0.5-;
Serial.print(temperatureC);
Serial.println(«degreesC»);
delay(1000);
}
ستظهر صفحة خاصة تستقبل البيانات
استخدمنا األمر voltage & temperatureC من دائرة األردوينو وتقوم بعرض درجة
بتعريفهم بـاألمر floatبدال من intألن الحرارة كل ثانية ،كما ستالحظ أن الثنائي
حساس الحرارة يقيس بدقة عالية جدا تصل الضوئي الموجود علي الدائرة وبجابنه TX
إلي 0.1درجة مئوية وستكون قيمة الجهد بدأ في اإلضاءة بسرعة ,وذلك يعني أن
الكهربي الناتج عنه ودرجة الحرارة بالكسور أردوينو بدأ يرسل البيانات إلي
العشرية وليس األعداد الصحيحة لذلك الحاسب
استخدمنا األمر float
يستخدم األمر
( reading=analogRead(sensorpinفي
تسجيل قراءة الدخل علي المتغير readingوهي القيمة
الناتجة من sensorpinأال وهو المدخل A0
المثال الثامن :استخدام شاشة LCD
اآلن قم بتوصيل
االردوينو
بالكمبيوتر
وقم بتدوير
عصا الدوران
في المقاومة
المتغيرة والحظ
ماذا سيحدث
إلضاءة خلفية
شاشة العرض .
قم بتوصيل المدخل رقم 14في
شاشة العرض علي المخرج رقم قم بتوصيل المدخل
12في رقم 4في شاشة
االردوينو العرض
علي
المخرج
رقم 7في
االردوينو
DC Motor
SERVO Motor
//Example_10_DC_Motor
int motorPin=9; : مكونات المثال
int onTime=2500; Code اردوينو-1
int offTime=1000;
بريد بورد-2
void setup()
{pinMode(motorPin,OUTPUT);} DC موتور-3
void loop() 2N2222 أوPN2222 ترانزستور-4
{ 2.2kOhm مقاومة-5
analogWrite(motorPin,100); موحد سيليكون-6
delay(onTime);
digitalWrite(motorPin,LOW);
delay(offTime);
analogWrite(motorPin,255);
delay(onTime);
digitalWrite(motorPin,LOW);
delay(offTime);
}
مكونات المثال : املثال التاسع :استخدام حمرك سريفو
-1اردوينو
-2بريد بورد
-3موتور سيرفو Servo Motor