مروحة هوائية بسيطة


pasted image 0 22

مقدمة

سنقوم في هذه التجربة بتشغيل محرك التيار الثابت (DC motor) وصنع مروحة هوائية بسيطة.

الأدوات المستخدمة

Screen Shot 1439 03 28 at 8.31.49 PM

الأداة العدد ملاحظات
أردوينو أونو 1
محرك تيار ثابت (DC motor) 1
زر ضغط (Pushbutton switch) 1
مقاومة ثابتة 1
ورق مقوى حسب الحاجة
مقص 1
شريط لاصق حسب الحاجة
أسلاك توصيل حسب الحاجة
لوحة توصيل 1

الجزء النظري

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

 يمتاز محرك التيار الثابت أن بإمكانه أن يعمل كمولد تيار ثابت (DC generator) أي يقوم بتحويل الطاقة الحركية إلى طاقة كهربائية إذا أخذنا هذه التجربة كمثال، على عكس المحرك الذي يحول الطاقة الكهربائية إلى هوائية.

خطوات التوصيل

  1. قم بصنع المروحة كما هو موضح في الصورة التالية، ومن ثم بتثبيتها على رأس المحرك.

pasted image 0 20

  1. بعد ذلك اتبع الصورة التالية لتتمكن من توصيل الدائرة:

pinwheel bb

الكود البرمجي

قم بنسخ الكود ولصقه في برنامج الأردوينو وشاهد إنجازك !

الكود البرمجي

// It starts the engine when the button is pressed, keeping it on when you release.
// We press a second time to turn off the engine

#define MOTOR 5               // motor to pin 5
#define BUTTON 7              // input pin where the button is connected
int val = 0;                  // it is used to store the state of the input pin
int old_val = 0;              // it is used to maintain state in the previous step of the input pin
int state = 0;                // stores the motor status: 0 for off, 1 for on
  
void setup() {  
  pinMode(MOTOR, OUTPUT);       //sets the pin output 
  pinMode(BUTTON, INPUT);     // sets the pin input 
}  
  
void loop() {  
  val = digitalRead(BUTTON);  // reads the input value and saves into val
  
  // checks if something happened 
  if ((val == HIGH) && (old_val == LOW)){  
    state = 1 - state;  
  }   
  
  old_val = val;            // ricordiamo il valore precedente di val  
  
  if (state == 1) {  
    analogWrite(MOTOR, 255);   // starts the motor. 225 is the speed value. You can modify it from 155 to 255
  }  
  else {  
    analogWrite(MOTOR, 0);    //turn off the motor 
  }  
}

فيديو التجربة

المصدر

مصدر التجربة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *