Tagi:   #   #   #   #   #   #   #   #   #

Czym zatem jest błąd „PID fault” (e-PID) i, z jakiego powodu powstaje?

Jeden z naszych klientów otrzymał błąd  „PID Fault mkit: 1 error 251” i zapytał, co on oznacza. W uproszczeniu oznacza on, że „MotionKit” (w przypadku Mach3 oś, a w przypadku Mach4 Motor) numer 1 chciał wykonać niekontrolowany ruch o wartości 251 impulsów. Aby zrozumieć skąd on się bierze i co dokładnie oznacza, należy się tu dłuższe wyjaśnienie.

Każdy z naszych kontrolerów posiada po jednej pętli PID pozycji dla każdej z osi (Motoru lub MotionKit). Pętle PID stosuje się w celu zamiany trajektorii ruchu na impulsy step/dir (CSMIO/IP-M i CSMIO/IP-S) lub sygnał +/-10V (CSMIO/IP-A). Trajektoria ruchu dostarczana przez oprogramowanie sterujące (Mach3, Mach4 i simCNC)  to pozycja zadana, a licznik wygenerowanych impulsów step/dir (CSMIO/IP-M i CSMIO/IP-S) lub licznik impulsów enkodera (CSMIO/IP-A) to pozycja rzeczywista. Obie wartości trafiają do pętli PID, której wynikiem działania jest częstotliwość sygnału step/dir (CSMIO/IP-M i CSMIO/IP-S) lub wartość napięcia +/-10V (CSMIO/IP-A). W celu nadzorowania efektów pracy pętli PID, stosuje się zabezpieczenie, które nieustannie porównuje wartość pozycji zadanej i rzeczywistejZabezpieczenie to opisuje bardzo prosty warunek matematyczny:

pozycja zadanapozycja rzeczywista <= dopuszczalny błąd pozycji.

 

Jeśli pozycja zadana minus pozycja rzeczywista jest większa od dopuszczalnego błędu pozycji, to maszyna zostaje natychmiast awaryjnie zatrzymana i pojawia się komunikat „PID Fault”. W komunikacie „PID Fault” umieszczona jest informacja mówiąca którego „Motoru” lub „MotionKit” dotyczy problem (np. „mkit: 1”) i z jaką wartością błędu pozycji mamy do czynienia (np. „error 251”).

W przypadku kontrolera CSMIO/IP-A, użytkownik ma możliwość samodzielnego ustawienia wartości dopuszczalnego błędu pozycji, dlatego że wartość ta zależy od:

  • Poprawności strojenia regulatora pozycji w CSMIO/IP-A
  • Poprawności strojenia regulatora PID prędkości i prądu w serwonapędzie
  • Kondycji serwonapędu
  • Bezwładności osi
  • Rządnej wartości przyspieszenia i zrywu osi.

W  przypadku kontrolerów CSMIO/IP-M i CSMIO/IP-S wartość maksymalnego dopuszczalnego błędu pozycji  jest trwale ustawiona na 200 impulsów. Wartość ta został ustawiona na sztywno, dlatego że jego wartość nie zależy od zmiennych czynników.

Jak już wspominałem, opisywane zabezpieczenie „nieustannie porównuje wartość pozycji zadanej i rzeczywistejW tym momencie w głowach wielu z was może się rodzić pytanie, z jakiego powodu należy nieustannie porównywać te wartości? Oczywiste jest, że w przypadku kontrolera CSMIO/IP-A należy to robić, aby kontrolować poprawność pracy serwonapędu, ale czy jest jeszcze jakiś powód? Otóż są cztery poważne powody:

  • Pomyłka w obliczeniach oprogramowania sterującego (Mach3, Mach4 i simCNC). W tej sytuacji kontroler ruchu CSMIO/IP otrzymuje błędną trajektorię ruchu (czyli pozycję zdaną), która jest rozkazem niekontrolowanego ruchu osi mogącego doprowadzić do kolizji.
  • Brak synchronizacji pomiędzy oprogramowaniem sterującym (Mach3, Mach4 i simCNC), a kontrolerem CSMIO/IP. Kontroler ruchu CSMIO/IP nieustannie przesyła do oprogramowania sterującego (Mach3, Mach4 i simCNC) pozycję rzeczywistą osi. Pozycja ta jest wykorzystywana do synchronizacji oprogramowania sterującego z kontrolerem ruchu.

           – brak synchronizacji powoduje, że oprogramowanie sterujące generuje nieaktualną (nieprawdziwą) trajektorię ruchu mogącą doprowadzić do kolizji.

  • Brak obsługi funkcji lub wadliwa obsługa funkcji po stronie oprogramowania sterującego lub kontrolera ruchu. Zagrożenie identyczne, jak w powyższych punktach.
  • Silne zakłócenia transmisji sieciowej powodujące wyczerpanie się bufora trajektorii zadanej (pozycji zadanej).

 

 

 

 

×

Hello!

Click one of our contacts below to chat on WhatsApp

× How can I help you?