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

Tweerstationneke A.k.a. محطة الطقس الهولندية: 4 خطوات
Tweerstationneke A.k.a. محطة الطقس الهولندية: 4 خطوات

فيديو: Tweerstationneke A.k.a. محطة الطقس الهولندية: 4 خطوات

فيديو: Tweerstationneke A.k.a. محطة الطقس الهولندية: 4 خطوات
فيديو: ДОБАВЬТЕ ЭТО В ГРУНТ ПЕРЕД ПОСЕВОМ СЕМЯН. Результат будет потрясающий! 2024, يوليو
Anonim
Tweerstationneke A.k.a. محطة الطقس الهولندية
Tweerstationneke A.k.a. محطة الطقس الهولندية

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

تم تصميمه حول موقعين هولنديين. ربما يمكنك أن ترى ذلك في العنوان المحلي المضحك لهذا الموضوع! يعطي أحدهم توقعات الطقس المحلية لكل مدينة كل 10 دقائق بتنسيق json. الآخر يعطي توقعات هطول الأمطار للساعتين التاليتين بتنسيق نص عادي يسهل معرفته دائمًا. أنا متأكد من أنك إذا كنت لا تعيش في هولندا ، يمكنك بسهولة تكييف هذا الموضوع مع أي خدمة أخرى.

اللوازم

  • لوحة ESP8266 ؛ أقترح استخدام Wemos D1 mini
  • شاشة TFT مقاس 1.8 بوصة مع 128 * 160 نقطة ؛ لون 16 بت
  • عدد قليل من الكابلات
  • البرنامج كما هو أو لتبدأ لإنشاء البرنامج الخاص بك
  • صندوق جميل لتجميعها معًا. استخدم نموذجًا قياسيًا أو اطبع بنفسك مع التصميم المرفق

الخطوة 1: اصنع النموذج الأولي

اصنع النموذج الأولي
اصنع النموذج الأولي

شاشة توصيل وجهاز تحكم

استخدم كبلًا صغيرًا مسطحًا وقم بلحام اللوحة وشاشة TFT معًا. استخدم القائمة لتوصيل الأجزاء بالطريقة الصحيحة

شاشة TFT ------------------ WEMOS

LED ------------------------------- D8 SCK ---------------- --------------- D5SDA ------------------------------- D7A0 - -------------------------------- D3RESET ----------------- ----------- D2CS ---------------------------------- D4GND - ---------------------------- GNDVCC --------------------- ---------- 3V3

بدلاً من ذلك ، يمكنك وضع مؤشر LED على 3v3 بدلاً من دبوس D8. لقد استخدمت دبوس D8 للحصول على الجهاز للنوم في حوالي الساعة 23:00 ليلاً والاستيقاظ في حوالي الساعة 07:00 مرة أخرى. ستكون هذه هي اللحظة الأولى التي يقرأ فيها نشرة الطقس بعد ذلك الوقت ، حيث يقرأ العنوان للتحقق من الوقت. لا توجد ساعة في الوقت الحقيقي في هذا الجهاز.

إذا كان كل هذا يعمل ، فقم بتوصيل كابل USB الخاص بك إلى Wemos وقم بتحميل البرنامج. إذا كان كل شيء يعمل ، يمكنك البدء في بناء الصندوق.

الخطوة الثانية: تصميم البرنامج

تصميم البرنامج
تصميم البرنامج

أفكاري من جهاز الطقس هذا حيث

  • قابل للتكيف بسهولة مع بيئة wifi أخرى
  • عرض توقعات الطقس وتوقعات هطول الأمطار
  • لا أزرار
  • لا يوجد صوت ، Qui بسيط ، لا ضباب

مع وضع ذلك في الاعتبار ، قمت بإنشاء برنامج يبدأ برمز WifiManager عندما يتعذر عليه اكتشاف شبكة Wifi معروفة. يقوم بإنشاء شبكته الخاصة ويظهر الاسم على الشاشة. يمنحك هذا فرصة لتعيين معلمات Wifi على الشبكة المنزلية الخاصة بك.

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

يتم تلقي معلومات الطقس من الموقع في رسالة بنمط json. يتم تحويل المعلومات الموجودة فيه وحفظها في المتغيرات العالمية. بهذه الطريقة يمكننا فصل استرجاع المعلومات عن عرضها. لا يوجد سبب لاسترداد الطقس بشكل أسرع مرة واحدة لكل 10 دقائق.

