Na potrzeby innego swojego projektu robiłem odczyty wartości analogowych w ESP8266 - moge ten kod przenieść do AFE Firmware.
Kod działa tak, że odczytuje wartość z wejścia analogowego X razy (X-definiowalne) . Po to, aby uśrednić odczyt, żeby był bardziej stabilny.
Wartość tę mogę wysyłaś do Domoticz w postaci liczby od 0 do 1023 lub wartości napięcia 0 - 1V
@isom kiedyś byłeś zainteresowany
Parametery konfiguracyjne byłyby:
- interwał odczytów - 0.1 sek do ????
- ilość próbek odczytów (ten X dla uśrednienienia odczytu) od 1 do 255
- Wysyłanie danych w postaci liczby od 0 .. 1023 lub wartości napięcia 0-1V (wartość rzeczywista pewnie ok 4 miejsca po przecinku)
- IDX do domoticz
- MQTT Temat
Pytanie do użytkowników Domoticz do czego - jakiego sprzętu/urządzenia w ramach Domoticz wysyłać tę wartość
@adrian jeżeli odczyt będzie w postaci liczbowej 0- 1023 bez możliwości konwersji na np % to najlepszym urządzeniem w domoticz będzie Custom Sensor. W domoticzu jest oczywiście więcej urządzeń, które z powodzeniem obsłuża taką wartość liczbową, ale wskazanie przy czujniku "Procent"= 999 będzie bez sensu.
Interwał odczytów myslę, że od 0,1sek do 3600 sek
mogę też zrobić % przy jednym strzale
- surower dane z GPIO: 0 - 1023
- skonwertowane do napięcia 0 - 1V
- %
To poprosimy jakąś wersję do testów to otworzy nowe możliwości dla wszystkich i wymianę oprogramowania na AFE w kolejnych moich modułach.
@isom, poniżej link
nie opisuję co jak, bo bez mojej pomocy będziesz wiedział jak to ruszyć.
To jest wersja deweloperska, która wypuszcza dużo logów do analizy na TX/TR
Dane z analog'a wysyłane są do Custom Sensors (jest tylko integracja z Domoticz) nie ma HTTP i nie ma MQTT - zrobię później jak dostanę OK od @isom
https://www.smartnydom.pl/download/afe-firmware-1-5-b1-t0-dev/
Przy okazji testuję zupełnie inny sposób zapisywania danych do urządzenia (dotyczy tylko konfiguracji tego wejścia Analog)
Daj znać co zmieniać, przerabiać - nie mam na czym konkretny testować tego Analog'a
pozdrawiam
Dzięki . Ja akurat mam na czym testować więc niebawem dam znać
Pierwsze wrażenia z wgrania AFE z obsługą ADC do "ulubieńca" czyli sonoff basic
Podłączając dzielnik z fotorezystorem ( wyłącznik reagujący na natężenie oświetlenia) działa bardzo dobrze.
https://drive.google.com/open?id=19hsUT_LJ-dM6Xs096RJRbVjpobngwKHX
Regulacja a raczej uśrednianie wyników przy podłączonym fotorezystorze w pełnej ciemności (trochę źle dobrany dzielnik) widać na poniższym foto
w tym basic to rozumiem wlutowałeś się do esp8266 bezpośrednio? raczej nie ma tam wejścia analogowego gdzieś dostępnego?
@adrian żeby w sonoff korzystać z ADC trzeba się niestety dolutować bezpośrednio do ESP poniżej wstawiam rysunek z zaznaczoną "nogą".
Dziś mam trochę rozbiegany dzień i nie potestowałem softu za dużo, ale jedno udało mi się sprawdzić i powiem że przy wyższych zakresach napięć soft radzi sobie też całkiem ok.
Dodatkowo przy dobrze dobranym dzielniku napięcia z rezystorami o małej tolerancji wskazania wartości są naprawdę powtarzalne.
Dla zobrazowania jak to działa wstawiam filmik " Kontola napięcia 5V i sygnalizacja alarmowa przy napięciu poniżej 2,5V.
https://drive.google.com/open?id=17rBJOQLUr1PS-DO0dffKx7hhEfLKqvGZ
Nie chciało mi się bawić w dziesiątki wolta więc dokładność jest do 0,5V
Wieczorem, albo jutro powalczę z czujnikami gazu i wgram soft do wemosa.
precyzyjne wlutowanie się w takim razie - mi się już ręce trzęsą i wzrok nie ten.
wnioskuje, że w miare dobrze zachowuje się soft, będe w takim razie czyścił kod, dorobie brakujące elementy HTTP, MQTT. Kod zrobiłem tak, że moge go praktycznie z niewielkim nakładem pracy dodać do każdej wersji AFE.
Daj znać jeśli coś przydałoby się dorobić jeszcze - jeśli chodzo i tego analoga.
-----
Ja na razie mam problem z tym analogowym wejściem. W zasadzie nie wejściem co pomiarem temperatury z termistora NTC10K. Wartości jakie dostaję do 50-60st C w przypadku temperatury pokojowej. Nie wiem jak sobie z tym poradzić. Mam w silniku NTC10k - ale zupełnie nie znam jego parameterów - będę waczył.
@adrian na czym testujesz ten termistor ? Jeżeli to jakiś wemos , lub NodeMCU to tam ADC ma zakres napięć 0 do 3,3V , może to Cię wprowadza w błąd
Podeślę za godzinkę coś na priv to sobie na to zerkniesz
A z tymi trzęsącymi rękoma i wzrokiem to nie przesadzaj , ja też bez lupy i małego piwa do tego nie podchodzę 🙂 wiek robi swoje
PS Jak się uda ogarnąć tego NTC , to można by rozszerzyć funkcjonalność czyli oprócz % , V i wartości podstawowych , taki czujnik temp może się przydać .
Test z czujnikiem gazu na sonoff wypadł ok , zobaczę jutro na wemos z fabrycznym dzielnikiem jak to wszystko będzie działać
Co Ty mówisz??
Testuje na podróbce Wemosa mini. Tam nie jest, ze max 0 - 1V? W Soft który testujesz zakłada, że na wejściu jest od 0 do max 1V i tak liczy %, V
wiem , że soft tak liczy , dlatego do V dobierałem swój dzielnik , zobaczę jutro na wemosie 🙂
Sprawdz po ścieżkach od ADC znajdziesz rezystory albo wstaw foto tej podróbki
Widziałem tego twojego wemosa 🙂 masz tam dzielnik więc 0- 3,3V na bank
@isom - tak sobie pomyślałem, że dodam jeszcze parametr konfiguracyjny: max napięcie na wejściu np. 1V, 3,3V (lub w zasadzie dowolne). To spowoduje, że AFE będzie zwracało wartość napięcia w tej właśnie skali np
- 0 - 1V
- 0 - 3.3V
- 0 - 100v - też zadziała
Wejście analogowe i tak ma rozdzielczośc 1024 możliwych wartości, więć napięcie na wyjściu to kwestia bardzo prostej matematyki. Nie będzie konieczne wtedy ręczne przeliczanie napięcia jeśli komuś one będzie potrzebne
Co myślisz?
Rewelka @adrian , to kolejny dobry ruch , w przyszłości widziałbym podobne parametry dla np LUX z zakresem światła widzialnego itd . Ale o tym pomyślimy przy dalszym rozwoju tego analoga .
Nie moge sobie z tym poradzic.
Wemos
Mam zamiar mierzyc napiecie na akumulatorze 12v
zbudowalem dzielnik do ktorego moge podlaczyc max 20 volt. Konwertuje z 20 na 3.3v bo tyle moge dac max na wemos do pinu ADC.
Dzielnik zbudowany z 10kOm i 2kOm
Dla bezpieczenstwa podlaczylem baterie ktora ma 1.45v
za dzielnikiem pokazuje okolo 1.2v
w panelu konfiguracyjnym afe ustawilem tak jak na zdieciu. Czyli napiecie max 3.3v , 10k i 2k Om
utworzylem w domoticzy wszyskie czujniki
nie wiem dlaczego domoticz pokazuje mi 7.6v a nie 1,45v?
jak to zkalibrowac?
Pozatym zauwazylem ze idx napiecie na wejsciu i idx napiecie przeliczone domoticz pokazuje takie same wartosci
przy takim dzielniki powinno za dzielnikiem pokazac 0,2V
wg tego wzoru
http://www.calculatoredge.com/electronics/voltage%20divide.htm
(...)
Pozatym zauwazylem ze idx napiecie na wejsciu i idx napiecie przeliczone domoticz pokazuje takie same wartosci
Właśnie zauważyłem, że jest tam błąd - poprawiam.
Tak to zrobilem i dzialalo ale z powodu czekania na czesci odlozylem to tymczasowo az dojda.