-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft eine Alarmversatzoptimierungsvorrichtung eines Betriebssystems der offenen Systemarchitektur im Kraftfahrzeugbereich (engl. AUTomotive Open System ARchitecture (AUTOSAR)).
-
Technischer Hintergrund
-
Mit steigender Anzahl an elektronischen Geräten, die in Fahrzeugen zum Einsatz kommen, nimmt auch die Nachfrage nach einer Standardisierung von für die elektronischen Geräte verwendeter Software zu. Dementsprechend wird zur Erhöhung der Wiederverwendbarkeit des Moduls und zur Verbesserung der Kompatibilität einer Komponente für jedes Fahrzeug eine offene Plattform für eingebettete Software auf der Grundlage der offenen Systemarchitektur im Kraftfahrzeugbereich (AUTomotive Open System ARchitecture (AUTOSAR)) entwickelt.
-
Die AUTOSAR-Plattform ist ein Betriebssystem im Bereich der Fahrzeugelektronik und verfügt über einen Mechanismus zur Steuerung eines Betriebs einer Fahrzeugsteuereinheit.
-
Die AUTOSAR-Plattform wird nach und nach an immer mehr Stellen eingesetzt, und ihre nutzbaren Funktionen werden mannigfaltig. Die AUTOSAR-Plattform wurde erweitert und auf die globalen Fahrzeugmärkte angewendet.
-
Bei verschiedenen Fahrzeugsteuereinheiten werden die Funktionen miteinander kombiniert. In der verwandten Technik werden also verschiedene Fahrzeugsteuerfunktionen mittels verschiedener Fahrzeugsteuereinheiten ausgeführt, aber in letzter Zeit wird dies geändert, so dass verschiedene Fahrzeugsteuerfunktionen in einer Fahrzeugsteuereinheit nutzbar sind. Zum Beispiel weist eine Fahrzeugsteuereinheit in der verwandten Technik eine integrierte Karosseriesteuereinheit (engl. Integrated Body Control Unit (IBU)), eine integrierte Zentraleinheit (engl. Integrated Central Unit (ICU)) und dergleichen auf, und sogar die integrierte Art von Steuereinheit wird in eine Kommunikationssteuereinheit (engl. Communication Control Unit (CCU)) integriert.
-
Entsprechend nimmt die Anzahl an Funktionen, die in der einzelnen Fahrzeugsteuereinheit genutzt werden, allmählich zu, und die Software-Ressource ist nicht ausreichend. Wenn die Software-Ressource nicht ausreicht, kann die Fahrzeugsteuereinheit überlastet werden. Ferner kann auch ein Rücksetzen oder ein Phänomen auftreten, bei dem eine Aufgabe, die eigentlich ausgeführt werden sollte, verzögert oder übersprungen wird. Dies ist nicht nur ein Problem der Fahrzeugsteuereinheit, sondern verursacht auch schwerwiegende Fahrzeugdefekte.
-
Zur Lösung des Problems stellt die derzeitige AUTOSAR-Plattform eine Alarmversatzfunktion im Rahmen einer Betriebssystemumgebung bereit.
-
Der Alarmversatz verhindert, dass mehrere Aufgaben bzw. Tasks gleichzeitig ausgeführt werden, indem Alarmpositionen zur Benachrichtigung über den Task-Ausführungszeitpunkt so weit wie möglich verteilt werden, wodurch verhindert wird, dass viele Ressourcen zugewiesen werden. Dies bewirkt, dass verschiedene Tasks problemlos ausgeführt werden.
-
Es ist jedoch in keiner Spezifikation ein Verfahren zur Optimierung des Alarmversatzes definiert.
-
Ein Entwickler von allgemeiner Anwendungssoftware (engl. Application Software (ASW)) stellt einen Alarmversatz aufgrund von Informationen ein, die sich durch viele Erfahrungen angesammelt haben, oder ein Entwickler von Basissoftware (engl. Basic Software (BSW)) stellt einen Alarmversatz anhand von Informationen im Rahmen einer allgemeinen Situation ein.
-
Ein Optimierungswert des Alarmversatzes kann je nach einer bestimmten Fahrzeugsteuereinheit oder einer bestimmten MCU unterschiedlich sein, so dass bei Durchführung der Optimierung des Alarmversatzes für jede Spezifikation der Fahrzeugsteuereinheit ein Phänomen nicht ausreichender Ressourcen unter dem AUTOSAR-Betriebssystem behoben werden kann.
-
Kurzfassung der Erfindung
-
Die vorliegende Erfindung wurde in dem Bestreben gemacht, eine Alarmversatzoptimierungsvorrichtung für ein Betriebssystem der offenen Systemarchitektur im Kraftfahrzeugbereich (AUTomotive Open System ARchitecture (AUTOSAR) zu schaffen, die einen Alarmversatz für jede Spezifikation einer Fahrzeugsteuereinheit optimiert, so dass es möglich ist, eine Task-Ausführungszeit unter einer Echtlaufzeitumgebung schnell zu messen, verglichen mit einer Messung einer Task-Ausführungszeit nacheinander.
-
Eine beispielhafte Ausführungsform der vorliegenden Erfindung stellt eine Vorrichtung zur Optimierung eines Alarmversatzes für ein Betriebssystem der AUTomotive Open System ARchitecture (AUTOSAR-Betriebssystem) bereit, wobei die Vorrichtung Folgendes aufweist: ein Startmodul, das so eingerichtet ist, dass es einen Versatzwert einer vorbestimmten Versatztabelle in einen Versatzvariablenwert für jede Alarminformation einer Alarmeinstellungstestdatei eingibt, und ein Ausführungsmodul, das so eingerichtet ist, dass es die Alarmeinstellungstestdatei anhand des eingegebenen Versatzwertes ausführt und ein Ausführungsergebnis zur Optimierung eines Alarmversatzes ausgibt.
-
Die Versatztabelle kann mehrere Alarminformationen, unter anderem die Anzahl der Alarme, einen Alarmnamen und eine Alarmperiode sowie Indexinformationen enthalten, die über einen Versatzwert mit jeder Alarminformation verbunden sind.
-
Das Startmodul kann den Versatzwert entsprechend den Indexinformationen als Versatzvariablenwert eingeben.
-
Das Ausführungsmodul kann die Alarmeinstellungstestdatei in einer Reihenfolge der Indexinformationen ausführen.
-
Die Vorrichtung kann ferner eine Versatztabellenspeichereinheit aufweisen, die die Versatztabelle speichert.
-
Die Vorrichtung kann ferner ein Lastmessmodul aufweisen, das eine Prozessorlast entsprechend der Ausführung der Alarmeinstellungstestdatei misst.
-
Die Vorrichtung kann ferner ein Rücksetzmodul aufweisen, das eine Rücksetzung vom Ausführungsmodul anfordert, so dass die Alarmeinstellungstestdatei entsprechend einer weiteren Indexinformation ausgeführt wird, wenn die Ausführung der Alarmeinstellungstestdatei entsprechend der Indexinformation abgeschlossen ist.
-
Das Ausführungsmodul kann dann, wenn die Ausführung der Alarmeinstellungstestdatei entsprechend der letzten Indexinformation abgeschlossen ist, ein Ausführungsergebnis durch ein zuvor erstelltes Kommunikationsverfahren nach außen übermitteln.
-
Das Ausführungsergebnis kann eine minimale Prozessorlast, eine maximale Prozessorlast und die Anzahl der Male eines Aufrufs des Fehlerhakens (engl. ErrorHook) enthalten.
-
Das Ausführungsmodul kann die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks mit den vorbestimmten Referenzwerten vergleichen und stellt fest, ob die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks den Referenzwerten genügen.
-
Die Vorrichtung kann ferner ein Erstellungswerkzeug aufweisen, das eine Eingabe von Alarminformationen empfängt, die mit einer Aufgabe des AUTOSAR-Betriebssystems in Verbindung stehen, und erstellt unter Verwendung der Alarminformationen eine Alarmeinstellungsdatei.
-
Die Vorrichtung kann ferner eine Korrektureinheit aufweisen, die einen Versatzwert der Alarmeinstellungsdatei auf einen Versatzvariablenwert korrigiert und die Alarmeinstellungstestdatei erzeugt.
-
Die Alarmversatzoptimierungsvorrichtung für das AUTOSAR-Betriebssystem gemäß der beispielhaften Ausführungsform der vorliegenden Erfindung optimiert einen Alarmversatz für jede Spezifikation einer Fahrzeugsteuereinheit, nicht durch eine einfache Erfahrung, so dass es möglich ist, eine Task-Ausführungszeit unter einer tatsächlichen Laufzeitumgebung schnell zu messen, verglichen mit der Messung einer Task-Ausführungszeit nacheinander.
-
Es ist möglich, ein Auftreten nicht ausreichender Ressource im AUTOSAR-Betriebssystem zu beseitigen.
-
Die vorstehende Kurzfassung dient nur zur Veranschaulichung und soll in keiner Weise einschränkend sein. Zusätzlich zu den oben beschriebenen veranschaulichenden Aspekten, Ausführungsformen und Merkmalen werden anhand der Zeichnungen und der folgenden ausführlichen Beschreibung weitere Aspekte, Ausführungsformen und Merkmale ersichtlich.
-
Figurenliste
-
- 1 ist ein Blockdiagramm, in dem eine Alarmversatzoptimierungsvorrichtung für ein Betriebssystem der offenen Systemarchitektur im Kraftfahrzeugbereich (engl. AUTomotive Open System ARchitecture (AUTOSAR)) gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung dargestellt ist.
- 2 ist ein Diagramm, in dem ein Vorgang der Variabilisierung eines Alarmversatzvariablenwertes dargestellt ist.
- 3 ist ein Diagramm, in dem eine Versatztabelle dargestellt ist.
- 4 ist ein Diagramm, in dem ein Alarmversatzoptimierungswert gemäß einer Versatztabelle dargestellt ist.
- 5 ist ein Flussdiagramm, in dem ein Alarmversatzoptimierungsverfahren für ein AUTOSAR-Betriebssystem gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht ist.
-
Es sollte klar sein, dass die beigefügten Zeichnungen nicht unbedingt maßstabsgetreu sind und eine etwas vereinfachte Darstellung verschiedener Merkmale zeigen, die die Grundprinzipien der Erfindung veranschaulichen. Die konkreten Konstruktionsmerkmale der vorliegenden Erfindung, wie sie hierin offenbart sind und zu denen zum Beispiel bestimmte Abmessungen, Ausrichtungen, Positionen und Formen gehören, werden zum Teil durch den jeweiligen Anwendungszweck und die jeweilige Einsatzumgebung bestimmt.
-
In den mehreren Figuren der Zeichnung verweisen Bezugszeichen in den Figuren durchgehend auf die gleichen bzw. entsprechende Teile der vorliegenden Erfindung.
-
Ausführliche Beschreibung
-
Nachfolgend werden Ausführungsbeispiele der vorliegenden Erfindung unter Bezugnahme auf die beigefügten Zeichnungen ausführlich beschrieben. Zunächst sei darauf hingewiesen, dass sich bei der Vergabe von Bezugszeichen für Elemente jeder Zeichnung gleiche Bezugszeichen auf gleiche Elemente beziehen, auch wenn gleiche Elemente in verschiedenen Zeichnungen gezeigt sind. Es sollte klar sein, dass die Ausführungsbeispiele der vorliegenden Erfindung zwar im Folgenden beschrieben sind, das Wesen der vorliegenden Erfindung jedoch nicht darauf beschränkt ist, und der Fachmann die vorliegende Erfindung auf verschiedene Weise ändern und abwandeln kann.
-
1 ist ein Blockdiagramm, in dem eine Alarmversatzoptimierungsvorrichtung für ein Betriebssystem der offenen Systemarchitektur im Kraftfahrzeugbereich (engl. AUTomotive Open System ARchitecture (AUTOSAR)) gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung dargestellt ist.
-
Unter Bezugnahme auf 1 kann ein AUTOSAR-Betriebssystem 10 gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung ein Erstellungswerkzeug 100, eine Korrektureinheit 200 und eine Alarmversatzoptimierungseinheit 300 aufweisen.
-
Das Erstellungswerkzeug 100 kann eine Eingabe von SoftWare-Programm-(SWP)-Informationen und APP-Informationen (Benutzerinformationen) entsprechend dem Bedarf eines Benutzers empfangen. Dabei können zu den SWP-Informationen ein Tick-Wert, die Anzahl der SWP-Alarme, eine Periode jedes SWP-Alarms, die Angabe, ob ein Versatz jedes SWP-Alarms geändert wird, und ein fester Versatzwert eines SWP-Alarms mit einem festen Versatz gehören. Hierbei ist der Tick-Wert eine Basiseinheit eines Alarms.
-
Die APP-Informationen können die Anzahl an ASW-Alarmen, jede ASW-Alarmperiode, ob ein Versatz jedes ASW-Alarms geändert wird, einen festen Versatzwert eines ASW-Alarms mit einem festen Versatz, eine minimale/maximale Prozessorlast und die Anzahl der Male eines minimalen ErrorHook-Aufrufs enthalten. Der ErrorHook bezieht sich auf eine Hook-Routine, die vom AUTOSAR-Betriebssystem zur Verfügung gestellt wird, so dass der Benutzer in der Lage ist zu wählen, ob ein Dienst, der einen Fehler hat, verwendet werden soll.
-
Das Erstellungswerkzeug 100 kann Kombinationsinformationen erzeugen, indem es die SWP-Informationen und die APP-Informationen entsprechend einem Bedarf des Benutzers kombiniert. Dabei können die Kombinationsinformationen die Anzahl an Gesamtalarmen, die durch Summieren der Anzahl an SWP-Alarmen und der Anzahl an ASW-Alarmen erhalten wird, einen Wert des möglichen Versatzes für jeden Alarm, feste oder änderbare Informationen für einen Versatz jedes Alarms und einen Referenzwert enthalten, der zur Bestimmung von bestanden oder nicht bestanden für einen Ergebniswert dient.
-
Der Wert des möglichen Versatzes (maximale Versatzwert) für jeden Alarm kann eingestellt werden, indem eine maximale Periode einer Aufgabe durch einen Tick-Wert dividiert wird. Bei der beispielhaften Ausführungsform kann bei einem Tick-Wert von 2,5 ms und einer Alarmperiode von 10 ms ein maximaler Versatzwert auf 4 eingestellt werden.
-
Die festen oder änderbaren Informationen für einen Versatz jedes Alarms können einen Alarm festlegen, der einen festen Versatz haben muss, und einen Alarm ändern, der einen geänderten Versatz haben kann.
-
Der Referenzwert, der zur Bestimmung von bestanden oder nicht bestanden für den Ergebniswert verwendet wird, kann über eine Mindestprozessorlast, bei der es sich um die APP-Informationen handelt, die Mindestanzahl der Male des ErrorHook-Aufrufs und dergleichen bestimmt werden.
-
Das Erstellungswerkzeug 100 kann eine Alarmeinstellungsdatei Rte.c zum Einstellen eines Alarms unter Verwendung der Kombinationsinformationen erzeugen. Ferner kann das Erstellungswerkzeug 100 die Gesamtanzahl der Alarme, einen Namen jedes Alarms, ob ein Versatz jedes Alarms änderbar ist, und den Tick-Wert in eine Versatztabelle 110 eingeben. Auf diese Weise kann die Versatztabelle eingerichtet werden.
-
In der Zwischenzeit wird jede Alarminformation der Kombinationsinformationen mit den Aufgaben abgebildet. Wenn eine Funktion für die Alarminformation der Alarmeinstellungsdatei Rte.c ausgeführt wird, ertönt ein Alarm, wenn sich der Zähler erhöht, und die mit dem Alarm in Verbindung stehende Aufgabe wird ausgeführt. Der Alarmversatz ist so eingestellt, dass verhindert wird, dass die Alarme zur gleichen Zeit ertönen. Der Alarmversatz verhindert also ein gleichzeitiges Ertönen der Alarme, wodurch verhindert wird, dass die Prozessorlast ansteigt.
-
Die Korrektureinheit 200 kann eine Alarmeinstellungstestdatei Rte Test.c erzeugen, indem sie die Alarmeinstellungsdatei Rte.c korrigiert. Die Korrektureinheit 200 kann den Versatzwert jeder Alarminformation SetRelAlarm, die in der Alarmeinstellungsdatei Rte.c enthalten ist, variabilisieren. Die Korrektureinheit 200 kann eine Versatzvariableneinstellfunktion SchM_Init zur Variabilisierung des Versatzwertes der Alarmeinstellungsdatei Rte.c erzeugen. Der Versatzwert der Versatztabelle kann sequentiell in die Versatzvariableneinstellfunktion SchM_Init eingegeben werden.
-
Bei der beispielhaften Ausführungsform kann der variable Höchstversatzwert mit einem Wert eingestellt werden, der durch Dividieren einer Höchstdauer der Aufgabe durch den Tick-Wert erhalten wird. Der Vorgang der Variabilisierung des Versatzwertes wird im Folgenden unter Bezugnahme auf 2 beschrieben.
-
Die Alarmversatzoptimierungseinheit 300 kann eine Versatztabellenspeichereinheit 310, ein Startmodul 320, ein Ausführungsmodul 330, ein Lastmessmodul 340 und ein Rücksetzmodul 350 aufweisen.
-
Die Versatztabellenspeichereinheit 310 kann Indexinformationen, Alarminformationen (Anzahl, Name und Periode), ob der Alarmversatz änderbar ist, und die aus den Versatzwerten gebildete Versatztabelle speichern.
-
Das Startmodul 320 kann den Versatzwert in einer Indexreihenfolge der Versatztabelle in die Versatzvariableneinstellfunktion SchM_lnit der Alarmeinstellungstestdatei Rte Test.c eingeben.
-
Das Ausführungsmodul 330 kann die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Aufrufe des ErrorHooks für jeden Versatz der Alarminformationen berechnen, indem es die Alarmeinstellungstestdatei Rte_Test.c ausführt, in die der Versatzwert eingegeben ist.
-
Das Lastmessmodul 340 kann eine Prozessorlast entsprechend der Ausführung des Ausführungsmoduls 330 messen und einen Messwert an das Ausführungsmodul 330 übertragen.
-
Das Rücksetzmodul 350 kann die Ausführung der Alarmeinstellungstestdatei Rte_Test.c zurücksetzen. Das heißt, das Rücksetzmodul 350 kann die Rücksetzung vom Ausführungsmodul 330 anfordern, so dass die Alarmeinstellungstestdatei Rte_Test.c gemäß einem anderen Index der Versatztabelle ausgeführt wird.
-
Wenn die Ausführung der Alarmeinstellungstestdatei Rte Test.c entsprechend dem letzten Index der Versatztabelle abgeschlossen ist, kann das Ausführungsmodul 330 das Ausführungsergebnis in der Versatztabelle speichern oder das Ausführungsergebnis in einem separaten Kommunikationsschema (Uart, CAN) ausgeben. Das Ausführungsergebnis des Ausführungsmoduls 300 kann in Form einer Excel- oder einer txt-Datei ausgegeben werden und als Information zur Optimierung eines Alarmversatzes genutzt werden.
-
2 ist ein Diagramm, in dem ein Vorgang der Variabilisierung eines Alarmversatzwertes dargestellt ist.
-
Mit Bezug auf 2 ist zu sehen, dass der Alarmversatzwert der Alarmeinstellungsdatei Rte.c auf den Versatzvariablenwert in der Alarmeinstellungstestdatei Rte_Test.c eingestellt ist.
-
Jede Alarminformation SetRelAlarm der Alarmeinstellungsdatei Rte.c kann die Art, eine Periode und einen Versatzwert des Alarms enthalten.
-
Bei der beispielhaften Ausführungsform kann eine beliebige Alarminformation SetRelAlarm die Alarmart OsAlarm_5ms, eine Periode von 2 und einen Versatzwert von 1 haben. Dabei kann die Periode des Alarms 5 ms betragen, die sich durch Multiplizieren der Periode von 2 mit dem Tick-Wert von 2,5 ms ergibt.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_1 0ms_1, eine Periode von 4 und einen Versatzwert von 2 haben. Hierbei kann die Periode des Alarms 10 ms betragen, die sich aus der Multiplikation der Periode von 4 mit dem Tick-Wert von 2,5 ms ergibt.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_10ms_2, eine Periode von 4 und einen Versatzwert von 3 haben. Dabei kann die Periode des Alarms 10 ms betragen, die sich aus der Multiplikation der Periode von 4 mit dem Tick-Wert von 2,5 ms ergibt.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_20ms, eine Periode von 8 und einen Versatzwert von 4 haben. Die Periode des Alarms kann dabei 10 ms betragen, die sich durch Multiplikation der Periode von 8 mit dem Tick-Wert von 2,5 ms ergibt.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_100ms, eine Periode von 40 und einen Versatzwert von 5 haben. Die Periode des Alarms kann hierbei 100 ms betragen, die sich durch Multiplikation der Periode von 40 mit dem Tick-Wert von 2,5 ms ergibt.
-
Die Alarmeinstellungsdatei Rte.c, die die Alarminformation enthält, kann von der Korrektureinheit 200 in eine Alarmeinstellungstestdatei Rte_Test.c korrigiert werden.
-
Bei der beispielhaften Ausführungsform kann eine beliebige Alarminformation SetRelAlarm der Alarmeinstellungstestdatei Rte Test.c die Alarmart OsAlarm_5ms, eine Periode von 2 und einen Versatzvariablenwert von OsAlarm_5ms_Offset haben.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_10ms_1, eine Periode von 4 und einen Versatzvariablenwert von OsAlarm_10ms_1_Offset haben.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_10ms2, eine Periode von 4 und einen Versatzvariablenwert von OsAlarm_10ms_2_Offset haben.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_20ms, eine Periode von 8 und einen Versatzvariablenwert von OsAlarm_2ms_Offset haben.
-
Eine weitere Alarminformation SetRelAlarm kann die Alarmart OsAlarm_100ms, eine Periode von 40 und einen Versatzvariablenwert von OsAlarm_100ms_Offset haben.
-
3 ist ein Diagramm, in dem eine Versatztabelle dargestellt ist.
-
Bezugnehmend auf 3 kann die Versatztabelle Alarminformationen (einen Alarmnamen, eine Alarmperiode, ob ein Versatz geändert wird, einen Versatzvariablenwert und Indexinformationen) enthalten.
-
Bei der beispielhaften Ausführungsform kann, wenn der Alarmname Alarm A ist, Alarm A die Periode von 5 ms haben, ob ein Versatz änderbar ist, und die Versatzvariablenwerte 0, 0, 1, 1, 4 und 4(MAX) in der Reihenfolge der Indizes von 1, 2, 100, 101, 500 und 100. Weitere Alarminformationen werden nicht ausführlich beschrieben.
-
4 ist ein Diagramm, in dem ein Alarmversatzoptimierungswert gemäß einer Versatztabelle dargestellt ist.
-
Bezugnehmend auf 4 kann die Versatztabelle das Ausführungsergebnis des Ausführungsmoduls 330 enthalten. Die Versatztabelle kann also ferner die Anzahl der Male des Aufrufs des ErrorHooks (Referenzwert: 0), die minimale Prozessorlast (Referenzwert: 40%), die maximale Prozessorlast (Referenzwert: 60%) und die Angabe, ob der Referenzwert erfüllt ist, enthalten.
-
Bei der beispielhaften Ausführungsform kann, wenn der Alarmname Alarm A ist, die Anzahl der Male des Aufrufs des ErrorHooks mit 56(NG), 49(NG), 0, 0, 0 und 48(NG) in der Reihenfolge des Index 1, 2, 100, 101, 500 und 100 dargestellt werden. Dabei bedeutet NG „nicht gut“.
-
Im Fall von Alarm A kann die minimale Prozessorlast mit 60% (NG), 55% (NG), 15%, 18%, 60% (NG), 70% (NG) in der Reihenfolge des Index 1, 2, 100, 101, 500 und 100 dargestellt werden.
-
Im Fall von Alarm A kann die maximale Prozessorlast mit 85% (NG), 81 % (NG), 59%, 55%, 70% (NG), 70% (NG) in der Reihenfolge des Index 1, 2, 100, 101, 500 und 100 dargestellt werden.
-
Im Fall von Alarm A kann die Angabe, ob der Referenzwert erfüllt ist, mit nicht bestanden, nicht bestanden, bestanden, bestanden, nicht bestanden und nicht bestanden in der Reihenfolge des Index 1, 2, 100, 101, 500 und 100 dargestellt werden. Die ausführliche Beschreibung für weitere Alarminformationen wird hier weggelassen.
-
5 ist ein Flussdiagramm, in dem ein Alarmversatzoptimierungsverfahren für ein AUTOSAR-Betriebssystem gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht ist.
-
Mit Bezug auf 5 kann das Alarmversatzoptimierungsverfahren für das AUTOSAR-Betriebssystem gemäß der beispielhaften Ausführungsform der vorliegenden Erfindung eine Alarmeinstellungstestdateieingabeoperation S510, eine Versatztabellenerzeugungsoperation S520, eine Versatzvariablenwerteinstelloperation S530, eine Alarmeinstellungstestdateiausführungsoperation S540, eine Prozessorlastmessoperation S550, eine Indexbestimmungsoperation S560, eine Rücksetzoperation S570 und eine Ausführungsergebnisausgabeoperation S580 aufweisen.
-
Bei der Alarmeinstellungstestdateieingabeoperation S510 kann eine Alarmeinstellungstestdatei zur Einstellung eines Alarms eingegeben werden. Die Alarmeinstellungstestdatei kann eine Versatzvariableneinstellfunktion SchM_Init zur Variabilisierung eines Versatzwertes jeder Alarminformation zu einem Versatzvariablenwert aufweisen.
-
Bei der Versatztabellenerzeugungsoperation S520 kann eine Versatztabelle erzeugt werden, die aus Indexinformationen, Alarminformationen (Anzahl, Name und Periode), der Angabe, ob ein Alarmversatz änderbar ist, und einem Versatzwert gebildet ist. Die Versatztabelle kann in der Versatztabellenspeichereinheit 310 gespeichert sein.
-
Bei der Versatzvariablenwerteingabeoperation S530 kann ein Versatzwert in die Versatzvariableneinstellfunktion SchM_Init in der Reihenfolge des Index der Versatztabelle eingegeben werden.
-
Bei der Alarmeinstellungstestdateiausführungsoperation S540 wird die Alarmeinstellungstestdatei Rte_Test.c, in die der Versatzwert eingegeben ist, in der Reihenfolge des Index der Versatztabelle ausgeführt, so dass eine minimale Prozessorlast, eine maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks entsprechend dem Versatz der Alarminformationen berechnet werden können.
-
In der Prozessorlastmessoperation S550 kann die Prozessorlast entsprechend der Ausführung der Alarmeinstellungstestdatei Rte_Test.c gemessen werden.
-
Bei der Indexbestimmungsoperation S560 wird dann, wenn die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks entsprechend dem Versatz der Alarminformationen berechnet werden, bestimmt, ob der Index der letzte Index der Versatztabelle ist.
-
Bei der Rücksetzoperation S570 wird die Ausführung der Alarmeinstellungstestdatei Rte_Test.c zurückgesetzt, bis die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks für die Alarminformationen entsprechend dem letzten Index der Versatztabelle berechnet werden.
-
Bei der Ausführungsergebnisausgabeoperation S580 werden die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks, die die Ausführungsergebnisse für die gesamten Alarminformationen sind, ausgegeben. Die minimale Prozessorlast, die maximale Prozessorlast und die Anzahl der Male des Aufrufs des ErrorHooks können in der Versatztabelle gespeichert werden oder über ein Kommunikationsverfahren wie etwa Uart und CAN nach außen übertragen werden und zur Optimierung eines Alarmversatzes dienen.
-
Die beispielhafte Ausführungsform der vorliegenden Erfindung wurde zwar zu veranschaulichenden Zwecken beschrieben, für den Fachmann ist jedoch klar, dass verschiedene Abänderungen, Ergänzungen und Ersetzungen möglich sind, ohne vom Umfang und vom Wesen der Erfindung abzuweichen. Daher sollen die in der vorliegenden Erfindung und den beigefügten Zeichnungen offenbarten Ausführungsformen das fachliche Wesen der vorliegenden Erfindung nicht einschränken, sondern sie sind dazu vorgesehen, den Umfang des technischen Gedankens der vorliegenden Erfindung zu veranschaulichen, und der Umfang der vorliegenden Erfindung ist durch die Ausführungsform und die beigefügten Zeichnungen nicht beschränkt.
-
Die Schritte und/oder Abläufe gemäß der vorliegenden Erfindung können bei verschiedenen beispielhaften Ausführungsformen in unterschiedlicher Reihenfolge oder parallel oder gleichzeitig für unterschiedliche Zeiträume und dergleichen erfolgen, wie es für den Fachmann ersichtlich ist.
-
Je nach Ausführungsbeispiel kann ein Teil oder die Gesamtheit der Schritte und/oder Abläufe unter Verwendung von Befehlen durchgeführt oder ausgeführt werden, die in einem oder mehreren nicht temporären computerlesbaren Medien, einem Programm, einer interaktiven Datenstruktur bzw. einem oder mehreren Prozessoren gespeichert sind, die einen Client und/oder einen Server ansteuern. Ein oder mehrere nicht temporäre computerlesbare Medien sind beispielsweise Software, Firmware, Hardware und/oder eine beliebige Kombination daraus. Ferner kann die in der vorliegenden Beschreibung erläuterte „Modul“-Funktion mittels Software, Firmware, Hardware und/oder jeder beliebigen Kombination daraus ausgeführt werden.
-
Die Ausführungsformen gemäß der vorliegenden Erfindung können inzwischen in Form von Programmanweisungen implementiert sein, die von Computern ausgeführt werden können, und können in computerlesbaren Medien aufgezeichnet sein. Die computerlesbaren Medien können Programmanweisungen, eine Datendatei, eine Datenstruktur oder eine Kombination daraus enthalten. Als Beispiel und nicht einschränkend können computerlesbare Medien Computerspeichermedien und Kommunikationsmedien umfassen. Zu Computerspeichermedien gehören sowohl flüchtige als auch nicht flüchtige, entfernbare und nicht entfernbare Medien, die in einem beliebigen Verfahren oder einer beliebigen Technologie zur Speicherung von Informationen implementiert sind, wie etwa computerlesbaren Anweisungen, Datenstrukturen, Programmmodulen oder anderen Daten. Zu Computerspeichermedien gehören unter anderem RAM, ROM, EEPROM, Flash-Speicher oder andere Speichertechnologien, CD-ROM, Digital Versatile Disks (DVDs) oder andere optische Plattenspeicher, Magnetkassetten, Magnetbänder, Magnetplattenspeicher bzw. andere Magnetspeichervorrichtungen oder jedes andere Medium, das zur Speicherung der gewünschten Informationen dienen kann und auf das über Computer zugegriffen werden kann. Kommunikationsmedien stellen üblicherweise computerlesbare Befehle, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Datensignal wie etwa einer Trägerwelle oder einem anderen Transportmechanismus dar und schließen jegliche Informationsübertragungsmedien ein. Mit dem Begriff „moduliertes Datensignal“ ist ein Signal gemeint, bei dem eine oder mehrere seiner Eigenschaften in solcher Weise eingestellt oder geändert sind, dass Informationen in dem Signal kodiert sind. Als Beispiel und nicht als Einschränkung gehören zu Kommunikationsmedien drahtgebundene Medien, wie etwa ein drahtgebundenes Netzwerk oder eine direkt verdrahtete Verbindung, sowie drahtlose Medien, wie etwa akustische, HF-, Infrarot- und andere drahtlose Medien. Kombinationen aus beliebigen der oben genannten sollten ebenfalls im Umfang computerlesbarer Medien enthalten sein.
-
Wie oben beschrieben, sind die beispielhaften Ausführungsformen in den Zeichnungen und der Beschreibung beschrieben und veranschaulicht worden. Die beispielhaften Ausführungsformen wurden ausgewählt und beschrieben, um bestimmte Prinzipien der Erfindung und ihre praktische Anwendung zu erläutern, um dadurch andere Fachleute in die Lage zu versetzen, verschiedene beispielhafte Ausführungsformen der vorliegenden Erfindung sowie verschiedene Alternativen und Abänderungen davon zu erstellen und zu nutzen. Wie aus der vorstehenden Beschreibung ersichtlich ist, sind bestimmte Aspekte der vorliegenden Erfindung nicht durch die jeweiligen Einzelheiten der hierin veranschaulichten Beispiele beschränkt, und es wird daher in Betracht gezogen, dass dem Fachmann weitere Abwandlungen und Anwendungen bzw. Äquivalente davon einfallen werden. Viele Änderungen, Abwandlungen, Variationen und andere Verwendungen und Anwendungen der vorliegenden Ausführung werden für den Fachmann jedoch nach Betrachtung der Beschreibung und der beigefügten Zeichnungen ersichtlich. Alle derartigen Änderungen, Abwandlungen, Variationen und anderen Verwendungen und Anwendungen, die nicht vom Wesen und Umfang der Erfindung abweichen, gelten als von der Erfindung abgedeckt, die nur durch die nachstehenden Ansprüche begrenzt ist.