Okos Város Laboratórium (2016 - 2019)

Szemeszter: 
2015/2016 2. félév (tavasz)

Általános tudnivalók

A tárgy első órarendi órája előreláthatólag - az órarend jelenlegi változata szerint - 2016. február 16-án, kedden az Informatika épület IB.210-es termében lesz 10:00-kor. Ekkor mérést nem tartunk, csak egy rövid tájékoztatást adunk az egyes mérésekről és a félév menetéről.

A mérések a 2. oktatási héten indulnak. Az 5. oktatási héten a mérés időpontja munkaszüneti napra esik. A mérések egységesen keddenként 8.30-kor kezdődnek.

Csoportbeosztás

A hallgatók mérőpárokat alkotnak. A mérőpárok a méréseket különböző időpontokban, előre megbeszélt beosztás szerint végzik el.

Gyakorlatok

1. MATSim szimulációs keretrendszer

A MATSim egy Java nyelven készült, nyílt forráskódú forgalomszimulációs keretrendszer. A mérés a modell szemléletét és a szimulátor használatát mutatja be. A mérés során először konfigurációs file-ok segítségével készítenek szimulációt a hallgatók, majd példákon keresztül megismerkednek a programokódból való konfiguráció generálással és futtatással.

A mérés elvégzéséhez alapvető Linux ismeretek, az XML és a Java nyelv szintaktikájának ismerete szükséges, de nem épít a Java standard könyvtárak ismeretére.

Mérési segédlet

Mérési feladatok

2.  Mikrokontroller modulok programozása, kommunikáció - IoT 1.

Az okos város alkalmazások legtöbbje szenzor, beavatkozó alkalmazások és szolgáltatások kommunikációjára épül. Ahogy az alkalmazás, úgy a kommunikáció is sokféle lehet, más más alkalmazás másfajta kommunikációt kíván. Előtérbe kerülnek az Internet of Things IoT alkalmazások. Itt a dolgok az Internet segítségével kommunikálnak egymással, valamint az Interneten keresztül tudás épül az alkalmazás adatokból. Az IoT persze több a kommunikációnál, de ezen a mérésen az IoT lánc kommunikációs részét fogjuk csak megvizsgálni: a szenzorok adatokat küldenek és a beavatkozók adatokat fogadnak, mindezt egy IoT platfromon keresztül.

A mérés során mikrokontrollereket programozunk, hogy szenzor értékeket olvassanak és küldjék el az Internetre, illetve figyeljék az Internetet és vezéreljék a kimeneti egységeket.

A mérés elvégzéséhez szükséges C/C++ programozási imseret, bár alapvetően példaprogramokkal dolgozunk. A méréshez szintén szükséges felhasználói regisztráció a következő szerverekhez:

  • myDevices.com

A modulok illesztéséhez a hallgatónak ismernie kell a következő protokollokat: Analóg, digitális illesztés, USART, I2C, SPI. Ezen kívül ismernie kell az MQTT protokollt. Az ismeretekből a mérés elején tesztkérdésekre lehet számítani! A felkészüléshez szükséges anyag az útmutatóban található.

Mérési feladatok angolul

3. IoT platform használata - IoT 2.

A korábbi mérés során a hallgatók elkészítik azt a kommunikációt, amely segítségével a szenzor által mért adatok eljuttathatóak az Interneten lévő IoT szolgáltatáshoz, illetve az IoT szolgáltatás parancsait lehet elküldeni az aktuátornak. Ezen a mérésen az IoT platform szolgáltatásaival kapcsolatban lesznek feladatok. Egy adott IoT platformon kell adatelemzést és vizualizációs feladatokat megoldani, illetve a platformon kiszámolt és tárolt adatokat okostelefonra küldeni.

A kiválasztott platfrom a ThingSpeak. A mérés során az adatelemzést és a vizualizációt a Matlab program segítségével végezzük, amely a kiválasztott platform része. Szükséges tehát a Matlab ismeretek felelevenítése. 

Mérési feladatok angolul

4. Szimuláció ROS és Gazebo környezetben

A mérés során a hallgatók, egy a Robot Operating System és a Gazebo használatával szimulált közepes méretű Husky robotautót kell vezérelniük egy épületen keresztül. Ezenkívül a robotot módosítni is kell, további szenzorokat kell hozzáadni: kamera, LIDAR, GPS.

Mérési segédlet

Mérési feladatok

 

5. Kiterjesztett valóság alkalmazások

A mérés során a hallgatók egy, az MTVA Rádió és Televíziótörténeti Kiállítóhelyen láthatóhoz hasonló múzeumi kiterjesztett valóság alkalmazást készítenek el, amely a virtuális tartalmak megjelenítése mellett beszédtechnológiát (gépi szövegfelolvasást) is alkalmaz. Minden felkészülési anyag és a mérési útmutató a http://smartlab.tmit.bme.hu/csapo/AR/ címen érhető el.

6. Gesztusvezérlés

A hallgatók feladata a mérés során egy webkamera gesztusokkal történő vezérlésének megvalósítása. A mérés során rendelkezésre áll egy telepített IP-n keresztül elérhető és vezérelhető webkamera, és egy Leap Motion eszköz, amely alkalmas az ujjak, kezek, karok követésére és ezekkel megvalósított gesztusok azonosítására. A mérés során meg kell ismerni a webkamera vezérlését és a Leap Motion eszközt és annak programozó interfészét. Ezek segítségével és az Ember-gép interfész tárgy keretében tanult tervezési elveket alkalmazva meg kell tervezni egy gesztus alapú felhasználói interfészt.

A méréshez C++ programozási ismeretek szükségesek.

Mérési segédlet

Mérési feladatok

Ellenőrző kérdések