Megoldástervezés és -kiválasztás előkészítése
Az ipari vezérlésben a szervovezérlők kulcsfontosságúak a motorok meghajtásához olyan alkalmazásokban, amelyek pontos pozicionálást és vezérlést igényelnek. Ez a megközelítés különösen alkalmas olyan alkalmazásokhoz, amelyek a motor forgásának precíz szabályozását vagy a berendezés meghatározott pozíciókba való mozgatását igénylik. A hajtásvezérlés alapelveinek alapos ismerete elengedhetetlen a kiválasztási folyamat megkezdése előtt.
Létre kell hoznunk egy PWM hullámformát és ki kell adni egy DIR jelet. A megfelelő szervo-illesztőprogram-modell, például a T3a/T3L sorozat kiválasztása jelentős költség-teljesítményelőnyt kínál. A PWM hullámforma fejlett időzítőkkel (például TIM1/TIM8) valósítható meg, amelyek támogatják a kiegészítő kimenetet és a holtidő-vezérlést, így ideálisak H-hidak vezetésére. Továbbá a kódoló visszacsatoló jele a TIM2/TIM3/TIM4/TIM5 használatával is beszerezhető az inkrementális jeladó ABZ jelének olvasásához.
PWM hullámforma generálás és szervo hajtás algoritmus megvalósítása
A PWM frekvenciát általában 10-20 kHz között választják meg a hallható zaj elkerülése és a kapcsolási veszteségek csökkentése érdekében. A PWM hullámforma generálásához egyszerűen inicializálhatjuk a TIM időzítőt a cubemx eszközzel. Az alábbiakban egy példa látható egy PWM inicializálási kódrészletre, példaként a TIM1 1. csatornára:
htim1.Példány=TIM1;
htim1.Init.Prescaler=0;
htim1.Init.CounterMode=TIM_COUNTERMODE_UP;
htim1.Init.Period=8399; // Állítsa be a PWM frekvenciát 20 kHz-re.
htim1.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;
HAL_TIM_PWM_Init(&htim1);
TIM_OC_InitTypeDef sConfigOC;
sConfigOC.OCMode=TIM_OCMODE_PWM1;
sConfigOC.Pulse=0; // A kezdeti munkaciklus 0%-ra van állítva
sConfigOC.OCPolarity=TIM_OCPOLARITY_HIGH;
HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1);
Megbeszéljük a szervovezérlési algoritmus megvalósítását. A szervovezérlés jellemzően egy három-hurkos vezérlési stratégián alapul: pozíció, sebesség és áram. Ez a stratégia biztosítja, hogy a rendszer pontosan tudja vezérelni a szervomotort a pozícióból, sebességből és áramerősségből származó visszacsatolás alapján.
A PID vezérlő arányos, integrál és derivált vezérlést hajt végre hibaszámítással, hogy PWM jelet generáljon. Egy időzítő megszakításnál kiolvassuk a kódoló pozícióját, kiszámítjuk a hibát, és meghívjuk a PID_Update függvényt a helyzet- és fordulatszám-szabályozók frissítéséhez. Végül az aktuális parancs alapján a PWM jel munkaciklusát úgy állítják be, hogy a szervomotor precíz vezérlését elérjék.
A kulcsparaméterek beállításakor átfogóan figyelembe kell venni a rendszer dinamikus jellemzőit, stabilitását és reakciósebességét:
- Pozícióhurok paramétereinek beállítása: Először fokozatosan állítsa be a Kp értéket, amíg a rendszer enyhe oszcillációt nem kezd mutatni, majd állítsa be a kritikus érték 60%-ára a rendszer stabilitásának és válaszsebességének biztosítása érdekében.
- Sebességhurok tervezési szempontok: A sebességhurok sávszélessége általában a pozícióhurok sávszélessége 5-10-szerese a gyors és pontos sebességszabályozás biztosítása érdekében.
- Áramhurok feldolgozása: Az áramhurok válaszideje általában a leggyorsabb, és a legtöbb esetben ezt a feldolgozást a szervovezérlő automatikusan belsőleg kezeli.
A hardver- és szoftvertervezési folyamat során alapvető fontosságú a különféle lehetséges interferencia-tényezők kezelésére szolgáló intézkedések teljes körű mérlegelése és végrehajtása a rendszer stabilitásának és megbízhatóságának biztosítása érdekében. A NYÁK tervezési fázisában kulcsfontosságú a motor tápegységének és a jelföldelésnek a hatékony szétválasztása, egyetlen-pontos földelési módszer alkalmazásával. Ezenkívül csavart-párú vagy árnyékolt kábeleket kell használni a PWM-jelvonalakhoz a jelinterferencia-elhárító képességek javítása érdekében. A kódoló jelbemenetéhez egy RC szűrőáramkör (például egy 100 Ω-os ellenállás és egy 100 pF-os kondenzátor kombinációja) javasolt a zaj kiszűrésére.
A szoftvertervezés során különös figyelmet kell fordítani a jeladó leolvasásainak zajtalanítására. Mozgóátlag szűrési algoritmus javasolt a zaj rendszerteljesítményre gyakorolt hatásának minimalizálása érdekében.
Építsük meg szervórendszerét
