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

محطة الأرصاد الجوية الشمسية: 5 خطوات
محطة الأرصاد الجوية الشمسية: 5 خطوات

فيديو: محطة الأرصاد الجوية الشمسية: 5 خطوات

فيديو: محطة الأرصاد الجوية الشمسية: 5 خطوات
فيديو: اتهموها باستغلال الموقف.. ممرضة أميركية تنشر فيديو غريب من داخل مستشفى 2024, شهر نوفمبر
Anonim
محطة الأرصاد الجوية الشمسية
محطة الأرصاد الجوية الشمسية

هل سبق لك أن أردت الحصول على معلومات الطقس في الوقت الفعلي من الفناء الخلفي الخاص بك؟ يمكنك الآن شراء محطة أرصاد جوية من المتجر ، لكن هذه عادة ما تتطلب بطاريات أو تحتاج إلى توصيلها بمنفذ. لا تحتاج محطة الطقس هذه إلى الاتصال بالشبكة لأنها تحتوي على ألواح شمسية تدور باتجاه الشمس لمزيد من الكفاءة. باستخدام وحدات RF ، يمكنه نقل البيانات من المحطة بالخارج إلى Raspberry Pi داخل منزلك. يستضيف Raspberry Pi موقع ويب يمكنك من خلاله عرض البيانات.

الخطوة 1: اجمع المواد

المواد

  • Raspberry Pi 3 موديل B + محول + بطاقة Micro SD 16 جيجا بايت
  • اردوينو اونو
  • Arduino Pro Mini + FTDI الأساسي الاختراق
  • 4 6V 1W الألواح الشمسية
  • 4 بطاريات 18650
  • الداعم 5 فولت
  • 4 شواحن بطاريات TP 4056
  • مستشعر درجة الحرارة والرطوبة Adafruit DHT22
  • جهاز استشعار الضغط الجوي BMP180
  • 4 LDR
  • جهاز استقبال وجهاز إرسال RF 433
  • 2 نيما 17 محركات متدرجة
  • عدد 2 سائقين بمحرك متدرج DRV8825
  • شاشة LCD 128 * 64
  • الكثير من الأسلاك

الأدوات والمواد

  • صمغ
  • ألواح خشب
  • رأى
  • مسامير + مفك براغي
  • شريط لاصق
  • 2 شريط ألمنيوم

الخطوة الثانية: التصميم الميكانيكي

تصميم ميكانيكي
تصميم ميكانيكي
تصميم ميكانيكي
تصميم ميكانيكي
تصميم ميكانيكي
تصميم ميكانيكي
تصميم ميكانيكي
تصميم ميكانيكي

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

الخطوة الثالثة: التصميم الكهربائي

قوة

يعمل النظام بأكمله على البطاريات (باستثناء Raspberry Pi). لقد وضعت 3 بطاريات في سلسلة. 1 بطارية في المتوسط 3.7 فولت ، لذا 3 في السلسلة تمنحك حوالي 11 فولت. تُستخدم حزمة البطارية هذه 3s للمحركات وجهاز إرسال الترددات اللاسلكية. تُستخدم البطارية الأخرى المتبقية لتشغيل Arduino Pro Mini وأجهزة الاستشعار. لشحن البطاريات ، استخدمت 4 وحدات TP4056. تحتوي كل بطارية على وحدة TP4056 واحدة ، كل وحدة متصلة بلوحة شمسية. نظرًا لأن الوحدة بها B (in) و B (out) ، يمكنني شحنها بشكل منفصل وتفريغها في سلسلة. تأكد من شراء وحدات TP4056 الصحيحة لأن ليس كل الوحدات بها B (in) و B (out).

كونرتول

يتحكم Arduino Pro Mini في المستشعرات والمحركات. يتم توصيل دبوس Arduino الخام والأرضي بمعزز 5V. يتم توصيل معزز 5 فولت بالبطارية المفردة. يتميز Arduino Pro Mini باستهلاك منخفض جدًا للطاقة.

عناصر

DHT22: لقد قمت بتوصيل هذا المستشعر بـ VCC والأرضي ، ثم قمت بتوصيل دبوس البيانات بالدبوس الرقمي 10.

BMP180: لقد قمت بتوصيل هذا المستشعر بـ VCC والأرضي ، وقمت بتوصيل SCL بـ SCL على Arduino و SDA بـ SDA على Arduino. كن حذرًا لأن دبابيس SCL و SDA على Arduino Pro Mini موجودة في منتصف اللوحة ، لذلك إذا كان لديك دبابيس ملحومة باللوحة ووضعتها في لوح التجارب ، فلن تعمل لأنك ستواجه تداخلًا من دبابيس أخرى. لقد قمت بلحام هذين المسامير في الجزء العلوي من اللوحة وقمت بتوصيل السلك به مباشرة.

