Strona 1 z 2

Pozycjonowanie silnika serwo

: 01 kwie 2009, 20:09
autor: zdzisio1980
Witam serdecznie wszystkich forumowiczów.

Jestem bardzo początkujący, więc jeśli napiszę jakąś głupotę, to proszę o wybaczenie. Zastanawiam się nad dokładnością pozycjonowania w silnikach serwo dc (np. silnik Pittman 14204). Załóżmy, że silnik ten wyposażony jest w enkoder o rozdzielczości 500 imp, czyli sterownik widzi 2000 impulsów. A więc 1 imp odpowiada obrót wału silnika o 0.18° (= 360°/2000). Moje pytanie brzmi czy można obrócić wał silnika o np. kąt 17.28° co będzie odpowiadało 96 impulsom z enkodera, czyli czy można pozycjonować wał silnika z dokładnością wynosząca 0.18°? Czy coś się zmieni np gdy do wału silnika przymocujemy na sztywno płaskownik (np. z aluminium, ale to nie jest ważne) o długości np. 0.3m?

Za wszelkie uwagi będę bardzo wdzięczny.

W załączniku zamieszczam notę katalogową silnika Pittman 14204, jakby była przydatna

: 02 kwie 2009, 21:58
autor: b_j
Witam ,

wiec specjalistą nie jestem ale z tego co wiem :

1. tak , rozdzielczosc wynosci 0,18st. czyli mozna uzyskać każda pozycje co 0,18st. ...ale ..
ważny w tym przypadku jest sterownik do tego a dokładniej regulator PID. I z tego co doświadczyłem nigdy sie nie uda ustawić dokładnie idealne zerowego błedu. Człon calkujacy odpowiada za kasowanie tego minimalnego bledu ale zachowuje sie on mimo wszystko powiedzmy w granicach 1-2 impulsów enkodera. Jeżeli na wałku silnika bedzie jakies obciązenie - powiedzmy minimalnie zmienne to regulator cały czas bedzie korygował ten bład i zakłócenia wywolane momentem oporowym ( przez co tez nigdy nie bedzie 'zerowego ' błedu )

dlatego powiedzmy ze mozna powiedzec ze kolega zadajac ustawienie 17,28st. otrzyma 17,28+- 0,18 . Nie jest to regułą ale ma szanse wystąpić takie zjawisko. Wszystko zależy od konkretnego zastosowania.

2. jesli chodzi o ten płaskownik to zależy od kilku czynników .. miedzy innymi od tego jak bedzie zamocowany- wzdłuż , w poprzek, na środku , czy na krawedzi. ?? Jeżeli silnik jest na tyle mocny aby utrzymać w każdej pozycji ten płaskownik to nie ma to wiekszego związku z precyzja pozycjowania - wynosi ona tyle samo. Chyba że kolega ustawi to cudo w dużym przeciagu - gdzie bedzie jakis zmienny moment oporowy to wtedy prawdopodobnie nie bedzie to na tyle sztywno trzymane zeby zachować 0,18 st. ( po odchyleniu sie o taka wartosc sterownik doprowadzi do zmniejszenia błedu, w tym czasie np. moment ustanie , bład sie zrobi -0,18 .... i tak w kółko )

wiele zależy tez od samego sterowania.
jeżeli jest niezbedna granica regulacji co 0,18 st. to najlepiej dac wieksza rozdzielczosc np. chociaz co 0,09 to po błedzie np. o +2 impulsy zachowuje sie dokladnosc +- 0,18



jeśli pomogłem / kliknij pomógł :D

: 02 kwie 2009, 23:42
autor: zdzisio1980
No to idźmy dalej. Załóżmy że silnik jest wyposażony w enkoder o rozdzielczości 2000 impulsów (sterownik widzi 8000 impulsów na obrót). A więc 1 impulsowi z enkodera odpowiada obrót osi o 0.045° = 360°/8000). Czy nadal można pozycjonować wał silnika z dokładnością +/- 0.045° (czyli np. chcemy obrócić wał o 4.635° co odpowiada 103 impulsom z enkodera). Chodzi mi tutaj raczej o to czy konstrukcja silnika serwo na to pozwala? Gdyż kolega faniron w poście: https://www.cnc.info.pl/topics65/silnik ... 894,10.htm
napisał:

"Robiłem takie próby: silnik od wycieraczek z jakiejś ciężarówki, silnik od skutera 150W. Nie chodziło to zbyt dobrze. Były problemy z pozycjonowaniem - buczenie silnika na postoju, nie umiał stanąć w zadanym położeniu. W sumie nieciekawie. Być może przyczyną było to, że "zwykłe" silniki mają na wirniku proste żłobki, w których są uzwojenia, a serwa mają je skręcone, jakby linia śrubowa o dużym skoku. Taki wirnik potrafi stanąć w każdym położeniu."

A więc wynikałoby że teoretycznie można (wszystko zależałoby oczywiście od sterownika).

: 03 kwie 2009, 07:40
autor: b_j
Jeśli chodzi o sprawe enkodera 2000 imp. wszystko analogicznie jak dla 500 imp. te same problemy.

Kolega musi okreslic dokladnosc z jaka ma pracowac serwo - a rozdzielczosc czyli podział na elementarne 'kroki' powinien - a w recz musi byc znacznie mniejsza niz oczekiwana dokładnosc. Oczywiscie pod kątem elektrycznym i teoretycznym mozliwe powinno byc pozycjonowanie wału silnika z dokładnoscia taka jaki jest enkoder 360st/200 , 360/2000 imp .itd.


