Prośba o pomoc z silnikiem krokowym...

Witam

Jest sobie moduł drukarki LTPV445 z silnikiem krokowym do przesuwania papieru. W "Refernece Manual" do tego modułu piszą, żeby silnik krokowy zasilać w następujący sposób:

- na początku każdego kroku zasilić cewkę prądem 500mA przez 1ms (lub

2ms w zależności od grubości papieru)

- przez pozostałą część kroku (o ile krok trwa ponad 1ms/2ms) podawać prąd 300mA

Ja chciałem zastosować jakiś gotowy kontroler, na przykład A3977. On takiego trybu pracy nie posiada ;)... . A ja nie posiadam żadnego doświadczenia z silnikami krokowymi :). I stąd nie wiem jak temat ugryźć... Z czego wynika takie zalecenie?? Jak najlepiej ustawić układ A3977, żeby poprawnie sterować tym silnikiem?? Jaki prąd maksymalny, jaki tryb gaszenia, jakie kroki??

W sumie ten przebieg mógłbym "zasymulować" stosując półkroki, ale w sumie czas trwania impulsu większego prądu będzie różny (będzie to zawsze 1/4 całego kroku, a nie 1ms). Poza tym, nie wiem, czy w tej aplikacji mogę je zastosować (czy drukowanie nie powinno następować "pomiędzy" krokami).

Prędkość pracy będzie różna, w zależności od szybkości drukowania (drukarka będzie kreślić wykresy na bieżąco, więc prędkość będzie ściśle ustalona).

Z góry dziękuję za pomoc.

Reply to
Konop
Loading thread data ...

W dniu 2011-05-03 00:13, Konop pisze:

Chodzi o to, żeby niepotrzebnie nie grzać uzwojeń silnika. Jak masz driver bez chopperowania, to możesz to zasymulować programowo zmieniając wypełnienie PWMa sterującego krokami.

Przy mechanizmach termicznych nie ma potrzeby stosowania mikrokroków. Przekładnie są tak dobrane, żeby było ok przy normalnym kroku.

Przy wydruku termicznym nie ma czegoś takiego jak "pomiędzy krokami". Jednocześnie grzejesz i sterujesz silnikiem. Inaczej wyjdzie ci traktor a nie drukarka (hałas mocno rośnie przy spadku prędkości). Maksymalną prędkość masz ograniczoną możliwościami mechanizmu i czasem potrzebnym na "wypalenie" piksela. W miarę jak mechanizm będzie się nagrzewał musisz albo zwiększać prędkość wydruku, albo skracać czas grzania piksela.

Tylko zacznij od sprawdzenia czy zimny mechanizm będzie w stanie osiągnąć największą wymaganą prędkość (zaczerniać wystarczająco piksele). Może się okazać, że będziesz musiał zwiększyć napięcie zasilające linijkę termiczną. Pamiętaj też, że jak wsadzisz całość w obudowę to będziesz miał inne oddawanie ciepła i może się okazać, że będziesz musiał od początku dobierać czasy grzania pikseli.

Reply to
Zbych

W dniu 2011.05.03 11:35, Zbych pisze:

Ten driver jest dosyć zaawansowany i prosty w obsłudze - steruje się go głównie dwoma liniami - step i direction :). W zależności od trybu (pełne kroki, półkroki itd) podaje na cewki silnika prąd o przebiegu prostokątnym lub "schodkowym sinusie" przesunięte o 90 stopni... W przebiegu prostokątnym przez cewki płynie prąd +I lub -I (nigdy nie jest to ZERO). W pozostałych przebiegach prąd zmienia się od -I przez zero do +I z krokami pośrednimi... Nie wiem po prostu, czy przyjąć prąd maksymalny równy 500mA czy 300mA... W tym pierwszym przypadku jest szansa, że taki prąd będzie płynąć przez więcej niż te 1..2ms, w drugim - obawiam się, że silnik nie będzie miał wystarczającej mocy...

OK, nie ma potrzeby, ale czy mikrokroki nie poprawią "kultury pracy" silnika??

To trochę nie mój problem :). Mechanizm mam narzucony "z góry", ja projektuję jedynie hardware, a czas wygrzewania ustala software ;).. oczywiście "dostarczę" do procka informację z termistora i to tyle..

Z drugiej strony nie będę obecny przy pisaniu softu, więc nie będę mógł na bieżąco robić modyfikacji/poprawek w hardwarze... dlatego staram się z góry ustalić jak najlepsze rozwiązania :).

Reply to
Konop

Zeby najpierw silnik przestawic, a potem go nie przegrzewac jak juz tylko stoi .

Dawniej to sie dawalo dwa napiecia zasilania, przez moment z wysokiego, potem z niskiego. bywalo nawet 24/5V. Przy okazji prad w cewkach szybko narastal.

J.

Reply to
J.F.

W dniu 2011-05-03 12:10, Konop pisze:

Właśnie po to jest chopperowanie. Przy wykonywaniu kroku dajesz pełną moc, a jak silnik stoi to włącza się chopper.

Wątpię. Kulturę pracy będziesz miał jak kroki będą wykonywane _równo_ i z odpowiednią prędkością. Jak na mój gust ten driver jest przekombinowany do tej aplikacji. Wystarczy zwykły driver z kontrolą prądu i chopperowaniem.

Ale jak soft nie będzie mógł zaczernić pikseli przy zimnym mechanizmie, to będzie to problem sprzętowy.

Reply to
Zbych

Current shaping jest bardzo dobre i bardzo zdrowe dla silników krokowych. Robiłem kiedyś sterownik piechty (sterowany z PCta przez port drukarki) i robiłem obniżanie prądu uzwojeń mniej więcej w połowie kroku, z możliwością ostawienia prądów (potencjometrami) i punktu przełączania (software). Obecnie są gotowe układy scalone, które to robią. Tak na szybko znalazłem UC3717A firmy Unitrode. Nie wiem ile kosztuje. Pewnie taniej będzie wszyć to wszystko do jakiegoś procka i zrobić implementację wsiego. Osobiście zrobiłem sterownik do silnika krokowego na MSP430F2013 (bez current shaping), bo żaden sterownik nie potrafił go wysterować. Wszystkie miały Imin > 50mA. Silniczek miał Imax 43mA, ale zasuwa pięknie przy 20mA.

Waldek

Reply to
Waldemar Krzok

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.