Sterownik PID dla serwa!!!

Rozmowy na temat układów elektronicznych sterowania obrabiarek CNC

Autor tematu
bogus105
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 421
Rejestracja: 24 gru 2005, 12:59
Lokalizacja: Bielsko-Biała

#11

Post napisał: bogus105 » 16 lip 2006, 15:40

tarcza z szczelinami przesunietymi katowo wzgledem siebie wyglada mniej wiecej ta: (sorry za rys - paintbrush) na czerwono sa szczeliny dla wiazki swiatla.

Pozostaje jeszcze pytanie o algorytmy zwalniania i przyspiesania ktore podobno realizuje sam sterownik serwa... wiec jak to jest z zachowaniem synchronizacji miedzy np. 3 sterowniami tak zeby obrabiany element w maszynie nie byl zdeformowany. Skoro w Mach3 ustawia sie maksymalne predkosci i przyspieszenia silnikow i komputer wysyla juz gotowe sygnaly sterujace STTEP/DIR do sterownika to po co jeszcze sterownik ma dodawac cos od siebie?
Załączniki
kolo.JPG
kolo enkodera
kolo.JPG (5.14 KiB) Przejrzano 3218 razy



Tagi:


ERNEST KUCZEK
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 5
Posty: 1121
Rejestracja: 13 kwie 2006, 02:59
Lokalizacja: planeta ziemia

#12

Post napisał: ERNEST KUCZEK » 16 lip 2006, 17:58

Piotrjub pisze:Podaj linka jak mozesz
szukalem na www.ebay.com wpisujac "encoder" a jeszcze lepiej wpisac "servo motor" i mozna znalezc cos gotowego z enkoderem.

niestety dzisiaj nie moge znalezc tarcz o ktorych pisalem, chyba aukcaj sie juz zakonczyla. ale prawdopodobnie za kilka dni pojawia sie ponownie bo wygladalo jakby ktos to robil ciagle.

tutaj jest link do enkoderow dosc tanich ale niestety mala rozdzielczosc 256 i 1024 w kwadraturze (podana cena za 3 sztuki aukcja konczy sie za dwa dni)
http://cgi.ebay.com/3-HP-HEDS-Shaft-Enc ... dZViewItem

nie wiem jak wielu szuka czegos na ebay, ale warto poszperac.

[ Dodano: 2006-07-16, 18:09 ]
link do silnika z enkoderem aukcaj konczy sie za 5 dni cena jak narazie 1$
http://cgi.ebay.com/ws/eBayISAPI.dll?Vi ... 3APIC&rd=1

[ Dodano: 2006-07-16, 18:11 ]
tutaj 6 seronikow serwami jak narazie za 50$ aukcja konczy sie za 1 dzien
http://cgi.ebay.com/ws/eBayISAPI.dll?Vi ... 3APIC&rd=1

[ Dodano: 2006-07-16, 18:22 ]
bezszczotkowe serwo dc z enkonkoderem
Toshiba DC Brushless Servo Motor
Model: 22L2-0400R
Rated Torque: 19.5 kg-cmRated Speed: 2000 rpm
aukcja konczy sie za 9 godz. cena99.99$ lub 165$ natychmiast.
http://cgi.ebay.com/Toshiba-DC-Brushles ... dZViewItem
POZDRAWIAM


pltmaxnc
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1342
Rejestracja: 13 sie 2004, 13:58
Lokalizacja: warszawa

#13

Post napisał: pltmaxnc » 16 lip 2006, 19:04

Tutaj można kupić tarcze http://www.usdigital.com/products/disk/


ezbig
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 1
Posty: 2103
Rejestracja: 07 lip 2006, 00:31
Lokalizacja: mazowieckie

#14

Post napisał: ezbig » 17 lip 2006, 00:21

ERNEST KUCZEK pisze:no wiec wlasnie moze ktos wyjasni w jaki sposob uzyskac kierunek jesli mam do dysplzycji tylko tarcze ze szczelinami i i fototranzystor. jak juz pisalem elektronikiem nie jestem, wiec na logike bede mial sygnal krok 010101... jak jeszcze do tego dostac kierunek? czy moze ktos to wyjasnic w bardzo prosty sposob?
Tylko czy w przypadku cnc jest to potrzebne. To ty decydujesz o kierunku, więc potrzebujesz tylko impulsy - kierunek znasz.


diodas1
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 3
Posty: 2788
Rejestracja: 15 sty 2006, 18:34
Lokalizacja: Wrocław

#15

Post napisał: diodas1 » 17 lip 2006, 01:54

Znalazłem w bardzo już wiekowej książce o zastosowaniach układów scalonych cyfrowych serii TTL opis prostego układu który może być zastosowany do samodzielnego konstruowania elektroniki enkodera serwa. W każdym razie opis dość szczegółowo wyjaśnia zasadę badania kierunku ruchu w tych urządzeniach. Mam nadzieję że komuś się to jeszcze oprócz Ernesta przyda do zrozumienia idei. Skany z książki są tutaj: Obrazek
Obrazek


ERNEST KUCZEK
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 5
Posty: 1121
Rejestracja: 13 kwie 2006, 02:59
Lokalizacja: planeta ziemia

#16

Post napisał: ERNEST KUCZEK » 17 lip 2006, 03:28

ezbig pisze:ERNEST KUCZEK napisał/a:
no wiec wlasnie moze ktos wyjasni w jaki sposob uzyskac kierunek jesli mam do dysplzycji tylko tarcze ze szczelinami i i fototranzystor. jak juz pisalem elektronikiem nie jestem, wiec na logike bede mial sygnal krok 010101... jak jeszcze do tego dostac kierunek? czy moze ktos to wyjasnic w bardzo prosty sposob?


Tylko czy w przypadku cnc jest to potrzebne. To ty decydujesz o kierunku, więc potrzebujesz tylko impulsy - kierunek znasz.
no nie tak do konca, bo jesli sily np. skrawania prubuja wybic uklad z rownowagi np. os x, to wowczas wlasnie enkoder musi podac kierunek w jakim uklad zostal zachwiany i wartosc o ile, a uklad nadazny czy tez sprzezenie zwrotne (o ile dobrze to nazywam prosze kolego elektronikow o ewentualna korekte) musi wepchnac owa os do wlasciwego polozenia.
poza tym pytanie nie bylo czy jest to porzebne w cnc tylko jaka jest zasada dzialania.

diodas1, dzieki za sany z ksiazki, sam tez troche poszperalem w materialach na ten temat i chyba odrobilem zalegle zadanie :grin: . mysle ze wiecej ludzi nie rozumialo tego ale poprostu glupio zapytac o podstawy, a bez tego ani rusz.
POZDRAWIAM


diodas1
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 3
Posty: 2788
Rejestracja: 15 sty 2006, 18:34
Lokalizacja: Wrocław

#17

Post napisał: diodas1 » 18 lip 2006, 12:55

