- المكونات المطلوبة:
- مخطط الدائرة وشرحها:
- تكوين تطبيق Bluetooth Terminal لـ Arduino:
- وصف العمل:
- وصف البرمجة:
هناك العديد من أنواع أنظمة الأمان المستخدمة في جميع أنحاء العالم ومن بينها Digital Code Lock. لقد قمنا بالفعل بتغطية العديد من الأقفال الرقمية بشاشات LCD مقاس 16 × 2 بسيطة باستخدام Arduino و Raspberry Pi و 8051 وما إلى ذلك. هنا سنقوم ببناء قفل رقمي يتم التحكم فيه بواسطة الهاتف الذكي باستخدام شاشة TFT LCD و Arduino Mega. يمكن التحكم في هذا القفل لاسلكيًا عبر البلوتوث ، باستخدام هاتف Android الخاص بك ، في نطاق البلوتوث العادي الذي يبلغ 10 أمتار. يحتاج المستخدم إلى إدخال كلمة المرور المحددة مسبقًا من هاتف Android الخاص به ، إذا كانت كلمة المرور صحيحة ، تعرض شاشة TFT LCD رسالة "CORRECT PASSWORD" وإذا كانت كلمة المرور خاطئة ، تعرض شاشة LCD رسالة "WRONG PASSWORD".
باستخدام هذا القفل ، يمكنك فتح قفل الباب أثناء المشي ، حتى قبل الوصول إليه. سيوفر هذا وقتك ولن تحتاج إلى حمل المفاتيح ويمكن فتح القفل بسهولة باستخدام هاتفك.
المكونات المطلوبة:
- اردوينو ميجا
- وحدة بلوتوث HC05
- كابل USB
- توصيل الأسلاك
- صفارة
- 2.4 بوصة TFT LCD Shield مع وحدة تحكم SPFD5408
- هاتف أندرويد
- تطبيق Bluetooth Terminal
- اللوح
مخطط الدائرة وشرحها:
دائرة القفل الرقمي الذي يتم التحكم فيه بواسطة الهاتف الذكي بسيطة ؛ نحتاج فقط إلى توصيل وحدة Bluetooth HC05 و TFT LCD Shield بـ Arduino. يمكن تركيب درع TFT LCD بسهولة على Arduino ، نحتاج فقط إلى مطابقة محاذاة المسامير والتأكد من تثبيت دبابيس GND و Vcc من Arduino على دبابيس GND و Vcc من LCD. تحتاج أيضًا إلى تثبيت Library for TFT Touch Screen LCD ، ومعرفة المزيد حول Interfacing TFT LCD مع Arduino هنا.
يتم تشغيل HC05 بواسطة Arduino Vcc و GND Pins ، ويتصل TX لـ HC05 بـ RX1 من Arduino و RX لـ HC05 متصل بـ TX1 من Arduino. يتم توصيل دبوس واحد من الجرس بـ GND الخاص بـ Arduino والآخر بالدبوس 22 من Arduino.
تكوين تطبيق Bluetooth Terminal لـ Arduino:
لتشغيل هذا القفل الرقمي من خلال هاتف Android الذكي ، نحتاج أولاً إلى تثبيت تطبيق Android Mobile يسمى Bluetooth Terminal. تطبيق Bluetooth Terminal متوافق مع Arduino. يمكن تنزيل هذا التطبيق من متجر Google Play ، ويمكن تهيئته بسهولة باتباع الخطوات التالية:
1. قم أولاً بتنزيله من متجر Google Play وقم بتثبيته على هاتفك المحمول بنظام Android.
2. قم بتشغيل "دائرة نظام القفل الرقمي التي يتم التحكم فيها عبر البلوتوث".
3. افتح التطبيق وانتقل إلى الخيار "الاتصال بأمان".
4. ستجد جهاز HC05 للإقران.
5. امنح 1234 مفتاح مرور للاتصال بهاتف Android الخاص بك ، مثلما نستخدمه لتوصيل أجهزة Bluetooth الأخرى.
وصف العمل:
في نظام الأمان القائم على Arduino ، استخدمنا ثلاثة مكونات رئيسية وهي Bluetooth Module HC05 و Arduino Mega Board و 2.4 بوصة TFT LCD Shield.
هنا يتم إدخال كلمة المرور المكونة من أربعة أرقام بواسطة المستخدم من خلال هاتف Android الذكي باستخدام تطبيق Bluetooth Terminal وإرسالها إلى Arduino عبر Bluetooth. يستقبل Arduino البيانات ، التي يرسلها هاتف Android ، باستخدام وحدة Bluetooth HC05 ويعرضها على SPFD5408 TFT LCD. يقارن Arduino المستخدم الذي أدخله كلمة المرور بكلمة المرور المحددة مسبقًا (1234) ، ويعرض الرسالة وفقًا لذلك. يعرض الرسالة "WRONG PASSWORD" إذا كانت كلمة المرور غير متطابقة ويعرض الرسالة "CORRECT PASSWORD" إذا تطابقت كلمة المرور. يستخدم الجرس أيضًا لإشارة الإنذار ، والذي يصدر صوتًا عندما تكون كلمة المرور خاطئة. تحقق أيضًا من الفيديو ، الظاهر في النهاية ، لفهم طريقة عملها.
يمكننا أيضًا تغيير كلمة المرور إلى اختيارنا عن طريق تغيير كود Arduino ، وقد تم شرحه في قسم "البرمجة" أدناه.
وصف البرمجة:
لبرمجة هذا القفل الرقمي المتحكم فيه عبر Bluetooth ، استخدمنا بعض المكتبات لعرض البيانات على شاشة TFT LCD ، والتي ترد أدناه. تأتي جميع المكتبات في ملف rar واحد ويمكن تنزيلها من هذا الرابط. انقر فوق "استنساخ أو تنزيل" و "تنزيل ملف ZIP" وأضفه إلى مجلد مكتبة Arduino. هذه المكتبة ضرورية للتشغيل السليم لشاشة TFT LCD.
#تضمن
يتم تنفيذ تهيئة مدخلات ومخرجات شاشة LCD والاتصال التسلسلي لوحدة Bluetooth في حلقة إعداد باطلة () . رقم التعريف الشخصي 22 من Arduino متصل بالجرس ويتم توصيل دبوس الجرس الآخر بأرض Arduino Mega. يتم توصيل وحدة Bluetooth بمنفذ Serial1 من Arduino Mega ويتم تشغيله بواسطة مصدر 5V من Arduino Mega.
تُستخدم وظيفة fillScreen () لمسح شاشة LCD.
إعداد باطل () {// ضع كود الإعداد هنا ، للتشغيل مرة واحدة: Serial.begin (9600)؛ Serial1.begin (9600) ؛ tft.reset () ، tft.begin (0x9341) ، tft.setRotation (0) ، tft.fillScreen (أبيض) ؛ tft.setCursor (40 ، 50) ؛ tft.setTextSize (2) ، tft.setTextColor (أسود) ؛ tft.println ("ENTER * PASSWORD") ؛ تأخير (5000) ؛ tft.fillScreen (أبيض) ؛ pinMode (22 ، الإخراج) ؛ }
في وظيفة () void loop ، تحدد setTextSize (4) حجم النص وتضبط setTextColor (colorName) لون النص. إن arr هو المصفوفة التي قمنا فيها بتخزين كلمة المرور المكونة من أربعة أرقام والمدخلات هي المصفوفة التي قمنا بتخزين كلمة المرور التي أدخلها المستخدم من هاتف Android. إذا كانت كلمة المرور التي تم إدخالها مماثلة لكلمة المرور المخزنة ، فستعرض شاشة LCD رسالة "CORRECT PASSWORD" وإذا لم تكن هي نفسها ، أي 1234 ، فستعرض شاشة LCD رسالة "WRONG PASSWORD" وسيصبح الدبوس المتصل بالجرس مرتفعًا وسيصبح صوت صفير.
حلقة باطلة () {tft.setTextSize (4) ، tft.setTextColor (CYAN) ، // ضع الكود الرئيسي هنا ، للتشغيل بشكل متكرر: if (Serial1.available ()> 0) {flag = 1؛ char c = Serial1.read () ؛ إذا (العلم == 1) {المدخلات = ج ؛………………..
يمكننا كذلك تغيير مجموعة arr لتغيير كلمة المرور التي نختارها بدلاً من "1234". يمكننا أيضا تغيير لا. الأحرف في كلمة المرور عن طريق تغيير طول وصول و إدخال المصفوفات.
char arr = {1 '،' 2 '،' 3 '،' 4 '}؛ مدخلات شار
وفقًا لطول كلمة المرور التي تم تغييرها ، نحتاج إلى تغيير حالة if في وظيفة الحلقة الفارغة () .
إذا (arr == input && arr == input && arr == input && arr == input)
علاوة على ذلك ، يمكننا ربط قفل الباب الإلكتروني (متاح بسهولة عبر الإنترنت) في هذا المشروع. يحتوي على مغناطيس كهربائي يحافظ على الباب مغلقًا عند عدم مرور تيار عبر القفل (دائرة مفتوحة) ، وعندما يمر بعض التيار عبره ، يتم فتح القفل ويمكن فتح الباب. نحتاج فقط إلى تغيير الرمز وفقًا لذلك ، ونحن مستعدون لفتح قفل الباب بهاتفنا. تحقق من مراجعة المشروع المشتركة هذه: Arduino RFID Door Lock لمعرفة المزيد عن قفل الباب الإلكتروني.