Elektroda.pl
Elektroda.pl
X
Banner Multimetr Fluke 87VBanner Multimetr Fluke 87V
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg

22 Wrz 2010 20:46 17266 42
  • Poziom 26  
    Witam
    Wykonuje własny programator dla pralki. Jak każda współczesna pralka, posiada ona silnik komutatorowy na osi którego zamocowano prądnicę tachometryczną. Jest oa źródłem sygnału sprzężenia zwrotnego w procesie stabilizacji obrotów bębna.
    Dodatkowo, zmiana napięcia w funkcji kąta obrotu bębna jest miarą niewyrównoważenia wsadu.
    Prądniczka tacho dostarcza napięcia 0-24V przemiennego, kilka volt dla obrotów prania i blisko 24V dla obrotów wirowania.
    Mój problem polega na tym jak podłączyć tę prądniczkę do przetwornika - czy poprzez prostownik jednopołówkowy, czy idealny. Czy zredukowanie poziomu napięć do 0-5V nie spowoduje że pomiar przy niskich prędkościach będzie mało dokładny?
    Z góry dziękuję za wszelkie wskazówki.
  • Banner Multimetr Fluke 87VBanner Multimetr Fluke 87V
  • Poziom 27  
    Ja bym się skupił na czestotliwości albo okresie a nie na napięciu. Jesteś tak na 100% pewny że to silnik komutatorowy ?
  • Poziom 26  
    Zajmuje się zawodowo naprawą pralek więc tego, że to silnik z komutatorem jestem pewnien. Jestem też pewien, że większość znanych mi modułów mierzy właśnie napięcie z tachoprądnicy.
    Pomysł pomiaru częstotliwości też rozważałem, ale jakoś nie jestem od niego przekonany.
  • Poziom 22  
    Zaintrygowało mnie to.
    Cytat:
    Dodatkowo, zmiana napięcia w funkcji kąta obrotu bębna jest miarą niewyrównoważenia wsadu.
  • Poziom 26  
    Niewyważony wsad powoduje przyśpieszanie bębna gdy jego cięższa część opada a zwalnianie gdy podnosi się, dokładnie tak jak w niewyważonym statycznie kole samochodowym. Przyśpieszanie i zwalnianie zmienia napięcie tacho, które analizuje mikrokontroler i pozwala na wirowanie, lub zatrzymuje bęben i ponownie rozkłada pranie do wirowania. Tak się zachowuje każda współczesna pralka automatyczna. Z uwagi na wysokie obroty wirowania uruchomienie wirówki z niewyważeniem prania przy wysokich obrotach spowodowałoby nie tylko hałas i "spacerowanie" pralki w łazience, ale mogłoby spowodować uszkodzenie mechaniczne pralki.
    Warto zdać sobie sprawę z tego, że stare pralki z silnikami indukcyjnymi nie wyważały prania, ale ich obroty podczas wirówki nie przekraczały 500 a i tak pralka taka często wpadała w silne wibracje szczególnie jak załadowana była jedną dużą sztuką prania.
    Analiza sygnału z tachoprądnicy pozwala także na określenie czy pranie jest wypłukane z piany, podobnie jak pozwala na określenie ile prania jest aktualnie załadowane.
  • Poziom 27  
    Wydawało mi się że te silniki to są zwykłe silniki asynchroniczne ale przyznam że dawno w tym nie grzebałem. Skoro chcesz przyjąć tę samą zasadę pomiaru będziesz zatem musiał regularnie badać wielkość tego napięcia w funkcji kąta obrotu wirnika. Osobiście nie mam na to żadnego pomysłu a na początek będziesz musiał sobie określić zakres zmian napięcia prądnicy i na tej podstawie dobrać odpowiedni przetwornik. Większość popularnych niestety jest przeznaczonych do niskich napięć odniesienia więc konieczne będą dzielniki napięcia i dodatkowo duży rozrzut mierzonych napięć i kto wie czy nie trzeba jeszcze wyznaczać jakiegoś punktu rozpoczęcia pomiaru coś jak GMP w silniku samochodowym.
  • Poziom 26  
    W pralkach z wyższej półki bywają stosowane silniki asynchroniczne z falownikami, ale obecnie jest to jeszcze rzadkość.
    W pralce Whirpool AWG 875D tachometr jest bezpośrednio podłączony pod 10-bitowy przetwornik AD procesora MC68HC908JL. Niestety, ta pralka nie najlepiej radzi sobie z rozkładaniem wsadu.
    Zdecydowałbym się na zastosowanie zewnętrznego przetwornika na szerszy zakres napięć, ale wymagana jest stosunkowo duża prędkość próbkowania, a przez I2C pewnie pojawiłby się problem.
    Z drugiej strony w żadnej pralce nie spotkałem się z podłączeniem zewnętrznego przetwornika do prądnicy tacho, a procesory AVR bywają stosowane nawet w fabrycznych pralkach (Beko).
  • Poziom 27  
    I2C jest za wolne lepsze SPI. Natomiast w uP przetwornik mimo że byle jaki jest włączony w wewnetrzną magistralę. Z drugiej strony czym ten uP ma się tak naprawde zajmować ? Sprawdza co najwyżej upływ czasu i ew. temperaturę. Więc głowne jego zajęcie to pomiar obrotów tak myślę.WYdaje mi się że założony prze ciebie zakres napięc czyli coś od o do 25 V jest nieco przesadzony.
  • Poziom 26  
    Faktycznie, procesor oprócz analizy sygnału tacho praktycznie nic nie robi.
    Przy powolnych obrotach bębna 33 obr/min napięcie na prądniczce jest w granicach dwóch woltów, natomiast maksymalne napięcie przy pełnych obrotach wirowania tak więc konieczna jest kontrola w pełnym zakresie. Natomiast decyzja czy pranie jest rozłożone czy nie jest podejmowana przy około 200obr/min co odpowiada napięciu 5V i w tym zakresie pomiar musi być możliwie jak najdokładniejszy, gdyż trzeba analizować wahania napięcia z prądnicy tacho.
    Niestety, nie posiadam danych jaką amplitudę mają te wahania, niestety nie posiadam oscyloskopu z izolowanymi wejściami, a moduł żadnej pralki izolacji galwanicznej nie posiada tak więc nie mam jak tej wielkości zmierzyć.
    Moduł mojej konstrukcji będzie wyposażony w izolację i zamierzam wówczas dokonać kalibracji, tylko obawiam sie, że wahania moga być za małe jak na 10 bitowy przetwornik.

    Zastanawiam się nad wykorzystaniem dwóch wejść przetwornika AD,do jednego doprowadzić napięcie od 0 do 5V odpowiadające obrotom do 200 rpm w którym to zakresie ma nastąpić wyważenie wsadu a do drugiego napięcie od 0-24V zredukowane do 0-5V odpowiadające obrotom od 0 do 1000 gdzie powyżej 200 obr/minute kontrola wyważenia a więc dokładny pomiar nie jest już potrzebny.
  • Banner Multimetr Fluke 87VBanner Multimetr Fluke 87V
  • Pomocny post
    Poziom 27  
    To się nieco zawiedziesz to te przetworniki nie działają jak wzmacniacze różnicowe, przynajmniej mi nic na ten temat nie wiadomo :). Poczytaj sobie noty może taki znajdziesz. Ale jak wykombinujesz sobie wzmacniacz różnicowy na wzmacniaczu operacyjnym to już to możesz pod przetwornik podpiąć.
    Sluchaj moż eto jest wlasnie metoda. Dajesz na wejściu wzmacniacz różnicowy o zmiennym (wzorcowym napięci). Załóżmy wolne obroty to przykładowo 2 V, średnie 10 a wysokie 20. Wówczas jesli taki wzmacniacz bedzie miał wzmocnienie = 1 to na wejściu przetwornika będziesz miał napięcie różnicowe czyli odchylenie od zadanej wartości. Regulacja bedzie tak zrobiona bym cały czas dążyć do zerowej wartości tego napięcia. WIęc nie będzie ciebie intersowało tak naprawde jakie jest napięcie różnicowe tylko to czy jest ono zerowe. Zakładając różne poziomuy wzorcowego napięcia zmaleją ci zakresy napięcia róznicowego do ew. przetwarzania. Jedno ale zasilanie napięciem symetrycznym.
  • Poziom 26  
    Początkowo myślałem o czymś takim:
    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg

    czyli napięcie wolnych obrotów na jeden pin ADC i napięcie pełnego zakresu podzielone tak aby 5V nie przekraczało na drugi pin ADC.
    Pomysł ze wzmacniaczem różnicowym szczególnie w momencie wyważania wydaje się być bardzo dobrym pomysłem.
    Regulacja wyważenia polega tylko na decyzji czy pranie jest wyważone, czy też nie, jeśli nie, to po prostu cykl wyważenia się powtarza, czyli zatrzymuje bęben, pozwala praniu opaść i ponownie sie je rozkłada i decyduje czy wirować. Pralka nie ma możliwości wpływac na wielkość niewyważenia wsadu w sposób płynny.
  • Poziom 27  
    no nie tak tego nie zrobisz. musisz dac elementy dyskretne po pierwsze wmacniacz różnicowy zasilany napięciem symetrycznym na jego wyjściu otrzmasz róznicę napięć więc np. ujemną wartość napięcia miedzy wejsciami -,+ o ile tak się zdaży. Natomiast tę wartość doppiero przetwarzasz przez przetwornik i na procka np. po SPI. tak mi się daje. Niektóre ACD mogą przetwarzać napięcie ujemne. Jeśli na wejście np. - podasz ten wzorzec napięcia który odpowiada interesującej ciebie wartości obrotów (np. 2 v dla 200 obr) to tacho podając swóje napięcie jako wynik pomiaru obrotów będzie powodowało powstawanie napięcia różnicowego dla stanu równowagi będzie to akurat 0, to zaś będzie po przejściu przed ADC równe połowie rodzielczości przetwornika i ten stan będzie ciebie tak naprawdę interesował a nie wartość większa lub mniejsza (chodzi o pozim napięcia). Zmieniając wielkość tego wzorcowego napięcia będziesz się dopasowywał do aktualnie regulowanego zakresu obrotów bo przecież napięcie z tacho ma sie zmieniać od 0 to 25 V. Tym samym bedziesz ograniczał sobie amplitude napięcia do zdecydowanie mniejszej wartości. Jeśli sie myle to może mnie ktoś sprostuje. Nie wiem czy jasno wyłożyłem zagadnienie :)
  • Poziom 22  
    No ale po co tak kombinować? Nie lepiej i mniejsze zaangażowanie procesora
    poprzez mierzenie okresu tej prądniczki. Odpada zmiana napięcia w zależności od prędkości obrotowej.
  • Poziom 26  
    To, co narysowałem na schemacie to wersja uproszczona, wykorzystująca wewnętrzny przetwornik ADC zintegrowany w Atmedze. Dokładnie rozumiem wykład - jest to sposob na naprawdę dokładny pomiar, tylko dochodzi ujemne zasilanie, przełączane napięcie wzorcowe i zewnętrzny przetwornik ADC z którego trzeba czytać 12 razy na sekundę.

    Pomysł ze skierowaniem sinusoidy z prądniczki na przerzutnik Schmitta i mierzenie okresu też wydaje się być ciekawy, ale trudno ustalić okres prądniczki który zmienia sie w funkcji obrotu bębna.
    Ciekawym pomysłem wydaje się zrobienie fotki programatora pralki Beko, gdzie jest on na Atmedze32L i ustalenie jak tam konstruktorzy rozwiązali ten problem - chyba zacznę do pracy zabierać aparat.

    Przyjrzałem się właśnie modułowi uszkodzonej pralki z pdfem procesora. Sygnał z prądnicy tacho dochodzi do pinu procesora, który jest współdzielony z szesnasto bitowym timerem. Wniosek z tego, że w AWG875D mierzony jest okres a nie napięcie z tachoprądnicy.
    Również w pralce Amica PA nóżka do której dochodzi sygnał tacho nie ma nic wspólnego z wejściem analogowym.
  • Poziom 27  
    czyli albo okres albo czestotliwość, sygnał wchodzi tak wprost z tacho czy jest jakoś (czymś) kształtowany ?
  • Poziom 20  
    Dobrym rozwiązaniem byłoby też zastosowanie dzielnika napięciowego, oraz wzmacniacza operacyjnego dla przesunięcia napięcia do dodatniej części. Analiza przebiegu to chyba DFT (FFT) tak jak by był tam (do przetwornika ADC) podłączony akcelerometr lub po prostu zastosować akcelerometr.

    http://cache.freescale.com/files/sensors/doc/app_note/AN3751.pdf?fsrch=1&sr=1

    Jeśli jest stabilizacja prędkości obrotowej, to może lepiej analizować sygnał błędu z tej stabilizacji.

    Napisz co dostałeś po takiej analizie.
  • Poziom 26  
    Sygnał jest kształtowany ow oryginalnych programatorach bcinaczem diodowo - tranzyystorowym. Nad zastosowaniem akcelerometru z wyjściem SPI i I2C zamontowanego na zbiorniku faktycznie się zastanawiam
  • Poziom 27  
    To może zamiast coś wymyślać od nowa skopiuj to co masz w oryginalnym programatorze?
  • Poziom 26  
    Chyba to będzie najlepsze rozwiązanie, w Amice PC układ formowania impulsu dla procesora ST7 wygląda tak:
    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg

    Natomiast w pralce Whirlpool AWG 875D jest po prostu dzielnik i dioda obcinająca dolna połówkę sinusoidy.
  • Pomocny post
    Poziom 27  
    To jest raczej dioda zenera równolegle z kondensatorem zasilana z tacho i wyprowadzonym sygnałem na bazę tranzystora.
  • Poziom 26  
    Czyli wygląda na to, że układ powinien wyglądać tak
    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg
    Częstotliwość z prądniczki zmierzyłem i zmienia się o 1Hz/obrót, czyli 20 obr/min 20Hz.
    Zastanawiam się jaki licznik wykorzystać, czy 8 bitowy który jest wolny, czy 16 bitowy, który wcześniej planowałem wykorzystać do odmierzania czasu.
  • Pomocny post
    Poziom 27  
    dioda i kondensator do masy co z nich za korzyść przy takim połączeniu ? A licznik napewno 16 bitowy bo obrotów przy wirowaniu jest wiecej niz 255/min. zreszta sposób pomiaru to juz inna sprawa. albo okres albo czestotliwosc.
  • Poziom 26  
    Dziękuję za cenną uwagę. Rzeczywiście, zbyt pobieżnie przejrzałem dwustronny laminat. Okazało sie, że tachprądnica jest podłączona do plusa zasilania, ścieżka oznaczona Vcc prowadzi przez kilka tranzystórów tak jak zaznaczyłem połączenie między przelotkami do plusa zasilania procesora i do elektrolitu w przetwornicy programatora. Tylko nie rozumiem jaki sens ma podłaczenie plusa zasialania na przewód z tachoprądnicy, która sama jest źródłem napięcia.
    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg

    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg
    Niestety, oznaczeń z tranzystora nie jestem w stanie odczytać - zupełnie nie rozumiem jak ten tranzystor jest do tego układu włączony.
    Na drugiej fotce zaznaczyłem przebieg ścieżki zasilania i ścieżkę prowadzącą do procesora.
  • Poziom 27  
    Pawel1812 napisał:
    Dziękuję za cenną uwagę. Rzeczywiście, zbyt pobieżnie przejrzałem dwustronny laminat. Okazało sie, że tachprądnica jest podłączona do plusa zasilania, ścieżka oznaczona Vcc prowadzi przez kilka tranzystórów tak jak zaznaczyłem połączenie między przelotkami do plusa zasilania procesora i do elektrolitu w przetwornicy programatora. Tylko nie rozumiem jaki sens ma podłaczenie plusa zasialania na przewód z tachoprądnicy, która sama jest źródłem napięcia.

    Też to dla mnie jest zagadką może tak naprawdę nie chodzi o wytwarzanie jakiegoś napięcia tylko o zwykłe przełączanie na komutatorze tego tacha ? Ale wóczas to powinien byc jeszcze w bazie tranzystora jakiś opornik który by wymuszał tam niską wartośc logiczną przez podciąganie do masy ? Nie będe się wymadrzał bo nie wiem co przyświecało tej konstrukcji. Co do tranzystorów to najpewnie są to zwykłe npn-y bez żadnych wodotrysków ew. tranzystory które mają w strukturze dodatkowe oporniki np RN1402 i to by ew. wyjaśniało czemu podciągania do masy tam nie ma bo to już ma sam tranzystor.
  • Poziom 20  
    Poczytałem troszkę (ale niestety pobieżnie) na temat wyważania i to chyba ma działać jako pomiar częstotliwości a w właściwie jej zmian (dewiacji) w czasie obrotów bębna. Czym większe zmiany częstotliwości (lub raczej fazy) w czasie wykonywania jednego obrotu, tym bardziej niewyważony cały wsad - tak jak to opisywał autor tematu.
  • Poziom 27  
    Może do wyważenia użyć lasera ? :) to żart ale tak się to chyba robi bezdotykowo.
  • Poziom 20  
    Jeśli by zrobić DFT takiego sygnału z tachoprądnicy, to powinno się uzyskać prążek leżący poniżej podstawowego, wynikającego z zadanych obrotów.
    Innym pomysłem byłoby różniczkowanie sygnału z tachoprądnicy dla wyciągnięcia zmian sygnału, a potem jego filtrowanie dolnoprzepustowe (cyfrowo).
  • Poziom 26  
    Zanalizowałem schemat podobnego układu z pralki Whirlpool AWG875. Ten układ jak dla mnie wydaje się nieco bardziej zrozumiały. nie rozumiem tylko dlaczego są dwa wyprowadzenia podłaczone pod piny 16bitowego licznika.

    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg
  • Pomocny post
    Poziom 20  
    No a jest to pewne że to są liczniki ?. Może jest to wejście o wielu możliwych funkcjach. Co to jest za uC ?
    Tam chyba masz błąd, bo dioda Zenera jest włączona pomiędzy B-E, a napięcie tam to max. 0,7V - to będzie raczej zwykła dioda.
    Pomiar zmian częstotliwości w ogóle może być uproszczony do mierzenia różnic kolejnych okresów przebiegu binarnego.

    Na pewno napięcie na kolektorze jest wzmocnione - przy większych obrotach napięcie będzie mieć kształt zbliżony do prostokąta.
    Rezystor R33 (100k) zapewnia polaryzację tranzystora i przesunięcie napięcia do dodatniej części osi.
  • Poziom 26  
    Wylutowałem i odcztalem oznaczenia z diody i jest to 1N4148 tak więc kolega miał rację i za spostrzeżenie serdecznie dziękuję.
    Jest to mikrokontroler MC68HC908JL8CP. Obudowa PDIP28. Sygnały dochodzą odpowiednio na piny 26 z tranzystora i bezpośredni na pin 25. Można sprawdzić, zresztą sam przed chwila po raz kolejny sprawdziłem, że to piny licznika Timer1.

    Bezpośredni link do pdf'a tego procesora jest tutaj: http://cache.freescale.com/files/microcontrol.../doc/data_sheet/MC68HC908JL8.pdf?fsrch=1&sr=5

    Z kolei w pralce Amica PC, której programator próbowałem analizować na początku był procesor ST72F324

    Tam sygnał z tacho dochodzi do pinu PF2 (pin17) który służy do zgłaszania zewnętrznego przerwania. Pdf tgo procka jest tutaj: http://www.datasheetcatalog.org/datasheet2/b/0dklx4s07wdyldoag5kqaqs3ihyy.pdf

    Znalazłem dodatkowo schemat programatora pralki Samsung, niestety model nieznany - na rosyjskiej stronie, także jak dla mnie - nieczytelny, ponieważ grafiki google tłumacz nie tłumaczy.
    Załączam jednak fragment, na którym jest układ kształtowania sygnału z prądniczki tacho:
    AVR i prądnica tacho pralki - pomiar 24V AC przetw. AD atmeg

    Niestety, tutaj typ mikrokontrolera jest mi nieznany.