Lego-servokäytön kokeellinen mallinnus ja säätö
Ruusila, Arttu (2020)
Kandidaatintyö
Ruusila, Arttu
2020
School of Energy Systems, Sähkötekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2020092575825
https://urn.fi/URN:NBN:fi-fe2020092575825
Tiivistelmä
Työn tavoitteena oli määrittää kokeellisesti ohjelmoitavan LEGO® MINDSTORMS® EV3™ -robotin servomoottorille ensimmäisen kertaluvun viivästetty siirtofunktio ja virittää systeemille PI-säädin. Siirtofunktion identifiointi suoritettiin tangenttimenetelmällä sekä MATLAB®-algoritmia käyttäen askelkokeiden perusteella. Robottia ohjelmoitiin ja kokeet suoritettiin Simulink®-ympäristössä. Työssä tehtyä Simulink®-mallia ja tuloksia voidaan hyödyntää säätötekniikan luentodemona.
Simulink®-mallin avulla servomoottorille muodostettiin kokeellisesti taajuusvaste sekä suoritettiin askelkokeita. Askelkokeiden tulosten perusteella servomoottorille viritettiin PI-säädin Ziegler-Nicholsin, Chien, Hronesin ja Reswickin sekä Lambda-menetelmillä. Säätimet viritettiin kaikilla menetelmillä käyttäen sekä tangenttimenetelmän että MATLAB®-algoritmin parametreja.
Molemmilla menetelmillä identifioidut siirtofunktiot vastasivat hyvin tutkittavan järjestelmän dynamiikkaa. Lopullinen PI-säätimen viritys tehtiin Lambda-menetelmällä, koska menetelmä tuotti systeemiin pienimmän ylityksen ja vähiten värähtelyä. The objective of this thesis was to determine experimentally a first order delayed transfer function for programmable LEGO® MINDSTORMS® EV3™ -robot’s servomotor and tune a PI-controller for the system. Identification of transfer function was made based on executed step response tests using tangent method and MATLAB®-algorithm. Programming of the robot and executing of tests was done in Simulink®-environment. Made Simulink®-model and results can be utilized as a control systems course example.
Using Simulink®-model, a frequency response was formed experimentally for servomotor and step response experiments were made. Based on step response tests results, the PI-controller was tuned using Ziegler-Nichols’ and Chien, Hrones and Reswick’s methods as well as Lambda tuning. Controllers were tuned using all different methods based on both tangent method’s and MATLAB®-algorithm’s parameters.
Both identification methods that were used resulted transfer functions which corresponded well the dynamics of examined system. Final tuning of PI-controller was made using lambda tuning with algorithm’s parameters, as it resulted smallest overshoot and least oscillation to the system.
Simulink®-mallin avulla servomoottorille muodostettiin kokeellisesti taajuusvaste sekä suoritettiin askelkokeita. Askelkokeiden tulosten perusteella servomoottorille viritettiin PI-säädin Ziegler-Nicholsin, Chien, Hronesin ja Reswickin sekä Lambda-menetelmillä. Säätimet viritettiin kaikilla menetelmillä käyttäen sekä tangenttimenetelmän että MATLAB®-algoritmin parametreja.
Molemmilla menetelmillä identifioidut siirtofunktiot vastasivat hyvin tutkittavan järjestelmän dynamiikkaa. Lopullinen PI-säätimen viritys tehtiin Lambda-menetelmällä, koska menetelmä tuotti systeemiin pienimmän ylityksen ja vähiten värähtelyä.
Using Simulink®-model, a frequency response was formed experimentally for servomotor and step response experiments were made. Based on step response tests results, the PI-controller was tuned using Ziegler-Nichols’ and Chien, Hrones and Reswick’s methods as well as Lambda tuning. Controllers were tuned using all different methods based on both tangent method’s and MATLAB®-algorithm’s parameters.
Both identification methods that were used resulted transfer functions which corresponded well the dynamics of examined system. Final tuning of PI-controller was made using lambda tuning with algorithm’s parameters, as it resulted smallest overshoot and least oscillation to the system.