O twoim schemacie:
Wszystko wydaje się w porządku, możesz zwiększyć R2 do 10k, a nawet 100k, pojemność MOST jest tak mała, FAN będzie miał znacznie większą bezwładność wirowania niż opóźnienie wyłączenia w MOST, prawdopodobnie nawet z 1M. W ten sposób lokalizacja twojego 100R nie ma znaczenia i nie marnujesz żadnego mA. Jeśli nigdy nie przytrzymasz de uC w resecie, technicznie wcale nie jest to wcale konieczne, ponieważ twój uC aktywnie podniesie go lub obniży.
W przypadku sygnału PWM można sprawdzić, czy arkusz danych pozwala na zewnętrzne podciąganie do 12V, choć wątpię, czy i tak będzie miało to duże znaczenie.
O hałasie:
EDYCJA: Źle odczytałem twój wykres dla kHz, co jest głupie, jeśli pomyślisz o tym, gdzie to Hz. Część mojej historii nieco się zmieni (na przykład mowa o potrzebie MHz do pracy cyfrowej), ale ogólny pomysł pozostaje.
Zostawię cały post bez zmian, ale dla sygnału 100 Hz z szumem 30 kHz, zamiast 100 kHz z szumem> 5 MHz (również nie miało to sensu, prawda?), Możesz zwiększyć rezystory, które współdziałają z kondensatorami 10 razy, a także zwiększ kondensatory 50–100. Dzięki temu uzyskasz 1000 razy niższą częstotliwość filtrowania we wszystkich przykładach. Ale można również zwiększyć kondensatory o współczynnik od 10 do 20, aby uzyskać ostrzejsze krawędzie lub szybszą reakcję na sygnał zainteresowania, ponieważ 30 kHz jest bardzo dalekie od 100 Hz.
Uważaj więc ten post za napisany z myślą o wysokich częstotliwościach i pomniejszaj pomysły, co znacznie ułatwi ich wdrożenie! (Zwłaszcza cyfrowe odrzucenie w 3.)
Koniec edycji
Ponieważ robisz tak dobry przypadek użycia do pracy z metodami redukcji hałasu, postaram się stworzyć taki, który będzie pasował do twojej sytuacji.
Każdemu czytającemu, należy pamiętać:
Chodzi tylko o szum w sygnale cyfrowym
W sygnale cyfrowym można założyć, że są tylko dwa napięcia, które są zainteresowane „włączeniem” i „wyłączeniem”. Wszystko pomiędzy jest bezcelowe i należy do hałasu lub zła. W sygnale analogowym musisz wiedzieć o każdym poziomie napięcia i wykonać pewne faktyczne filtrowanie z obciążeniami C, L itp.
Problem w twoim sygnale polega na tym, że ujemne impulsy hałasu na wysokim poziomie i dodatnie impulsy hałasu na niskim poziomie są bardzo blisko siebie, więc prosty standardowy wyzwalacz, nawet z regulowanym poziomem, nie może absolutnie zagwarantować, że nigdy nie dostaniesz zmieszany.
Twoje opcje:
- Zmień nastawienie
- Zmień poziomy napięcia
- Dodaj „powolną” histerezę
- Odfiltruj hałas
1. Zmień nastawienie:
Pozytyw ma bardzo niskie ujemne skoki, ponieważ twoje podciąganie nie może wygrać z hałasu. Najłatwiejszą rzeczą, jaką możesz spróbować, jest zmniejszenie tego oporu. Istnieje ryzyko, że spowoduje to również zwiększenie wartości szczytowych sygnału wyłączenia, więc nie zawsze może to działać. Ale jest bardzo możliwe, że da ci to trochę przestrzeni między kolcami, aby ustawić prostą histerezę.
2. Zmień poziomy napięcia
Możesz łatwo, jeśli pozwala na to wentylator, zmienić Tacho na wyższy poziom napięcia i dodać stan pośredni:
symulacja tego obwodu - Schemat utworzony za pomocą CircuitLab
Teraz może być wystarczająca przestrzeń między wysokim i niskim skokiem, aby upewnić się, że MOST jest zawsze włączony, nawet gdy występują ujemne impulsy i zawsze wyłączony, nawet jeśli występują dodatnie impulsy. Osiągnięcie wartości zadanej w nowej sytuacji może wymagać kilku diod, zenerów lub rezystorów, ale jeśli impulsy sygnału ujemnego pozostaną takie, jakie są, nie powinny wyzwalać MOSFETU, o ile nie zastąp go tym, który ma próg bramki poniżej 2 V.
3. Dodaj „powolną” histerezę:
Jest to sztuczka, która jest powszechnie stosowana, gdy wiesz, że kolczasty sygnał szumowy jest co najmniej o rząd wielkości większy niż sygnał, który Cię interesuje. Spowoduje to niewielkie opóźnienie sygnału, więc nie można go użyć w sytuacjach, w których dokładny moment ważna jest zmiana włączania / wyłączania.
Ale dla sygnału, w którym chcesz poznać tylko jego kształt lub częstotliwość, jest to bardzo solidna metoda. Zasadniczo zaczyna się uruchamiać, gdy napięcie przekracza próg, ale kończy tę akcję tylko wtedy, gdy pozostaje. Istnieje wiele sposobów na zbudowanie jednego.
Możesz to zrobić w kontrolerze (co jest najłatwiejsze w liczeniu komponentów): możesz wyzwolić na flance, a następnie próbkować trochę więcej wartości z wystarczającą prędkością, aby zobaczyć wysoki poziom między skokami hałasu, ale nie mylić o pominięciu całego okresu niskiego. Następnie dokonujesz predefiniowanej oceny na podstawie znajomości twojego sygnału i hałasu. Na przykład, jeśli możesz próbkować przy 10 MHz, możesz przechwycić 50 próbek i mieć pewność, że najwyższa częstotliwość 100 kHz nie zostanie zignorowana, jeśli zastosujesz zasadę większości. Tzn .: co najmniej 25 musi być niska, aby rzeczywiście była niska. Twoje kolce są tylko bardzo cienkie i przez większość czasu jest to oryginalny sygnał, więc to może działać, ale liczbę większości można dostosować. Będzie to działać również z próbkami 1 MHz i 6 lub 7, ale będzie to mniej niż rzeczywista większość, więc może być tam ponownie ryzyko.
Możesz to zrobić również zewnętrznie:
ale jest to WIELE WIĘCEJ skomplikowane niż dodanie prostego filtra, szczególnie gdy patrzysz na wynik z uC z pewną histerezą na wejściu. Ale fajnie jest o tym myśleć, więc:
zasymuluj ten obwód
U1 to dowolny odpowiedni wzmacniacz operacyjny lub komperator. Komparatory są lepszymi przełącznikami, często z lepszym swingiem, ale dla sub-MHz OpAmp z przyzwoitym swingiem poradzi sobie łatwo.
Chociaż tego typu histerezę można zbudować z co najmniej jednym rezystorem mniej, ten jest łatwiejszy do wyjaśnienia i jako taki łatwiejszy do modyfikacji.
Najpierw wyobraź to sobie bez kondensatora:
Po pierwsze, zobacz, że na dzielnik rezystorów ma wpływ wyjście U1, pociągnie go nieco niżej lub wyżej poprzez pozorny opór 20kOhm. Powiedzmy, że na dodatnim wejściu U1 jest napięcie 1,1 V zaokrąglone w dół, gdy jego moc wyjściowa wynosi 0, a 3,9 V zaokrąglone w górę, gdy jego moc wyjściowa wynosi 5 V.
Jeśli wejściowe Tacho w stanie ustalonym jest wysokie, moc wyjściowa U1 będzie niska, ze względu na odwracający charakter wejścia do Tacho. Tak więc ujemny sygnał wejściowy będzie, znowu z powodu dodatkowego rezystora podciągającego, około 2,3 V. Ponieważ dodatnie napięcie wejściowe wynosi tylko 1,1 V, napięcie wejściowe musi spaść poniżej 2,2 V, aby ujemne napięcie wejściowe było niższe, a wyjście odwrócone.
Kiedy wyjście się odwróci, ujemne wejście zobaczy 3,6 V (ponieważ w tym momencie sygnał wejściowy wynosi 2,2 V, wyjście U1 wynosi 5 V, więc ich środek, wykonany przez rezystory 10k, wynosi około 3,6 V), ale dodatni napięcie wejściowe zmieniło się z 1,1 V na 3,9 V, więc wartość ujemna jest nadal poniżej wartości dodatniej, a wartość wyjściowa pozostanie 5 V.
Jeśli sygnał teraz szybko „przerywa” i przeskakuje z powrotem, moc wyjściowa U1 szybko wróci ponownie, ale wtedy skok musiał już spaść poniżej 2,2 V, więc to lepiej niż nic.
Jeśli sygnał spadnie dalej do zera, stabilna sytuacja będzie tylko silniejsza, ujemny sygnał wejściowy spadnie do 2,5 V (ponieważ zakładamy, że tacho WENTYLATORA jest wystarczająco mocne dla obniżenia), a dodatni pozostanie na poziomie około 3,9 V.
Teraz sygnał musi wzrosnąć powyżej 2,7 V, aby wyjście mogło się odwrócić. Bardzo prawdopodobne, że 95% twoich skoków zostanie już zignorowanych.
Dodanie kondensatora:
W przypadku kondensatora przychodzący sygnał musi dostarczyć wystarczającą ilość energii do wystarczającego czasu na naładowanie lub rozładowanie kondensatora. W efekcie jest to już filtr RC. Jakikolwiek skok, który szybko zanurza się, a następnie odzyskuje, nie będzie w stanie rozładować kondensatora.
Wartość C zależy oczywiście od sygnału źródłowego i sygnału szumu. Zaparkowałem piłkę 510pF dla sygnału źródłowego 100 kHz w porównaniu z czasem trwania skoku najwyżej 1us, ale tak naprawdę nie zrobiłem dużo matematyki, to po prostu przeczucie, że może być to bliskie tego, co zadziała.
4. Odfiltruj hałas
To trochę tak, jak po prostu filtrowanie sygnału analogowego. Możesz użyć prostej sieci RC, jak omówiono w poprzedniej sekcji:
zasymuluj ten obwód
Ponieważ skoki szumów są równe lub mniejsze niż 1us, nie mogą one dokonać bardzo znaczącej zmiany napięcia na kondensatorze, ponieważ jego czas RC wynosi 5us. Oznacza to, że energia w kolcach jest spłaszczona do średniej. Ponieważ widzisz wysokie szczyty i niskie spadki na szczytach, możliwe jest nawet, że średnie będą bardzo zbliżone do 0 V i 5 V, ale można to powiedzieć tylko z lepszymi zdjęciami lub po prostu eksperymentem. Ponieważ podajesz go do pinu uC, czas RC prawdopodobnie wystarczy, aby zobaczyć go jako wysoki lub niski. Daje to niewielkie zniekształcenie z powodu wolniejszego ładowania niż rozładowania, spowodowanego przez rezystor podciągający. Pewna poprawka wartości może spowodować, że będzie to znikome.
Jeśli to nie wystarczy, możesz dodać więcej komponentów, ale bardzo szybko przesadzasz, gdy dominujący hałas jest co najmniej 10 razy „szybszy” niż twój sygnał.
Możesz dodać cewkę indukcyjną 4,7 uH szeregowo z rezystorem, aby wygładzić kilka boków o wysokiej częstotliwości, może nawet 10 uH.
Ale szczerze mówiąc, w przypadku „karmienia go uC” jedynym powodem eksperymentowania z L w sygnale twojego rodzaju jest znalezienie równowagi, w której R jest duże, C jest małe, a L po prostu pomaga wygładzić niektóre flanki, aby R2 / R1 były wystarczająco małe, aby zignorować różnicę czasu narastania i opadania. takie jak R1 wynoszący 33k, C wynoszący 150pF i L w szeregu z R1 równy 56uH. A może koralik ferrytowy zamiast cewki indukcyjnej zależy nieco od ostrości twoich kolców.
Ale już to przesadzam, powiedziałbym.