Irányítórendszerek gyors prototípustervezésének szoftvereszközei

A tantárgy angol neve: Rapid Control Prototyping

Adatlap utolsó módosítása: 2010. november 3.

Tantárgy lejárati dátuma: 2013. január 31.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Mérnök Informatikus Szak

Villamosmérnöki Szak

Szabadon választható tantárgy

 

 

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIIIAV04   2/0/0/f 2  
3. A tantárgyfelelős személy és tanszék Dr. Kiss Bálint,
A tantárgy tanszéki weboldala http://edu.iit.bme.hu
4. A tantárgy előadója
Név:Beosztás:Tanszék, Int.:
Dr. Kiss BálintEgyetemi docensIrányítástechnika és Informatika tanszék
Kovács GáborTudományos segédmunkatársIrányítástechnika és Informatika tanszék
5. A tantárgy az alábbi témakörök ismeretére épít

Szabályozástechnika, méréstechnika, programozás

6. Előtanulmányi rend
Ajánlott:

Kötelező előtanulmányi követelmény: a Szabályozástechnika (kódja VIIIA303 a villamosmérnöki szakon és VIAUA309 a mérnök-informatikus szakon) tárgy kreditjeinek megszerzése

7. A tantárgy célkitűzése

A tantárgy célja, hogy a hallgatók megismerjék az irányítástechnikai és rendszerfelügyeleti célú gyors prototípustervezés (rapid control prototyping) fogalmát, eljárásait és eszközeit, valamint alapvető jártasságot szerezzenek a mérnöki gyakorlatban használt két legelterjedtebb eszközrendszer, a Matlab - Simulink - Real-Time Workshop és a LabVIEW használatában, amely alapján más hasonló fejlesztői környezetek is egyszerűen kézbe vehetők.

A tantárgyat sikerrel teljesítő hallgatók gyakorlati ismeretekkel és készségekkel rendelkeznek a leginkább elterjedt gyors prototípustervező eszközök használatáról, amely tudást irányítástechnikai, méréstechnikai és jelfeldolgozási feladatok megoldása során további tanulmányaik alatt és a mérnöki gyakorlatban is sikeresen alkalmazhatnak.

8. A tantárgy részletes tematikája

1-2. hét (előadások): Haladó Matlab szolgáltatások. Dinamikus rendszerek szimulálása a Simulink eszköz segítségével, a felhasználható numerikus integráló algoritmusok. Dinamikus rendszerek megadása S-függvények segítségével. A Simulink elemek könyvtárstruktúrája, speciális elemeket tartalmazó könyvtárak használata. A szimuláció gyorsításának eszközei: a mex fájlok, a Matlab compiler. A szimuláció vezérlése, HMI-k létrehozása.

3. hét (gyakorlat): Matlab szolgáltatások gyakorlása. S-függvény létrehozása Matlab segítségével, DLL előállítása Matlab függvényből és C függvényből. Egyszerű HMI létrehozása.

4-5. hét (előadások): Az irányítástechnikai célú gyors prototípustervezés alapjai. A prototípus létrehozásának hatékonyságát növelő és költségeit csökkentő komponensek: a hardver és szoftver eszközök újrafelhasználhatósága, az automatikus kódgenerálás folyamata, a hangolást és analízist segítő szolgáltatások (kapcsolat a valós időben futó kóddal, paraméterek változtatása, jelek rögzítése, kísérletvezérlés). Software-in-the-loop és hardware-in-the-loop technikák használata. Fejlesztési esettanulmányok, a DSpace, Quanser és National Instruments hardver komponenseire épülő keretrendszerek bemutatása.

6-7. hét (gyakorlatok): A Simulink használata, I/O-elemek beépítése a diagramba, kapcsolat a fizikai rendszerrel. DSpace és Quanser hardver eszközök használata. Automatikus kódgenerálás, a kód futását felügyelő programok használata, jelek rögzítése és feldolgozása, HMI-k (layout-ok) létrehozása.

8. hét (előadás): Felügyeleti irányítás tervezése. Reaktív, diszkrét idejű és hibrid rendszerek fogalma, a felügyeleti irányítás szerepe. Modellezés véges állapotú automatákon alapuló eszközökkel, a hierarchia és a párhuzamosság szerepe a hatékony modellezésben. A StateCharts irányítástechnikai szemmel. Állapotok, átmenetek, események, feltételek, akciók és aktivitások. Hierarchia és párhuzamosság megvalósítása, történeti pontok.

9. hét (gyakorlat): A Simulink Stateflow modulja, mint a felügyeleti irányítás eszköze. StateCharts diagramok megvalósítása Stateflow-ban, annak kapcsolata a Simulink-modell más részeivel. Események és változók használata, Matlab-kód integrálása a diagramba.

10. hét (előadás): A LabVIEW gyors prototípustervező eszköz. A szorosan integrált szoftver és hardver-platformon alapuló filozófia. A LabVIEW előlap-blokkdiagram architektúrája, a program és a felhasználói felület kapcsolata. A grafikus programozás (G nyelv) elve, változótípusok, programozási struktúrák (elágazás, ciklus, stb.) grafikus megvalósítása. LabVIEW MathScript és Statechart modulok.

11. hét (előadás): Felhasználói felület tervezése LabVIEW környezetben. Fontosabb előlapi elemek, azok kezelése a blokkdiagramban. A LabVIEW könyvtárainak fontosabb elemei, ExpressVI-ok használata. Képfeldolgozás az NI Vision modullal.

12. hét (gyakorlat): Grafikus programozás. Alapvető struktúrák, ciklusok, elágazások használatának gyakorlása. Változótípusok, konverziók, egyszerűbb előlapi elemek és kezelésük.

13. hét (előadás): A National Instruments hardvereszközei. Hozzáférés az eszközök fizikai jeleihez, bemutató NI USB DAQ eszközön. Esettanulmány: Lego Mindstorms robot irányítása LabVIEW környezetben.

14. hét (gyakorlat): Komplex felhasználói felületek tervezése, fontosabb Express VI-ok konfigurálása adott feladathoz. Egyszerű virtuális műszer készítése. A MathScript és Statechart modulok használata. Egyszerű képfeldolgozási feladat megoldása az NI Vision modul segítségével.

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Hetente 2 óra előadás vagy 2 óra számítógéptermi/laboratóriumi gyakorlat az előre meghirdetett ütemezés szerint (amely az aktuális félév időbeosztása miatt módosulhat). A gyakorlati foglalkozásokra egy tanszéki laboratóriumban kerül sor, ahol a szükséges hardver és szoftver eszközök rendelkezésre állnak. A laboratóriumi erőforrások korlátozottsága miatt a tárgyat felvevő hallgatók száma maximált.

10. Követelmények

a.       A szorgalmi időszakban: a félévközi jegy megszerzésének feltétele egy sikeres zárthelyi dolgozat megírása és a félév során kiadott házi feladat írásos és önálló megoldásának eredményes beadása. A félévközi jegy a zárthelyi és a házi feladat osztályzatainak súlyozásával adódik (zárthelyi: 50%, házi feladat: 50%). Eredménytelen zárthelyi vagy eredménytelen házi feladat esetén a hallgató nem kap félévközi jegyet. A házi feladat leadásának ténye nem jelenti annak eredményességét.

b.      A vizsgaidőszakban: nincs

c.       Elővizsga: nincs

11. Pótlási lehetőségek

A zárthelyi pótlására a félév során egy alkalommal lehetőséget biztosítunk. A pótlási héten csak az eredménytelen zárthelyi dolgozatok pótlására biztosítunk lehetőséget egy alkalommal. A házi feladat (otthoni feladat) beadása a pótlási héten különeljárási díj megfizetése mellett is megkísérelhető.

12. Konzultációs lehetőségek

Az oktatók fogadóóráin, illetve hallgatói igény szerint előre egyeztetett időpontban.

13. Jegyzet, tankönyv, felhasználható irodalom

Az előadások fóliái, elektronikus oktatási segédanyagok

http://labviewwiki.org/LabVIEW_tutorial (és az abban található referenciák)

http://www.mathworks.com/academia/student_center/tutorials/launchpad.html (és az abban található referenciák)

Duane C. Hanselman, Bruce L. Littlefield. Mastering MATLAB 7. Prentice Hall, edition, 2004

John Essick. Hands-On Introduction to LabVIEW for Scientists and Engineers. Oxford University Press, 2008

 

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra28
Félévközi készülés órákra8
Felkészülés zárthelyire10
Házi feladat elkészítése14
Kijelölt írásos tananyag elsajátítása-
Vizsgafelkészülés-
Összesen60
15. A tantárgy tematikáját kidolgozta
Név:Beosztás:Tanszék, Int.:
Dr. Kiss Bálintegyetemi docensIrányítástechnika és Informatika tanszék
Kovács Gábortudományos segédmunkatársIrányítástechnika és Informatika tanszék