BLDC Servo Driver?

Robot, CNC, Pneumatik, Hydraulik, mm
JBV
Inlägg: 411
Blev medlem: 4 maj 2006, 11:44:28
Ort: Älvsbyn

BLDC Servo Driver?

Inlägg av JBV »

Tjo!

Jag funderar på om man skulle försöka bygga en enkel servo driver för borstlösa motorer! Så billigt som möjligt! ;)

Skulle denna vara lämplig: Brushless DC motor controller, MC33035P?
Datablad finns hos http://www.rsonline.se

Sedan har jag en hel hög med IRFP460LC, 500V 20A... Borde klara jobbet!?
Datablad finns hos http://www.elfa.se

Till sist hade jag tänkt använda en lämplig AVR som klarar av läsa enkoder input med tillfredställande hastighet och köra en PID loop (inställning via pot och A/D?) Input blir steg/riktning så att det går använda alla vanliga CNC program... Samt enable för nödstopp...

Synpunkter och tips mottages gärna!
danei
EF Sponsor
Inlägg: 27583
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Är det inte inte lite att gå över ån efter vattten att få en synkronmotor att uppföra sig som en DC motor för att sen försöka återta kontrollen på den med en PID regulator. Anledningen till att synkronmotorer är ganska poppulära som servomotorer är att man kan ha stenkoll på läget. Så använd den som en synkronmotor. Skippa pid regleringen.
Millox
Inlägg: 559
Blev medlem: 10 december 2005, 22:10:43
Ort: Östhammar

Inlägg av Millox »

danei: WORD!

JBV: kika lite på den nya AT90PWM3. Du har 3 st sk Power Stage Controllers som kan användas för precis det du vill. De har 12 bitars upplösning, programmerbara dödtider och går från en intern pll på 64 MHz.

Använder du inte för hög spänning (upp till 20 V eller så) kan du enkelt koppla in alla drivtransistorer via vanliga n/p-kanals transistorer(typ irf 7102) direkt på utgången från µC:n.

För att komma igång snabbt:
http://www.atmel.com/dyn/products/tools ... ol_id=3764
http://www.atmel.com/dyn/products/tools ... ol_id=3901

De kan även vara bra att ha för de som bygger h-bryggor, för en av de 2 psc:erna har 4 utgångar (istf 2 som de båda andra har) anpassade för just detta ändamål.

Kolla sid 129 och framåt:
http://www.atmel.com/dyn/resources/prod ... oc4317.pdf
danei
EF Sponsor
Inlägg: 27583
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Millox: :?:
Millox
Inlägg: 559
Blev medlem: 10 december 2005, 22:10:43
Ort: Östhammar

Inlägg av Millox »

Jag bara höll med om att det är dunderonödigt att kontrollera en synkronmaskin som en dc-motor. Precis som du säger förlorar man ju hela precisionen...
danei
EF Sponsor
Inlägg: 27583
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Okej då är jag med.
JBV
Inlägg: 411
Blev medlem: 4 maj 2006, 11:44:28
Ort: Älvsbyn

Inlägg av JBV »

Hur fungerar en sådan styrning? Är inte så insatt, men jag har funderat på om det gick bestämma en vinkel man vill ha på motorn och sen anpassa polerna för att få den magnetiska vektorn!? Tänker jag rätt om att man borde kunna justera vektorn med 12 bitars precision * 3 = 12288 steg per elektriskt varv? Eller det dubbla per mekaniskt varv med 4 polig rotor!? Är det detta ni talar om? :)

Var som inställd på att köra closed loop med enkoder.. Men enklast och billigast = bäst!
danei
EF Sponsor
Inlägg: 27583
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Nej det var snarare hela steg jag tänkte mig. det blir väl en upplösnign på 1/6varv med 4 poler.
JBV
Inlägg: 411
Blev medlem: 4 maj 2006, 11:44:28
Ort: Älvsbyn

Inlägg av JBV »

:shock: Med 5:1 utväxling får jag upplösning på 0,06666 mm, allt över en tusendel är ju otänkbart ;)
danei
EF Sponsor
Inlägg: 27583
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Nä. Men 3/10 varv.
Användarvisningsbild
Chribbe76
EF Sponsor
Inlägg: 1167
Blev medlem: 17 januari 2004, 22:43:17
Ort: Stockholm

Inlägg av Chribbe76 »

Om danei menar att du ska skippa encodern så är han ute och cyklar.
Självklart ska du använda encoder och köra PID-reglering.
Använder man digitala halleffekt-sensorer för kommutering så agerar motorn som en dc-motor och det är inget fel med det när man ändå ska servostyra den.

Det man ska vara medveten om när man styr en motor med enbart PID baserat på positions-felet är att motorn släpar efter när den accelererar, ju högre upplösning encodern har desto mindre släpar motorn efter för att man kan trimma kontrollern hårdare.
Har man oändligt hög upplösning på encodern så är det fördröjningen genom servoloopen som sätter gränsen för hur hårt man kan trimma den.
Men det där vet du ju redan för du har ju deltagit i min servo-tråd. :wink:
JBV
Inlägg: 411
Blev medlem: 4 maj 2006, 11:44:28
Ort: Älvsbyn

Inlägg av JBV »

Hehe japp :) Funderar på om man ska använda nån slags räknare för att kunna använda en billigare µC... Vad skulle man behöva för att kunna hålla koll på en quadruature enkoder? Skulle en sån här passa? http://www.elfa.se/elfa-bin/dyndok.pl?dok=2013149.htm
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Vad skulle man behöva för att kunna hålla koll på en quadruature enkoder?

En µC med två ingångar och en timer, eventuellt även interruptmöjlighet på dessa ingångar. Det behövs ingen extra hårdvara om du ändå har en µC för att generera PWM.
JBV
Inlägg: 411
Blev medlem: 4 maj 2006, 11:44:28
Ort: Älvsbyn

Inlägg av JBV »

Aha.. dåså :) Jag hade fått för mig att det var ganska krävande i högre hastigheter..
danei
EF Sponsor
Inlägg: 27583
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

Chribbe76: vad jag menade är att man inte ska använda en krets som ger ett varvtal ut med en analog insignal. Om du läser mitt inlägg så förstår du nog vad jag menar.
Skriv svar