جدول المحتويات:
- الخطوة 1: الأجهزة
- الخطوة الثانية: البرنامج (برنامج اردوينو)
- الخطوة 3: المزيد من البرامج (تلقي من جانب الخادم لمواقع Gps)
- الخطوة 4: المزيد من البرامج (تطبيق الهاتف المحمول)
- الخطوة الخامسة: العمل المستقبلي
فيديو: نظام مضاد للسرقة GPS + GPRS للسيارة يعتمد على Arduino: 5 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:41
مرحبا جميعا!
كنت أرغب في بناء حل كامل لجهاز مكافحة السرقة الخاص بمركبة GPS ، والذي سيكون:
أرخص ما يمكن
كاملة قدر الإمكان
لأنه يعمل فقط ، لا يوجد شيء آخر يمكن القيام به قدر الإمكان
لذلك انتهى بي الأمر ببناء حل قائم على Arduino يكلفني إجمالي 25 دولارًا أو أكثر أو أقل.
كما ترون من الفيديو ، إنها تعمل فقط! تبدأ تشغيل السيارة ، تتلقى إشعارًا على هاتفك المحمول بأن السيارة تتحرك ، ثم تفتح تطبيق الهاتف ويمكنك رؤية السيارة تتحرك في الوقت الفعلي (مع تأخر تحديث لمدة 10 ثوانٍ).
سيرشدك هذا البرنامج التعليمي خلال جميع الخطوات ، مع الأخذ في الاعتبار أن هناك عدة مكونات في الحل:
1) الأجهزة (تعتمد على اردوينو)
2) البرنامج (برنامج اردوينو)
3) المزيد من البرامج (استقبال من جانب الخادم لمواقع GPS)
4) المزيد من البرامج (تطبيق الجوال)
لنبدأ..
الخطوة 1: الأجهزة
قائمة التسوق:
1) Arduino Uno R3 أو استنساخ. لقد استخدمت استنساخ "DCcEle DCcduino uno" ، والذي لا يبدو أنه متاح بعد الآن. إليك ما يعادل: على Aliexpress - 3.75 دولار
2) وحدة GPS لـ Arduino (وحدة GPS جديدة GY-NEO6MV2 مع هوائي التحكم في الطيران EEPROM MWC APM2.5 NEO6MV2). لقد استخدمت هذا: على Aliexpress - 6.66 دولار
3) وحدة GPRS / GSM لـ Arduino (SIM800L V2.0 5V Wireless GSM GPRS MODULE رباعي الموجات مع غطاء كابل هوائي). لقد استخدمت هذا: على Aliexpress - 6.71 دولار
4) قطع كابلات دوبونت مثل هذه: على Aliexpress - 0.89 دولار
5) بطاقة sim بيانات إنترنت الأشياء (أو أي بطاقة sim أخرى مع اتصال البيانات). لقد استخدمت هذا: من Hologram.io. لديّ مطور مجاني ، دفع رسوم الشحن فقط - 7.50 دولار
الإجمالي: 25.51 دولارًا ، لكن كان لدي الكابلات بالفعل ، لذا فهو أقل من 25 دولارًا!
تظهر الصورتان المكونات قبل التجميع والمنتج النهائي. الروابط التي عليك القيام بها هي:
اردوينو - SIM800L
10 - إعادة تعيين
GND - GND (2 منهم)
5 فولت - 5 فولت
7 - SIM_TXD
8 - SIM_RXD
اردوينو - GY-NEO6MV2
GND - GND
5 فولت - VCC
3 - RX
4 - تكس
قم بتوصيل جميع الكابلات والهوائيات وتأكد من تشغيل Arduino من مصدر قادر على منحك قمم 2A. USB للكمبيوتر بالكاد على ما يرام (أنا أستخدم MacBook Pro) ، شاحن الهاتف "العشوائي" لن يكون كافيًا. معظم منافذ USB للسيارات أقل من 1A. إذا كانت هذه هي حالتك ، فأنت بحاجة أيضًا إلى مصدر طاقة بجهد 12 فولت للسيارة 5 فولت مع 2 أمبير على الأقل.
أدخل بطاقة sim. إذا كنت تستخدم بطاقة sim Hologram.io ، فتأكد من التسجيل على لوحة القيادة الخاصة بهم وتنشيط بطاقة sim (يستغرق الأمر بضع دقائق / ساعات).
الخطوة الثانية: البرنامج (برنامج اردوينو)
سأفترض أنك على دراية ببرمجة Arduino. بخلاف ذلك ، يرجى البدء بهذا الدليل: في Instructables.
أنت بحاجة إلى مكتبة خارجية واحدة فقط ، وكان علي أن أقوم بتثبيتها يدويًا. اذهب هنا: TinyGPS ، قم بتصدير المكتبة ، وقم بتثبيتها في مجلد Arduino المحلي الخاص بك.
من هناك ، سنقوم بـ "سرقة" بعض التعليمات البرمجية من مثالهم الأساسي ، وتعديلها لتلائم أغراضنا.
سنقوم بعد ذلك "بالسرقة" من هذا الدليل وتعديل الشفرة مرة أخرى بما يتوافق مع أغراضنا.
والنتيجة هي برنامج.ino المرفق.
هناك بعض الأشياء التي يمكنك تعديلها ويجب عليك تعديلها:
تعريف "SECONDS" ، وتحديد "الخادم".
لقد قمت بتعيين SECONDS على 10 وإليك السبب: يمنحك برنامج مطور Hologram.io 1 ميغابايت من البيانات المجانية شهريًا. مما يعني أننا نريد تقليل وحدات البايت المرسلة ، ولكننا نحتاج أيضًا إلى تحديث موقعنا كثيرًا. سنستخدم أوامر مودم AT القياسية لإرسال حزم UDP إلى خادمنا لتلقي الرسائل ، باستخدام خطوط الطول / العرض ، كل منها يستخدم 4 بايت ، والسرعة باستخدام 1 بايت. لذا فإن إجمالي تحديث GPS هو 20 بايت (رأس IP) بالإضافة إلى 8 بايت (رأس UDP) بالإضافة إلى 9 بايت (الحمولة). هذا 37 بايت. بافتراض أن سيارتي نشطة لمدة لا تزيد عن ساعتين في اليوم ، يمكنني تحمل تكلفة التحديث كل 10 ثوانٍ واستهلاك 806 كيلوبايت فقط في الشهر (31 يومًا). هذا يعطيني 218 كيلو بايت مقابل وقت القيادة على بلدي ، أي سارق السيارة. وهو ما يمنحني 16.76 ساعة من مراقبة نظام تحديد المواقع العالمي (GPS) خارج وقت القيادة ، مع تحديث واحد كل 10 ثوانٍ.
الآن ، يجب أن تذهب حزم UDP هذه إلى مكان ما. أنا أستخدم خادم Ubuntu مستضافًا على سحابة CloudAtCost ، والتي اشتريتها مقابل 8 دولارات بخصم 80٪ ، والتي تخدمني أغراضًا أخرى ، وبالتالي لا تدخل في حسابات التكلفة. إذا كنت لا ترغب في الدفع مقابل خادم ، فيمكنك الحصول على مثيل Amazon AWS مجاني لمدة 12 شهرًا ، وتثبيت Ubuntu عليه. بمجرد الانتهاء من إعداد الخادم الخاص بك (انظر الخطوة التالية) ، احصل على عنوان IP الثابت الخاص به ، وضعه بجوار تعريف الخادم.
الخطوة 3: المزيد من البرامج (تلقي من جانب الخادم لمواقع Gps)
يأتي كل من CloudAtCost و Amazon مع صورة Ubuntu معدة مسبقًا (CloudAtCost موجود في Ubuntu 14.04). لذلك لن أخوض في خطوات تثبيت Ubuntu ، لأنك لن تضطر إلى ذلك. إذا كنت تستخدم CloudAtCost ، فقد ترغب في الترقية إلى Ubuntu 16.04 ، ويتم ذلك باستخدام ملف
sudo apt-get update && sudo apt-get Upgrade && sudo apt-get dist-Upgrade
ثم تحتاج إلى تثبيت LAMP (راجع هذا الدليل: هنا) ، على الرغم من أننا لن نستخدم PHP.
قم بتثبيت Python مع
sudo apt-get install python-Minimal pip
ثم أضف بضع وحدات:
تثبيت نقطة - طلبات المستخدم urllib3
نحتاج إلى تعيين / var / www قابل للكتابة بواسطتك ، لذلك لنفعل:
sudo adduser YOUR_USER www-datasudo chown -R www-data: www-data / var / www
sudo chmod -R g + rwX / var / www
الآن ، نحتاج إلى "خادم" من أجل 1) استلام حزم UDP ، و 2) إنشاء المسار ، و 3) إرسال إشعار إلى هاتفنا المحمول ، و "خادم" لخدمة مسار GPS الذي تم إنشاؤه (سيكون هذا هو apache).
للخادم الأول ، انسخ كود python المرفق. تحتاج إلى تكوين الأشياء التالية:
iftttuser = "مستخدم IFTTT الخاص بك"
iftttpass = "كلمة مرور IFTTT الخاصة بك"
iftttappletid = "تطبيق إشعار IFTTT الخاص بك"
iftttkey = "مفتاح IFTTT الخاص بك"
iftttevent = "حدث IFTTT الخاص بك"
كما قد تكون خمنت ، نحن نستخدم IFTTT لإرسال إشعارات الوقت الفعلي إلى هواتفنا المحمولة. اتبع هذا الدليل: هنا ولكن بدلاً من تحديد "أرسل لي رسالة قصيرة" ، حدد "إرسال إشعار التطبيق". احصل على معرف التطبيق الصغير الخاص بك (قم بالتمرير في الجزء السفلي من تكوين التطبيق الصغير لرؤيته) واستخدمه أعلاه. استخدم أيضًا المفتاح الذي تم إنشاؤه على هذا النحو في الإعدادات أعلاه. حدث IFTTT هو الاسم الذي أعطيته لتطبيقك الصغير ، لقد منحته "carmoving".
الآن ، لا توجد منصات إشعارات حقيقية في الوقت الفعلي مجانًا AFAIK. إذا كنت تعرف واحدة ، أعلمني. IFTTT به تأخير. يمكن تقليل هذا التأخير إلى بضع ثوانٍ إذا كنت تستخدم مشغل البريد الإلكتروني. لسوء الحظ ، هذا غير موثوق به. يستغرق الرد التلقائي على الويب الذي تم إنشاؤه للتو 15 دقيقة. لكننا لا نريد الانتظار لمدة 15 دقيقة لنعرف أن سيارتنا مسروقة ، أليس كذلك؟ هذه هي كلمة المرور التي تطلب منك إعداد جميع الإعدادات المذكورة أعلاه. إذا قمت بتمرير شفرة python ، فسترى أن هناك بضعة أسطر ، وهي 45-53 ، لأتمتة وظيفة "التحقق الآن" الخاصة بـ IFTTT ، والتي تفرض فحصًا مفاجئًا للمشغلات ، وتطلق الإشعار في أقل من ثانية واحدة! على الرحب والسعة:)
بمجرد الانتهاء من إعداد كود Python الخاص بك في مكان ما ، ما عليك سوى تشغيله. إذا كنت مستخدمًا محترفًا ، فاجعله يبدأ عند تمهيد الخادم. ارجع إلى الكثير من الأدلة المجانية عبر الإنترنت حول كيفية القيام بذلك ، على سبيل المثال هذا الدليل.
الخطوة 4: المزيد من البرامج (تطبيق الهاتف المحمول)
نحتاج إلى طريقة سريعة وبسيطة لمجرد تصور مسار نظام تحديد المواقع العالمي (GPS) الذي يواكبه الخادم في الخطوة السابقة. ربما ، يجب أن يعمل على جميع أنواع الهواتف الذكية.
دعنا بعد ذلك نستخدم مجموعة تطبيقات جوال متعددة الأنظمة الأساسية ، مثل Ionic / Cordova. أنا أستخدم Ionic v1 ، لا تخلط بينه وبين Ionic Native ، أو Ionic v2 ، فهذا شيء مختلف.
اتبع هذه الخطوات البسيطة للغاية لبدء مشروعك الأول في Ionic: هنا.
بعد ذلك ، تحتاج إلى بدء مشروع جديد بناءً على خرائط google sdk ، مثل هذا:
البدء الأيوني خرائط myapp
انتقل إلى مجلد "الموارد" وانسخ صورة السيارة الكبيرة هنا باسم "icon.png". بدلاً من ذلك ، قم بتحميل الرموز الصغيرة كـ "car2.png" و "start.png" في مكان ما على الخادم الخاص بك ، مثل https://yourserver/car2.png. ستحتاج إلى هذه كعلامات في تطبيقك.
استخدم ملف index.html المرفق (إعادة تسمية index.html.txt إلى index.html) ، والملفات directives.js و Controllers.js ، ثم ضعها في www (index.html) و www / js (جميع ملفات js).
أضف منصتك مثل هذا:
إضافة أيونية بلافتورم android
بناء مثل هذا:
بناء الروبوت الأيوني
ثم سوف يخبرك أيونك أين بنى ملف apk الخاص بك الذي يمكنك تثبيته على هاتفك المحمول.
لإنشاء نظام iOS ، ستحتاج إلى Mac و Xcode. يمكن لـ ionic بعد ذلك حفظ مشروع Xcode ، والذي يمكنك فتحه في Xcode وإنشاءه لهاتفك. إذا لم يكن لديك حساب مطور iOS ، فسيتعين عليك بعد ذلك إرفاق هاتفك بـ Xcode وإعداد هاتفك للتطوير حتى تتمكن من تثبيت التطبيق هناك. هذا خارج نطاق هذا التدريب.
في ملفات js المختلفة ، ستحتاج إلى العثور على الأسطر المقابلة لـ "car2.png" و "start.png" وتعديلها بمسار صورك. نفس الشيء بالنسبة لـ "plan.json".
هذا كل شيء!!
الخطوة الخامسة: العمل المستقبلي
1) لقد وضعت كل شيء في صندوق من الورق المقوى يمكنني إخفاءه في أي مكان بالقرب من منفذ USB. أفضل ما يمكنك فعله هو تركيب صندوق أفضل تحت غطاء السيارة ، مع محول 12v-> 5v.
2) باستخدام مستشعر البلوتوث ، يمكنك في الواقع "الشعور" إذا كنت في السيارة ، وبالتالي لن يتم تشغيل نظام تحديد المواقع العالمي (GPS).
3) فقط ادفع مقابل خطة بيانات sim وقم بتعيين SECONDS على 1 للاستمتاع بالتتبع في الوقت الفعلي الفائق:)
آمل أن تكون قد استمتعت بهذه التعليمات الأولى لي!
موصى به:
مستشعر الطقس المضغوط مع وصلة بيانات GPRS (بطاقة SIM): 4 خطوات
مستشعر الطقس المضغوط مع وصلة بيانات GPRS (بطاقة SIM): ملخص المشروع هذا مستشعر طقس يعمل بالبطارية يعتمد على مستشعر درجة الحرارة / الضغط / الرطوبة BME280 و ATMega328P MCU. يعمل على بطاريتين ليثيوم ثيونيل AA بقوة 3.6 فولت. لديها استهلاك نوم منخفض للغاية يصل إلى 6 µA. يرسل التاريخ
البرنامج التعليمي لوحدة A9G GPS و GPRS - الذكاء الاصطناعي - أوامر AT: 7 خطوات
البرنامج التعليمي لوحدة A9G GPS و GPRS | الذكاء الاصطناعي | أوامر AT: مرحبًا ، ما الأمر يا رفاق! Akarsh هنا من CETech. اليوم ، سنذهب إلى وحدة A9G GPS و GSM و GPRS من AI Thinker. هناك العديد من الوحدات النمطية الأخرى مثل A9 و A6 من AI Thinker التي تتمتع بقدرات GSM و GPRS متشابهة ولكن
كاميرا البريد الإلكتروني من Arduino Security 3G / GPRS مع كشف الحركة: 4 خطوات
كاميرا البريد الإلكتروني من Arduino Security 3G / GPRS مع كشف الحركة: في هذا الدليل ، أود أن أخبرك عن إصدار واحد لبناء نظام مراقبة أمني مع كاشف للحركة وإرسال الصور إلى صندوق البريد عبر درع 3G / GPRS. تعليمات أخرى: تعليمات 1 وتعليمات
Arduino و SIM900 GSM GPRS 3G تسجيل درجة الحرارة والرطوبة ، إحصائيات الجوال: 4 خطوات
Arduino و SIM900 GSM GPRS 3G تسجيل درجة الحرارة والرطوبة ، إحصائيات الهاتف المحمول: مع Arduino UNO R3 و SIM900 Shield و DHT22 ، يمكنك تسجيل بيانات درجة الحرارة والرطوبة بالخارج أو في الغرفة أو في الدفيئة أو المختبر أو غرفة التبريد أو أي أماكن أخرى خالية تمامًا. سنستخدم هذا المثال لتسجيل درجة حرارة الغرفة والرطوبة. سوف
اتصال TCP / IP عبر GPRS: كيفية إرسال البيانات إلى الخادم باستخدام وحدة SIM900A: 4 خطوات
اتصال TCP / IP عبر GPRS: كيفية إرسال البيانات إلى الخادم باستخدام وحدة SIM900A: في هذا البرنامج التعليمي سأخبرك عن كيفية إرسال البيانات إلى خادم TCP باستخدام وحدة sim900. سنرى أيضًا كيف يمكننا تلقي البيانات من الخادم إلى العميل (وحدة GSM)