Sammenlikning av simuleringsverktøy for reguleringsteknikk Presentasjon ved NFA-dagene 28.-29.4 2010 Sammenlikning av simuleringsverktøy for reguleringsteknikk Av Finn Haugen (finn.haugen@hit.no) Høgskolen i Telemark
Innhold: Eksempler på min egen bruk av simuleringsverktøy Industriprosjekt: Posisjonsregulering av luftaktuert undervanns løftesystem Opplæring: MPC-regulering av varmluftprosess Opplæring: Simuleringsbiblioteket SimView Noen aktuelle verktøy LabVIEW Simulink Scicos Dymola Oppsummering
Design Ufarlig testing Billig testing Opplæring Hvorfor simulere? Design Ufarlig testing Billig testing Opplæring
Innhold: Eksempler på min egen bruk av simuleringsverktøy Industriprosjekt: Posisjonsregulering av luftaktuert undervanns løftesystem Opplæring: MPC-regulering av varmluftprosess Opplæring: Simuleringsbiblioteket SimView Noen aktuelle verktøy LabVIEW Simulink Scicos Dymola Oppsummering
Løftebag (her utenfor vanntanken) Posisjonsregulering av eksperimentelt luftaktuert undervanns løftesystem Løftebag (her utenfor vanntanken)
Massebalanse for luft: Prosessmodell: Newtons 2. lov: Massebalanse for luft:
Reguleringssystemet: PI-regulatorparametre for C1 og C2 ble beregnet fra modell (med Skogestads metode), og systemet ble simulert i LabVIEW.
Simulering av løftesystemet (Simulering ble kjørt under foredraget.)
Virkelige responser (fra sommeren 2009) Regulatoren som ble designet fra modellen og bekreftet i simuleringer, fungerte med én gang på laben! (Et rørende øyeblikk…) Til høyre er virkelige responser, på det fysiske systemet (forholdene er riktignok ikke eksakt de samme som for simuleringene vist på forrige slide):
Video fra eksperiment (sommeren 2009) Løftebagen holdes stabilt på (nær) posisjonsreferansen:
Innhold: Eksempler på min egen bruk av simuleringsverktøy Industriprosjekt: Posisjonsregulering av luftaktuert undervanns løftesystem Opplæring: MPC-regulering av varmluftprosess Opplæring: Simuleringsbiblioteket SimView Noen aktuelle verktøy LabVIEW Simulink Scicos Dymola Oppsummering
MPC-regulering av varmluftprosess Studentoppgave i masterutdanningen ved HiT: Temperaturregulering med MPC.
Model-based Predictive Control (MPC): The Control Design and Simulation module of LabVIEW contains an MPC controller Process model: Optimization criterion: Constraints: (Figures from user manual of Control Design and Simulation module)
Matematisk modellering av varmluftprosessen Prosessmodellen trengs i MPC-regulatoren. Modellen skal også benyttes til simulatorbasert utprøving av reguleringssystemet. Prosessens sprangrespons tyder på “tidskonstant med dødtid”: Prosessens sprangrespons: Forsterkning = 3,5 Tidskonstant = 22 sek Sprang i styresignalet: Tidsforsinkelse = 2 sek
Verifikasjon av modellen, og muligens fin-tuning av modellparametrene, kan gjøres ved å kjøre en simulator i parallell med den fysiske prosessen: Det er meget god overensstemmelse mellom virkelig og simulert temperaturrespons. Dette viser at modellen er god (nøyaktig). Kan også bruke funksjoner fra systemidentifikasjon for å finne en modell automatisk…
Er simulerte og virkelige responser like? Simuleringer ble kjørt under foredraget, mens virkelige responser er fra et tidligere eksperiment. La oss se om responsene er like…
Simulert og virkelig respons er veldig like. Følging av sprangprofil med PI-regulator Simulert respons: Virkelig respons: Simulert og virkelig respons er veldig like.
Simulert og virkelig respons er veldig like. Følging av sprangprofil med MPC-regulator Simulert respons: Virkelig respons: Simulert og virkelig respons er veldig like.
Simulert og virkelig respons er veldig like. Følging av rampeprofil med PI-regulator Simulert respons: Virkelig respons: Simulert og virkelig respons er veldig like.
Simulert og virkelig respons er veldig like. Følging av rampeprofil med MPC-regulator Simulert respons: Virkelig respons: Simulert og virkelig respons er veldig like.
Vi har sett at simulerte og virkelige respons er veldig like. Simulatorbasert utprøving gir altså nøyaktige resultater! (…Når modellen er nøyaktig.)
Innhold: Eksempler på min egen bruk av simuleringsverktøy Industriprosjekt: Posisjonsregulering av luftaktuert undervanns løftesystem Opplæring: MPC-regulering av varmluftprosess Opplæring: Simuleringsbiblioteket SimView Noen aktuelle verktøy LabVIEW Simulink Scicos Dymola Oppsummering
Simuleringsbiblioteket SimView (for undervisning) 47 simulatorer for dynamiske systemer, reguleringsteknikk og signalbehandling utviklet i LabVIEW. Fritt tilgjengelige fra http://techteach.no/simview Krever kun at LabVIEW Run-time Engine (gratis) er installert.
En del av simulatorene i SimView:
Eksempel: Simulering av PID-nivåreguleringssystem
Eksempel: Simulering av sekvensstyring
Innhold: Eksempler på min egen bruk av simuleringsverktøy Industriprosjekt: Posisjonsregulering av luftaktuert undervanns løftesystem Opplæring: MPC-regulering av varmluftprosess Opplæring: Simuleringsbiblioteket SimView Noen aktuelle verktøy LabVIEW Simulink Scicos Dymola Oppsummering
Ref = sprang (amplitude 1) Skal simulere følgende reguleringssystem (i LabVIEW, Simulink og Scicos): Kp = 0,5 Ti = 1 Td=0 K = 1 T = 1 Tau = 1 PI-regulator Tidskonstant med dødtid Ref = sprang (amplitude 1)
Produseres av National Instruments (ni.com). LabVIEW Utviklingsverktøy for hovedsakelig PC-baserte systemer for styring og måling, inkl. signalbehandling og simulering. Produseres av National Instruments (ni.com). Programmeringen er grafisk, dvs. med funksjonsblokker som koples sammen. Control Design and Simulation Module i LabVIEW inneholder funksjoner for simulering av dynamiske systemer (a la Simulink). Info om simulatorutvikling i LabVIEW fins bl.a. på http://techteach.no.
Noen blokker på Simulation-paletten i LabVIEW
Programmets frontpanel (brukergrensesnitt): Eksempel: PID-reguleringssystem for simulert prosess bestående av tidskonstant og dødtid Programmets frontpanel (brukergrensesnitt):
Eksempel forts: Programmets blokkdiagram
Simulink Simuleringsverktøy basert på blokkdiagramrepresentasjon av matematisk modell. Produseres av The Mathworks (mathworks.com). Forutsetter at Matlab er installert. Info om simulatorutvikling med Simulink fins bl.a. på http://techteach.no.
Blokkbiblioteket i Simulink
Eksempel (Simulink): PID-reguleringssystem for simulert prosess bestående av tidskonstant og dødtid Parameterverdier kan enten skrives rett inn i blokkenes parametervindu eller generes som variable i et Matlab-skript.
Scicos Simuleringsverktøy basert på blokkdiagramrepresentasjon av matematisk modell. (Likner på Simulink.) Gratis! Info om simulatorutvikling med Scicos fins bl.a. på http://techteach.no.
Scicos: Paletter med modell- og funksjonsblokker
Eksempel (Scicos): PID-reguleringssystem for simulert prosess bestående av tidskonstant og dødtid Parameterverdier kan enten skrives rett inn i blokkenes parametervindu eller genereres som variable i et skriptvindu (kalt Context).
Dymola Simuleringsverktøy basert på at fysiske komponenter (for eksempel motor, last, gir, signalkilde, vinkelsensor) og funksjonsblokker (for eksempel PID-regulator, lavpassfilter) koples sammen som om det var et fysisk system som skulle bygges. Dymola sørger selv for å manipulere de underliggende matematiske modellene slik at de blir løsbare, bl.a. ved at algebraiske løkker løses. Dymola er en implementering av det standardiserte objektbaserte modelleringsspråket Modelica.
Modellen er bygd opp av komponenter i pakkebiblioteket (til venstre). Eksempel (Dymola): PID-reguleringssystem for simulert posisjonsservo for permanentmagnetisert DC-motor Modellen er bygd opp av komponenter i pakkebiblioteket (til venstre).
Eksempel (Dymola): Simulert posisjonsrespons etter sprang i posisjonsreferansen Hvilke som helst variable i modellen kan plottes i samme eller egne vinduer. Brukeren svitsjer mellom Modeling-modus og Simulation-modus med knappen nede til høyre.
Oppsummering LabVIEW: Meget god funksjonalitet. Lekker GUI. Litt tungvint (må beherske LabVIEW-programmering). Enkelt å kjøre simulering i sann tid eller I skalert tid. Simulink: Meget god funksjonalitet. Enkelt å bruke. Sanntidssimulering krever Real-time Workshop. Scicos: Ok funksjonalitet. Enkelt. Gratis! Sanntidssimulering mulig. Dymola: God funksjonalitet. Ferdiglagde fysikkbaserte modellobjekter som kan koples sammen, uten å tenke på matematikken. Krever meget god modellinnsikt for å vite hva de mange parametrene i modellblokkene betyr. Sanntidssimulering er mulig.