[C][Atmega32] Opis serwonapędu + TWORZENIE v2.0

Dyskusje na temat silników krokowych i sterowników silników krokowych.
Awatar użytkownika

blue_17
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 3
Posty: 1715
Rejestracja: 16 kwie 2009, 07:55
Lokalizacja: Kraków/Kornatka

#11

Post napisał: blue_17 » 28 sty 2013, 08:12

BTC z tego co wiem :)


"I siedzieli oni razem pod nagim DOS-em i nie wstydzili sie tego." :D

Tagi:

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 4
Posty: 3962
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#12

Post napisał: markcomp77 » 28 sty 2013, 09:48

blue_17 pisze:BTC z tego co wiem
czyli okolice kamami... ładne książki robią ... w bardzo ładnych okładkach -- polecam :) (na półce też ładnie się prezentują!)
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm


Autor tematu
volkhen
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 33
Posty: 45
Rejestracja: 03 mar 2007, 10:44
Lokalizacja: Bydgoszcz

#13

Post napisał: volkhen » 28 sty 2013, 11:47

Panowie, offtopic mały się zrobił.


kszumek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 495
Rejestracja: 04 kwie 2006, 18:08
Lokalizacja: Białystok

#14

Post napisał: kszumek » 07 lut 2013, 21:31

Witam
Mam mała sugestię
a może by tak zamiast AVR pod lupę wziąść ARMa
np STM32 mają sprzętowe wejście enkodera, PWMy
są w tak śmiesznie niskiej cenie
że grzech się cofać , ceny spadają a popularność rośnie
wyprą z rynku ATMELe jak nic
ja jak znajdę czas to pobawię się i dam znać
mam podobne plany do autora
pozdrawiam

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 25
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#15

Post napisał: ursus_arctos » 08 lut 2013, 11:15

Ja wziąłem pod lupę - powstaje sterownik 4x servo DC oparty na STM32F4. W tej chwili czekam na płytki części wykonawczej; częścią obliczeniową jest (na razie) STM32F4Discovery.
Z 2 przyczyn nie stosuję sprzętowych wejść enkoderów
1. są podatne na zakłócenia (wiem, miałem źle zaprojektowaną płytkę, ale jednak...)
2. na Discovery zintegrowane peryferia zajmują sporo pinów i nie dałbym rady zrobić jednocześnie sprzętowych enkoderów, wyjść PWM na 4 silniki i 8 krańcówek.
Jeżeli kiedyś zastąpię discovery własną płytką, to pewnie się pokuszę o użycie sprzętowych wejść enkdoerów - jak nie wyjdzie, to użyję ich jako GPIO.


kszumek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 495
Rejestracja: 04 kwie 2006, 18:08
Lokalizacja: Białystok

#16

Post napisał: kszumek » 08 lut 2013, 19:35

Witam
Mi się wydaje że sprzętowe wejścia są w takim samym stopniu podatne jak i inne
wejścia, kiedyś jak czytałem notę jakiegoś procka ze sprzętowy wejściem enkodera to nawet miał jakąś tam sprzętową filtrację zakłóceń ale nie pamiętam co to był za sprzęt
a sprzętowe zawsze będą szybsze niż obsługa w programie, no ale zależy co komu potrzeba
a na czym będzie u ciebie stopień mocy i jakiej wielkości to ma popędzać silniki ?
pozdrawiam

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 25
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#17

Post napisał: ursus_arctos » 08 lut 2013, 22:45

STM32F4 nie ma filtra softwarowego (np. kilkukrotnego próbkowania) dla sygnałów enkoderpwych - dla zwykłych timerów zliczających filtrowanie jest, dla kwadraturowych nie :(
Stopień mocy: 4x IRFR1018E + HIP4018A
link do tematu:
https://www.cnc.info.pl/topics12/sterow ... t40791.htm


Autor tematu
volkhen
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 33
Posty: 45
Rejestracja: 03 mar 2007, 10:44
Lokalizacja: Bydgoszcz

#18

Post napisał: volkhen » 16 lut 2013, 17:56

Ja również przerabiam swój sterownik na STM'a, póki co dość opornie mi to idzie bo nigdy nic nie robiłem na STMach i muszę się przestawić po AVRach.

Póki co uruchomiłem mój serwonapęd w połączeniu z LinuxCNC.

Efekt można zobaczyć tutaj:
[youtube][/youtube]


Autor tematu
volkhen
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 33
Posty: 45
Rejestracja: 03 mar 2007, 10:44
Lokalizacja: Bydgoszcz

#19

Post napisał: volkhen » 13 mar 2013, 16:49

Pracę na serwonapędem trwają.

Póki co przeszedłem z kalkulacji stałoprzecinkowych na zmiennoprzecinkowe w pętli PID.

Dodałem anti-windup i zmieniłem trochę algorytm. Silnik chodzi duuużo płynniej,
Gdy wszystko będzie gotowe udostępnię kod + całą dokumentację.

Pytanie, do tych którzy pisali swój kod serwonapędu lub mają wgląd w szczegóły kalkulacji.
Jaki jest błąd w Waszych serwonapędach podczas ruchu?

U mnie bez obciążenia to do 10 imp. enkodera z dużym obciążeniem (prąd 3A) do 20 imp enkodera. Eksperymentuję jeszcze z nastawami PID, ale nic lepszego póki co nie udało mi się uzyskać.

[youtube][/youtube]

I jeszcze jedno pytanie. Mój silnik w jedną stronę ma większą moc niż w drugą? Widać to też po prądzie... Wymieniłem L298 (zmostkowany) i teraz jest to prawie niezauważalne jednak w poprzednim L298 gdy napięcie zasilania > 14V to w jedną stronę kompletnie nie miał mocy. W drugą normalnie. Gdy obniżałem napięcie to zachowywał się normalnie. Na pewno nie była to kwestia sterowania.

[youtube][/youtube]
prawy dolny róg LCD to największa ilosc imp. enkodera, o którą pomylił się PID.

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 25
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#20

Post napisał: ursus_arctos » 15 mar 2013, 15:44

Jeżeli to jest zwykły silnik szczotkowy, a nie specyficznie serwo, to może mieć różne właściwości w różne strony* (zob. poniżej). Silniki serwo są konstruowane tak, aby zachowywały się możliwie symetrycznie.


* Dla typowego silnika kąt pomiędzy polem stojana i wirnika jest tak dobrany, aby był to kąt prosty przy nominalnej prędkości i napięciu silnika (zmiana kąta pola jest związana z indukcyjnością uzwojeń). Tak więc na początku ten kąt będzie wynosił nieco ponad 90° i potem będzie zbliżał się do 90°. Po przekroczeniu prędkości roboczej silnik będzie dalej się rozpędzał, ale kąt zmniejszy się, co pociągnie za sobą zmniejszenie momentu.
Przy pracy w drugą stronę taki silnik bedzie startował z kątem poniżej 90° i ten kąt będzie już tylko malał - dlatego nigdy nie osiągnie pełnego momentu dostępnego przy ruchu w drugą stronę.
Silnik można usymetryzować obracając szczotki względem magnesu stojana (lub obracając magnes), ale jest to raczej trudne i pociąga za sobą raczej paskudne przeróbki.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Silniki Krokowe / Sterowniki Silników Krokowych”