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

LTE Arduino GPS Tracker + IoT Dashboard (الجزء 1): 6 خطوات (بالصور)
LTE Arduino GPS Tracker + IoT Dashboard (الجزء 1): 6 خطوات (بالصور)

فيديو: LTE Arduino GPS Tracker + IoT Dashboard (الجزء 1): 6 خطوات (بالصور)

فيديو: LTE Arduino GPS Tracker + IoT Dashboard (الجزء 1): 6 خطوات (بالصور)
فيديو: #10 Real-Time LTE Arduino GPS Tracker (Part 1) 2024, يوليو
Anonim
LTE Arduino GPS Tracker + IoT Dashboard (الجزء الأول)
LTE Arduino GPS Tracker + IoT Dashboard (الجزء الأول)
LTE Arduino GPS Tracker + IoT Dashboard (الجزء الأول)
LTE Arduino GPS Tracker + IoT Dashboard (الجزء الأول)
LTE Arduino GPS Tracker + IoT Dashboard (الجزء الأول)
LTE Arduino GPS Tracker + IoT Dashboard (الجزء الأول)

مقدمة

ما الأمر يا رفاق! هذا Instructable هو متابعة لأول Instructable لي حول استخدام درع Botletics LTE / NB-IoT لـ Arduino ، لذا إذا لم تكن قد قمت بذلك بالفعل ، فيرجى قراءته للحصول على نظرة عامة جيدة حول كيفية استخدام الدرع وما يدور حوله. في هذا البرنامج التعليمي ، سأركز على تسجيل بيانات إنترنت الأشياء ، وعلى وجه التحديد ، نظام تحديد المواقع العالمي وتتبع درجة الحرارة ، وسأزودك بكل التعليمات البرمجية والإرشادات التي ستحتاجها للوصول إلى الطريق واختبارها!

تركز Instructable بشكل أساسي على درع LTE الذي صممته وصنعته شخصيًا ، ولكن كل شيء هنا (بما في ذلك مكتبة Github Arduino) يجب أن يعمل على وحدات SIMCom 2G و 3G مثل SIM800 / 808/900/5320 أيضًا نظرًا لأنه مجرد تحديث نسخة من مكتبة Adafruit FONA. بغض النظر عن الأجهزة ، فإن المفهوم هو نفسه تمامًا ويمكنك القيام بالكثير من الأشياء الرائعة باستخدام هذا ، بما في ذلك تسجيل بيانات المستشعر ، ومراقبة الطقس عن بُعد ، وتتبع السرقة التلقائية باستخدام نظام تحديد المواقع العالمي (GPS) ، وما إلى ذلك … لذا اقرأ!

الخطوة 1: اجمع الأجزاء

اجمع الأجزاء
اجمع الأجزاء
اجمع الأجزاء
اجمع الأجزاء
اجمع الأجزاء
اجمع الأجزاء

القائمة هي نفسها الموجودة في البرنامج التعليمي الأول وهي بسيطة حقًا!

  • اردوينو أونو ، ميجا ، أو ليوناردو. بدلاً من ذلك ، يمكنك استخدام أي متحكم آخر 3.3 فولت أو 5 فولت ولكن سيتعين عليك توصيل المسامير خارجيًا.
  • مجموعة أدوات الحماية من Botletics SIM7000 (تأتي مع الدرع وهوائي LTE / GPS uFL مزدوج ورؤوس أنثوية متراصة). تأكد من مراجعة هذا البرنامج التعليمي لتحديد الإصدار المناسب!
  • بطاقة SIM ثلاثية الأبعاد. أول بطاقة SIM (تسمى بطاقة SIM "المطور") مجانية تمامًا وتأتي مع 1 ميغابايت من البيانات شهريًا! في الولايات المتحدة ، ستكون على الأرجح على شبكة Verizon إذا كنت تستخدم بطاقة SIM الهولوغرام. يمكنك أيضًا التقاطه بجانب درع Botletics إذا كان ذلك أكثر ملاءمة.
  • 3.7 فولت بطارية LiPo (يوصى بسعة 1000 مللي أمبير أو أكبر).
  • كبل USB لبرمجة Arduino أو لتشغيله.

لاختبار تتبع GPS!

  • يمكنك استخدام محول USB للسيارة لتشغيل Arduino أثناء اختبار الدرع على الطريق.
  • بدلاً من ذلك ، يمكنك استخدام حزمة بطارية (7-12 فولت) لتشغيل Arduino عبر دبابيس VIN و GND.

الخطوة 2: التجميع المادي

التجمع المادي
التجمع المادي
التجمع المادي
التجمع المادي
التجمع المادي
التجمع المادي

الآن بعد أن أصبحت لديك جميع أجزائك ، إليك ملخص سريع لما تحتاج إلى القيام به لإعداد أجهزتك:

  • قم بلحام الرؤوس الأنثوية المكدسة على الدرع. شاهد هذا البرنامج التعليمي حول كيفية القيام بذلك.
  • قم بتوصيل الدرع في Arduino ، مع التأكد من محاذاة جميع المسامير حتى لا تتلفها!
  • أدخل بطاقة SIM كما هو موضح في الصورة. تواجه جهات الاتصال المعدنية لأسفل وتدوين موقع الشق في الزاوية.
  • قم بتوصيل بطارية LiPo بموصل JST الموجود على الدرع
  • قم بتوصيل Arduino بجهاز الكمبيوتر الخاص بك باستخدام كابل USB. قد تلاحظ أن مؤشر الطاقة الأخضر للدرع لا يضيء. هذا طبيعي تمامًا لأن دبوس PWRKEY للدرع يحتاج إلى نبض منخفض قليلًا لتشغيله. مثال رسم Arduino في القسم التالي سوف يعتني بذلك من أجلك!
  • قم بتوصيل هوائي LTE / GPS مزدوج بموصلات uFL على الحافة اليمنى للدرع. لاحظ أن الأسلاك ستتقاطع ، لذا لا تقم بتوصيل الأسلاك الخاطئة!
  • أنت جاهز تمامًا للبرنامج!

الخطوة 3: إعداد Arduino واختبار الجهاز

إعداد Arduino واختبار الجهاز
إعداد Arduino واختبار الجهاز

إعداد Arduino IDE

إذا لم تكن قد قمت بذلك بالفعل ، فالرجاء الاطلاع على خطوات "إعداد Arduino IDE" و "مثال Arduino" في المنتج الرئيسي Instructable للتأكد من أن اللوحة الخاصة بك تعمل بشكل صحيح. في هذه التعليمات ، ستحتاج إلى تنزيل المكتبة على صفحة Github وفتح رمز المثال "LTE_Demo". بعد اتباع هذه التعليمات ، يجب أن تختبر اتصال الشبكة ونظام تحديد المواقع العالمي (GPS) ونشر البيانات على dweet.io.

مثال على رسم تخطيطي لإنترنت الأشياء

الآن بعد أن اختبرت الميزات الأساسية للدرع الخاص بك ، قم بتحميل رسم "IoT_Example" في Arduino IDE. يمكنك أيضًا العثور عليها هنا على جيثب. قم بتحميل هذا الرمز إلى Arduino وافتح الشاشة التسلسلية وسترى Arduino يعثر على وحدة SIM7000 ، ويتصل بالشبكة الخلوية ، ويمكّن GPS ويستمر في المحاولة حتى يحصل على إصلاح في الموقع ، ونشر البيانات على dweet.io. يجب أن يعمل كل هذا دون تغيير أي سطر من الكود ، على افتراض أنك تستخدم درع LTE وبطاقة Hologram SIM.

بشكل افتراضي ، سترى السطر التالي يحدد معدل أخذ العينات (حسنًا ، في الواقع التأخير بين المشاركات).

#define samplingRate 30 // الوقت بين المشاركات ، بالثواني

إذا تم ترك هذا الخط دون تعليق ، فسيقوم Arduino بنشر البيانات ، وتأخير 30 ثانية ، ونشر البيانات مرة أخرى ، والتكرار ، وما إلى ذلك. خلال تأخير 30 ثانية ، يمكنك القيام بأشياء مثل وضع Arduino في وضع الطاقة المنخفضة وأشياء خيالية من هذا القبيل ، ولكن للحفاظ على أشياء بسيطة سأستخدم وظيفة delay () لإيقاف العملية مؤقتًا. إذا قمت بالتعليق على هذا السطر ، فسيقوم Arduino بنشر البيانات ، ثم انتقل مباشرة إلى وضع السكون منخفض الطاقة إلى أجل غير مسمى حتى تضغط على زر إعادة الضبط في Arduino. هذا مفيد إذا كنت تختبر شيئًا ما ولا تريد نسخ بياناتك المجانية الثمينة (على الرغم من أن كل منشور بصراحة لا يستخدم شيئًا عمليًا) أو ربما لديك دارة خارجية لإعادة ضبط Arduino (مؤقت 555؟ RTC مقاطعة؟ تسارع مقاطعة؟ مستشعر درجة الحرارة المقاطعة فكر خارج الصندوق!). في الواقع ، في البرنامج التعليمي Burgalert 7000 ، أوضحت كيف يمكنك استخدام كاشف الحركة PIR لإيقاظ المتحكم الدقيق.

يحدد السطر التالي ما إذا كان الدرع سيتوقف عن العمل بعد نشر البيانات أو يظل قيد التشغيل. يمكنك اختيار الخيار السابق عن طريق إلغاء تعليق السطر إذا كنت تقوم بأخذ العينات مرة واحدة فقط كل فترة ، ولكن إذا كان لديك معدل أخذ عينات مرتفع نسبيًا ، فستحتاج إلى ترك السطر معلقًا بحيث يظل الدرع قيد التشغيل وليس به لإعادة التهيئة ، وإعادة تمكين GPRS و GPS ، وما إلى ذلك. عندما يُترك الدرع ، يمكنه النشر بسرعة كبيرة!

// # حدد turnOffShield // إيقاف الدرع بعد نشر البيانات

ضع في اعتبارك أيضًا أن هذا المثال يجلب تلقائيًا رقم IMEI الخاص بالوحدة والفريد عالميًا لبطاقة SIM7000 ويستخدمه كمعرف الجهاز (أو "الاسم" إذا كنت تفضل ذلك) لتحديد الجهاز عندما ينشر البيانات على dweet.io. يمكنك تغيير هذا إذا أردت ، لذلك اعتقدت أنني سأخبرك فقط:)

للتحقق مما إذا كان يتم إرسال بياناتك بالفعل إلى dweet.io ، ما عليك سوى ملء المعلومات المناسبة ونسخ / لصق عنوان URL في أي متصفح:

dweet.io/get/latest/dweet/for/{deviceID}

حيث يجب استبدال {deviceID} برقم IMEI الذي تم طباعته في الشاشة التسلسلية في البداية ، مباشرة بعد أن يجدها Arduino. بعد إدخال عنوان URL هذا في متصفحك ، يجب أن ترى استجابة JSON كما يلي:

بالنظر إلى "المحتوى" ، يجب أن ترى خط العرض وخط الطول لموقعك وسرعتك (بالكيلومترات لكل ساعة) وعنوان الاتجاه (بالدرجات ، مع 0 درجة شمالًا) والارتفاع (بالأمتار) ودرجة الحرارة (* درجة مئوية ، ولكن تشعر حر في التحويل في الكود) ، وجهد الإمداد بالملي فولت (وهو VBAT ، جهد البطارية). لمزيد من المعلومات حول سلسلة بيانات NMEA ، يمكنك إلقاء نظرة على الصفحة 149 من دليل أوامر SIM7000 AT.

بمجرد التحقق من أن الإعداد الخاص بك يرسل البيانات بنجاح إلى التغريد ، فلنقم بإعداد لوحة القيادة لعرض جميع بياناتنا على واجهة لطيفة!

الخطوة 4: إعداد Freeboard.io

إعداد Freeboard.io
إعداد Freeboard.io
إعداد Freeboard.io
إعداد Freeboard.io
إعداد Freeboard.io
إعداد Freeboard.io

في هذا البرنامج التعليمي ، سنستخدم freeboard.io ، وهي لوحة تحكم إنترنت الأشياء رائعة حقًا يمكنها الاتصال بالعديد من المنصات السحابية مثل PubNub و dweet ، بالإضافة إلى ميزات أخرى مثل JSON و MQTT. كما خمنت على الأرجح ، سنستخدم أيضًا dweet.io المستخدم في مثال الكود من القسم السابق. كملاحظة مهمة ، لا يبدو أن سحب الأجزاء في freeboard.io يعمل في Chrome ، لذا استخدم Firebox أو Microsoft Edge بدلاً من ذلك. إذا لم تقم بذلك ، فيمكن أن يكون "جزء" حقيقيًا لإعادة ترتيب العناصر على شاشتك!

إعداد الحساب والجهاز

  • أول شيء عليك القيام به هو إنشاء حساب بالنقر فوق الزر الأحمر "ابدأ الآن" على الصفحة الرئيسية لـ freeboard.io ، وأدخل بيانات الاعتماد ، ثم انقر فوق "إنشاء حسابي". ستتلقى بعد ذلك إشعارًا بالبريد الإلكتروني لتأكيد حسابك الجديد.
  • انقر الآن على "تسجيل الدخول" في الجزء العلوي الأيمن من الصفحة الرئيسية وبعد تسجيل الدخول سترى "اللوحات المجانية" الخاصة بك ، وهي مجرد لوحات تحكم قمت بإعدادها من مشروعاتك. من الواضح أنه إذا كان الحساب جديدًا ، فلن ترى أي شيء هنا ، لذا فقط أدخل اسم مشروع جديد وانقر على "إنشاء جديد" بالقرب من أعلى اليسار. سينقلك هذا بعد ذلك إلى لوحة معلومات فارغة حيث يمكنك إعداد الواجهة بالطريقة التي تريدها. في لوح الطفو هناك يمكنك إعداد "أجزاء" مختلفة ، ويمكن أن يحتوي كل جزء على "أدوات" فردية أو متعددة والتي هي أشياء مثل الرسوم البيانية ، والخرائط ، والمقاييس ، وما إلى ذلك ، والتي تعرض بياناتك بطريقة ما.
  • أول شيء يتعين علينا القيام به الآن هو إعداد المصدر الفعلي للبيانات ، وهو درع Arduino + LTE. للقيام بذلك ، انقر فوق "إضافة" في الجزء العلوي الأيمن ضمن "مصادر البيانات". بعد ذلك ، حدد "Dweet.io" وأدخل أي اسم تريده تحت حقل "الاسم". ومع ذلك ، تأكد من إدخال رقم IMEI للدرع بدلاً من أي اسم عشوائي ، وذلك أسفل حقل "اسم الشيء" ، لأن هذا هو ما ستستخدمه freeboard لسحب البيانات من التغريد.
  • بعد النقر على "حفظ" ، سترى جهازك يظهر ضمن "مصادر البيانات" بالإضافة إلى آخر مرة أرسل فيها البيانات إلى التغريد. يمكنك أيضًا النقر فوق زر التحديث للتحقق من أحدث القيم ، ولكن سيتم تحديث freeboard من تلقاء نفسه ، لذلك لن تضطر عادةً إلى استخدام هذا الزر.

إعداد لوحة القيادة

الآن دعنا نلقي نظرة على كيفية إعداد الأجراس والصفارات الفعلية التي تريد رؤيتها على شاشتك!

  • لإضافة جزء ، انقر فوق الزر "إضافة لوحة" في أعلى اليسار وسترى أنه يضيف نافذة صغيرة على شاشتك. ومع ذلك ، لا يوجد شيء هنا حتى الآن لأننا لم نضف أي أدوات!
  • لإضافة عنصر واجهة مستخدم انقر فوق الزر الصغير "+" في الجزء. سيؤدي ذلك إلى ظهور قائمة منسدلة بها العديد من خيارات الأدوات. نظرًا لأننا سنقوم ببعض تتبع نظام تحديد المواقع العالمي (GPS) ، فلنختار أداة "خريطة Google". يجب أن ترى حقلين ، خط الطول وخط العرض. من أجل ملء هذه المعلومات بشكل صحيح ، يجب أن يكون جهازك قد نشر بالفعل في التغريد. بافتراض وجود ذلك ، يجب أن تكون قادرًا على النقر على "+ مصدر البيانات" ، والنقر على مصدر البيانات ("SIM7000 GPS Tracker") ، ثم النقر على "lat" ، وهو الاسم المتغير الذي يستخدمه الدرع عند النشر للتغريد. كرر الإجراء الخاص بحقل خط الطول وانقر فوق شريط التمرير في الجزء السفلي إذا كنت تريد أن ترسم الخريطة خطوطًا بين نقاط البيانات لتحديد المكان الذي كنت فيه.
  • الآن يجب أن تشاهد خريطة صغيرة لموقعك التقريبي! لاختبار ما إذا كانت الخريطة تعمل ، حاول تغيير خط عرض / طول GPS الحالي إلى شيء مختلف قليلاً عن طريق تغيير ، على سبيل المثال ، الرقم الأول بعد الفاصلة العشرية لقيم خط العرض / الطول في عنوان URL dweet الذي تمت طباعته في جهاز العرض التسلسلي في Arduino IDE عندما نشر الدرع البيانات. بعد التعديل عليها ، انسخ والصق عنوان URL وقم بتنفيذه في متصفحك.

dweet.io/dweet/for/112233445566778؟lat=11.223344&long=-55.667788&speed=0&head=10&alt=324.8&temp=22.88&batt=3629

عد الآن إلى لوحة الطفو وسترى أنه رسم موقعك المعدل بالرسم البياني ورسم خطًا برتقاليًا بين النقاط! أشياء رائعة ، أليس كذلك؟ لذلك أعتقد أنك حصلت على الصورة التي سيرسل متعقب GPS الخاص بنا بيانات الموقع لتغريدها لتراها على اللوحة المجانية في الوقت الفعلي أو بعد انتهاء مغامرتك

إضافات

نظرًا لأن متتبع GPS الصغير الخاص بنا لا يرسل بيانات خطوط الطول / العرض فحسب ، بل يرسل أيضًا الارتفاع والسرعة والعنوان ودرجة الحرارة ، فلنقم بإدخال بعض الأدوات الإضافية لجعل لوحة القيادة أكثر سخونة!

  • لنبدأ بإضافة جزء جديد ثم لإضافة مقياس داخل الجزء الجديد ، انقر فوق الزر "+" في الجزء وحدد "مقياس". تمامًا كما في السابق ، استخدم مصدر البيانات وحدد "السرعة" على أنها البيانات التي نهتم بجلبها لهذا المقياس. يجب أن ترى بعد ذلك مقياسًا لطيفًا على لوحة القيادة الخاصة بك!
  • كرر هذا مع قيم الارتفاع ودرجة الحرارة.
  • الآن بالنسبة إلى العنوان ، دعنا نضيف "المؤشر" بدلاً من ذلك. هذا هو في الأساس بوصلة لأنه يبدأ في الإشارة لأعلى (شمال) عند 0 درجة وتدور في اتجاه عقارب الساعة للحصول على عناوين موجبة.. Perfecto!
  • لتغيير حجم اللوحة ، مرر الماوس فوق الجزء الذي يحتوي على الخريطة وسترى رمز مفتاح الربط الصغير في أعلى اليمين. انقر فوق ذلك وأدخل عنوانًا للجزء وأدخل "2" ضمن "أعمدة" لزيادة عرض الجزء.
  • لتغيير مواقع الأجزاء ، ما عليك سوى سحبها حولها! يمكنك أيضًا تجربة إضافة "Sparkline" وهو في الأساس مجرد رسم بياني خطي حتى تتمكن من رؤية ليس فقط أحدث البيانات ولكن البيانات التاريخية أيضًا.

استمتع وقم بإعداد كل شيء بالطريقة التي تريدها لأننا مستعدون للخروج في رحلة ميدانية!

الخطوة 5: الاختبار

Image
Image
اختبارات
اختبارات

لاختبار الإعداد الخاص بك ، أوصي بتعيين وقت أخذ العينات على قيمة أقل ، مثل 10-20 ثانية حتى تتمكن من التقاط رحلتك بدقة أعلى. أود أيضًا ترك متغير "turnOffShield" معلقًا حتى لا ينام الدرع. هذا يسمح لها بنشر البيانات في تتابع سريع.

بعد تحميل الكود على Arduino الخاص بك ، إما أن تحصل على حزمة بطارية (7-12 فولت) لتشغيل Arduino أو ببساطة قم بتوصيل Arduino باستخدام محول USB للسيارة. ستحتاج أيضًا إلى بطارية LiPo 3.7 فولت متصلة بالدرع كما ذكرنا سابقًا ؛ الدرع الموضح في الصورة أعلاه هو إصدار قديم ولا يدعم بطارية LiPo ولكنه مطلوب الآن في جميع الإصدارات الأحدث.

بعد ذلك ، افتح freeboard في مكان ما حتى تتمكن من رؤية النتائج عند عودتك! بمجرد توصيل Arduino ، فأنت على ما يرام! ابدأ بالقيادة ، واحصل على بعض القهوة ، ثم عد إلى المنزل ، وسترى البيانات مخططة على متن الطائرة. إذا كنت تريد حقًا (لا أوصي بذلك أثناء القيادة …) يمكنك عرض بيانات لوح التزلج المجاني على هاتفك في الوقت الفعلي حيث يقود صديقك السيارة. متعة الاشياء!

الخطوة 6: النتائج

نتائج
نتائج

من أجل هذا الاختبار ، ذهبت أنا وأبي للحصول على بعض طبول الدجاج في Trader Joe's (omnomnomnom …) وقمنا بجمع بعض البيانات الدقيقة جدًا. كان الجهاز يرسل البيانات كل 10 ثوانٍ وكانت السرعة القصوى من الرحلة حوالي 92 كيلو متر (حوالي 57 ميلاً في الساعة) وهي دقيقة للغاية لأننا راقبنا عداد السرعة طوال الوقت. من المؤكد أن درع LTE يقوم بعمله بشكل جيد ويرسل البيانات إلى السحابة بسرعة كبيرة. حتى الان جيدة جدا!

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

في هذا البرنامج التعليمي ، تعلمنا كيفية استخدام درع LTE كمتتبع GPS ومسجل بيانات وكيفية عرض البيانات بسرعة على freeboard.io. الآن استخدم خيالك وقم بتطبيقه في مشروعك الخاص. يمكنك حتى إضافة المزيد من الدروع وتحويل هذا الشيء إلى مسجل بيانات شمسي منخفض الطاقة! (قد أخطط في الواقع لإجراء برنامج تعليمي حول ذلك في المستقبل!). بسبب القيود المفروضة على خريطة freeboard ، أخطط أيضًا لإنشاء برنامج تعليمي جديد تمامًا حول كيفية إنشاء تطبيق Android الخاص بك الذي يجلب البيانات من dweet ويسمح لك برسم موقع المتتبع على خرائط Google مع البدء ، وقفة ، وإيقاف الميزات لرحلتك! ابقوا متابعين!

  • إذا أعجبك هذا المشروع ، يرجى إعطائه قلبًا!
  • إذا كان لديك أي أسئلة أو تعليقات أو اقتراحات حول برنامج تعليمي جديد أو جربت هذا المشروع بنفسك ، فقم بالتأكيد بالتعليق أدناه!
  • تابعني هنا على Instructables أو اشترك في قناتي على YouTube أو تابعني على Twitter لتبقى على اطلاع بأحدث مشاريع Arduino الخاصة بي! أنا مهندس شاب لدي شغف بمشاركة ما تعلمته ، لذلك سيكون هناك بالتأكيد المزيد من البرامج التعليمية قريبًا!
  • إذا كنت تريد دعم ما أفعله في مشاركة الأجهزة مفتوحة المصدر وتوثيقها بدقة للأغراض التعليمية ، ففكر في شراء درعك الخاص على Amazon.com للعب به!

موصى به: