كحفل لائق ، لدي محطة للطقس ، جمعتها بنفسي من شاشة DHT22 و Raspberry Pi وشاشة Nokia ، وهذا حل طاقة ثابت ينقل البيانات عبر Ethernet.
لكنني الآن بحاجة إلى محطة طقس متنقلة على الشرفة ، لاسلكي وبطارية تعمل بالطاقة.
بصفتي وحدة راديو ، استخدمت لوحة Z-Wave Z-Uno ، كمستشعر درجة الحرارة والرطوبة ، قررت تجربة Sensirion SHT20 على I2C.

المواد والأسعار:
يتم تحديث
Z-Uno باستمرار ، ويضاف دعم الأجهزة الطرفية والمكتبات الجديدة. في الوقت الحالي ، إصدار البرنامج الثابت الحالي هو 2.0.9 وظهر دعم للأجهزة التالية فيه:
- 1-سلك DS18B20 استشعار درجة الحرارة
- DHT22 && DHT11 استشعار درجة الحرارة والرطوبة
- 125 كيلو هرتز قارئ بطاقة RFID
- I2C BMP180 استشعار الضغط ودرجة الحرارة
- وغيرها من الأجهزة ، الأمثلة هنا هي z-uno.z-wave.me/examples
لم يكن مستشعر Sensirion SHT20 الذي يعمل على ناقل I2C في قائمة المستشعرات المدعومة ، لذلك كان علي كتابة التنفيذ الخاص بي لـ Z-Uno. بنية الرسم التخطيطي لـ Z-Uno مشابهة لأردوينو قدر الإمكان ، الرسم بأكمله يتناسب مع 35 سطرًا:

Sketch لـ Z-Uno للعمل مع مستشعر درجة الحرارة والرطوبة Sensirion SHT20#include <Wire.h> #include "SHT2x.h" int16_t temperature; uint8_t humidity; ZUNO_SETUP_SLEEPING_MODE(ZUNO_SLEEPING_MODE_SLEEPING); #define ZUNO_CHANNEL_TEMPERATURE 1 #define ZUNO_CHANNEL_HUMIDITY 2 ZUNO_SETUP_CHANNELS( ZUNO_SENSOR_MULTILEVEL_TEMPERATURE(getterTemp), ZUNO_SENSOR_MULTILEVEL_HUMIDITY(getterHumid) ); void setup() { Wire.begin(); } void loop() { temperature = SHT2x.GetTemperature(); zunoSendReport(ZUNO_CHANNEL_TEMPERATURE); humidity = SHT2x.GetHumidity(); zunoSendReport(ZUNO_CHANNEL_HUMIDITY); zunoSendDeviceToSleep(); } byte getterTemp(void) { return temperature; } byte getterHumid(void) { return humidity; }
تم تعديل SHT2x.cpp لـ Z-Uno SHT2x.h #ifndef SHT2X_H #define SHT2X_H
من الأشياء الخاصة ، في الرسم لا يوجد سوى خط يضع Z-Uno في وضع السكون:
ZUNO_SETUP_SLEEPING_MODE(ZUNO_SLEEPING_MODE_SLEEPING)
وإعداد القناة التي ترسل درجة الحرارة إليها والرطوبة التي:
ZUNO_SETUP_CHANNELS( ZUNO_SENSOR_MULTILEVEL_TEMPERATURE(getterTemp), ZUNO_SENSOR_MULTILEVEL_HUMIDITY(getterHumid) )
والباقي هو رمز اردوينو عادي.
يعمل Sensirion SHT20 على I2C ومتصل بواسطة سلكين. بشكل افتراضي ، في مكتبة Wire.h لـ I2C ، يتم تعريف الدبابيس 9 و 10.
يمكن عرض المعلومات من المستشعر على الهاتف ويتم استخدامها في التشغيل الآلي للتحكم في المرطب وتكييف الهواء.
يتم تحديث البيانات كل 12 دقيقة ، في هذا الوضع ، يجب أن يعمل المستشعر لأكثر من عامين من مجموعة واحدة من البطاريات.

تم اختيار مبنى Gint G517B 90 × 60 × 20 سم خصيصًا مع مكان أسفل حجرة البطارية ، كل شيء مناسب تمامًا.
استغرق تطوير جهاز استشعار درجة الحرارة والرطوبة Z-Wave حوالي ساعتين و 3746 ص. يمكنك أيضًا إضافة شاشة E-Ink وتعليقها على الحائط!