Mündəricat:
- Təchizat
- Addım 1: Arduino mühitini ESP8266 üçün hazırlayın
- Addım 2: Lazımi Kitabxanaları daxil edin
- Addım 3: Standart Nümunə Sketchini fərdiləşdirin
- Addım 4: Veb UI yükləyin
- Addım 5: BME680 Sensorunu əlavə edin
- Addım 6: PMS5003 Sensorunu əlavə edin
- Addım 7: Bəzi Şəbəkə Xüsusiyyətləri Əlavə Edin
- Addım 8: Bəzi qeydlər əlavə edin
- Addım 9: Fəaliyyətlər
- Addım 10: Şəkillər və Konfiqurasiya Faylları
Video: Daxili IoT Hava Keyfiyyəti Sensoru yaradın, Bulud tələb olunmur: 10 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Daxili və ya açıq havanın keyfiyyəti bir çox çirklənmə mənbəyindən və hava şəraitindən asılıdır.
Bu cihaz 2 sensor çipsi istifadə edərək bəzi ümumi və ən maraqlı parametrlərdən bəzilərini çəkir.
- Temperatur
- Rütubət
- Təzyiq
- Üzvi qaz
- Mikro hissəciklər
Burada istifadə olunan sensorlar temperatur, rütubət, təzyiq və üzvi qaz dəyərlərini əldə etmək üçün BME680 və mikro hissəciklərin sıxlığını əldə etmək üçün PMS5003 -dür.
HomeDing kitabxanasından istifadə etməklə, yalnız ev şəbəkəsinə qoşulmuş və şəbəkədəki hər hansı bir brauzer tərəfindən idarə oluna bilən bir cihaz qurmaq asandır. Ən çox yayılmış sensor çiplərindən, cihazlarından və digər xidmətlərdən istifadə etməyə imkan verən Elementlər seçimi ilə gəlir.
Sensor məlumatlarını göstərmək və cihazla qarşılıqlı əlaqə qurmaq üçün bulud əsaslı bir həll istifadə etmək əvəzinə cihazın içərisində veb tərəfi yerləşdirmək üçün tam bir həll gətirir.
Təchizat
Bu layihəni qurmaq üçün nodemcu lövhəsi və hava keyfiyyətini ölçmək üçün sensorlar dəsti kimi bir ESP8266 əsaslı lövhə lazımdır. Bu layihədə istifadə olunan HomeDing kitabxanası, temperatur, rütubət, təzyiq və keyfiyyət üçün ümumi sensor çiplərini dəstəkləyir. Burada BMP680 çipi istifadə olunur.
- USB girişi və enerji təchizatı üçün mikro usb kabeli.
- ESP8266 CPU ilə 1 nodemcu kartı.
- 1 BME680 sensor qırılma lövhəsi.
- 1 PM2.5 PMS5003 tipli hava hissəcikləri lazer sensoru
BME680 sensorunu DHT22 sensoru ilə dəyişdirmək çox asandır, çünki kitabxana digərləri arasında da dəstəklənir.
Addım 1: Arduino mühitini ESP8266 üçün hazırlayın
- Arduino IDE -nin son versiyasını (hazırda 1.8.2 versiyasını) quraşdırın.
- Esp8266 dəstəyini quraşdırmaq üçün İdarəetmə Menecerindən istifadə edin. Ətraflı təlimatı burada tapa bilərsiniz:
- Ekran görüntüsündə göstərildiyi kimi 1MByte SPIFFS Fayl Sistemi ilə NodeMCU 1.0 üçün lövhə seçimlərini qurun
Addım 2: Lazımi Kitabxanaları daxil edin
HomeDing kitabxanası, sensorların və ekranların işləməsi üçün bəzi ümumi əlavə kitabxanalara əsaslanır.
HomeDing kitabxanasını qurduğunuzda, bu lazımlı kitabxanaları olan bir şəkil avtomatik olaraq quraşdırıla bilən bir pəncərə görəcəksiniz və hamısını quraşdırmaq asandır.
Bəzən (naməlum səbəblərdən) kitabxanaların quraşdırılması uğursuz olur, buna görə də bütün lazımi kitabxanaların əl ilə quraşdırılması lazımdır.
Lazımi kitabxanalar haqqında daha ətraflı məlumatı https://homeding.github.io/#page=/elements.md sənədləşdirmə saytında tapa bilərsiniz.
Mövcud tələb olunan kitabxanaların siyahısı budur:
- Adafruit NeoPixel
- LiquidCrystal_PCF8574.h
- SSD1306 ekran üçün ESP8266 və ESP32 Oled Sürücü
- RotaryEncoder
- ESPx üçün DHT sensor kitabxanası
- OneWire
PMS5003 hava hissəciklərinin lazer sensoru 9600 baud seriyalı xətt siqnalı ilə əlaqə qurur. Bu siqnal, ESP8266 alətlərinin quraşdırılması ilə birlikdə gələn SoftwareSerial kitabxanasından istifadə etməklə çəkilir. Kitabxana olaraq köhnə bir versiyanın quraşdırılmadığından əmin olun.
Addım 3: Standart Nümunə Sketchini fərdiləşdirin
Standart Nümunə, daha çox yayılmış bəzi sensorları element olaraq ehtiva edir, buna görə yalnız bəzi konfiqurasiya tələb olunacaq.
Bu, BME680 Element tərəfindən dəstəklənən BME680 sensoruna aiddir.
PMS5003 sensoru daha az yayılmışdır və PMS Elementini firmware -ə daxil edərək aktivləşdirmək lazımdır. Bu, eskizin element qeydiyyatı bölməsində #define HOMEDING_INCLUDE_PMS təyin etməklə edilir.
#HOMEDING_INCLUDE_BME680 təyin edin#HOMEDING_INCLUDE_PMS təyin edin
Yeni cihazı şəbəkəyə əlavə etməkdə sadəlik üçün standard.ino eskiz faylının yanındakı secret.h faylına ev WiFi -nin SSID və parolunu əlavə edə bilərsiniz. Ancaq bu sabit kodlu konfiqurasiya olmadan cihazı şəbəkəyə əlavə etmək üçün quraşdırılmış WiFi Menecerindən də istifadə edə bilərsiniz.
İndi eskizin tətbiqi ilə bağlı hər şey hazırdır və firmware tərtib edilə və yüklənə bilər.
Addım 4: Veb UI yükləyin
Standart nümunə, veb istifadəçi interfeysi üçün bütün faylları ehtiva edən bir məlumat qovluğu ilə gəlir.
Bu faylları yükləməzdən əvvəl bu məqalədə tapa biləcəyiniz env.json və config.json faylını əlavə etmək istəyə bilərsiniz, çünki bu işi asanlaşdıracaq.
Bu faylların məzmunu IoT cihazını xüsusi edən və Hava Keyfiyyəti sensoru kimi davranan şeydir. Bu hekayədə ətraflı izah edilmişdir.
ESP8266 fayl yükləmə proqramından istifadə edin və bütün faylları yükləyin. Konfiqurasiyanı aktivləşdirmək üçün yenidən başlamalısınız.
Addım 5: BME680 Sensorunu əlavə edin
BME680 Sensoru, I2C avtobusundan istifadə edərək lövhə ilə əlaqə qurur.
Bu, digər sensorlar və ya ekranlar kimi digər uzantılarla paylaşıldığı üçün cihazın şəbəkə adı ilə birlikdə env.json -da cihaz səviyyəsində qurulmuşdur. Budur çıxarılmış cihaz və I2C parametrləri nümunəsi:
"qurğu": {
"0": {"name": "airding", "description": "Hava Keyfiyyəti Sensoru",… "i2c-scl": "D2", "i2c-sda": "D1"}}
Çörək lövhəsində sensorun əlaqə kabellərini görə bilərsiniz: 3.3V = qırmızı, GND = qara, SCL = sarı, SDA = mavi
BME680 üçün konfiqurasiya config.json -da istifadə edilə bilər:
"bme680": {
"bd": {"address": "0x77", "readtime": "10s"}}
Daha sonra hərəkətləri əlavə edəcəyik.
Quraşdırmanı sınamaq üçün sadəcə bir brauzerdən istifadə edin və https://airding/board.htm saytını açın və göstərilən sensorun həqiqi dəyərlərini görəcəksiniz və hər 10 saniyədə bir yenilənəcək:
Addım 6: PMS5003 Sensorunu əlavə edin
Çörək taxtasına uyğun bir konnektoru olan bir sensorum yox idi, buna görə nodemcu lövhəsinə birbaşa bağlamaq üçün lehimləmə dəmirimi istifadə edərək kabeldəki bağlayıcılardan birini kəsməli oldum. Hələ son şəkillərdə görə bilərsiniz.
Bu sensorun gücü normal olaraq USB avtobusundan işləyən Vindən alınmalıdır. GND eynidır, eyni zamanda Vin pininin yanında mövcuddur.
Sensordan gələn məlumatlar standart 9600 baud seriya formatında ötürülür, buna görə də rx və tx pinləri və oxu vaxtı konfiqurasiya edilməlidir:
"pms": {
"pm25": {"description": "pm25 hissəcik sensoru", "pinrx": "D6", "pintx": "D5", "oxuma vaxtı": "10s"}}
Daha sonra hərəkətləri əlavə edəcəyik.
Quraşdırmanı yenidən sınamaq üçün cihazı yenidən başladın və bir brauzerdən istifadə edərək https://airding/board.htm açın və göstərilən sensorun əsl pm35 dəyərini görəcəksiniz və hər 10 saniyədə bir yenilənəcək, ancaq bu dəyər normaldır tez -tez dəyişmir.
Şam bu hissəciklərin çoxunu istehsal etdiyi üçün sensorun yanına bir şam işığı qoyaraq daha yüksək dəyərlər əldə edə bilərsiniz.
İndi hər şeyi gözəl bir mənzilə qoya bilərsiniz, çünki bütün digər konfiqurasiyalar və hətta proqram yeniləmələri uzaqdan edilə bilər.
Addım 7: Bəzi Şəbəkə Xüsusiyyətləri Əlavə Edin
Env.jsondakı aşağıdakı konfiqurasiya çıxarışı imkan verir
- firmware -ni havada yeniləmək
- SSDP şəbəkə protokolundan istifadə edərək şəbəkəni aşkar etməyə imkan verir və cari vaxtı ntp serverindən alır.
{
… "Ota": {"0": {"port": 8266, "passwd": "123", "description": "OTA Güncellemelerini 'havada dinləyin"}}, "ssdp": {"0 ": {" İstehsalçı ":" adınız "}}," ntptime ": {" 0 ": {" oxu vaxtı ":" 36saat "," zona ": 2}}}
Saat dilimini yerləşdiyiniz yerə uyğunlaşdırmalısınız. Şübhə edirsinizsə, UTC/GMT -dən ofset almaq üçün https://www.timeanddate.com/ saytından istifadə edə bilərsiniz. "2" Almaniya yay vaxtı üçün uyğundur.
Https://homeding.github.io/index.htm#page=/savemo… sənədlərindəki saxlama rejimi ilə bağlı təlimatları oxuduqdan sonra ana parolunu da tənzimləyə bilərsiniz.
Yenidən başladıqdan sonra havalandırma cihazını şəbəkədə tapa bilərsiniz və ntp serverindən cavab aldıqdan sonra yerli vaxt mövcuddur.
Addım 8: Bəzi qeydlər əlavə edin
Yalnız faktiki dəyərlər kifayət qədər verməyə bilər, buna görə daha çox element istifadə edilə bilər.
Bu hekayə üçün Giriş elementi və NPTTime Elementi, sensor dəyərlərinin tarixçəsini bir qeyd sənədində qeyd etmək üçün istifadə olunur və bu element üçün Web UI kartı onu qrafik olaraq göstərə bilər.
Aşağıdakı konfiqurasiya qaz və hissəciklər üçün 2 log elementini yaradır:
{
"log": {"pm": {"description": "pm25 qeydləri", "fayl adı": "/pmlog.txt", "filesize": "10000"}, "aq": {"description": " Qaz keyfiyyəti jurnalı "," fayl adı ":" /aqlog.txt "," fayl ölçüsü ":" 10000 "}}}
Addım 9: Fəaliyyətlər
İndi hərəkətlərdən istifadə edərək faktiki dəyərləri log elementlərinə köçürməliyik. Hərəkətlər, hədəf elementinə kay və dəyər ötürmək üçün bir URL işarəsi istifadə edir. Bir çox Element, yeni bir sensor dəyərinin tutulması kimi baş verən müəyyən hadisələr haqqında hərəkətlər edilməsini dəstəkləyir.
Fəaliyyətlər, 2 giriş tələb edən hərəkətləri yayan elementdə konfiqurasiya olunur:
- Pms/p25 onvalue hadisəsi, bir dəyər hərəkəti istifadə edərək faktiki dəyəri log/pm elementinə göndərir.
- Bme680/bd ongas hadisəsi, bir dəyər hərəkəti istifadə edərək faktiki dəyəri log/pm elementinə göndərir.
{
"pms": {"pm25": {… "onvalue": "log/pm? value = $ v"}}, "bme680": {"bd": {… "ongas": "log/aq? value = $ v "}}}
İndi bütün elementlər konfiqurasiya olunur.
Addım 10: Şəkillər və Konfiqurasiya Faylları
İşdə son IoT Hava Keyfiyyət sensorumun bəzi şəkilləri.
Yüklənmədən əvvəl konfiqurasiya fayllarının adı *.json (no.txt) olaraq dəyişdirilməlidir.
Bağlantılar və istinadlar
- HomeDing Mənbə Kodu Deposu:
- Sənədlər:
- Standart Nümunə:
- BME680 Elementi:
- PMS Elementi:
- Giriş elementi:
- NtpTime Elementi:
Tövsiyə:
Kompüterin İstilik Emicisinə Fan əlavə edin - Vida tələb olunmur: 5 addım
Bir Kompüter İstilik Sinkinə Fan əlavə edin - Vida tələb olunmur: Problem: Fayl serverimdə şimal körpüsü olduğuna inandığım bir ventilyator olmayan bir soyuducu ilə anakartım var. Fedorada işlədiyim sensor proqramına (ksensors) görə, anakartın temperaturu 190F ətrafında idi. Qucağım
AEROBOT Hava Keyfiyyəti Sensoru V1.0: 6 Addım (Şəkillərlə birlikdə)
AEROBOT Hava Keyfiyyəti Sensoru V1.0: Bu, AEROBOT adlı ucuz və yüksək dəqiqlikli hava keyfiyyəti sensoru hazırlamaqdır. Bu layihə, temperatur, nisbi rütubət, PM 2.5 toz sıxlığı və ətrafdakı havanın keyfiyyəti haqqında xəbərdarlıqlar göstərir. DHT11 sensoru istifadə edir
Etibarlı, Təhlükəsiz, Özelleştirilebilir SMS Uzaqdan İdarəetmə (Arduino/pfodApp) - Kodlaşdırma tələb olunmur: 4 addım
Etibarlı, Təhlükəsiz, Özelleştirilebilir SMS Uzaqdan İdarəetmə (Arduino/pfodApp) - Kodlaşdırma tələb olunmur: 6 İyul 2018 -i yeniləyin: SIM5320 istifadə edərək bu layihənin 3G/2G versiyası burada mövcuddur Yeniləmə: 19 May 2015: pfodParser kitabxanasının Version 2.5 və ya daha yüksək Qalxanın bağlanması üçün kifayət qədər vaxt verməməsi barədə bildirilən bir problemi həll edir
PfodApp ilə Redbear BLE Nano V2 Xüsusi Nəzarətlər - Kodlaşdırma tələb olunmur: 6 addım
PfodApp ilə Redbear BLE Nano V2 Xüsusi İdarəetmə - Kodlaşdırma Tələb olunmur: Yeniləmə: 15 Sentyabr 2017 - Bu təlimat RedBear BLE Nano, V2 -in son versiyasını istifadə etmək üçün yeniləndi. RedBear BLE Nano V1.5 -i hədəf alan bu təlimatın əvvəlki versiyası burada mövcuddur. 15 Noyabr tarixində yeniləyin 2017 Belə
DTMF İdarəli Avtomobil. Cib telefonu tələb olunmur: 3 addım
DTMF İdarəli Avtomobil. Cib Telefonu Lazım deyil: Robotlar və Robo avtomobilləri, əslində dünyanın hər tərəfindəki həm texnologiya həvəskarları, həm də elm adamları üçün yeni gün oyuncaqlarıdır. hər yerdə tətbiq tapırlar. Burada bu təlimatda sizə arduino və DTMF ilə idarə olunan Robotik Avtomobilin necə hazırlanacağını izah edəcəyəm