Nettigo dodanie grzałki do czujnika luftdaten

#37

Mam pytanie.

Pisałeś, że moduł nad którym pracujesz czyli obecna HECA będzie pracowała z modemcu. Ale wszędzie póżniej pojawiają się informacje o NAM.
Czy istnieje możliwość podpięcia HECA do nodemcu v3? A jeśli tak, to na które piny (BME280 - D3,D4, DHT22 - D7)
Jeśli można go podłączyć do nodemcu to co i w jaki sposób należy ustawić aby działał automatycznie?

#38

HECA pracuje na I2C. Więc są to dokładnie te same piny pod które podpinasz BME280. Jeżeli chcesz mieć podpięte oba musisz HECA wpiąć równolegle. Uroki I2C… duuuuuuużo urządzeń na jednej szynie :smiley:

#39

Chciałbym wrócić do tematu czujnika AM2320. Próbowałem go połączyć, ale mi się nie udało. Mam czujnik na płytce. Są tylko oznaczone wyjścia na szynę I2C
Podłączyłem pod I2C ,czujnik SCL - NodeMCU D4, czujnik SDA - NodeMCU D3
W konfiguracji zaznaczyłem - HTU21D i nie działało.
Z powyższych informacji wynika, że można go podłączyć tak jak DHT22 Zwierając wy SCL do masy, a SDA podłączając pod D7.

#40

AM2320 po I2C nie jest wspierany przez oprogramowanie Luftdaten. Być może dodam jego obsługę do NAM.

HTU21D to zupełnie inny czujnik. AM2320 można podpiąć po “OneWire” tak jak DHT22.

Niemniej moim zdaniem najbardziej obiecujące czujniki do zastosowań na zewnątrz to te z membraną PTFE czyli seria SHT3x-DIS-F i HTU21DF.

#41

Pytanie o czujnik SHT30 , w opisie napisano że on bezpośrednio steruję grzałką bez użycia ESP, za pomocą wyjścia “alert”, tzn że pomiary z tego czujnika nie są używane w programie.
W jaki sposób jest programowany SHT30, po przez i2c z ESP ?

#42

Dokładnie tak. Logika SHT się tym zajmuje.

Firmware ma dostęp do tych danych i wysyła je do internetu jak każde inne odczyty. Wyświetla je też w panelu u na LCD.

Jest prosty przez I2C. A logikę alertu ustawia się przy inicjalizacji. I później SHT sobie sam tego pilnuje zupełnie niezależnie od tego co robi ESP. Polecam datasheet od SHT3x. Tam wszystko jest ładnie opisane.

#43

Dzięki za szczegółową odpowiedź , przeglądałem dokumentacje ale nie kumam , przejrzę źródła programu , to powinno rozwiać wątpliwości

#44

Tak wygląda inicjacja HECA w firmware

bool initHECA() {

	debug_out(F("Trying HECA (SHT30) sensor on 0x44"), DEBUG_MIN_INFO, 0);
	heca.begin(0x44);
	if (heca.periodicStart(SHT3XD_REPEATABILITY_HIGH, SHT3XD_FREQUENCY_1HZ) != SHT3XD_NO_ERROR) {
		debug_out(F(" ... not found"), DEBUG_MIN_INFO, 1);
		debug_out(F(" [HECA ERROR] Cannot start periodic mode"), DEBUG_MIN_INFO, 1);
		return false;
	} else {
		// temperature set, temperature clear, humidity set, humidity clear
		if (heca.writeAlertHigh(120, 119, 63, 60) != SHT3XD_NO_ERROR) {
			debug_out(F(" [HECA ERROR] Cannot set Alert HIGH"), DEBUG_MIN_INFO, 1);
		}
		if (heca.writeAlertLow(-5, 5, 0, 1) != SHT3XD_NO_ERROR) {
			debug_out(F(" [HECA ERROR] Cannot set Alert LOW"), DEBUG_MIN_INFO, 1);
		}
		if (heca.clearAll() != SHT3XD_NO_ERROR) {
			debug_out(F(" [HECA ERROR] Cannot clear register"), DEBUG_MIN_INFO, 1);
		}
		return true;
	}
}

Kluczowe jest tutaj jest

heca.writeAlertHigh(120, 119, 63, 60)

Te wartości oznaczają: temperature set, temperature clear, humidity set, humidity clear
Czyli w jakiej temperaturze ma być włączana grzałka, w jakiej wyłączana (zauważ że przedział jest wpisany odwrotnie aby taki warunek nie mógł zaistnieć, no chyba że grzałka chłodzi). Zaś jeżeli chodzi o wilgotność to włącz w 63% wyłącz jak będzie 60%.

To ustawienia górnego przedziału. Dolny przedział jest z kolei ustawiony na (heca.writeAlertLow(-5, 5, 0, 1) co oznacza że grzałka się włączy poniżej -5C bez względu na wilgotność a wyłączy w 5C. Chodzi o to aby SDS011 pracował w zakresie temperatur, który jest sprecyzowany w datasheet. Ta opcja w teorii może powodować problem w przypadku gdy jest umiarkowanie wilgotno, a jest mroźno. Teoretycznie ciepłe powietrze może się skondensować na czujniku. Teoretycznie, bo zazwyczaj ten przedział temperatur wiąże się z dużą wilgotnością powietrza. W każdym razie przy dużych mrozach bardziej zależy nam na tym aby czujnik nie umarł niż na idealnym odczycie pyłu.

Niemniej dotychczasowe testy pokazują, że przez umieszczenie SDS011 w bliskiej odległości ESP8266 w miarę zamkniętej obudowie obudowa czujnika ma wyższą temperaturę niż otoczenie o te kilka stopni. Z kolei przy duuuużych mrozach, powietrze jest już ekstremalnie suche.

Tyle logiki - czyt. pokrętnego tłumaczenia.

#45

Właśnie przeglądałem już źródła , wszystko jasne , użyta biblioteka chyba jako jedyna umożliwia ten bajer .
Bardzo dziękuje za rozjaśnienie wątpliwości

#46

Przed dodaniem biblioteki do kodu przejrzałem możliwości wszystkich jakie są dostępne. I to prawda. Tylko ta obsługuje wyjście alert. Ma ładnie połapane błędy, które może zwrócić czujnik. I bez problemu obsługuje całą rodzinę SHT3x czyli SHT30, SHT31 i SHT35. 31 jest już bardzo dokładnym czujnikiem, a 35 to po prostu kosmos. Podejrzewam że 30, 31 i 35 na etapie produkcji to jeden i ten sam czujnik. Na etapie testów są sortowane na odpowiednie partie w zależności jak dobre parametry mają. Ponadto dodanie obsługi SHT3x jako zewnętrznego czujnika to teraz już banał. Bo to ta sama biblioteka tylko inny adres: 0x45. Co znaczy że trzeba linię adresową SHT3x podciągnąc do VCC a nie do GND tak jak ma to miejsce w hecy. W niedalekich planach chcemy wypuścić combo sensor z SHT31 i czymś co mierzy ciśnienie (prawdopodobnie BMP280) plus może jakieś VOC. BME680 aż się prosi… ale binarny blob od boscha do liczenia AIQ dyskwalifikuje ten sensor w projekcie.

#47

Kiedy można się spodziewać dostępności samego modułu heca bo reszta już czeka :grin:

#48

Moduł już jest dostępny w takiej postaci:

https://nettigo.pl/products/nettigo-air-monitor-heca-kit-komora-grzalki-ptc-z-modulem-sterujacym

lub takiej:

#49

Ten zestaw mnie nie interesuje , tylko sama zmontowana płytka

Pozdrawiam Dariusz Szymański

#50

Cześć,
Ja dopiero zaczynam przygodę z SDS011.
Stworzyłem swój zestaw od podstaw i do podgrzania powietrza używam bloku wodnego do którego przykleiłem grzałkę.
Do sterowania grzałką używam espeasy która załącza się na minutę przed pomiarem gdy wilgotność wzrośnie do 50% wilgotności.
Dam znać czy ma to sens :slight_smile:

#51

Witam, wczoraj złożyłem do kupy całość, wraz z płytką HECA i grzałką.
Właczam zasilanie - czuć że grzałka zaczyna grzać aż do pierwszego pomiaru - zakładam że to normalne.
Po pierwszym odczycie - mam dane z HECA wilgotność ok 50% - ale nadal czuję że grzałka jakby “trochę” grzała.
Czy ona tuż przed pomiarem się też włącza jak wentylator na SDS? to by tłumaczyło dlaczego jest ciągle trochę ciepła.

#52

SHT30 po inicjalizacji sam powinien dbać o to kiedy grzałka ma się włączać.

#53

w takim razie jakieś przypuszczenia dlaczego po włączeniu zasilania grzałka się grzeje aż do pierwszego odczytu ? i dlaczego potem po dłuższym czasie nadal jest cieplejsza ?

#54

Domyślnie jeżeli SHT30 nie zostanie zainicjalizowany po podłączeniu zasilania grzałka jest w stanie włączonym. Pozwala to na używanie HECA w trybie ciągłego grzania w urządzeniach bez wsparcia FW. Odczyty nie mają tu nic wspólnego. Inicjalizacja jest dokonywana przy uruchomieniu sensora zaraz po procedurze auto update. I do jej zakończenia będzie pracowała grzałka.

#55

Dzięki za info.
Sytuacja sama się rozwiązała. Działa jak powinno.

#56

dla potwierdzenia:
image
image

pięknie pracuje.