-
11. Data: 2009-12-04 20:01:31
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: "Szumek" <k...@i...pl>
Użytkownik "Grzegorz Kurczyk" <g...@c...slupsk.pl> napisał w
wiadomości news:hfafb2$gc$1@nemesis.news.neostrada.pl...
> Użytkownik Szumek napisał:
>> Użytkownik "Artur Miller" <a...@n...pl> napisał w wiadomości
>> news:hf9amg$4dt$1@news.interia.pl...
>>> Użytkownik "Szumek" <k...@i...pl> napisał w wiadomości
>>> news:hf9bs4$7g$1@atlantis.news.neostrada.pl...
>>>>
>>>> to podejdźmy do problemu od inne strony
>>>> sam algorytm pid wrzucmy do uC
>>>> w CPLD zostawmy samo przygotowanie sygnałów dla uC
>>>> czyli dekoder kwadraturowy, licznik i sumator 16 bitowy
>>>> tyle to chyba wejdzie ?
>>>> pozdrawiam
>>>>
>>> a czy CPLD jest z góry narzucone ? bo jeśli nie, a widzę, ze coś
>>> mechanicznego popędzasz - spójrz na LM628/629 , z powodzeniem stosuję je
>>> od jakiegoś czasu.
>>>
>>> @
>>>
>>
>> NIe jest do końca narzucone ale
>> sam uC nie bardzo sie nada do obsługi enkodera
>> CPLD zrobi to szybciej i nie zgubi impulsu
>
> A z jaką maksymalną częstotliwością impulsów enkodera ma Kolega do
> czynienia? AVR poganiany zegarem 8MHz bez problemu radzi sobie z sygnałem
> o częstotliwości 50kHz w ramach obsługi przerwania. Jak dobrze
> zoptymalizujesz procedurę to i 100kHz pociągnie. A jeśli i to mało, to
> chyba wszystkie uC mają jakieś sprzętowe liczniki, które można zaprząc do
> roboty.
>
> Oszacuj na początku jaka będzie maksymalna częstotliwość impulsów z
> enkodera, bo może się okazać, że wystarczy 8051 poganiany zegarem 12MHz
> :-)
>
> Przykładowo: enkoder 1000imp/obr sprzęgnięty z wałem silnika mającego
> maksymalnie 3000obr/min.
> 3000 obr/min = 50 obr/s
> 50 obr/s * 1000 imp/s daje 50kHz czyli mała ATmega wystarczy. Jak ją
> jeszcze pogonisz na 16MHz to z zapasem.
>
> Pozdrawiam
Witam ponownie
już liczyłem to co kolega pisze
mam enkodery już sprzęgnięte fabrycznie z servem mam takie co maja 250 imp
/obr
ale mam i takie co mają 2500 i 5000 i tu zaczynają się schody AVR już się
nie wyrobi
oprócz obsługi enkodera powinno byc miejsce na prosty PID
i tak sobie kombinuje co by tu mądrego wymyslić
pozdrawiam
-
12. Data: 2009-12-04 20:07:33
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: JanuszR <r...@o...pl>
> Witam ponownie
> już liczyłem to co kolega pisze
> mam enkodery już sprzęgnięte fabrycznie z servem mam takie co maja 250 imp
> /obr
> ale mam i takie co mają 2500 i 5000 i tu zaczynają się schody AVR już się
> nie wyrobi
> oprócz obsługi enkodera powinno byc miejsce na prosty PID
> i tak sobie kombinuje co by tu mądrego wymyslić
Dwa AVRki, tanio i prosto.
JanuszR
-
13. Data: 2009-12-04 20:31:41
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: "Artur Miller" <a...@n...pl>
Użytkownik "JanuszR" <r...@o...pl> napisał w wiadomości
news:hfbq65$pm6$1@news.onet.pl...
>> Witam ponownie
>> już liczyłem to co kolega pisze
>> mam enkodery już sprzęgnięte fabrycznie z servem mam takie co maja 250
>> imp /obr
>> ale mam i takie co mają 2500 i 5000 i tu zaczynają się schody AVR już się
>> nie wyrobi
>> oprócz obsługi enkodera powinno byc miejsce na prosty PID
>> i tak sobie kombinuje co by tu mądrego wymyslić
>
> Dwa AVRki, tanio i prosto.
>
i miesiąc siedzenia nad softem, ktoremu czasem zdarzy sie pojsc w maliny i
dźwig wjedzie w sciane ;) albo winda do nieba pojedzie ;) nie mowie, ze sie
nie da, ale jesli to jakas cięższa mechanika, to ja juz bym się nie bawił w
klepanie na piechotę i eksperymenty.
@
-
14. Data: 2009-12-04 20:55:09
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: "Szumek" <k...@i...pl>
Użytkownik "Artur Miller" <a...@n...pl> napisał w wiadomości
news:hfbq4e$a9m$1@news.interia.pl...
>
> Użytkownik "JanuszR" <r...@o...pl> napisał w wiadomości
> news:hfbq65$pm6$1@news.onet.pl...
>>> Witam ponownie
>>> już liczyłem to co kolega pisze
>>> mam enkodery już sprzęgnięte fabrycznie z servem mam takie co maja 250
>>> imp /obr
>>> ale mam i takie co mają 2500 i 5000 i tu zaczynają się schody AVR już
>>> się nie wyrobi
>>> oprócz obsługi enkodera powinno byc miejsce na prosty PID
>>> i tak sobie kombinuje co by tu mądrego wymyslić
>>
>> Dwa AVRki, tanio i prosto.
>>
>
> i miesiąc siedzenia nad softem, ktoremu czasem zdarzy sie pojsc w maliny i
> dźwig wjedzie w sciane ;) albo winda do nieba pojedzie ;) nie mowie, ze
> sie nie da, ale jesli to jakas cięższa mechanika, to ja juz bym się nie
> bawił w klepanie na piechotę i eksperymenty.
>
> @
>
>
tez o tym myslałem żeby rozdzielić zadania ale raczej na CPLD + AVR
przy 5000 imp/obr nawet 2 avrki chyba nie dadza rady
więc narazie najlepszym chyba pomysłem jest cpld +uC
(oczywiście dla silnika z enkoderem 5000imp/obr)
koszt małego cpld ka jest tak niski że nawet niewarto
zawracać sobie głowy jakimis zmianami mechanicznymi ze wzgledu na enkodery )
maszynka nie bedzie ciężka ani skomplikowana
-
15. Data: 2009-12-04 21:21:41
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: JanuszR <r...@o...pl>
>> Dwa AVRki, tanio i prosto.
>>
> i miesiąc siedzenia nad softem, ktoremu czasem zdarzy sie pojsc w maliny i
> dźwig wjedzie w sciane ;) albo winda do nieba pojedzie ;) nie mowie, ze sie
> nie da, ale jesli to jakas cięższa mechanika, to ja juz bym się nie bawił w
> klepanie na piechotę i eksperymenty.
Jakość softu zależy od ilości spędzonych nad nim godzin niestety :)
JanuszR
-
16. Data: 2009-12-04 21:45:59
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: Grzegorz Kurczyk <g...@c...usun.slupsk.pl>
Użytkownik Artur Miller napisał:
> i miesiąc siedzenia nad softem, ktoremu czasem zdarzy sie pojsc w maliny i
> dźwig wjedzie w sciane ;) albo winda do nieba pojedzie ;)
To się może zdarzyć również na fabrycznych "sprawdzonych" serwonapędach.
Niedawno naprawiałem sterowniki ServoStar-a. Sterownik "fullwypas"
procek 32bit, FPGA i mnóstwo innych kwadratowych scalaków z setkami
nóżek, a taki prozaiczny wyschnięty elektrolit z zasilaniu spowodował,
że gdyby nie krańcówki bezpieczeństwa odcinające zasilanie, to wrzeciono
maszyny wjechałoby przez ścianę do drugiego pokoju :-)
Pozdrawiam
Grzegorz
-
17. Data: 2009-12-04 21:56:50
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: Grzegorz Kurczyk <g...@c...usun.slupsk.pl>
Użytkownik Szumek napisał:
>> Pozdrawiam
>
> Witam ponownie
> już liczyłem to co kolega pisze
> mam enkodery już sprzęgnięte fabrycznie z servem mam takie co maja 250 imp
> /obr
> ale mam i takie co mają 2500 i 5000 i tu zaczynają się schody AVR już się
> nie wyrobi
> oprócz obsługi enkodera powinno byc miejsce na prosty PID
> i tak sobie kombinuje co by tu mądrego wymyslić
>
Ale czy aż taka rozdzielczość jest Koledze potrzebna ?! 5000imp/obr to
0,072 stopnia. A jakie obroty ? W ostateczności można do obsługi
enkodera zaprząc liczniki w AVRku.
Korzystając z zewnętrznego licznika enkodera na jakimś CPLD trzeba jakoś
ten stan licznika zczytać do procesora. Jeśli pojemność licznika ma mieć
np. 32bity to musisz w CPLD zaszyć jakiś rejestr buforowy coby na czas
transmisji zatrzasnąć bieżący stan licznika. Inaczej gdy w podczas
przesyłania danych z CPLD do uC przyjdzie impuls z enkodera (co przy
takiej rozdzielczości jest wysoce prawdopodobne) to uC może odczytać
niezłą kaszankę.
Pozdrawiam
Grzegorz
-
18. Data: 2009-12-04 22:21:13
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: "Artur Miller" <a...@n...pl>
Użytkownik "Grzegorz Kurczyk" <g...@c...usun.slupsk.pl> napisał
w wiadomości news:hfc17f$s37$1@nemesis.news.neostrada.pl...
>
> Ale czy aż taka rozdzielczość jest Koledze potrzebna ?! 5000imp/obr to
> 0,072 stopnia. A jakie obroty ? W ostateczności można do obsługi enkodera
> zaprząc liczniki w AVRku.
> Korzystając z zewnętrznego licznika enkodera na jakimś CPLD trzeba jakoś
> ten stan licznika zczytać do procesora. Jeśli pojemność licznika ma mieć
> np. 32bity to musisz w CPLD zaszyć jakiś rejestr buforowy coby na czas
> transmisji zatrzasnąć bieżący stan licznika. Inaczej gdy w podczas
> przesyłania danych z CPLD do uC przyjdzie impuls z enkodera (co przy
> takiej rozdzielczości jest wysoce prawdopodobne) to uC może odczytać
> niezłą kaszankę.
>
dlatego wlasnie, po takich przebojach, służąc doświadczeniem ;)
zaproponowałem LM629 ... buforowanie rejestrów, gotowy filtr PID, wyjscie
PWM, kilka ciekawych trybów pracy ... parę złotych więcej, ale o wiele
więcej zaoszczędzone na czasie i skutkach błędów w sofcie.
@
PS. nie, nie pracuje dla Nationala :)
-
19. Data: 2009-12-05 13:43:05
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: "Szumek" <k...@i...pl>
Użytkownik "Grzegorz Kurczyk" <g...@c...usun.slupsk.pl> napisał
w wiadomości news:hfc17f$s37$1@nemesis.news.neostrada.pl...
> Użytkownik Szumek napisał:
>>> Pozdrawiam
>>
>> Witam ponownie
>> już liczyłem to co kolega pisze
>> mam enkodery już sprzęgnięte fabrycznie z servem mam takie co maja 250
>> imp /obr
>> ale mam i takie co mają 2500 i 5000 i tu zaczynają się schody AVR już się
>> nie wyrobi
>> oprócz obsługi enkodera powinno byc miejsce na prosty PID
>> i tak sobie kombinuje co by tu mądrego wymyslić
>>
>
> Ale czy aż taka rozdzielczość jest Koledze potrzebna ?! 5000imp/obr to
> 0,072 stopnia. A jakie obroty ? W ostateczności można do obsługi enkodera
> zaprząc liczniki w AVRku.
> Korzystając z zewnętrznego licznika enkodera na jakimś CPLD trzeba jakoś
> ten stan licznika zczytać do procesora. Jeśli pojemność licznika ma mieć
> np. 32bity to musisz w CPLD zaszyć jakiś rejestr buforowy coby na czas
> transmisji zatrzasnąć bieżący stan licznika. Inaczej gdy w podczas
> przesyłania danych z CPLD do uC przyjdzie impuls z enkodera (co przy
> takiej rozdzielczości jest wysoce prawdopodobne) to uC może odczytać
> niezłą kaszankę.
>
> Pozdrawiam
> Grzegorz
już kolegom odpowiadam
5000 imp /obr rozdzielczości mi nie trzeba myślę że 1000 jest w sam raz ale
nie chcę rozbierać oryginalnych serv po to żeby wymienić im enkodery
mój pierwszy post miał mieć na celu zorientowanie się w możliwościach i
problemach
ponieważ z CPLD dopiero zaczynam trudno mi jest ocenic co wejdzie do takeigo
układu a co nie
czy jego sasoby pozwolą na stworzenie to o czym my tu piszemy czy nie ?
już mi się sprawa dzięki wam naświetla
narazie wezmę mniejsze servo ze słabszym enkoderem i podziałam na avr z tym
co mam dopuki nie wymyslę
jak sterowac tamtymi
LM629 też jest ciekawą opcją ale warto poznać i pomyśleć nad innymi
rozwiązanaimi
pozdrawiam
-
20. Data: 2009-12-05 14:02:54
Temat: Re: Czy można zrealizować prosty algorytm PID w prostym CPLD np:XC9572
Od: Paweł Sujkowski <p...@p...koszalin.pl>
Witam
A może jakiś procesorek z wbudowanym wsparciem dla enkodera
inkrementalnego? Na przykład dsPCI33F z serii M do sterowania
silnikami czy coś z serii TMS320F2000. Zdaje mi się że niektóre ARM-y
7 od Analog Devices też mają wsparcie dla enkoderów. Dodatkowo do tych
procesorów jest trochę dokumentacji i przykładów ukierunkowanych na
aplikacje napędowe. Zaletą jest posiadanie wszystkiego w środku -
mniejszy problem z EMI, prostszy model programowania. Pozdrawiam.
Paweł