جدول المحتويات:

أتمتة المنزل بنظام Android و Arduino SMS: 5 خطوات (بالصور)
أتمتة المنزل بنظام Android و Arduino SMS: 5 خطوات (بالصور)

فيديو: أتمتة المنزل بنظام Android و Arduino SMS: 5 خطوات (بالصور)

فيديو: أتمتة المنزل بنظام Android و Arduino SMS: 5 خطوات (بالصور)
فيديو: Android SMS App Based Device Switching using Arduino 2024, يوليو
Anonim
أتمتة المنزل على أساس Android و Arduino SMS
أتمتة المنزل على أساس Android و Arduino SMS
أتمتة المنزل على أساس Android و Arduino SMS
أتمتة المنزل على أساس Android و Arduino SMS

! ! ! تنويه ! ! !

بسبب تطوير برج الهاتف المحمول المحلي في منطقتي ، لم أعد قادرًا على استخدام وحدة GSM هذه. لم يعد البرج الأحدث يدعم أجهزة 2G. لذلك ، لم يعد بإمكاني تقديم أي دعم لهذا المشروع

في الآونة الأخيرة ، تلقيت وحدة GSM / GPRS رباعية الموجات رخيصة نسبيًا للعب بها. إنها وحدة SIM800L ، وتتصل بأي ميكرو عبر منفذ تسلسلي. جاءت كاملة مع هوائي جبل اللوحة.

قررت إنشاء نظام بسيط للتحكم في الرسائل القصيرة يستخدم أوامر خدمة الرسائل القصيرة (SMS) للتحكم في الأجهزة والإشارة إلى الإنذارات.

الخطوة 1: أوامر الرسائل القصيرة

أوامر SMS
أوامر SMS

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

كانت الفكرة هي إنشاء وحدة تحكم SMS بسيطة بأربعة مخرجات رقمية. اعتمادًا على الرسائل القصيرة المستلمة ، يجب أن تكون الوحدة قادرة على التحكم في المخرجات الفردية.

قررت أيضًا تضمين أربعة مدخلات رقمية. يمكن استخدام هذا للإشارة إلى الإنذارات أو المعلومات الأخرى.

قبل البدء في الإنشاء ، قررت إنشاء أوامر محددة لوظائف محددة. سيتم إرسال هذه "الأوامر" باستخدام رسالة نصية قصيرة من هاتف خلوي.

أوامر تلقي وحدة تحكم SMS:

o1: 1 - تشغيل الإخراج 1

o1: 0 - قم بإيقاف تشغيل الإخراج 1

o1: p - إخراج النبض 1 On ، ثم إيقاف التشغيل

o2: 1 - تشغيل الإخراج 2

o2: 0 - تشغيل الإخراج 2 إيقاف

o2: p - إخراج النبض 2 On ، ثم إيقاف التشغيل

o3: 1 - تشغيل الإخراج 3

o3: 0 - تشغيل الإخراج 3 إيقاف

o3: p - إخراج النبض 3 تشغيل ، ثم إيقاف التشغيل

o4: 1 - تشغيل الإخراج 4

o4: 0 - تشغيل الإخراج 4 إيقاف

o4: p - إخراج النبض 4 On ، ثم إيقاف التشغيل

؟؟؟؟ - طلب حالة المدخلات والمخرجات

#### - إعادة تعيين النظام

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

أوامر استجابة وحدة التحكم في الرسائل القصيرة:

i1: x i2: x i3: x i4: x o1: x o2: x o3: x o4: x

حيث x هي حالة الإدخال / الإخراج ، و 1 للتشغيل ، و 0 للإيقاف.

الخطوة 2: بناء وحدة تحكم SMS

بناء وحدة تحكم الرسائل القصيرة
بناء وحدة تحكم الرسائل القصيرة
بناء وحدة تحكم الرسائل القصيرة
بناء وحدة تحكم الرسائل القصيرة
بناء وحدة تحكم الرسائل القصيرة
بناء وحدة تحكم الرسائل القصيرة

المعدات المطلوبة:

أي Arduino ، أو ATMEGA328p قائم بذاته على اللوح

SIM800L GSM / GPRS Module مع بطاقة sim قادرة على إرسال واستقبال الرسائل القصيرة

تنحى محول DC / DC

ملاحظة !

محول DC / DC مطلوب لتشغيل وحدة SIM800L. تعمل هذه الوحدة بين 3.7 فولت و 5 فولت ، اعتمادًا على الإصدار الذي لديك. تتطلب هذه الوحدة أيضًا مصدر طاقة يمكنه توصيل ما يصل إلى 2 أمبير عندما تقوم الوحدة بنقل البيانات. لا يمكن تشغيله مباشرة من Arduino Uno !

الدائرة بسيطة للغاية. لقد قمت بتجميعها واختبارها على لوح التجارب.

الطاقة إلى الدائرة عن طريق محول DC / DC ، مع ضبط جهد الخرج على 4.5V. هناك أربعة مصابيح LED لمحاكاة المخرجات الرقمية ، وأربعة أزرار للمدخلات الرقمية. يتم توصيل SIM800L بدبابيس Rx / Tx في ATMEGA328p.

يتم استخدام مؤشر LED الخامس للإشارة إلى وقت انشغال النظام في إرسال رسالة نصية قصيرة.

الخطوة الثالثة: برمجة ATMEGA328p

برمجة ATMEGA328p
برمجة ATMEGA328p
برمجة ATMEGA328p
برمجة ATMEGA328p

قبل البرمجة ، افتح ملف INO ، وقم بتحرير رقم الهاتف. استبدل xxxxxxxxxx برقم هاتفك الخلوي في السطر 46. قم بإعادة التحويل البرمجي وتحميل الملف.

اقرأ أيضًا الإرشادات الخاصة بكيفية تكوين منفذ Software Serial في ملف INO.

//=============================================================================//

//! ! ! ملاحظة ! ! !

// ================

//

// BUFFER IN SOFTWARE SERIAL LIBRARY المطلوب تغييرها إلى 200

//

// لاستخدام Software Serial ، يجب على المستخدم أيضًا تغيير Software Serial BUFFER إلى 200.

// يجب تحرير هذا في الملف التالي:

//

// C: / Program Files / Arduino x.x.x / Hardware / Arduino / AVR / Libraries / SoftwareSerial / src / SoftWareSerial.h

//

// تغيير المخزن المؤقت على النحو التالي:

//

// #ifndef _SS_MAX_RX_BUFF

// #define _SS_MAX_RX_BUFF 200

// حجم المخزن المؤقت RX

// #إنهاء إذا

//

//=============================================================================

ارجع إلى هذه التعليمات لبرمجة ATMEGA328p على اللوح باستخدام Arduino UNO.

www.instructables.com/id/Arduino-UNO-as-AtM…

الخطوة 4: استخدام وحدة تحكم SMS

باستخدام وحدة تحكم SMS
باستخدام وحدة تحكم SMS

باستخدام وحدة تحكم SMS

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

يمكن تحرير رسائل SMS والأوامر حسب احتياجاتك في ملف INO.

اختبار مخرجات وحدة تحكم SMS

من هاتفك الخلوي ، أرسل الأوامر التالية إلى رقم بطاقة SIM800L الخاصة بك:

o1: 1 ، سيؤدي هذا إلى تشغيل الإخراج 1.

على هاتفك ، ستتلقى الرسائل القصيرة التالية:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 1 o2: 0 03: 0 o4: 0

01: 0 ، سيؤدي ذلك إلى إيقاف تشغيل الإخراج 1.

على هاتفك ، ستتلقى الرسائل القصيرة التالية:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

01: p ، سيؤدي هذا إلى تشغيل الإخراج 1 لمدة ثانية واحدة ، ثم إيقاف تشغيل الإخراج 1 مرة أخرى (نبضي).

على هاتفك ، ستتلقى الرسائل القصيرة التالية:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

اختبار مدخلات تحكم SMS

في وحدة تحكم SMS ، اضغط على الزر 1 لفترة وجيزة

على هاتفك ، ستتلقى تلقائيًا الرسائل القصيرة التالية:

i1: 1 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

في وحدة تحكم SMS ، اضغط على الزر 2 لفترة وجيزة

على هاتفك ، ستتلقى تلقائيًا الرسائل القصيرة التالية:

i1: 1 i2: 1 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

في وحدة تحكم SMS ، اضغط على الزر 3 لفترة وجيزة

على هاتفك ، ستتلقى تلقائيًا الرسائل القصيرة التالية:

i1: 1 i2: 1i3: 1 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

كما يتضح من الرسائل القصيرة المستلمة ، تتغير المخرجات وفقًا للأوامر المستلمة. ومع ذلك ، لا تتغير المدخلات مرة أخرى من 1 إلى 0 بعد الضغط على الأزرار. نظرًا لأنني أردت أن أكون قادرًا على رؤية أي تغييرات على المدخلات ، فقد قررت إغلاق حالة الإدخال حتى يتم إرسال أمر إعادة التعيين إلى وحدة التحكم في الرسائل القصيرة.

إعادة ضبط الإنذارات

لإعادة تعيين حالة الإدخال ، أرسل الأمر التالي:

#### ، سيؤدي ذلك إلى إعادة تعيين حالة الإدخال.

على هاتفك ، ستتلقى الرسائل القصيرة التالية:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

تحديثات الحالة

يمكنك أيضًا طلب الحالة في أي وقت بإرسال الأمر التالي:

؟؟؟؟ ، سيطلب هذا تحديث حالة الإدخال / الإخراج.

على هاتفك ، ستتلقى الرسائل القصيرة التالية:

i1: x i2: x i3: x i4: x o1: x o2: x 03: x o4: x

حيث تشير x إلى الحالة ، و 1 للتشغيل ، و 0 للإيقاف.

الخطوة 5: تطبيق Android

تطبيق أندرويد
تطبيق أندرويد
تطبيق أندرويد
تطبيق أندرويد
تطبيق أندرويد
تطبيق أندرويد

باستخدام MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) ، قمت بإنشاء واجهة مستخدم بسيطة لهاتفي الخلوي الذي يعمل بنظام Android. يتيح لك هذا التطبيق تخصيص وصف كل إدخال / إخراج. كما يسمح بإدخال رقم الهاتف.

يتم استخدام الأزرار الأربعة للتحكم في المخرجات ، بينما تشير خانات الاختيار إلى حالة الإدخال.

لتحرير التطبيق ، أنشئ حساب MIT App Inventor 2 ، واستورد ملف AIA.

لتثبيت التطبيق على هاتفك ، انسخ ملف APK على هاتفك وقم بتثبيته. سيكون عليك تمكين تثبيت التطبيقات من "مصادر غير معروفة" ضمن إعدادات أمان هاتفك.

موصى به: