„AUTOSAR alapú autóipari szoftverrendszerek” változatai közötti eltérés

2017-es zárthelyi feladatok
36. sor: 36. sor:


A labor során egy olyan fejlesztőpanelt használhattok, amin helyet kapott egy DC motor is mely az elektromos autó meghajtó motorját jelképezi. A feladat ennek a motornak az intelligens vezérlése köré épül.
A labor során egy olyan fejlesztőpanelt használhattok, amin helyet kapott egy DC motor is mely az elektromos autó meghajtó motorját jelképezi. A feladat ennek a motornak az intelligens vezérlése köré épül.
==Zárthelyik==
{{Rejtett | mutatott='''2017''' | szöveg=
A kérdések kidolgozására 45 perc áll rendelkezésre. Összesen öt kérdést kell megválaszolni egyenként 10 (együtt 50) pontért. A kérdésekre kifejtős, de lényegre törő válaszokat várunk.
<ol>
<li> Mutassa ba az AUTOSAR három pillérét! Mit a tartalma az egyes részeknek? </li>
<li> Definiálja röviden a következő fogalmakat: szoftver komponens, port és interfész (térjen ki a felkínált (provided) és megkövetelt (required) port, illetve a sender-receiver és client-server interfész közötti különbségekre)! </li>
<li> Szeretné AUTOSAR komponensekkel modellezni, majd megvalósítani az alább leírt egyszerű elektromotort szabályozó rendszert. <br /> A rendszer négy fő ''komponensből'' áll: <br />
<ul>
<li> A motor szabályozó algoritmust megvalósító ''MotorController'' </li>
<li> A teljesítmény elektronika hőmérsékletét mérő ''Thermometer'' </li>
<li> Az elektromotor kivezetéseinek meghajtásáért felelős ''InverterDriver'' </li>
<li> A rendszerben fellépő hibákat naplózó és azonnali beavatkozást igénylő helyzeteket kezelő ''ErrorHandler'' </li>
</ul>
A komponensek között az alábbi kapcsolatok állnak fenn:
<ul>
<li> A ''Thermometer'' másodpercenként elküldi a teljesítményelektronika hőmérsékletét a ''MotorController''nek. </li>
<li> A ''Thermometer'' tudja jelezni az ''ErrorHandler''nek, ha valamiért nem sikerült a kommunikáció a hőmérő chipper (ez nem kritikus probléma, elég naplózni). </li>
<li> A ''MotorController'' egy porton fogadja az elérendő motor nyomatékot (ezt a járműbuszról kapja, a referencia jel forrásának további modellezése nem szükséges). </li>
<li> A ''MotorController'' a bejövő nyomaték kérés alapján milliszekundumonként kiszámolja a referencia áramerősségeket és elküldi az ''InverterDriver''nek. </li>
<li> A ''MotorController'' tudja jelezni az ''Errorhandler''nek, ha érvénytelen bementetet kapott (nem hihető hőmérséklet, vagy nominális határokon kívül eső nyomaték kérés), ezek nem kritikus problémák, elég naplózni. </li>
<li> Az ''InverterDriver'' a ''MotorController''től kapott referencia áramerősségek alapján kiszámolja a kiadandó pulzusszélesség modulált jelet (ez utóbbit nem szükséges modellezni, úgy tekintjük, hogy az ''InverterDriver'' egy komplex device driver, közvetlenül írja a mikrovezérlő PWM perifériáját). </li>
<li> Az ''InverterDriver'' képes detektálni a teljesítmény elektronikában fellépő rövidzárlatokat, amelyek esetén azonnal le kell állítani a rendszert, ezt nem közvetlenül végzi, hanem az ''ErrorHandler''en keresztül. </li>
</ul>
Végezze el a következő statikus modellezési feladatokat:
<ul>
<li> Rajzolja fel a négy ''komponenst'' a fent használt nevekkel az AUOTSAR szokásos jelöléseinek megfelelően. </li>
<li> Tűntesse fel a komponensek ''portjait'' és adjon nekik nevet. </li>
<li> Döntse el, hogy a fent felsorolt kommunikációs csatornák közül melyiket célszerű sender-receiver és melyiket client-server elven megvalósítani és a ''portok ikonjaiban'' jelölje ezt. </li>
<li> ''Kösse össze'' a komponensek portjait a fent vázoltaknak megfelelően. </li>
<li> Az ábra alatt szövegesen sorolja fel, hogy az egyes portok ''milyen interfészeket'' valósítanak meg és ezen interfészek milyen ''adatelemeket'' vagy ''műveleteket'' tartalmaznak. </li>
</ul>
Válaszoljon a következő ''dinamikus modellezést'' illető kérdésekre:
<ul>
<li> Milyen ''eseménnyel'' célszerű troggerelni a szabályozó algoritmust megvalósító ''MotorController'' egyetlen futtatható entitását? Mely portokon mely adatelemekhez kell írási hozzáférést adnunk ennek a futtatható entitásnak? </li>
</ul>
Az ''ErrorHandler'' komponensnek két futtatható entitása van, az egyik a naplózandó üzenetek feldolgozását, a másik az azonnali beavatkozást igénylő hibajelzések feldolgozását végzi. Milyen ''eseménnyel'' célszerű troggerelni ezeket a futtatható entitásokat?
<li> Tegyük fel, hogy egy külső eszköz (TOOL) és egy vezérlőegység (ECU) a CAN transport Protocol használatával kommunikálnak egymással. A TOOL egy hibakódot és hozzá tartozó egyéb információkat szeretne kiolvasni a vezérlőegységből. A kérdés egyértelműen elfér egy üzenetben, míg az arra adódó válasz összesen 4 keret átvitelét igényli. Ábrázolja szekvencia diagramon a két egység közötti kommunikációt! Az ábrán jelölje a keretek típusát és lényeges paramétereit! Milyen mechanizmust alkalmaz a CAN Transport protocol a keretek felcserélődésének, kimaradásának észlelésére? </li>
<li> Az ECU konfigurációs paraméterének (meghatározásuk időpontja szerint) milyen osztályait definiálja a szabvány? Jellemezze röviden az egyes osztályokat! </li>
</ol>
}}


==Céglátogatás==
==Céglátogatás==