إن الحصول على هطول الأمطار هو أكثر بساطة. يتم تقديمه بتنسيق نص عادي ، مع توقع كمية المطر كقيمة 0..255 ؛ شريط عمودي وقت على كل سطر. هذا كل 5 دقائق خلال الساعتين التاليتين. يتم تسليم Rainvalue بطريقة ذكية حيث تعطي القيم الصغيرة مساحة أكبر لإظهار الفرق كقيم أكبر. الصيغة المستخدمة هي كما يلي:

مم ساعة = دائري (الأسرى (10، (Rainvalue - 109) / 32) * 10) / 10 ؛

لاحظ أن "ضرب 10 ، قسمة على 10" هو خدعة للتأكد من أن لدينا علامة عشرية واحدة خلف النقطة. اعتمادًا على الحد الأقصى لمقدار المطر المتوقع خلال الساعتين القادمتين ، هناك 3 مقاييس مستخدمة للرسم البياني ؛

  1. بحد أقصى 5 مم / ساعة متوقعة
  2. 20 ملم / ساعة كحد أقصى
  3. ماكس مأخوذ من أعلى قيمة في التوقع

هنا في هولندا ، أعلى قيمة لنا على الإطلاق تكمن في حوالي 80 مم / ساعة ؛ لذا فإن هذا المقياس سيفي بالغرض. بالنسبة للبلدان الأخرى ، قد يكون من الحكمة تغيير هذا.

الخطوة 3: كود البرنامج

كود البرنامج
كود البرنامج

إعدادات المحرر

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

في بيئة Arduino ، استخدمت الإعدادات التالية ؛

  • اللوحة: LOLIN (WEMOS) D1 RA & Mini
  • سرعة الرفع: 115200
  • تردد وحدة المعالجة المركزية: 80 ميجا هرتز
  • حجم الفلاش: 4M (بدون SPIFFS) V2 تعطيل الذاكرة السفلية

تُستخدم مؤقتات البرامج لجعل الحلقة () أسهل وأكثر قابلية للقراءة. يتم فصل عرض المعلومات عن تنزيل المعلومات. بهذه الطريقة يمكننا استخدام أحجام شاشات أخرى وما إلى ذلك دون الحاجة إلى تغيير البرنامج بأكمله.

استخدم ملف.ino وقم بتحميله في محرر اردوينو. قم بإعداد منتداك في المحرر. قم بإرفاق ملف الرأس الذي يضمن تضمين مصفوفات PROGMEM ذات النمط C المطلوبة في البرنامج.

بطاقة الذاكرة

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

على الرغم من أنني أقضي الكثير من الوقت في محاولة جعل بطاقة SD تعمل مع الشاشة ، إلا أنني لم أتمكن من الحصول على موقف عملي. يمكنني استخدام العرض ؛ استرداد ملف من بطاقة SD بنجاح ، ولكن بعد ذلك لم يعد بإمكاني الوصول إلى شاشة TFT. لم يساعدني تغيير المكتبات وتغيير ترتيب المكتبات و "نزع ملابس" البرنامج إلى أصغر هيئة لاستبعاد الاحتمالات الأخرى.

لتضيف إلى إحباطي ؛ هناك الكثير من الأمثلة على الإنترنت لأشخاص يقومون بأشياء مماثلة بنتائج إيجابية ، هممم. قد تكون مشكلة في الجهاز على شاشة TFT الخاصة بي؟ أو شيء لم أفكر فيه؟ نرحب بأي اقتراحات للمحاولة التالية. في النهاية بعد قضاء بعض الأمسيات عليها ؛ قررت أن أترك هذا الطريق. نظرًا لأن الصور هي 50 × 50 بكسل فقط (مما ينتج عنه 5000 بايت لكل لون 16 بت) ، فإن ESP قادر على تخزين هذا في PROGMEM بسهولة. هذه هي الحيلة التي استخدمتها.

أدى هذا الاختيار إلى تحدٍ آخر. كيفية الحصول على صورة BMP التي حصلت عليها في تنسيق قابل للقراءة. بعد بعض البحث اكتشفت الموقع من Henning Karlsen الذي حل هذا اللغز في وقت سابق. لقد أنشأ برنامجًا يحول ملفات من نوع-p.webp

الخطوة 4: قم بإنشاء الصندوق

أنشئ الصندوق
أنشئ الصندوق
أنشئ الصندوق
أنشئ الصندوق
أنشئ الصندوق
أنشئ الصندوق

هذا ليس الصندوق الأول الذي أحتاجه. يتوفر الكثير من الصناديق القياسية من الموردين. باستخدام منشار صغير وسكين وحفر وما إلى ذلك ، من السهل إنشاء ثقب للعرض في الصندوق. لكنني لم أتمكن أبدًا من صنع مستطيل جميل تمامًا. ربما لا يكفي المهارات و / أو الصبر ؛-)

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

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

موصى به: