Czy silniki BLDC są lepsze od krokówek

Rozmowy na temat układów elektronicznych sterowania obrabiarek CNC
Awatar użytkownika

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

#41

Post napisał: blue_17 » 19 sie 2010, 22:57

Tu mam 11 bitową rozdzielczość i schemat do sprawdzenia i interfejs kwadraturowy do Enkodera :twisted:

Ale na początku chciałbym żeby się kręciło i chciałbym na czymś mniejszym to zrobić

Plik to schemat z Eagla
Załączniki
BLDC prject beta.rar
(46.69 KiB) Pobrany 203 razy


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

Tagi:


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 35
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#42

Post napisał: jarekk » 20 sie 2010, 11:34

Brakuje jeszcze wejść step/dir

Ale jest inny poważniejszy problem - układ mocy nie zadziała. Tranzystory które kolega używa ( w górnych gałęziach mostka) potrzebuję około 12V POWYŻEJ potencjału źródła ( UGS) aby się włączyły. A PIC nie da 312V na wyjściu :shock: . Poza tym ma za małą wydajność prądową aby szybko przełączać duże mosfety.

Niech kolega poczta na sieci o mostkach H !!

http://www.modularcircuits.com/h-bridge_secrets1.htm
http://www.irf.com/technical-info/appnotes/an-978.pdf

Awatar użytkownika

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

#43

Post napisał: blue_17 » 20 sie 2010, 13:43

Miałem już styczność z małymi mostkami H w obudowie DIP ale były to małe silniczki dokładnie były to silniczki w potencjometrach (bajer z pilotem i przekręcaniem się gałki po naciśnięciu przycisku w pilocie RC5)

Czytając o mostkach napotkałem na coś co mógłbym zastosować ale tylko do 80V wygada na to, że można go zastosować też jako multiplekser PWM ze sterownikiem mosfetów w jednej obudowie ale to tylko tak przy okazji :)

http://www.datasheetdir.com/HIP4086+download

Co do ostatniego linku kolegi to bardzo dobry układ :)

Co do sterowania to poszukiwania doprowadziły mnie do algorytmu jaki jest miedzy innymi stosowany do dynamicznego śledzia pracy silnika, jak się okazało w dobrą stronę kombinowałem jeśli chodziło o buforowanie danych i "przewidywanie" co będzie się działo,

Sterowanie odbywa się za pomocą Modelu ARMAX oczywiście tylko szczątkowe informacje można znaleźć o tym w języku Polskim ale ciocia Wikipedia ogólnie opowiada o tym modelu

http://pl.wikipedia.org/wiki/Model_ARMAX

Oraz dochodzą działania na wektorach czyli macierze (czyli jeśli chodzi o programowanie tablice)
"I siedzieli oni razem pod nagim DOS-em i nie wstydzili sie tego." :D


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 35
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#44

Post napisał: jarekk » 20 sie 2010, 14:11

Scalony sterownik to dobry początek. Lepiej też może nie iść od razu do 300V - 80V trochę bardziej bezpieczne do testów.

Co do algorytmu - na początek może rozważmy prostszy układ w którym modele stochastyczne nie będą potrzebne. Niech kolega rozważy prosty układ- na wejściu ma step/dir ( tak jak w UHU - proponuję zresztą poczytać jego instrukcję i przestudiować schemat). Step/dir idzie na licznik. Dane z enkodera - na drugi licznik. A ich różnica jest uchybem sterowania.

I co wtedy ? Co trzeba zrobić z prądem/ sterowaniem PWM jak pojawi się uchyb ?

Awatar użytkownika

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

#45

Post napisał: blue_17 » 20 sie 2010, 14:38

Zakładając najprostszy przypadek, że jednemu impulsowi step/dir odpowiada jeden impuls enkodera to myślę, że silnik musi przyspieszyć lub przyhamować o daną liczbę impulsów enkodera czyli znów trzeba podać na cewki odpowiednio przesunięty w fazie prąd by zsynchronizować pracę układu.

Inaczej chyba nie może być bo sygnałem sterującym jest step/dir i on nie może się zmieniać względem sygnału enkodera, bo to soft w komputerze generuje impulsy dla sterownika niezależnie od wskazań enkodera.
"I siedzieli oni razem pod nagim DOS-em i nie wstydzili sie tego." :D


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 35
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#46

Post napisał: jarekk » 20 sie 2010, 14:59

blue_17 pisze:Zakładając najprostszy przypadek, że jednemu impulsowi step/dir odpowiada jeden impuls enkodera to myślę, że silnik musi przyspieszyć lub przyhamować o daną liczbę impulsów enkodera.
No to kolega zbudował silnik krokowy :razz:

Serwo tak pracuje tylko w idealnym przypadku. W normalnym - sygnały step/dir będą chodzić sobie, a algorytm serwa będzie działał tak, aby różnica pomiędzy wskazaniami enkodera a step/dir była najmniejsza. Zakładamy oczywiście że rozdzielczość enkodera jest dużo większa (dla uproszczenia o rząd wielkości) niż wymagana "rozdzielczość" obróbki.

Tyle że wtedy - w zależności czy prędkość zmiany 'step' jest duża czy mała należy inaczej sterować. Również w zależności czy bieżący uchyb sterowania będzie duży czy nie.
I tu się kłania algorytm PID.

http://pl.wikipedia.org/wiki/Regulator_PID
http://www.jashaw.com/pid/code.htm

Awatar użytkownika

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

#47

Post napisał: blue_17 » 20 sie 2010, 15:10

Kurcze tkwiłem w ogromnej niewiedzy twierdząc, że algorytm PID jest tylko jeden prawidłowy

Serdecznie dziękuję :)
"I siedzieli oni razem pod nagim DOS-em i nie wstydzili sie tego." :D


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 35
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#48

Post napisał: jarekk » 20 sie 2010, 15:24

No to teraz trochę poglądowego kodu - działający sterownik serwo DC.

Można z niego skorzystać - tyle że sterowanie najniższą warstwą trzeba by zmienić - bo mamy BLDC a nie DC.

Wyjściem z algorytmu jest tak naprawdę prędkość - gdy '0' to silnik ma stać, +/-max oznacza kręcenie z maksymalną prędkością lewo/prawo

Czyli trzeba by opracować procedurę która dla zera zatrzyma silnik, a dla wartości 'max' będzie kręcić z maksymalną prędkością ( w odpowiednik kierunku )
Załączniki
picserwo_original.zip
(71.73 KiB) Pobrany 528 razy

Awatar użytkownika

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

#49

Post napisał: blue_17 » 21 sie 2010, 10:52

Chciałem jeszcze zapytać odnośnie drivera mosfetów czy w tej konfiguracji przedstawionej przezmianie będzie działał oczywiście w układzie jeśli by to miało by działać był by 3 po jednym na dwa tranzystory. I nie jestem pewien czy za sygnał sterujący mam podać PWM jeśli tak to podam poprzez tranzystor ze stabilizatora 15V.

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


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 35
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#50

Post napisał: jarekk » 22 sie 2010, 19:39

Czy kolega przeczytał ( ze zrozumieniem) kartę katalogową tego układu ???


Logic inputs are compatible with standard CMOS or LSTTL output, down to 3.3V logic

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Elektronika CNC”