Strona 1 z 1

Konfiguracja PWM spindle control w LinuxCNC 2.5

: 02 maja 2012, 14:36
autor: zordon666
Witam kolegów,

Od kilku dni walczę z konfiguracją kontroli obrotów za pomocą PWM.
Kupiłem na wolumenie do testów silnik prądu stałego na 12V wraz z enkoderem.
Oryginalną tarcze enkodera () wymieniłem na nową dając w ten sposób odczyt 1imp/obrót.
Zbudowałem sterownik PWM oparty na tranzystorze MOSFET z optoizolacją CNY17, oraz dodałem LM393 do odczytu sygnałów z enkodera.

FILM
Obrazek
Obrazek
Obrazek

Wszystko działa jak powinno, ale... :(
na dzień dzisiejszy nie mogę skalibrować obrotów wrzeciona, studiowałem LinuxCNC Documentation Wiki, ściągnąłem EMC2_User_Manual.pdf dla LinuxCNC 2.5 i z google tłumacz jechałem po dziale Chapter 29 Spindle Control i nic.

Problem sprawia mi skumanie konfiguracji/kalibracji wrzeciona:
Obrazek

Wiem że mój silnik pracuje w zakresie od 200 do 4400 obr/min, sprawdzałem zmienną PWM Rate i sinik pracuję stabilnie w zakresie 100-200Hz, uznałem wartość 200Hz jako znalezioną.
Schody zaczęły się przy wprowadzaniu wartości dla Prędkość 1;2 oraz PWM 1;2, korzystałem z instrukcji kalibracji ale nijak się to ma do wartości obrotów zadana/rzeczywista.
Prowadziłem zapis obrotów w zakresie 500-4500 obr/min, zadając obroty 500, 1000, 1500 itd., rozbieżność nie była liniowa, dla każdej wartości (S) była inna, nie wiem gdzie robie błąd (pomijając że nie do końca rozumiem w/w zmienne).

Celem całego eksperymentu było skonfigurowanie sterowania do kontroli obrotami wrzeciona, utworzenie sprzężenia zwrotnego (enkoder) do utrzymania zadanej prędkości obrotowej podczas odciążenia wrzeciona, zgłoszenie alarmu po przekroczeniu danej tolerancji obrotów, lub zatrzymania wrzeciona.
Robiłem wszystko zgodnie z instrukcjami w podręczniku, może brak sygnału indeksu wrzeciona stanowi tu problem dla poprawnej pracy sprzężenia ...hmm.
Ehhh, żebym to ja chociaż wiedział jak działa HAL, chyba bez rozszerzenia wiedzy z tego zakresu nic tu nie zdziałam, przynajmniej odczyt obrotów działa. :)

Jeżeli ktoś ma jakiś pomysł, to jestem otwarty na propozycje, bardzo na pomoc

Pozdrawiam
Paweł

: 02 maja 2012, 16:26
autor: jacek-1210
Co prawda te problemy dopiero przede mną :smile: , ale tak na zdrowy rozum: te ustawienia ze spindle control dają tylko pochylenie charakterystyki, natomiast w samym przetworniku PCM -> DC powinna chyba jeszcze być (przynajmniej w prototypie) mozliwość jakiejś zgrubnej kalibracji- dostosowania tego co otrzymujemy z przetworzonego PWMa do tego co potrzebuje silnik. W pierwszej kolejności mierzyłbym czy napięcia wyjściowe z przetwornika mieszczą się w zakresie pracy silnika - jeśli nie, to właśnie trzebaby ręcznie w przetworniku skalibrować

[ Dodano: 2012-05-02, 16:40 ]
Druga sprawa- charakterystyka takiego silnika liniowa raczej nie będzie, to co jest w programie jest chyba raczej dostosowane do silnika asynchro- lub synchronicznego gdzie obroty są praktycznie liniowe do wirowania pola, a za dopasowanie konwersji 0-10V do obrotów odpowiada falownik za kilkaset zł :neutral:

: 02 maja 2012, 20:44
autor: markcomp77
w linuxcnc podobnie jak w mach3 enkoder + moduł wpływający na prędkość - tworzą pętlę (i to nawet PID).... pętla wymaga strojenie, aby była stabilna i "optymalna"... jednak sam przetwornik PWM2DC lub PDM2DC lub Freq2DC pełni rolę nie tyle kontrolera prędkości co czynnika wpływającego na prędkość

celem pętli jest taka zmiana współczynnika PDM (PWM lub Freq) aby cel w postaci określonej prędkości został osiągnięty...

w stepconfie widać, że skrypt tworzący konfiguracje spodziewa się enkodera ABZ