przykład : chcemy miec maszyne z dokładnoscia +-0,1mm to serwo powinno działac z rozdzielczoscia np. +-0,01 - wtedy nawet jak beda jakies drgania albo male błedy wszystko zachowa sie w +- 0,1.

praktycznie to wyglada tak ze +- 0,01 kolega jest w stanie uzyskac poprzez przekladnie mechaniczną , +-0,001 juz ciężko - a mimo to zakłada sie enkodery np 2500 imp ( i wiecej ) które zapewniaja +-0,0005 .


Jeśli chodzi o inne silniki - trudno mi cos powiedziec na ten temat.
Skrecenie na silniku jest sprawa dyskusyjna - dokladnie co kolega porównywał. z tego co wiem skreca sie złobki w silnikach indykcyjnych klatkowych - celem zmniejszenia pulsacji momentu, silnik od wycieraczek i od skutera jest silnikiem na prad stały ( nie wiem jak tam dokładnie wyglada sprawa wirnika. )

Drgania i buczenie pewnie są spowodowane zbyt dużą inercją układu- duza bezwładnosc wirnika , uzwojenia maja duza indukcyjnosc itp.
Przez co wystepuje taki problem ze np. sterownik ( regulator) dostaje bład o +1imp , stara sie zniwelowac bład wiec zwieksza napięcie i prad az do czasu kiedy bład zmaleje - silnik jest na tyle wolny i ma duza indukcje ze dzieje sie to po np 0,01s , ale prad zostaje wyłaczony dopiero w momencie kiedy do regulatora dotrze informacja ze bład jest zerowy.
W tym momencie prad sie wylącza ale zanim sie wyłaczy całkowiecie mamy juz -1imp .
sytuacja sie powtarza w kółko i mamy buczenie gotowe - to są dgania wywołane naprzmeinna zmiana kierunku i staraniem sie wyeliminować bład do 0. Co w przypadku "kombinowanych" silników i regulatorów moze byc niewykonalne.

tyle wiem na ten temat - ale moze ktos inny przedstawi swoja opinie w tym temacie, albo mnie poprawi jesli cos jest zle.


jeśli pomogłem / kliknij pomógł

: 03 kwie 2009, 10:10
autor: zdzisio1980
Dzięki za odpowiedź.
A więc podsumowując, aby pozycjonować wał silnika (bez przekładni) z dokładnością powiedzmy +/- 0.1° należy użyć enkodera o odpowiedniej rozdzielczości (im większa rozdzielczość tym lepiej).

: 03 kwie 2009, 10:37
autor: paulg
zdzisio1980 pisze:należy użyć enkodera o odpowiedniej rozdzielczości (im większa rozdzielczość tym lepiej).
Owszem - ale należy pamiętać iż sterowniki także mają ograniczenie co do enkoderów - i np UHU z enkoderem powyżej 1000imp już może nie pracować poprawnie.
Dopiero sterowniki z wyższej półki mogą obsłużyć enkodery z wyższą rozdzielczością. (np 10000imp i więcej )

: 03 kwie 2009, 17:59
autor: b_j
a i owszem słuszna refleksja :D

: 05 kwie 2009, 12:03
autor: skoti
Jest jeszcze kwestia szybkosci . Sterujac serwo z PC powiedzmy z macha mamy do dyspozycji jakas tam maksymalna czestotliwosc sygnalu . Zakladajac enkoder z wieksza iloscia impulsow ograniczamy max szybkosc serwa .

: 05 kwie 2009, 17:34
autor: paulg
skoti pisze:Zakladajac enkoder z wieksza iloscia impulsow ograniczamy max szybkosc serwa .
Tak - ale można to łatwo obejść stosując np SS , lub DSPMC :wink:

: 05 kwie 2009, 18:39
autor: b_j
Tutaj problem że tak powiem sie robi nieco innej materii.

Tzn moze tak. Jeśli użyjemy mnożnika kroku ( w wiekszości sterowników jest wbudowany) to problem prędkości mamy z głowy. Ale schody zaczynaja sie z dokładnościa i precyzją.
Zeby nie pomylic. Rozdzielczość z jaką możemy sterować maleje odwrotnie poprocjonalnie do mnożnika - mnożnik mamy 5 x - rodzielczość zmniejsza sie 5 razy. Ale precyzja z jaką sterownik pozycjonuje zostaja taka jaka była - czyli taka jaką ma enkoder.
Dzieje sie tak ponieważ mnożony jest tylko sygnał zadający. Ale nie ma to związku z tym jaką podziałke ma enkoder i z jaką rozdzielczoście pozucjonuje serwo .
I tak na przykład jeżeli mamy enkoder 500 imp. to pozycjonujemy +- 1 impuls ( z rozdzielczościa 1 imulsu - czyli jest osiągalna każda pozycja co 1 impuls. ( 360st/500 ) jeśli zamontujemy sterownik z mnożnikiem kroku np. 5 razy to serwo pozycjonuje z dokładnością +-1 impuls - ale z tą różnicą ze możliwe do osiągnięcia pozycje są co 360/100 imp.)
Niestety coś kosztem czegoś. W przypadku zastosowania smooth steppera mamy bez mnoznika kroku duza predkości i wysoką rozdzielczość . :-D


jesli pomogłem kliknij pomógł :D