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

- الروبوتيات:ادمج مستشعر الميل في ذراع روبوتية لاكتشاف موضعها واتجاهها.
- أنظمة الأمن:استخدمه كمفتاح إمالة أساسي في جهاز إنذار أمني لإطلاق تنبيه إذا تم تحريك جسم
- المراقبة الصناعية:راقب ميل الآلات أو المعدات لاكتشاف الأعطال المحتملة أو عدم الاستقرار.
- أجهزة تحكم الألعاب:ادمجه في جهاز تحكم ألعاب مخصص لإدخالات تعتمد على الإمالة
يستخدم المشروع وحدة مستشعر الميل، والمتحكم الدقيق Arduino، وبعض المكونات الأساسية لإنشاء نظام عملي لاكتشاف الميل. يخرج المستشعر إشارة منخفضة عند إمالته، والتي يفسرها Arduino لتشغيل مصباح LED ومنبّه (في الفيديو عند 00:18).
الأجهزة/المكونات
المعدات المطلوبة لهذا المشروع تشمل: (في الفيديو عند 00:49)
- أردوينو أونو (أو متوافق)
- وحدة مستشعر الميل
- صافرة كهربائية
- صمام ثنائي باعث للضوء
- مقاومة 220Ω (للمصباح الثنائي الباعث للضوء)
- أسلاك التوصيل
دليل الأسلاك
توصيل الأسلاك بسيط. راجع الفيديو للحصول على دليل مرئي. (في الفيديو عند 02:36) الوصلات الرئيسية هي:
- وصل VCC لمستشعر الميل إلى 5V على الأردوينو
- وصل GND لمستشعر الميل إلى GND للأردوينو
- وصل مخرج DO لمستشعر الميل إلى دبوس Arduino رقم 2
- الساق الموجبة للـLED إلى دبوس أردوينو رقم 8 عبر مقاومة 220Ω
- الطرف السالب لمصباح LED إلى أرضي الأردوينو
- الطرف الموجب للمزمر إلى دبوس أردوينو 8
- الطرف السالب للزمّار إلى GND في الأردوينو

شرح الكود
تم تصميم كود الأردوينو لقراءة مخرج حساس الميل والتحكم في الـ LED والطنان وفقًا لذلك. (في الفيديو عند 04:30)
#define TILT 2 // pin 2 for tilt sensor
#define LED 8 // pin 8 for LED and buzzer
الTILTوLEDتعرف الثوابت دبابيس الأردوينو المتصلة بمستشعر الميل ومكونات الإخراج، على التوالي. يمكنك تغيير أرقام هذه الدبابيس لتطابق توصيلاتك. المنطق الأساسي موجود فيloop()الدالة: (في الفيديو عند 05:36)
int TILT_SENSED = digitalRead(TILT);
if(TILT_SENSED == LOW) {
digitalWrite(LED, HIGH);
Serial.println("Tilt detected");
} else {
digitalWrite(LED, LOW);
Serial.println("Normal");
}
يقرأ الكود حالة حساس الميل باستخدامdigitalRead(). إذا كان المستشعر مائلاً (LOW), يتم تفعيل المصباح الضوئي والصفارة (HIGH); وإلا، فسيتم تعطيلها (LOW).
الdelay(200);الدالة (في الفيديو عند 07:16) تتحكم في تكرار قراءة المستشعر. اضبط هذه القيمة لتغيير عدد مرات فحص المستشعر.
مشروع حي/عرض توضيحي
يعرض الفيديو وظيفة مستشعر الإمالة. (في الفيديو عند 07:34) عندما يميل الجهاز في الاتجاه المحدد، يضيء مصباح LED ويصدر المنبه صوتًا، مما يدل على اكتشاف الإمالة. يمكن ضبط حساسية المستشعر باستخدام مقاوم متغير (في الفيديو عند 07:50)، مما يتيح لك ضبط استجابته بدقة.
الفصول
- [00:06] مقدمة
- [00:49] نظرة عامة على الأجهزة
- [01:08] تفاصيل مستشعر الميل
- [02:36] شرح الأسلاك
- [04:30] شرح الكود
- [07:34] عرض مباشر
- [08:21] خاتمة
++
/*
* This is the Arduino code for a tilt sensor that detects tilt and
* turns on a buzzer, or you can control a motor, servo, or any other action.
* Watch the video https://youtu.be/46Z-6MVxKnc
*
* Arduino Code for Tilt Sensor
* Written by Ahmad Nejrabi for Robojax.com
* on January 16, 2018 at 21:04 in Ajax, Ontario, Canada
* Permission granted to share this code given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
*
*/
/*
What it does?
This module has 3 pins: VCC (connected to 5V),
GND (connected to GND of Arduino), and
DO (data out), which is connected to pin 2.
From pin 8 of Arduino, when tilt is detected, you can stop a
motor, move a servo, or turn an LED on to indicate tilt.
*/
// Tilt Sensor code for Robojax.com
#define TILT 2 // pin 2 for front-left sensor
#define LED 8 // pin 3 for front-right sensor
void setup() {
Serial.begin(9600);
Serial.println("Robojax Tilt Test");
pinMode(TILT, INPUT);//define Data input pin input pin
pinMode(LED,OUTPUT);// define LED pin as output
}
void loop() {
// Tilt Sensor code for Robojax.com
int TILT_SENSED = digitalRead(TILT);// read TILT sensor
// if tilt is sensed
if( TILT_SENSED ==LOW)
{
digitalWrite(LED,HIGH);// set the LED pin HIGH and buzzer will buzz
Serial.println("Tilt detected");
}else{
digitalWrite(LED,LOW); // Set the LED pin LOW to turn it OFF or buzzer OFF
Serial.println("Normal");
}
delay(200);
}
الأشياء التي قد تحتاجها
-
إي باي
-
علي إكسبريساشترِ مستشعر ميل الكرة من AliExpresss.click.aliexpress.com
الموارد والمراجع
لا توجد موارد حتى الآن.
ملفات📁
لا توجد ملفات متاحة.
