وظيفة المقاوم المتغيّر التحكّم في شدّة التيّار الكهربائي في الدّارة الكهربائيّة
المقاوم المتغيّر يوفّر تيار كهربائي تماثلي
يمكن أن نستعمل المقاوم المتغيّر في عديد من المشاريع كتغيير سرعة المحرّك أو تغيير إنارة المصباح …

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

برمجة صغيرة لتعرّف على مخرجات المقاوم المتغيّر

- إنشاء متغيّربإسم Potentiomètre من نوع عشري بقيمة 0
- وضع قيمة تماثليّة من المنفذ A3
- كتابة على شاشة الحاسوب (أو جهاز هاتف جوّال) القيمة المتغيّر
- إنتظار مهلة ثانيّة على كل قراءة
شاهد هذا الفيديو لكيفّة إنجاز الدّارة الكهربائيّة و برنامج
عند تغيير المقاموم من 0 فولط إلى 5 فولط القيمة التماثليّة المخرجة من صفر إلى 1024
يمكن إطهار قيمة المقاومة و قيمة الجهد
إظهار قيمة المقاومة
قيمة المقاومة المقام المتغيّر المدرجة 250 أوم وهو يتغيّر من 0 إلى 250 أوم و القيمة المخرجة من المنفذ المتغيّر من 0 إلى 1024
بالتالي فإنّ المقاوم المتحصّل عليه تساوي (القيمة المخرجة * 250)/1024

ونفس الشيء إذا قمنا بتغيير 250 أوم بـ 5 فولط سيكون قيمة الجهد
تمرين
بإستعمالنا إلى مقاوم متغيّر 300 أوم و3 صمامات مشعّة و مقاومات كربونيّة و لوحة أردوينو و لوحة تجارب ننجز دارة كهربائية
إذا كانت المقاومة أصغر 100 أوم يضيء صمام مشع 1
إذا كانت المقاومة من 100 إلى 200 أوم يضيء صمام مشع 1 و 2
إذا كانت المقاومة أكبر 200 يضيء صمام مشع 1 و 2 و3



في مايلي كود للبرنامج بإستعمال طريقة الصّناديق

جزء خاص بالإعدادات

- إنشاء متغيّر Potentiomètre من نوع عشري و قيمة الأصليّة 0
- إنشاء متغيّر 100OHM من نوع عشري و قيمة 0
- إنشاء متغيّر 200OHM من نوع عشري و قيمة 0
الجزء الأوّل بقسم الحلقة الرّئيسيّة

- قراءة المنفذ A3 وضع القيمة في المتغيّر Potentiomètre
- البحث عن قيمة 100 أوم وضعها في متغيّر “100OHM” للمقارنة
- البحث عن قيمة 200 أوم وضعها في متغيّر “200OHM” للمقارنة
- إذا كانت قيمة Potentiomètre أصغر من 100أوم نفذ
- المنفذ 2 يحتوي على جهد 5 فولط و بقيّة المنافذ 0 فولط
الجزء الثّاني بقسم الحلقة الرّئيسيّة

إذا كانت قيمة المتغيّر Potentiomètre محصورة بين 100 أوم و 200 أوم
يتمّ النفيذ المنذ عدد 3 يحتوي على التيّار الكهربائي و بقيّة المنافذ لا
و أمّا إذا كانت القيمة أكبر من 200 أوم فالمنفذ عدد 4 هو الذي يحتوي على تيّار كهربائي و البقيّة لا
شاهد هذا الفبديو لعمليّة التشغيل
كود أصلي لأردوينو تمعّن فيه و حاول أن تفهمه لكي تصبح محترف
float Potentiom_C3_A8tre;
float my_100OHM;
float my_200OHM;
void setup()
{
Potentiom_C3_A8tre = 0;
my_100OHM = 0;
my_200OHM = 0;
my_300OHM = 0;
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
}
void loop()
{
Potentiom_C3_A8tre = analogRead(A3);
my_100OHM = (1024 / 3) * 1;
my_200OHM = (1024 / 3) * 2;
if (Potentiom_C3_A8tre < my_100OHM) { digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
}
if (Potentiom_C3_A8tre >= my_100OHM && Potentiom_C3_A8tre < my_200OHM) {
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(4,LOW); }
if (Potentiom_C3_A8tre >= my_200OHM) {
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
}
}
ملاحظة كلمة Potentiomètre تحتوي على حرف è غير موجود في اللغة الإنقليزيّة و بالتالي تمّ تغييرها آليا و تحوّل الحرف إلى _C3_A8
إذا أصبحت الكلمة Potentiom_C3_A8tre
شرح الأكواد
float Potentiom_C3_A8tre;
تعيين Potentiomètre كمتغيّر من نوع عشري
float my_100OHM;
تعيين my_100OHM كمتغيّر من نوع عشري
float my_200OHM;
تعيين my_200OHM كمتغيّر من نوع عشري
void setup()
الإعدادات و تنفّذ مرّة واحدة
{
بداية الإعدادات
Potentiom_C3_A8tre = 0;
خزن قيمة Potentiomètre بقيمة 0
my_100OHM = 0;
خزن قيمة my_100OHM بقيمة 0
my_200OHM = 0;
خزن قيمة my_200OHM بقيمة 0
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
تعريف بالمنافذ المستعملة 2 و3و4
}
نهاية الإعدادات
void loop()
البرنامج الرئيسي و المتكرر حسب سرعة لوحة الأردوينو و أسطر البرنامج
{
بداية البرنامج
Potentiom_C3_A8tre = analogRead(A3);
قراءة تماثليّة للمنفذ َA3 ووضع قيمته في المتغيّر Potentiomètre
my_100OHM = (1024 / 3) * 1;
حساب قيمة 100 أوم وخزنها في متغيّر my_100OHM
my_200OHM = (1024 / 3) * 2;
حساب قيمة 200 أوم وخزنها في متغيّر my_200OHM
if (Potentiom_C3_A8tre < my_100OHM)
إذا كانت القيمة Potentiomètre أصغر من المتغيّر my_100OHM
{
بداية التنفبذ
digitalWrite(2,HIGH);
المنفذ 2 في وضعيّة مرتفغ
digitalWrite(3,LOW);
المنفذ 3 في وضعيّة منخفض
digitalWrite(4,LOW);
المنفذ 4 في وضعيّة منخفض
}
نهاية التنفيذ
if (Potentiom_C3_A8tre >= my_100OHM
&&
Potentiom_C3_A8tre < my_200OHM) {
إذا كانت قيمة Poentiomètre محصورة بين 100 و 200 أوم
digitalWrite(2,LOW);
المنفذ 2 في وضعيّة منخفض
digitalWrite(3,HIGH);
المنفذ 3 في وضعيّة مرتفع
digitalWrite(4,LOW);
}
المنفذ 4 في وضعيّة منخفض
if (Potentiom_C3_A8tre >= my_200OHM) {
إذا كانت القيمة أكبر أو مساويّة لـ 200 أوم
digitalWrite(2,LOW);
المنفذ 2 في وضعيّة منخفض
digitalWrite(3,LOW);
المنفذ 3 في وضعيّة منخفض
digitalWrite(4,HIGH);
المنفذ 4 في وضعيّة مرتفع
}
نهاية إذا
}
نهاية برنامج الرّئيسي
إعلم جيّدا إنّ كلّ أمر تنفيذ ينتهي بفاصلة منقّة point virgule(;)
و كلّ دالة Fonction أو أدات شرط أو تكرار تبدأ بمعقّف مفتوح و ينتهي بمعقّف مغلق {….}
أي إستفسار أة تعليق حول هذا الدرس الرجاء إضغط هنا
هل تعلم
عدّ إختلافات بين لوحة أردوينو UNO ولوحة أردوينو Mega مبيّنة في هذا الجدول
موديل الأردوينو | المنافذ الرقمية | المداخل التماثلية | ذاكرة الكود | ذاكرة RAM | EEPROM | الأبعاد (صم) |
UNO | 14 | 8 | 32KB | 2KB | 1KB | 6.8*5.3 |
Mega | 54 | 16 | 128KB | 8KB | 4KB | 10*5.3 |