Az s-függvények alkalmazása a szimulinkben, 2. oldal

Az S-függvények speciális lekérdezési szintaxist használnak, amely lehetővé teszi a Simulink-egyenletek megoldójával való interakciót. Ez a kölcsönhatás nagyon hasonlít a megoldók és a beépített Simulink blokkok közötti kölcsönhatásra. Az S-függvény formája nagyon általános és leírhat folyamatos, diszkrét és hibrid rendszereket.

Az S-funkciók használata a Modelleken

Az S-funkció engedélyezéséhez a Simulink modellben húzza az S-Function blokkot a Funkció és táblázatok Simulink könyvtárból a modellhez. Ezután adja meg az S-funkció nevét az S-Function párbeszédablak S-funkciómezőjében, ahogy az az alábbi ábrán látható.

Az s-függvények alkalmazása a szimulinkben, 2. oldal

1-1. Ábra: Az S-függvényblokk, a párbeszédpanel és a forrásfájl közötti kapcsolatok, amelyek meghatározzák a blokk működését

Ha az S-funkciót szeretné használni

Az S-függvények leggyakoribb használata egyedi testreszabott Simulink blokkok létrehozása. Az S-függvényeket számos alkalmazáshoz használhatja, többek között:

  • Új Simulink Univerzális Egységek hozzáadása
  • A hardvereszköz-illesztőprogramokat képviselő blokkok hozzáadása
  • A meglévő C-kód bevonása a modellezésbe, leírva a rendszert matematikai egyenletkészleteként
  • Grafikus animációk használata

Az S-függvények használatának előnye, hogy olyan univerzális blokkot állíthat be, amelyet sokszor használhat a modellben, és a paramétereket minden egyes blokk mintával megváltoztathatja.

Ebben a példában a modell az S-Function blokk két mintáját tartalmazza. A blokkok mindkét linkje ugyanazt a forrásfájlt (mysfun, amely lehet C MEX-FILE vagy M-fájl). Ha mind a C MEX fájl, mind az M-fájl ugyanazt a nevet viseli, a C MEX fájl elsőbbséget élvez és az S-függvény által használt fájl.

Az S-funkciók működése

Az S-funkciók létrehozásához tudnia kell, hogyan működnek az S-funkciók. Megérteni, hogy az S-funkciók munkája megköveteli-e a modell modellezésének módját, ez pedig megkívánja a blokkok matematikájának megértését. Ez a rész ezért a blokkbemenetek, állapotok és kimenetek közötti matematikai kapcsolatok magyarázatával kezdődik.

A Simulink blokkok matematikája

A Simulink blokk bemenetekből, államokból és kimenetekből áll, ahol a kimenetek a jellemző idő, bemenetek és blokkállapotok függvényei.

Az alábbi egyenletek fejezik ki a bemenetek, a kimenetek és az állapotok közötti matematikai kapcsolatot.

Az s-függvények alkalmazása a szimulinkben, 2. oldal

A modellezés lépései

A Simulink lépésről lépésre elvégzi a szimulációt.

Először is megkezdődik az inicializálási fázis. Ebben a szakaszban a Simulink könyvtárblokkokat tartalmaz a modellben, megszorozza a méretet, az adattípusokat, meghatározza a mintavételi időt, értékeli a blokk paramétereket, meghatározza a végrehajtás blokkrendjét, és elosztja a memóriát.

A Simulink majd a szimulációs ciklushoz folytatódik, ahol a hurokon átmenő minden egyes szimulációs lépés. Minden egyes szimulációs lépés során a Simulink végrehajtja az egyes modellblokkokat az inicializálás során megadott sorrendben. Minden egyes blokk esetében a Simulink hívja a visszahívási modell függvényeit, amelyek a blokkállapotokat, a származékokat és a kimeneteket számolják az aktuális mintavételi időhöz. Ez addig folytatódik, amíg a szimuláció befejeződik.

Az alábbi ábra szemlélteti a modellezés szakaszát.

Az s-függvények alkalmazása a szimulinkben, 2. oldal

1-2. Ábra: Hogyan működik a Simulink a szimuláció?

A visszahívási módok S-funkciói

Az S-függvény tartalmaz egy visszahívási módot az S-függvény számára. amelyek a modellezés minden egyes szakaszában megkövetelik a szükséges feladatokat. A modellszimuláció során a Simulink minden egyes szimulációs fázisban az S-f függvény minden egyes blokkjának megfelelő módszert hívja fel a modellben. Az S-függvények által végrehajtott feladatok a következők: