نظام ترحيل بيانات المزرعة
في ذكرى محبة لمثليي الجنس هولمان ، امرأة غير عادية.
يعد نظام ترحيل بيانات المزرعة وسيلة سهلة للتواصل مع أجهزة إنترنت الأشياء عن بُعد دون الاعتماد على البنية التحتية لوكيلو أو لوروان. إنه ينشئ سلسلة من نقاط الوصول غير المكلفة والمتنوعة منخفضة الطاقة لتوفير تغطية ESP-NOW و Lora للأجهزة البعيدة. يمكن استخدام FDRs لنقل قراءات المستشعرات ورسائل التحكم في المواقف التي سيكون فيها مرهقًا للغاية لتوفير تغطية كاملة من WiFi/Lorawan. في حين تم تصميم النظام مع مراعاة الزراعة ، يمكن أن تكون FDRs مفيدة أيضًا في الفصل الدراسي أو المنزل أو البحث.
يتم تصنيف الأجهزة إلى نوعين: البوابات والعقد . تشتمل البوابات على البنية التحتية للشبكة ، ونقل البيانات على طول الطرق الموجهة مسبقًا وتوفير تغطية لجميع الأجهزة. تسمح العقد للمستخدم بتبادل البيانات باستخدام بوابة. يتم تحديد كل بوابة بعنوان سداسي سداسي فعلي 8 بت (MAC) ، بينما تستخدم العقد أعداد صحيحة 16 بت لتحديد نقاط البيانات أثناء تحركها عبر النظام.
المكتبات المطلوبة:
شملت:
لتثبيت FDRS:
قم بتنزيل أو استنساخ هذا المستودع ونسخه إلى مجلد مكتبات Arduino.
بعد التثبيت ، قم بتحرير ملف "SRC/FDRS_GLOBALS.H" مع بيانات اعتماد WiFi والمعلمات العالمية الأخرى.
الرسم الأول الذي سترغب في تجربته هو مثال 1_Uart_Gateway.ino . سيستمع هذا الجهاز إلى حزم ESP-NOW الواردة ، ثم توجهها إلى المنفذ التسلسلي (والعكس صحيح). بعد ذلك ، قم بميض espnow_sensor.ino مثال لمعرفة كيفية إرسال البيانات إلى البوابة.
لاستخدام MQTT: قم بتوصيل البوابة الثانية إلى الأولى عبر دبابيس RX و TX (عبرت) ، واطلبها بمثال 0_mqtt_gateway.ino . إذا كانت تكوينات WiFi و MQTT صحيحة ، فسيتم نشر البيانات إلى موضوع "FDRS/DATA".
لتمديد المدى الخاص بك ، جرب 2_espnow_repeater.ino أو 3_lora_repeater.ino . ما عليك سوى تغيير GTWY_MAC من مستشعرك إلى عنوان مكررك الجديد.
توثيق العقدة
يمكن وصف العقد كمستشعرات أو وحدات تحكم أو كليهما :
بوابة وثائق
البوابات هي أجهزة متحكم معيارية وقابلة للتكوين والتي يمكنها أداء مجموعة متنوعة من الوظائف المفيدة بما في ذلك جمع البيانات اللاسلكية وتوزيعها ونقلها. أنها توفر واجهة مرنة ومتماسكة بين مختلف البروتوكولات السلكية واللاسلكية ، ويتم ترتيبها عمومًا في طوبولوجيا خط أو نجمة. كقاعدة عامة ، فإن البوابة التي تستخدم MQTT لديها دائمًا العنوان 0x00 ، وتبدأ بوابات ESP-NOW و Lora في 0x01.
في الاستخدام الأكثر شيوعًا ، يتم نشر بوابة FDRS كنقطة وصول لعقد مستخدمي ESP-NOW عن بُعد. إذا استقبلت حزمة من عنوان ESP-NOW غير معروف ، فإن البوابة تفترض أن هذه قراءات أجهزة الاستشعار وتمررها في اتجاه مجرى النهر نحو الواجهة الأمامية. ستقوم البوابة أيضًا ببث الحزم القادمة من الواجهة الأمامية إلى أي عقد تحكم مسجلة/الاستماع.
يمكن أيضًا تكوين البوابات كرسام بسيطة ؛ تمرير البيانات من أحد الجيران مباشرة إلى جار آخر أو العكس. يمكن أن ينشئ هذا ثقبًا للبيانات يحمل حزمًا في المنبع أو لا نهائي. يمكنك تكوين البوابات الخاصة بك لمشاركة البيانات التي تتجه إلى أعلى الأقران المتصلين ، وبالتالي تزويدهم بأي بيانات يتم إرسالها من الواجهة الأمامية.
إذا كنت تبحث عن حل بسيط وجذب ومرفق لبوابة MQTT/UART ، فإنني أوصي شخصياً بكل من espgateway و thingpulse espgateway ethernet :
يحتوي Espgateway على وحدتي ESP32 Wrover-IB على لوحة واحدة مع هوائيات خارجية. يتم ربطها معًا بواسطة المسامير 14 و 15 للسماح بالاتصال التسلسلي بينهما. هذا هو الإعداد المثالي لارتباط بين ESP-NOW و WiFi.
يحتوي Espgateway Ethernet على وحدة ESP32 WROVER-IB مع هوائي ، إلى جانب موصل Ethernet RJ45. هذا هو الأجهزة المستخدمة في مثال Gateway Ethernet.
الواجهة الأمامية هي المكان الذي يتم فيه إدخال جميع البيانات أو استهلاكها بواسطة تطبيق آخر. قد يكون هذا أي شيء من متحكم يتواصل عبر UART وعرض البيانات على شاشة إلى منصة خادم/قاعدة بيانات يقومون بتسجيل البيانات عبر MQTT.
إن طريقتي الموصى بها للوصول إلى بياناتك هي استخدام جهاز كمبيوتر أو خادم أو Raspberry PI المرتبط بجهاز بوابة FDRS عبر MQTT أو UART. Node-Red هي منصاتي المفضلة للوصول إلى/معالجة البيانات على الواجهة الأمامية ، و efronuxdb+grafana هو فريق الأحلام للتخزين والتصور.
تشمل الأهداف القادمة لـ FDRS:
... كثيرا لفحص مشروعي! إنني أقدر حقًا كل من تواصل مع المساهمات والمساعدة ، وخاصة تلك الواردة في قسم "المساهمين". إذا كانت لديك أي أسئلة أو تعليقات أو مشكلات أو اقتراحات ، فيرجى عدم التردد في الاتصال بي على [email protected] أو افتح مناقشة هنا على Github.
شكرا جزيلا إلى أندرياس Spiess باستمرار. أخذت رؤيته وأفكاره هذا المشروع من حجر منحرف تقريبًا إلى "الماس" الذي تراه اليوم.
بفضل Lilygo لإرسال وحدات Lora32 الجديدة لي عندما تضررت المنجم. تم إنشاء جزء كبير من هذا المشروع باستخدام أجهزة TTGO ، وأنا أوصي بشدة منتجاتهم!
إنه لشرف كبير أن تم عرضه على Hackaday و Hackster.io!
لقد بدأت هذا المشروع مع تعليمات من دروس الطالب الذي يذاكر كثيرا عشوائي . إذا كنت مبتدئًا ومحاولة معرفة المزيد عن مواضع متحكم ، فإنني أوصي بشدة بالبدء من هناك.

