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

قم بتوصيل نبتتك بالسحابة: 10 خطوات
قم بتوصيل نبتتك بالسحابة: 10 خطوات

فيديو: قم بتوصيل نبتتك بالسحابة: 10 خطوات

فيديو: قم بتوصيل نبتتك بالسحابة: 10 خطوات
فيديو: #اكسبلور #دعم #عراق #كويت #امارات #متابعة_ولايك #مشاهير_العراق #سعودية #مصر 2024, يوليو
Anonim
قم بتوصيل نبتتك بالسحابة
قم بتوصيل نبتتك بالسحابة
قم بتوصيل نبتتك بالسحابة
قم بتوصيل نبتتك بالسحابة
قم بتوصيل نبتتك بالسحابة
قم بتوصيل نبتتك بالسحابة

يوجد في مكتبنا صبار لم يحظ بالاهتمام الذي يستحقه. نظرًا لأنني أعمل في شركة لتكنولوجيا المعلومات وأردت تجربة LoRa والحلول بدون خادم و AWS ، فقد قمت بتسمية Cactus Steeve وربطته بالسحابة. يمكنك الآن مراقبة Steeve من أي مكان في العالم باستخدام صفحة الويب التي أنشأتها له: واجهة الويب الخاصة بـ Steeve.

اللوازم

1 صبار / نباتك المفضل

1 Arduino MKR WAN 1300 (متجر Arduino)

1868 ميجا هرتز / 914 ميجا هرتز (يعتمد على موقعك) هوائي (أمازون)

1 بوابة LoRa عندما لا تكون في نطاق واحد (Amazon)

بطاريتان مقاس AA

1 مستشعر TMP102 (أمازون)

1 مستشعر رطوبة التربة (أمازون)

الكابلات الموصلة (أمازون)

لحام حديد

حامل البطارية (أمازون)

قضية

اختياري: طابعة ثلاثية الأبعاد (إذا كان بإمكانك استخدام طابعة ثلاثية الأبعاد ، فلن تحتاج إلى حامل بطارية أو علبة)

الخطوة 1: طباعة العلبة (اختياري)

طباعة العلبة (اختياري)
طباعة العلبة (اختياري)
طباعة العلبة (اختياري)
طباعة العلبة (اختياري)

قم بتنزيل هذا الملف المضغوط وفك ضغطه وطباعة الملفات. يتم تمييز الملفات بالمقدار المطلوب من العنصر.

لا تتردد في إضافة شيء إلى الغطاء كما فعلت.

لقد قمت بطباعة هذه باستخدام ارتفاع طبقة 0.2 مم و 15٪ حشو.

يمكن ربط الخطافات باستخدام براغي m3.

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

الخطوة 2: الأسلاك

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

الخطوة 3: قم بإنشاء تطبيق على شبكة الأشياء

  • انتقل إلى https://www.thethingsnetwork.org/ وإذا لم يكن لديك حساب بعد ، فقم بإنشاء حساب.
  • بمجرد أن يكون لديك حساب وتسجيل الدخول ، يمكنك الانتقال إلى وحدة التحكم (أعلى الزاوية اليمنى ، انقر فوق اسم المستخدم الخاص بك ثم على وحدة التحكم).
  • انقر فوق التطبيقات.
  • بمجرد تحميل الصفحة ، يجب أن تكون قادرًا على النقر فوق "إضافة تطبيق".
  • املأ النموذج واختر المنطقة الصحيحة في الأسفل. انقر فوق "إضافة تطبيق".
  • تهانينا ، لقد قمت للتو بإنشاء تطبيق على شبكة الأشياء. = د

الخطوة 4: توصيل Arduino بشبكة الأشياء

لبرمجة اردوينو ، أنصحك باستخدام اردوينو بيئة تطوير متكاملة عبر الإنترنت ، وهذا يجعل التحميل في المكتبة المطلوبة أمرًا سهلاً للغاية.

  • افتح التطبيق الخاص بك على شبكة الأشياء.
  • يجب أن يكون هناك حقل بعنوان الأجهزة ، انقر فوق تسجيل الجهاز.
  • سترى حقلاً يسمى معرف الجهاز. هذا هو الاسم الذي تريد أن تطلقه على المستشعر الخاص بك. يجب أن يكون هناك جهاز آخر يحمل اسم Device EUI ، وهذا هو المفتاح الفريد الذي تستخدمه اردوينو للمصادقة على نفسه.
  • للحصول على هذا المفتاح ، نحتاج إلى وميض اردوينو برسم تخطيطي محدد. يمكن العثور على الرسم في الأعلى. يجب أن يعمل هذا الرسم التخطيطي ويجب أن يرسل جهاز العرض التسلسلي فوق eui. انسخ eui من الشاشة التسلسلية إلى حقل Device EUI على شبكة الأشياء.
  • انقر فوق تسجيل.
  • الآن قمنا بتسجيل اردوينو الخاص بنا على السحابة. حان الوقت لبدء إرسال الرسائل.
  • من المفترض أن تتم إعادة توجيهك إلى صفحة تسمى نظرة عامة على الجهاز. هنا يمكنك رؤية جهازك eui ، تطبيق eui ومفتاح التطبيق.
  • للمتابعة ، نحتاج إلى وميض الرسم النهائي إلى اردوينو. يمكن العثور على الرسم هنا.
  • عندما تفتح هذا الرابط سترى أن هناك عدة علامات تبويب. افتح علامة تبويب الأسرار. هناك مفتاحان تحتاجان إلى الانتقال من شبكة الأشياء إلى ملف الأسرار.
  • بمجرد ملء هذه المفاتيح ، يمكنك وميض اردوينو. سيبدأ إرسال البيانات إلى شبكة الأشياء مرة كل ساعة.
  • إذا سارت الأمور على ما يرام ، فيجب أن تكون قادرًا على رؤية الرسائل الواردة في علامة التبويب البيانات على شبكة الأشياء عند إعادة تعيين اردوينو (الزر الوحيد على اللوحة).

    • إذا لم تكن هناك بيانات تظهر في الأعلى ، فقد يعني هذا أنك لست في نطاق بوابة LoRa الصحيحة. يمكنك التحقق من الخريطة بجميع البوابات المتاحة على https://thethingsnetwork.org. لن تعمل بوابات LoRa أحادية القناة مع اردوينو الموصى به.
    • إذا لم تكن في نطاق بوابة ، فيمكنك إقران البوابة الخاصة بك بشبكة الأشياء. تحتوي هذه البوابات عادةً على دروس تعليمية جيدة إلى حد ما حول كيفية توصيلها. ابحث في قائمة المستلزمات عن البوابة الموصى بها.

الخطوة 5: تفسير البيانات الموجودة على شبكة الأشياء

  • للحصول على بيانات قابلة للاستخدام من الرسائل الموجودة على شبكة الأشياء ، نحتاج إلى فك تشفير سلسلة البايت.
  • على شبكة الأشياء ، انتقل إلى التطبيق الخاص بك.
  • يجب أن تكون هناك علامة تبويب تسمى "تنسيقات الحمولة" ، انقر فوق علامة التبويب هذه.
  • توجد 4 أزرار بجانب بعضها البعض: "وحدة فك ترميز" ، "محول" ، "مدقق" ، "برنامج ترميز".
  • انقر فوق وحدة فك الترميز.
  • الصق الكود التالي هناك.

وظيفة فك الشفرة (بايت ، منفذ) {// فك شفرة رسالة الارتباط الصاعد من مخزن مؤقت // (مصفوفة) من البايت إلى كائن من الحقول. var stringToDecode = bin2String (بايت) ، var res = stringToDecode.split ("") ، فار temp = res [1] ؛ var moist = res [3] ؛ var bat = res [5] ؛ var decoded = {"temperature": temp، "idity ": moist،" battery ": bat}؛ عودة فك. } function bin2String (array) {var result = ""؛ لـ (var i = 0؛ i <array.length؛ ++ i) {result + = (String.fromCharCode (array )) ؛ } نتيجة العودة ؛}

  • انقر فوق حفظ.
  • عند إعادة تعيين Arduino وعرض علامة تبويب البيانات الخاصة بك ، يجب أن ترى كائن json منسق بشكل جيد يمكنك قراءته بسهولة.

الخطوة 6: توصيل تطبيقك بـ AWS

سنستخدم AWS لتخزين واستخدام البيانات من شبكة الأشياء. تتم تغطية جميع الموارد التي سنستخدمها ضمن المستوى المجاني لـ AWS.

  • انتقل إلى AWS
  • تسجيل الدخول أو إنشاء حساب.
  • لتوصيل تطبيقك على شبكة الأشياء بـ AWS ، أوصي باتباع هذا البرنامج التعليمي:
  • بمجرد الانتهاء من هذا البرنامج التعليمي ، انتقل في وحدة التحكم aws إلى قسم IoT-Core.
  • يوجد في شريط القوائم الأيمن تسمية "إدارة" ، انقر فوقها.
  • يجب أن ترى الآن بطاقة بها اسم المستشعر الخاص بك.
  • مرة أخرى في شريط القوائم الأيسر ، انقر فوق "إجراء"
  • إذا كانت هناك بطاقة باسم المتجر ، فأنت على ما يرام.
  • إذا لم يكن كذلك ، فانقر فوق "إنشاء".
  • املأ اسم "المتجر".
  • يمكنك إضافة وصف إذا كنت تريد ذلك.
  • كإفادة استعلام ، قم بتعبئة الكود التالي: SELECT dev_id ، metadata.time ، payload_fields.temperature ، payload_fields.moisture ، payload_fields.battery FROM 'cactus_network / devices / + / up'.
  • ضمن "تعيين إجراء واحد أو أكثر" ، انقر على "إضافة إجراء".
  • حدد "تقسيم الرسالة إلى عدة أعمدة في جدول DynamoDb (DynamoDBv2)".
  • انقر فوق تكوين الإجراء
  • انقر فوق إنشاء مورد جديد.
  • انقر فوق إنشاء جدول وقم بتسمية الجدول الخاص بك.
  • تحت المفتاح الأساسي ، قم بملء "dev_id".
  • انقر فوق إضافة مفتاح الفرز
  • املأ "الوقت".
  • انقر فوق إنشاء.
  • إذا سارت الأمور على ما يرام ، يجب أن تعود إلى صفحة إجراءات التكوين.
  • هناك منطقة رمادية قليلاً ضمن "اختيار أو إنشاء دور لمنح AWS IoT الوصول لتنفيذ هذا الإجراء."
  • انقر فوق إنشاء دور وقم بتسمية هذا الدور.
  • انقر فوق إنشاء دور.
  • انقر فوق إضافة إجراء.
  • انقر فوق إنشاء قاعدة.
  • يجب أن يكون لديك الآن قاعدة تقوم تلقائيًا بتخزين جميع الرسائل الواردة من شبكة الأشياء في DynamoDb.
  • يمكنك التحقق مما إذا كان هذا يعمل عن طريق إعادة تعيين اردوينو والذهاب إلى جدول DynamoDb الذي أنشأته للتو.
  • يجب أن يكون هناك سجل مع الرسالة.

الخطوة السابعة: إنشاء Lambda

لقراءة البيانات من DynamoDB ، سنقوم بكتابة AWS lambda.

  • في وحدة تحكم إدارة AWS تحت الخدمات يوجد ارتباط يسمى "Lambda" ، انقر فوق هذا الارتباط.
  • انقر فوق إنشاء وظيفة.
  • اختر اسمًا.
  • اضبط وقت التشغيل على python 3.7.
  • انقر فوق إنشاء وظيفة.
  • الصق هذا الرمز في IDE المتكامل.

استيراد json

استيراد وقت استيراد boto3 من تاريخ استيراد التاريخ والوقت ، timedelta من boto3.dynamodb.conditions مفتاح الاستيراد ، Attr def lambda_handler (الحدث ، السياق): return retreive_data () def retreive_data (): # احصل على مورد الخدمة. dynamodb = boto3.resource ('dynamodb') table = dynamodb. Table ('TABLE NAME هنا') الآن = datetime.now () أمس = الآن - timedelta (ساعات = 24) fe = مفتاح ('الوقت'). بين (أمس.isoformat () ، now.isoformat ()) fed = Key ('time'). lt (الأمس.isoformat ()) response = table.scan (FilterExpression = fe) recordsToDelete = table.scan (FilterExpression = fed) من أجل f في recordsToDelete ['Items']: #print (f) table.delete_item (Key = {'dev_id': f ['dev_id'] ، 'time': f ['time']}) البيانات = استجابة ['العناصر '] إرجاع البيانات

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

الخطوة 8: إنشاء نقطة نهاية API

  • في وحدة تحكم إدارة AWS ضمن الخدمات ، يوجد ارتباط يسمى "بوابة api" ، انقر فوق هذا الارتباط.
  • انقر فوق إنشاء API.
  • تأكد من تحديد "REST" و "واجهة برمجة تطبيقات جديدة".
  • اختر اسمًا لواجهة برمجة التطبيقات الخاصة بك.
  • انقر فوق إنشاء API.
  • يجب أن يكون هناك زر يسمى الإجراءات على الشاشة الآن ، انقر فوقه.
  • ثم انقر فوق إنشاء مورد.
  • كاسم مورد ، يجب أن تأخذ شيئًا بسيطًا مثل "مصنع" أو "بيانات نباتية".
  • انقر فوق إنشاء مورد.
  • على اليسار يجب أن يكون هناك الآن الاسم الذي أدخلته للتو. انقر فوق هذا الاسم.
  • الآن انقر فوق الإجراءات مرة أخرى وانقر الآن فوق إضافة طريقة.
  • حدد الحصول عليها.
  • انقر فوق علامة الاختيار.
  • يجب أن يكون هناك مربع نص يسمى دالة Lambda.
  • أدخل الاسم الذي منحته لك وظيفة لامدا هنا.
  • انقر فوق حفظ.
  • قد تكون هناك نافذة منبثقة تحذرك من أنها تنشئ أذونات إضافية.
  • اقبل هذه النافذة المنبثقة.
  • الآن ضمن الإجراءات ، انقر فوق تمكين الكور.
  • انقر على "تمكين CORS واستبدال رؤوس CORS الحالية".
  • انقر فوق "نعم ، …".
  • انقر فوق الإجراءات مرة أخرى وانقر فوق نشر API.
  • تحت مرحلة النشر ، حدد [مرحلة جديدة].
  • اختر اسمًا.
  • انقر فوق نشر.
  • لقد قمت الآن بنشر API الخاص بك على الإنترنت للعالم.
  • على الشاشة التي وصلت إليها الآن ، انقر فوق "الحصول على" والمورد الذي قمت بإنشائه للتو.
  • يجب أن يكون هناك ارتباط في الأعلى بعنوان "استدعاء URL".
  • انسخ هذا الرابط.
  • الصقها في المتصفح واضغط على Enter.
  • يجب أن تشاهد البيانات الموجودة في قاعدة البيانات.

الخطوة 9: قم بتوصيل نبتتك بشبكة Social Plant Network

  • انتقل إلى
  • انقر فوق "تسجيل الدخول".
  • انقر فوق إنشاء حساب.
  • املأ النموذج لإنشاء حسابك.
  • يرجى ملاحظة أن اسم المستخدم يجب أن يكون بريدك الإلكتروني أيضًا.
  • انقر فوق إنشاء حساب.
  • قد تضطر إلى التحقق من بريدك الإلكتروني قبل أن تتمكن من المتابعة.
  • تأكد من قيامك بتسجيل الدخول.
  • Ga يعود إلى الصفحة الرئيسية (انقر فوق الشعار في الزاوية اليسرى العليا).
  • انقر على زر الإعدادات.
  • املأ النموذج ، يجب عليك ملء كل حقل.
  • الارتباط إلى api هو الرابط الذي قمت بحفظه بعد إنشاء نقطة نهاية API.
  • عندما يتم ملء كل شيء ، انقر فوق زر حفظ النبات. سيتحقق النظام الآن من ارتباط api الذي أدخلته وإذا كان هذا صحيحًا فسيحفظ مصنعك في الشبكة.
  • العودة إلى الصفحة الرئيسية.
  • يمكنك الآن النقر فوق جميع النباتات ، يجب أن تكون قادرًا على رؤية جميع النباتات المسجلة. يجب أن يكون نباتك هناك أيضًا. انقر فوق البطاقة وسيتم نقلك إلى صفحة نظرة عامة على المصنع الخاص بك ، وسوف تعرض أيضًا النصائح بناءً على القيم التي قمت بتعيينها في الإعدادات.

الخطوة 10: استرخِ وربت على ظهرك

لقد قمت للتو بتوصيل مصنع بالإنترنت. مثير للإعجاب ، أليس كذلك؟

موصى به: