Nie wiem czy będzie kogoś to interesować, ale jak by ktoś się z tym męczył opisuję:
Do ‘ESP8266 NodeMcu V3’ podłączyłem ‘Moduł Detektor Czujnik Światła Arduino LM393 3pin’ do A0.
Być może jest inny sposób wykorzystania tych urządzeń, ale ja opiszę co zrobiłem u siebie.
W ten sposób po regulacji kiedy ma się zmieniać stan otrzymuję wartości 1V gdy jest za ciemno i mniej niż 0.12V gdy jest jasno. Niestety takie wartości na ‘Dashboard’ kiepsko by wyglądały, więc najpierw wstawiłem zmianę na pełną wartość w configuration.yaml jaką dodatkowy encje w następujący sposób:
Idea działania komparatora takiego jak LM393 polega na porównaniu 2 wartości analogowych i wyniku porównania wyprowadzenia na wyjście cyfrowe.
Datasheet do klona Motoroli, obecnie onsemi (pierwotnie to był wypust bodajże National Semiconductor)
W tym wypadku zapewne na jedno wejście masz podane napięcie z dzielnika rezystorowego w którym masz fotorezystor i rezystor o stałej wartości, a w drugiej gałęzi masz dzielnik rezystorowy z potencjometrem i rezystorem o stałej wartości.
Sensowniej byłoby wykorzystać komparator w sposób do jakiego został zaprojektowany (wtedy podajesz jego wyjście na na dowolne “zwykłe” (cyfrowe/binarne) GPIO w ESP, nie ma potrzeby mierzenia napięcia wyjściowego za komparatorem.
Jeśli korzystasz z wejścia analogowego (A0 w EP8266/ESP8285 lub kilka innych GPIO możliwych w ESP32), to właściwie można odpuścić komparator i mierzyć napięcie na własnej konstrukcji dzielniku (sugeruję tylko 2 elementy: fotorezystor + potencjometr), w ten sposób mógłbyś uzyskać łatwo więcej niż 2 mierzone poziomy.
…zapewne na jedno wejście masz podane napięcie z dzielnika rezystorowego w którym masz fotorezystor i rezystor o stałej wartości, a w drugiej gałęzi masz dzielnik rezystorowy z potencjometrem i rezystorem o stałej wartośc…
Niestety raczej nie bo jak napisałem 3pin (DO, G, VCC):
Już kiedyś wspominałem - wszystkie te arduinowe moduły klepane są na jednym schemacie.
Różnią się tylko sensorem pomiarowym. Producent idzie na łatwiznę robiąc jedną płytkę dla różnych zastosowań.
Tak właśnie powinien zrobić producent …sensowniej ale nie taniej
Układowo w takiej aplikacji jest to “wzmacniacz” nieodwracający, z otwartą pętlą sprzężenia zwrotnego, o “nieskończonym” wzmocnieniu (komparator to nic innego jak specjalne zastosowania wzmacniacza operacyjnego).
Czyli na wyjściu mamy sygnał analogowy, proporcjonalny do różnicy napięć (IN-)-(IN+).
Z powodu dużego wzmocnienia mamy wrażenie, że działa cyfrowo ponieważ napięcie wyjściowe zmienia się od 0-VCC.
W takim układzie problemy zaczynają się gdy wartość mierzona równa jest wartości odniesienia ustawionej na potencjometrze. Z tego powodu te arduinowe czujniki pracują niestabilnie i trudno ustawić jest właściwy próg zadziałania gdy wygnał wyjściowy z sensora pomiarowego jest analogowy ( jak jak w przypadku fotorezystora).
Należałoby ten układzik zrobić zgodnie z tym co sugeruje datascheet tego komparatora i wprowadzić dodatnie sprzężenie zwrotne co za tym idzie histerezę.
Nie sugeruj się tym co jest napisane - na wyjściu masz sygnał analogowy, który wygląda na cyfrowy.