Masz rację Ernest że bronisz swojego zdania odnośnie funkcji które spełnia enkoder serwomechanizmu. Wiem z autopsji jakie jęki i skowyty może wydawać taki niewielki silniczek, który próbuje sobie poradzić z oporną materią, np kiedy jest użyty do napędu czegokolwiek wykazującego się sprężystością. Po wykonaniu przesunięcia czy obrotu do zadanęj mu pozycji, swoim zwyczajem wyłącza się a tu na złość jakaś sprężysta belka lub wałek zatrzymany w nieodpowiednim położeniu z powodu tarcia lub inercji cofa tarczę kodową o drobny odcinek. Serwo próbuje to naprawić, naprawia, znowu się wyłącza i tak w kółko. Działa to zupełnie jak kij samobij którym dawni bartnicy odpędzali niedźwiedzia od miodu swoich pszczół hodowanych w dziupli na drzewie.
Zachęcony Twoją aprobatą, dąc za ciosem w nawiązaniu do skanów z książki które umieściłem w poście powyżej, dla nielicznych pewnie userów tego forum nie do końca wyczuwających różnicę między serwosilnikiem a silnikiem krokowym, popełniłem zgrubny szkic schematu blokowego jednego z możliwych rozwiązań, który ilustruje zasadę działania pętli sprzężenia zwrotnego, w której pracuje serwo z enkoderem.
Obrazek
Mam nadzieję że rysunek jest czytelny ale na wszelki wypadek......
Do rejestru wpisujemy liczbę binarną reprezentującą pozycję do której silnik serwo ma doprowadzić nasz mechanizm (np przesunąć bramę z wrzecionem). W liczniku mamy zapisaną również w postaci binarnej liczbę reprezentującą dotychczasowe położenie przykładowej bramy. Blok komparatora porównuje te dwie liczby i informację o wyniku porównania wysyła do zasilacza serwa, który potrafi wywrzeć odpowiednią presję na serwo i namówić go do przerwania błogiej drzemki. Zależnie od wyniku tego porównania serwo otrzymuje od zasilacza odpowiedniego kuksańca i np zaczyna się kręcić we wskazanym kierunku. Oczywiście nie w dowolnym kierunku tylko dokładnie w takim żeby doprowadzić do zniwelowania sygnału błędu wykazywanego przez komparator. Tarcza enkodera dzięki czujnikom A i B (oznaczenia zgodne z użytymi w skanach powyżej) oraz układowi wykrywania kierunku ruchu transmituje do licznika impulsy które dodają się (C+) lub odejmują (C-) od dotychczasowego stanu licznika. Zasilacz serwa tak długo je molestuje , czyli podtrzymuje zasilanie, aż zadanie zostanie wykonane. Zadanie doprowadzenia do zrównania się zawartości licznika i rejestru oczywiście. Tak to działa z grubsza. Z cieńsza natomiast zgodnie z zasadą że diabeł siedzi w szczegółach sprawy nieco się komplikują. Chodzi mianowicie o zagadnienia związane z inercją. Rzecz w tym że silnik elektryczny nie zatrzymuje się jak wryty w momencie kiedy wyłączymy mu zasilanie. Aby pokonać tę niedogodność stosuje się różne chwyty. Spotkałem się przykładowo z takim szatańskim rozwiązaniem w dawno temu używanych , wyprodukowanych przez Bułgarów pamięciach dyskowych, gdzie napęd serwo, liniowy zresztą, przesuwał tam i spowrotem wózek na którym były przymocowane masywne głowice zapisu-odczytu. Nie był rozpieszczany. Musiał w ułamku sekundy miotnąć masą kilku kilogramów i zatrzymać na sztywno w docelowym położeniu z mikronową precyzją. Efekty było widać szczególnie przy morderczych okresowych testach sprawności- pod wpływem szaleńczych przeskoków całego majdanu w środku, metalowa skrzynia obudowy tejże pamięci dyskowej o wadze kilkudziesięciu kg jeździła po posadzce pomieszczenia. Tamten zasilacz serwa otrzymywał od komparatora informację o wielkości błędu (a nie tylko o tym że błąd istnieje) czyli różnicy między licznikiem a rejestrem. Start serwomechanizmu odbywał się z różną dynamiką- mała różnica-lekkie kopnięcie, duża to walnięcie wszystkim co fabryka dała. Jeżeli natomiast chodzi o zatrzymanie, to kiedy cały gnający pociąg zbliżał się do stacji docelowej, włączało się hamowanie, czyli zasilanie serwa w przeciwnym kierunku. To hamowanie również miało siłę uzależnioną od wielkości aktualnego błędu oraz od bieżącej prędkości. Skomplikowane jak diabli, szczególnie że cała elektronika opierała się na tranzystorach i układach cyfrowych TTL. Kurs dla konserwatorów (naprawiaczy) trwał ponad miesiąc po kilka godzin dziennie, z czego dwie trzecie stanowiły zagadnienia związane właśnie z rozbudowanym do absurdu kombajnem serwomechanizmu. Dla ułatwienia- cała dokumentacja urządzenia i opisy sygnałów na schematach w języku rosyjskim. Jak napisałem, prezentowane tu rozwiązanie jest jednym z wielu, ponieważ ambitni konstruktorzy zawsze opracowują od podstaw swoje, unikatowe. Czasem poszczególne funkcje wykonują się układowo, kiedy indziej programowo, w pamięci mikrokontrolera. W każdym razie zawsze w przypadku serwomechanizmów istnieje jakaś pętla sprzężenia zwrotnego pilnująca aby polecenia przesuwów były wykonywane dokładnie.


pukury
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 1
Posty: 7735
Rejestracja: 23 lis 2004, 22:41
Lokalizacja: kraków

#18

Post napisał: pukury » 18 lip 2006, 15:20

witam !! podobne rozwiązanie było stosowane w wytworach KFAP z krakowa - napędy miękkich i twardych dysków. aż żal d..ę ściska ile tego poszło do huty !! . jak to zwykle mądrym się jest po czasie :sad: !! . ciekawe co by było jak by silniki od skuterków z allegro ( po 35pln/100W ) zaopatrzyć w enkodery ? czy dla amatorów coś by z tego było ? . jak myślicie ? . pozdrawiam !!
Mane Tekel Fares


Autor tematu
bogus105
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 421
Rejestracja: 24 gru 2005, 12:59
Lokalizacja: Bielsko-Biała

#19

Post napisał: bogus105 » 18 lip 2006, 16:23

diodas1 czy przypadkiem zasada dzialanie regulatora PID nie jest z grubsza podobna do tego Bługarskiego rozumowania tylko realizowana poprzez mikrokontroler?


diodas1
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 3
Posty: 2788
Rejestracja: 15 sty 2006, 18:34
Lokalizacja: Wrocław

#20

Post napisał: diodas1 » 18 lip 2006, 23:24

bogus105. Prawdopodobnie tak jest. Jeżeli ten regulator o którym piszesz na początku całego wątku jest przewidziany dla sterowania silnikiem serwo to powinien mieć w programie te podstawowe elementy decydujące o szybkości startu silnika z możliwością wpływu na parametry przyspieszenia i prędkości. Musi też mieć możliwość ustawiania parametrów hamowania w szerokim zakresie żeby w zależności od inercji całej mechaniki dało się pracować optymalnie i bez obawy wchodzenia w oscylacje. Nie do końca jestem tylko przekonany do nazywania takiego sterownika regulatorem PID. Jest to pewnie chwyt marketingowy bo jest taki trend żeby w automatyce gdzie się da stosować właśnie regulatory PID. Trochę wygoda a trochę moda. Jest duże prawdopodobieństwo, graniczące z pewnością że mikrokontroler ma w swoim programie sekwencje będące programowym odpowiednikiem regulatora PID (wynika to z opisu modułu, umieszczonego przez producenta w podanym przez Ciebie linku), natomiast nazywanie całego układu regulatorem PID jest moim zdaniem nadmiernym uproszczeniem. Wracając do Twojego pytania zawartego na początku wątku- masz rację że cena urządzenia wynika z kosztu opracowania programu kontrolera a nie z ceny podzespołów. Jak podaje producent, program można samodzielnie konfigurować. To dobrze ponieważ inaczej cała zabawa traciłaby sens. Serwomotor nie działa w oderwaniu od reszty świata ale musi dopasować się do współpracy z całą mechaniczną otoczką, a ta bywa różna. Zatem docelowe ustawianie wszystkich udostępnionych użytkownikowi parametrów musi być przeprowadzone już w kompletnym urządzeniu (ploterze, grawerce, sondzie kosmicznej). Co do enkodera o rozsądnej rozdzielczości, własnego wykonania o który zapytałeś na początku to też możliwości jest wiele. Nikt Cię przecież nie zmusi do wykonania tarczy o nieskończonej ilości szczelin oraz odpowiednio ostro zogniskowanej optyki, jeżeli nie jesteś w stanie tego technicznie osiągnąć. Równie dobrze możesz zrobić na osi szybkoobrotowego silnika (szlifierki Dremel) tarczę z jedną toporną szczeliną a rozdzielczość uzyskać stosując odpowiednio duże przełożenie mechaniczne. Dalej to kwestia inteligentnego zasilenia i oprogramowania. Też będzie działać.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Elektronika CNC”