مرسل RF: لقد قمت بتوصيل هذا بحزمة البطارية 3s للحصول على إشارة أفضل ونطاق أطول. حاولت توصيله بـ 5V من Arduino ولكن إشارة التردد اللاسلكي ضعيفة للغاية. ثم قمت بعد ذلك بتوصيل دبوس البيانات بالرقم الرقمي 12.

LDR: لقد قمت بتوصيل 4 LDR's بالدبابيس التناظرية A0 ، A1 ، A2 ، A3. لقد وضعت LDR مع المقاوم 1K.

المحركات: يتم تشغيل المحركات بواسطة وحدتي تحكم DRV8825. هذه مفيدة للغاية لأنها تأخذ خطي إدخال فقط (الاتجاه والخطوة) ويمكن أن تنتج ما يصل إلى 2A لكل مرحلة للمحركات. لقد قمت بتوصيلهم بأطراف رقمية 2 و 3 و 8 و 9.

LCD: لقد قمت بتوصيل شاشة LCD بـ Raspberry Pi لإظهار عنوان IP الخاص به. لقد استخدمت أداة تشذيب لتنظيم الإضاءة الخلفية.

مستقبل الترددات اللاسلكية: لقد قمت بتوصيل جهاز الاستقبال بـ Arduino Uno على 5 فولت والأرض. يجب ألا يأخذ جهاز الاستقبال أكثر من 5 فولت. ثم قمت بعد ذلك بتوصيل دبوس البيانات بالدبوس الرقمي 11. إذا كان بإمكانك العثور على مكتبة لوحدات RF هذه التي تعمل على Raspberry Pi ، فلن تحتاج إلى استخدام Arduino Uno.

Raspberry Pi: جهاز Raspberry Pi متصل بـ Arduino Uno من خلال كابل USB. يقوم Arduino بتمرير إشارات RF إلى Raspberry Pi عبر اتصال تسلسلي.

الخطوة 4: لنبدأ الترميز

لتشفير Arduino Pro Mini ، ستحتاج إلى مبرمج FTDI. نظرًا لأن جهاز Pro Mini لا يحتوي على منفذ USB (لتوفير الطاقة) ، فستحتاج إلى لوحة الاختراق هذه. لقد قمت ببرمجة الكود في Arduino IDE ، وأعتقد أن هذه هي أسهل طريقة للقيام بذلك. قم بتحميل الكود من الملف ويجب أن يكون جيدًا.

لتشفير Arduino Uno ، قمت بتوصيله بجهاز الكمبيوتر الخاص بي عبر كابل USB. بعد أن قمت بتحميل الكود ، قمت بتوصيله بـ Raspberry Pi. تمكنت أيضًا من تغيير الكود الموجود على Raspberry Pi لأنني قمت بتثبيت Arduino IDE وبالتالي يمكنني برمجته من هناك. الكود بسيط للغاية ، يأخذ الإدخال من جهاز الاستقبال ويرسله عبر المنفذ التسلسلي إلى Raspberry Pi.

لتشفير Raspberry Pi ، قمت بتثبيت Raspbian. ثم استخدمت Putty للاتصال به عبر اتصال SSH. ثم أقوم بتكوين Raspberry حتى أتمكن من الاتصال به عبر VNC وبالتالي يكون لدي واجهة مستخدم رسومية. لقد قمت بتثبيت خادم ويب Apache وبدأت في ترميز الواجهة الخلفية والواجهة الأمامية لهذا المشروع. يمكنك العثور على الكود على جيثب:

الخطوة 5: قاعدة البيانات

لتخزين البيانات أستخدم قاعدة بيانات SQL. لقد أنشأت قاعدة البيانات في MySQL Workbench. تحتوي قاعدة البيانات على قراءات أجهزة الاستشعار وبيانات أجهزة الاستشعار. لدي 3 جداول ، أحدهما لتخزين قيم المستشعر مع الطوابع الزمنية ، والآخر لتخزين المعلومات حول المستشعرات وآخر لتخزين المعلومات حول المستخدمين. لا أستخدم جدول المستخدمين لأنني لم أكود هذا الجزء من المشروع لأنه لم يكن في MVP الخاص بي. قم بتنزيل ملف SQL وقم بتنفيذه ويجب أن تكون قاعدة البيانات جيدة.

موصى به: