مساء الخير أيها القراء الأعزاء ، أود أن أقدم لكم نسخة من المشروع لإضاءة الدرج الأوتوماتيكية على أساس وحدة تحكم Arduino Pro Mini. ربما بالنسبة إلى شخص ما ، ستصبح هذه المقالة أساسًا لمشاريعه الخاصة ، ولكن بالنسبة لي سيكون من اللطيف قراءة النقد الصارم في التعليقات.هدف المشروع: تركيب إضاءة الدرج بالطابق الثاني بالشروط التالية.- الأتمتة تعمل فقط في الظلام.
- يتم تمييز كل خطوة من درجات السلم بعد تشغيل الخطوة السابقة.
- يتم تمييز الخطوات من الأسفل إلى الأعلى والعكس صحيح.
- هناك احتياطي من الوقت لدرج مضاء بالكامل.
التحضير للتثبيت
لقد استخدمت جهاز Arduino Pro Mini المألوف كوحدة تحكم.أولاً ، حول الدرج نفسه ، عدد الخطوات 11 ، العرض 550 مم. في المجموع ، تحتاج إلى 6 أمتار من شريط LED (مطلوب قطعتين من 5 أمتار 5050 SMD) ، مع درجة من الحماية IP67 (أي الحماية ضد الغبار والماء) ، بحيث يمكنك مسح الغبار وعدم التفكير فيما إذا كنت تتعرض لجهد أو تلف الشريط.بعد توصيل شريط LED بطول 5 أمتار ، تحول التيار من خلاله إلى 2.5 أمبير فقط ، أي لشريط LED بطول 6 أمتار ، هناك حاجة إلى مصدر طاقة 36 واط. استقر الاختيار على مصدر الطاقة الصيني 12 فولت 8.3 أمبير 100 واط. 100 ، بالطبع ، الكثير ، ولكن هناك حاجة إلى 12 فولت لمشروع آخر ، لذلك اتصلت به.لقد استخدمت دائرة بسيطة لتقليل الجهد باستخدام مثبت الجهد L7805CV ومكثفان خزفيان 0.1 μF و 0.33 μF كمصدر طاقة لجهاز التحكم نفسه ، بالإضافة إلى المستشعرات (مزود طاقة 5 فولت).
كمستشعرات استشعار الحركة ، توقف عن أجهزة الاستشعار بالموجات فوق الصوتية HC-SR04 ، لأنها تنبعث منها حزمة ضيقة من نبضات الموجات فوق الصوتية ويمكنك ضبط مسافة الاستجابة. وبالتالي ، يمكن ضبطه لتتبع تقاطع الزخم في الخطوتين الأولى والأخيرة. انتقل إلى تفاصيل الخصائص ، طريقة الاتصال ، مبدأ المستشعر لا أرى النقطة على الإنترنت الكثير من المعلومات عنها.تم أيضًا حل مشكلة قياس الإضاءة بكل بساطة بمساعدة دائرة مقسم الجهد حيث يتم استخدام المقاوم الضوئي Gl5516 كمقاوم متغير.بعد ذلك ، ضع في اعتبارك عدد جهات الاتصال المستخدمة 11 رقميًا للخطوات ، و 4 لمستشعرات ، وواحدة واحدة لقياس الإضاءة. ما مجموعه 15 الرقمية ، والتي لا تعطينا اردوينو. بدون التفكير مرتين ، استخدمت شريحة 74NS595N ، أو بالأحرى سلسلة من مسجلي التحول لزيادة عدد مخرجات أردوينو الرقمية.بعد قراءة أدبيات وآراء الخنازير ، وضعت مكثف خزفي 0.1 μF على المحطة 12 من أول STcp المسجل ، من المفترض أن يقلل من الضوضاء عند تطبيق نبضة "مزلاج". عندما أختبر الشلال "على الطاولة" ، فإنه يعمل بشكل أفضل مع المكثف ، خاصة عندما أقوم بتزويد الطاقة إلى الدائرة المصغرة أولاً.شيء واحد لربط الحمل الخفيف ، مثل LED ، مع Arduino ، شيء آخر هو توصيل قطعة من شريط LED بطول 500-550 ملم (الحد الأقصى لتيار Arduino الرقمي هو 40 مللي أمبير). تبين أن شريحة ULN2003A (مجموعة دارلينجتون) أكثر سهولة بالنسبة لي ، أقصى تيار من خلال مخرج واحد هو 0.5 أ.
أريد أن أشير إلى أن دبوس Echo لجهاز الاستشعار الثاني يأتي إلى الدبوس الثالث عشر من Arduino ، حيث يوجد الصمام الخاص بوحدة التحكم نفسها.تم ذلك عن قصد ، للراحة ، في الوقت الذي يكون فيه الشرط "هل هو مظلم بما يكفي لبدء أجهزة استشعار الاقتراع؟"وجهت اللوحة في تخطيط Sprint. وأكد أنه تم إزالة الدائرة المصغرة وجهاز التحكم ، ملحومان مآخذ SCS-14 و 16 ، بالإضافة إلى المقبس الموجود على لوحة PBS 2 × 12 2.54. السلبية الوحيدة كانت تقوس أرجل رقائق 74NC595N في الاتجاه الآخر.
رسم
عند تجميع الرسم ، تم استخدام مكتبة فوق صوتية واحدة فقط (للعمل مع مستشعرات HC-SR04) ويمكن الاستغناء عنها. كان علي أن العبث مع عمليات البت ، حيث أنه من الضروري تحميل وحدتي بايت في سلسلة من سجلات التحول بطريقة معينة (في الرسم قدمت شروحات واضحة).رسم// *** V1***
//
#include "Ultrasonic.h"
//
#define Trig_1 10 // .
#define Echo_1 11
#define Trig_2 12 // .
#define Echo_2 13
#define Ds 8 // Ds/SDI 75HC595N_1.
#define STcp 7 // STcp/RCLK 75HC595_1, 2.
#define SHcp 6 // SHcp/SRCLK 75HC595_1, 2.
#define LDR A0 // .
Ultrasonic Sensor_1(Trig_1, Echo_1); // .
Ultrasonic Sensor_2(Trig_2, Echo_2); // .
//
const int Limit = 100; // .
const float Min_Disrance = 50.0; /* ,
55 .*/
boolean Up_Sensor_Started = false; // .
boolean Down_Sensor_Started = false; // .
const int Read_Delay = 50; // .
unsigned int leds = 0; // .
const int N = 10; /* .
! 14- 2 .*/
const int T_Ladder = 3000; // .
const int T_Stair = 500; // .
void setup()
{
pinMode(Ds, OUTPUT);
pinMode(STcp, OUTPUT);
pinMode(SHcp, OUTPUT);
// Serial.begin(9600); // 9600 .
}
void loop()
{
int LDR_Value = analogRead(LDR); // .
// Serial.println(LDR_Value); // 0 1023.
if(LDR_Value < Limit) // " ?".
{
Down_Sensor(); // .
if(Down_Sensor_Started) // .
// , ...
{
Down_Sensor_Started = false; // .
Up_Sensor_Started = false;
Turing_Upward(); // .
}
else
// ...
{
Up_Sensor(); // ...
if(Up_Sensor_Started) // .
// , ...
{
Down_Sensor_Started = false; // .
Up_Sensor_Started = false;
Turing_Downward(); // .
}
}
delay(Read_Delay); // .
}
}
//
void Up_Sensor()
{
if((Sensor_1.Ranging(CM) < Min_Disrance) && (Sensor_1.Ranging(CM) > 0))
// , ...
{
Up_Sensor_Started = true; // .
}
}
//
void Down_Sensor()
{
if((Sensor_2.Ranging(CM) < Min_Disrance) && (Sensor_2.Ranging(CM) > 0))
// , ...
{
Down_Sensor_Started = true; // .
}
}
//
void updateShiftRegister()
{
digitalWrite(STcp, LOW); // .
byte First = lowByte(leds); /* ,
shiftOut 8 .*/
byte Second = highByte(leds);
shiftOut(Ds, SHcp, MSBFIRST, Second); // 1- .
shiftOut(Ds, SHcp, MSBFIRST, First); // 2- .
digitalWrite(STcp, HIGH); // .
}
//
void Turing_Upward()
{
for (int i = 0; i <= N; i++)
{
bitSet(leds, i); // N 1 ( HIGH).
updateShiftRegister(); // .
delay(T_Stair); // .
}
// Serial.println(leds, BIN); // .
delay(T_Ladder); // .
leds = 0; // .
updateShiftRegister(); // .
}
//
void Turing_Downward()
{
for (int i = N; i >= 0; i--)
{
bitSet(leds, i); // N 1 ( HIGH).
updateShiftRegister(); // .
delay(T_Stair); // .
}
delay(T_Ladder); // .
leds = 0; // .
updateShiftRegister(); // .
}
تصاعد الميزات
الآن ، حول التثبيت ، من الأفضل وضع شريط LED في ملف تعريف تم إنشاؤه خصيصًا له ، ولكن تكلفته عالية جدًا. أخذت كبل قناة 12 × 12 ، قطعت الفائض بسكين كتابي ساخن ، وحدث ما يلي.
لإخفاء مستشعرات HC-SR04 ، وجدت صندوق IEK 20 مم لهم.
لم يكن تركيب الدرع صعبًا أيضًا ، حيث تم التخطيط مسبقًا لتركيب الكتل الطرفية اللولبية مسبقًا على اللوحة.
الملخص
استوفى المشروع الناتج جميع المهام ، أثناء تشغيل الأتمتة ، لم يلاحظ أي فشل أو تعليقات.الشيء الوحيد ، في رأيي ، يمكن أن يكون جعل الدرع أكثر إحكاما وإغلاقه تماما من أيدي المتطفلين.حزمة الحزمة
Arduino Pro Mini Atmega 328 Controller 5V 16MHz | 1 |
جهاز استشعار بالموجات فوق الصوتية HC-SR04 | 2 |
مصدر الطاقة 12 فولت 8.3 أمبير 100 واط | 1 |
شريط LED 5050 SMD 5 م IP65 | 2 |
رقاقة 74NS595N | 2 |
الدوائر المتكاملة ULN2003A | 2 |
PBS 1 × 40 فتحة 2.54 | 1 |
سلك MGShV 0.75 | |
كابل PUNP 2 × 2.5 | |
كابل الهاتف SHTLP-4 0.12 × 7 | |
1 قاطع دائرة أحادي القطب | 1 |
قاطع دارة أحادي القطب 10 أ | 1 |
المقاوم الضوئية Gl5516 | 1 |
منظم الجهد L7805CV | 1 |
مكثف السيراميك 0.33 فائق التوهج | 1 |
مكثف السيراميك 0.1 فائق التوهج | 2 |
10 كيلو أوم المقاوم | 1 |
مأخذ لرقاقة SCS-14 | 2 |
مأخذ توصيل لـ SCS-16 | 2 |
صندوق توزيع IEK 20 مم | 2 |
كتلة طرف المسمار اللولبي | 13 |
ألياف زجاجية 95 × 105 مم | |
تكستليت | |
شاروخان من خلال محطة المرور | 12 |
قناة كابل 12 × 12 × 2000 | |
قناة كابل 16 × 16 × 2000 | |
المواد الاستهلاكية (تذوب الساخنة ، الغراء البلوري لحظة ، اللحيم ، الصنوبري ، تدفق العلامات) | |
السحابات (البراغي والصواميل والمسامير والمسامير والمشابك) | |
شكرا لكم على اهتمامكم.