Aktywne Wpisy

jmuhha +63
Ktoś mi powie jak Polacy w mieszkaniu 45 m2 mają mieć dziecko albo wziąć na starość rodzica i się nim opiekowac?
#nieruchomosci
#nieruchomosci
źródło: 1000017781
Pobierz
Rv0000 +244
Skopiuj link
Skopiuj link
źródło: 1000017781
Pobierz
Wykop.pl
Chcę odczytywać obroty wentylatora komputerowego za pomocą ESP8266. Do tego celu stworzyłem układ jak na obrazku. Do odczytu sygnału RPM używam przerywań ustawionych na zbocze opadające. Poprzez dzielnik napięcia na trzech rezystorach, w tym jeden pull-up, redukuję napięcie wyjściowe do 2,83 V, bezpieczne dla ESP. Wentylator sterowany jest poprzez PWM o częstotliwości 40 kHz. Napięcie wyjściowe wygładzam kondensatorem o pojemności 2200 uF (zwiększyłem ostatnio pojemność, bo szukałem rozwiązania problemu, wcześniej wstawiłem 100 uF). Wstawiłem również zaporowo diodę w celu redukcji przepięć.
Problem w tym, że odczyt prędkości obrotowej działa tylko w zakresie wysokich prędkości. Dla wentylatora o RPM = 3000 odczytuję poprawnie prędkość do ok. 2500 obr/min. Poniżej tej prędkości, zlicza mi jakieś głupoty i wychodzą prędkości wielokrotnie wyższe.. Testowałem na różnych wentylatorach i z każdym mam tak samo.
Gdzie szukać błędu? Pewnie o czymś zapomniałem ( ͡° ʖ̯ ͡°).
Wstawiam link do symulacji: http://tinyurl.com/surf3tq
Pozdrawiam
źródło: comment_15857321906Vir768QYdgDz0K4WEKbPi.jpg
Pobierz@KokiX: zamiast szukać wróżki, która zgadnie gdzie jest problem zacznij od podłączenia miernika do punktu TP i sprawdź czy napięcie zmienia się liniowo w całym zakresie obrotów. Potem sprawdź surowe odczyty z ADC (bo rozumiem, że mierzysz napięcie a nie wypełnienie PWMa) - czy odczyty są stabilne i jak się zmieniają z napięciem wejściowym. A dopiero na sam koniec sprawdź algorytm przeliczania napięcia na wartość obrotów, bo
Generalnie, problemem było sterowanie wentylatorem przez przerywanie masy zasilania (chodzi o sterowanie PWM MOSFETem typu N). W takim przypadku ciężko czytać sygnał RPM, bo w układzie z otwartym kolektorem (wyjście RPM wentylatora), sygnał obrotu to zwarcie tego tranzystora do masy. Teraz steruję zasilaniem wentylatora od strony 12 V i działa.
Druga sprawa, zamiast odczytywać