İçindekiler:
Video: Sıcaklık, Nem Monitörü - Arduino Mega + Ethernet W5100: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:16
Modül 1 - DÜZ - donanım:
- Arduino Mega 2560
- Wiznet W5100 Ethernet kalkanı
- OneWire veriyolunda 8x DS18B20 sıcaklık sensörü - 4 OneWire veriyoluna (2, 4, 1, 1) bölünmüştür
- 2 adet dijital sıcaklık ve nem sensörü DHT22 (AM2302)
- 1 adet sıcaklık ve nem sensörü SENSIRION SHT21 (Si7021)
- 1x BOSCH BME280 sıcaklık ve nem (ve hava basıncı) sensörü
- Tüm sensörlerden birkaç dakika içinde aynı anda veri gönderir (değiştirilebilir)
Modül 2 - KAZAN - donanım:
- Arduino Mega 2560
- Wiznet W5100 Ethernet kalkanı
- OneWire veriyolunda 16x DS18B20 sıcaklık sensörü - 7 OneWire veriyoluna bölünmüştür (2, 2, 2, 2, 2, 2, 4)
- 8x dijital giriş
- 8x dijital çıkış - solenoid / röle için
- Tüm sensörlerden birkaç dakika içinde aynı anda veri gönderir (değiştirilebilir)
- Web arayüzünden tek tek çıkışların durumlarını okur, uygular Dijital giriş durumlarını gönderir
Adım 1: Giriş
Bugün, işlevsellik, kullanılan sensör sayısı, Arduino kartları, kullanılan veri yolları açısından oldukça karmaşık olan son gerçekleştirilen projeyi detaylı olarak sunacağım. Proje iki modülden oluşmaktadır. Fiziksel olarak her modül ayrı bir Arduino Mega 2560, Ethernet kalkanı W5100 (R3 uyumlu) ve kullandığı sensörlerden oluşur.
Her modül, web sunucusunun veri sattığı veya bazı verileri, örneğin POST isteği (yalnızca modül 2) aracılığıyla talep ettiği HTTP POST istekleri aracılığıyla İnternet üzerindeki web arayüzü ile iletişim kurar. Web arayüzü bir giriş sistemi ile tamamlanırken, tüm aile her biri kendi adı ve şifresi ile sisteme kayıt olabilir. Bu nedenle, her aile üyesinin her iki modüle de genel bir bakışa sahip olduğu ve farklı eylemler gerçekleştirebildiği çok kullanıcılı bir uygulamadır - referans sıcaklığının ayarlanması, termometre kontrolü, vb. Web arayüzü PHP'de programlanmıştır, veriler MySQL veritabanında depolanır. Modüllerin her birinin veri tabanında ayrı bir tablosu vardır. Bireysel modülleri daha ayrıntılı olarak düşünün.
Adım 2: Modül 1 - DÜZ
1- FLAT modülünün tamamı sadece bireysel odalarda sıcaklık monitörü olarak hizmet eder, başka bir rolü yoktur. DHT22 sensörleri, banyolardaki nemi kaydetmek için uygun bir 10kohm çekme direnci kullanılarak uzun bir mesafe boyunca kullanıldı. BME280 ve SHT21, I2C veriyolu üzerinden haberleştiğinden ve bu veri yolu sürücü uzunlukları açısından oldukça sınırlı olduğundan, odalarda Arduino yakınında sensörler kullanılmaktadır.
DS18B20 sıcaklık sensörleri 4 bus'a bölünmüştür, iki harici sensör kullanıldığından, bunları ayrı Arduino çıkışlarına bağlamayı kolaylaştırır ve sensör düşmesi durumunda işlevselliği felç etmediği için değiştirilmesi daha kolaydır. sistemin.
Örneğin, 4 sensörün endekslendiği bu OneWire veri yollarından biri durumunda. İndeks, termometrelerin fiziksel adresi ile bağlantılıdır, bu nedenle sensörlerden biri değiştirilirse, yeni sensör 0 - ilk veya hatta 2, 3 veya son indekste görünebilir. Böylece otobüslerdeki sensör sayısını azaltarak, sensör değiştirildiğinde oluşabilecek böyle bir komplikasyonun önüne geçebiliriz.
Adım 3: Modül 2 - KAZAN
Monitör işlevine ek olarak, modül 2 - KAZAN ayrıca solenoidlerin veya radyatör vanalarının kontrolü için rölelerin kontrolü gibi daha önemli bir role sahiptir. Modül, ev ısıtmasından bağımsız olarak çalışır. Modül, ısıtma veya kazanı değiştirmez. Modül, yalnızca oda sıcaklığı ayarlanandan daha düşük / daha yüksekse - sözde - radyatör vanasını açıp kapamakla ilgilenir. Referans sıcaklığı. Radyatör vanasının kontrol edildiği her odaya modül 2'den belirli bir termometre atanabilir. Bu otomatik moda ek olarak, vananın web arayüzünden manuel olarak süresiz olarak açılıp/kapatılabileceği manuel mod da vardır - sert. Dijital girişler, Arduina ile talep üzerine solenoid / röle / vananın açılıp / kapatıldığını doğrulamak için kullanılabilir - çıkışın girişe eşit olup olmadığını karşılaştırma yeteneği.
Adım 4: Web Arayüzü Neler Sunar?
Her iki modül için de bireysel değişkenlerin gelişimi için bir çizgi grafiğin grafiksel bir gösterimi vardır - sıcaklık, nem 24 saat, 7 gün. Web arayüzü ayrıca her termometre / higrometre için maksimum / minimum, ortalama değerin 24 saat, 7 gün içinde görüntülenmesini sağlar. Modül 1'de başlangıçta bir çift SHT21 sensörü düşünüldü, ancak I2C adresini değiştirme olasılıkları olmadığından, aynı I2C adresine sahip iki sensörden bir bus iletişimi için çoklayıcı kullanmak gerekli olacaktır. Arızalı sensör verileri olması durumunda, sensör adı, sistem yöneticisinin herhangi bir zamanda OneWire veriyoluna servis vermek ve arızalı sensörü değiştirmek için açabileceği bir günlükte saklanır.
Arduino programlarında, hatalı başlatma, "donma" durumunda başka bir hatanın güvenli bir şekilde yeniden başlatıldığı ve programın başlangıcında tamamen senkronize olduğu web arayüzüne bağlantı kurulana kadar tüm çıkışları kapatan Watchdog uygulandı. daha sonra uygulayacağı çıktılar açısından.
Daha fazla projeyi şurada bulabilirsiniz: https://arduino.php5.sk?lang=en Daha fazla örnek için bağış yapın:
Önerilen:
Raspberry Pi 4'ü Dizüstü Bilgisayar/PC Üzerinden Ethernet Kablosu Kullanarak Kurma (Monitör Yok, Wi-Fi Yok): 8 Adım
Raspberry Pi 4'ü Dizüstü Bilgisayar/PC Üzerinden Ethernet Kablosu Kullanarak (Monitör Yok, Wi-Fi Yok): Kurulum için Raspberry Pi 4 Model-B 1Gb RAM ile çalışacağız. Raspberry-Pi, eğitim amaçlı ve kendin yap projelerinde kullanılan, uygun maliyetli, 5V 3A güç kaynağı gerektiren tek kartlı bir bilgisayardır.İşletim Sistemleri gibi
Ethernet Kablosu Nasıl Yapılır: 5 Adım
Ethernet Kablosu Nasıl Yapılır: Merhaba! Bugün kendi endüstri standardı ethernet kablonuzu nasıl yapacağınızı öğreneceğiz! Konu kabloya ihtiyaç olduğunda hangisi size para kazandıracak! Öyleyse neden size öğretmeye uygunum? Şey, ben bir BT uzmanıyım, son 2 yılımı geçirdim
DIY 10/100M Ethernet PoE Enjektörü: 6 Adım
Kendin Yap 10/100M Ethernet PoE Enjektörü: Burada 10/100M ethernet için uygun basit bir PoE enjektörü yapacağız, ayrıca doğrudan pillerle de çalıştırılabilir
Ethernet Üzerinden MCP23017 GPIO Kontrolü: 5 Adım
Ethernet Üzerinden MCP23017 GPIO Kontrolü: Sensör Köprüsü ve MCP23017 ayırma kartını kullanarak ethernet üzerinden MCP23017 IO genişleticiyi kontrol edin. Python komut dosyaları, tarayıcı URL'leri veya HTTP iletişimi yapabilen herhangi bir sistem tarafından gönderilen komutlar. Ev otomasyonu için Home Assistant'a entegre edilebilir.Kablolar
Ethernet Sensörlü Nem Okuma: 3 Adım
Ethernet Sensörü ile Nem Okuma: Projenin amacı, ethernet ağı üzerinden nem ve sıcaklık okumalarını okuyabilmek ve sonuçların ev otomasyonunda (Home Assistant vb.) ar'da performans