DE102012104842A1 - Method for influencing bus communication of control device e.g. series control device, involves influencing protocol data units by receipt layer, and providing influenced protocol data units for processing of hardware dependent layer - Google Patents
Method for influencing bus communication of control device e.g. series control device, involves influencing protocol data units by receipt layer, and providing influenced protocol data units for processing of hardware dependent layer Download PDFInfo
- Publication number
- DE102012104842A1 DE102012104842A1 DE201210104842 DE102012104842A DE102012104842A1 DE 102012104842 A1 DE102012104842 A1 DE 102012104842A1 DE 201210104842 DE201210104842 DE 201210104842 DE 102012104842 A DE102012104842 A DE 102012104842A DE 102012104842 A1 DE102012104842 A1 DE 102012104842A1
- Authority
- DE
- Germany
- Prior art keywords
- protocol data
- data unit
- layer
- communication
- influencing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
Die Erfindung betrifft ein Verfahren zur Beeinflussung der Buskommunikation eines Steuergeräts, wobei die Buskommunikation wenigstens eine bushardwareunabhängige erste Kommunikationsschicht und wenigstens eine bushardwareabhängige zweite Kommunikationsschicht umfasst. Verfahren zur Beeinflussung der Buskommunikation eines Steuergeräts werden häufig dann eingesetzt, wenn ein Steuergerät, das mit anderen Kommunikationspartnern über einen Bus verbunden ist bzw. verbunden werden soll, zu testen ist, insbesondere dann, wenn das Kommunikationsverhalten des Steuergeräts selbst Gegenstand der Untersuchung ist. Verfahren zur Beeinflussung der Buskommunikation eines Steuergeräts dienen deshalb häufig dem Test eines Steuergeräts und zur Erprobung des Steuergeräteverhaltens im Fehlerfall. Derartige Verfahren sind beispielsweise bekannt im Rahmen der sog. Restbussimulation, bei der reale Steuergeräte in eine hard- und softwaremäßig simulierte Kommunikationsumgebung eingesetzt und in ihrem Verhalten getestet werden. Solche Verfahren sind aber auch bekannt im Rahmen der Restbussimulation virtueller Steuergeräte. The invention relates to a method for influencing the bus communication of a control device, wherein the bus communication comprises at least one bushardware-independent first communication layer and at least one bushardware-dependent second communication layer. Methods for influencing the bus communication of a control unit are frequently used when a control unit which is to be connected to other communication partners via a bus or is to be connected, is to be tested, in particular if the communication behavior of the control unit itself is the subject of the investigation. Methods for influencing the bus communication of a control device are therefore often used to test a control device and to test the control device behavior in the event of a fault. Such methods are known, for example, within the framework of the so-called residual bus simulation, in which real ECUs are used in a hardware and software simulated communication environment and tested in their behavior. However, such methods are also known within the framework of the residual bus simulation of virtual control units.
Die erste und die zweite Kommunikationsschicht können weitere Sub-Kommunikationsschichten umfassen. Der Begriff der "Kommunikationsschicht" ist dabei im Wesentlichen in dem Sinne zu verstehen, wie er dem allgemeinen Verständnis nach für Netzwerk-Protokolle oder Busprotokolle verwendet wird. Jede Kommunikationsschicht stellt üblicherweise Funktionalitäten zur Verfügung, um Informationen aus einer benachbarten Kommunikationsschicht entgegenzunehmen und zu einer weiteren benachbarten Kommunikationsschicht aufbereitet weiterzugeben. Hinsichtlich der zuvor dargestellten Unterteilung in eine bushardwareunabhängige erste Kommunikationsschicht und eine bushardwareabhängige zweite Kommunikationsschicht bedeutet dies konkret, dass die erste Kommunikationsschicht wenigstens eine Information in eine erste Protokoll-Dateneinheit kodiert und an die zweite Kommunikationsschicht überträgt und/oder dass die erste Kommunikationsschicht von der zweiten Kommunikationsschicht die erste Protokoll-Dateneinheit erhält und aus der ersten Protokoll-Dateneinheit die Information dekodiert. Bei der Information handelt es sich in der bushardwareunabhängigen ersten Kommunikationsschicht üblicherweise um ein anwendungsnahes Datum, beispielsweise um einen Messwert, der von dem Steuergerät aufgenommen worden ist und über einen Bus an andere Busteilnehmer versendet wird, oder beispielsweise um eine vom Steuergerät berechnete Größe. Um welchen Bus es sich dabei konkret handelt, ist für die in Rede stehenden Verfahren weder im Stand der Technik noch bei dem erfindungsgemäßen Verfahren von Bedeutung; das Verfahren kann mit beliebigen Datenbussen verwendet werden. Beispiele für in der industriellen Praxis häufig verwendete Bus-Standards sind CAN, LIN oder FlexRay. Die Information wird jedenfalls in Senderichtung, also von der ersten Kommunikationsschicht zur zweiten Kommunikationsschicht kodiert, also beispielsweise um bestimmte Verwaltungsinformationen erweitert, und an busnähere Schichten weitergereicht, vorliegend also an die zweite Kommunikationsschicht. In Sende- und Kodierrichtung wird die Information in die vorgenannte Protokoll-Dateneinheit verpackt. In Empfangs- oder Dekodierrichtung wird die verpackte Information, also die erste Protokoll-Dateneinheit korrespondierend von Verwaltungsinformationen befreit und letztlich die Information als solche zur Verfügung gestellt. Wenn die erste Kommunikationsschicht in der Lage ist, sowohl zu senden als auch zu empfangen, ist sowohl die Funktionalität des Kodierens als auch die Funktionalität des Dekodierens implementiert. Die erste Kommunikationsschicht ist deshalb bushardwareunabhängig, weil in ihr lediglich solche Dienste implementiert sind, die unabhängig von der konkreten Bushardware sind. D. h. die in der bushardwareunabhängigen Schicht realisierten Dienste sind entweder unabhängig vom Bussystem oder abhängig vom Bussystem, aber nicht abhängig von der konkreten Bushardware. Die busunabhängige erste Kommunikationsschicht liegt daher oberhalb der Kommunikationshardwareabstraktionsschichten. Für das Beispiel eines gemäß des AUTOSAR Standards realisierten Steuergeräts umfasst die bushardwareunabhängige erste Kommunikationsschicht dann Application Layer, Runtime Environment (RTE) und Communication Services (auch inkl. bussystemabhängiger Anteile, wie z. B. CAN Transport Protokoll oder FlexRay Transport Protokoll), aber nicht die bushardwareabhängigen Treiberschichten, wie z. B. CAN Interface oder FlexRay Interface. The first and second communication layers may include further sub-communication layers. The term "communication layer" is to be understood essentially in the sense in which it is generally used for network protocols or bus protocols. Each communication layer usually provides functionalities to receive information from an adjacent communication layer and pass it on to another adjacent communication layer. With regard to the previously described subdivision into a bushardware-independent first communication layer and a bushardware-dependent second communication layer, this means concretely that the first communication layer encodes at least one information into a first protocol data unit and transmits it to the second communication layer and / or the first communication layer from the second communication layer receives the first protocol data unit and decodes the information from the first protocol data unit. The information in the bushardware-independent first communication layer is usually an application-related date, for example a measured value which has been recorded by the control unit and sent via a bus to other bus users, or, for example, a variable calculated by the control unit. Which bus is actually involved is of no importance for the method in question either in the prior art or in the method according to the invention; the method can be used with any data buses. Examples of bus standards commonly used in industrial practice are CAN, LIN or FlexRay. In any case, the information is coded in the transmission direction, that is to say from the first communication layer to the second communication layer, that is, for example, expanded by specific management information, and passed on to bus-proximate layers, in the present case to the second communication layer. In the sending and coding direction, the information is packed in the aforementioned protocol data unit. In the receiving or decoding direction, the packaged information, that is to say the first protocol data unit, is correspondingly freed from administrative information and ultimately the information is made available as such. When the first communication layer is capable of both transmitting and receiving, both the functionality of encoding and the functionality of decoding are implemented. The first layer of communication is therefore bushardware-independent, because it only implements those services that are independent of the specific Bushardware. Ie. the services implemented in the bushardware-independent layer are either independent of the bus system or dependent on the bus system, but not dependent on the specific busardware. The bus-independent first communication layer is therefore above the communication hardware abstraction layers. For the example of a controller realized in accordance with the AUTOSAR standard, the bushardware-independent first communication layer then comprises application layer, runtime environment (RTE) and communication services (including but not limited to bus system-dependent components such as CAN transport protocol or FlexRay transport protocol) the Bushardware-dependent driver layers, such. B. CAN interface or FlexRay interface.
Auch die bushardwareabhängige zweite Kommunikationsschicht umfasst Funktionalitäten, die die Übermittlung von Daten in Senderichtung – also in Richtung auf den Bus – oder in Empfangsrichtung – also in Richtung auf die erste Kommunikationsschicht – oder die Übermittlung von Daten in beide Richtungen realisieren. Das bedeutet, dass die zweite Kommunikationsschicht aus der ersten Protokoll-Dateneinheit oder aus einer aus der ersten Protokoll-Dateneinheit abgeleiteten weiteren Protokoll-Dateneinheit zur Übertragung über den Bus eine bushardwareabhängige Businformation erzeugt – Senderichtung – und/oder dass die zweite Kommunikationsschicht zumindest aus einer bushardwareabhängigen Businformation die erste Protokoll-Dateneinheit oder eine weitere Protokoll-Dateneinheit, aus der die erste Protokoll-Dateneinheit ableitbar ist, erzeugt – Empfangsrichtung –. Neben der ersten Protokoll-Dateneinheit kann es demnach auch weitere Protokoll-Dateneinheiten geben, die entweder aus der ersten Protokoll-Dateneinheit abgeleitet sind, oder aus denen die erste Protokoll-Dateneinheit ableitbar ist. Dies trägt lediglich dem Umstand Rechnung, dass die zweite Kommunikationsschicht mehrere Sub-Kommunikationsschichten oder Protokollschichten umfassen kann, von denen jede ihre korrespondierende Protokoll-Dateneinheit erzeugt, so wie dies im Zusammenhang mit der ersten Protokoll-Dateneinheit erläutert worden ist. In Senderichtung werden jeder weiteren Protokoll-Dateneinheit üblicherweise weitere Verwaltungsinformationen hinzugefügt und in Empfangsrichtung werden in Sub-Kommunikationsschichten oder Protokollschichten die weiteren Protokoll-Dateneinheiten extrahiert, bis letztlich die erste Protokoll-Dateneinheit erhalten wird, aus der in der ersten Kommunikationsschicht letztlich die Information erhalten wird. The bushardware-dependent second communication layer also includes functionalities that realize the transmission of data in the transmission direction - ie in the direction of the bus - or in the receive direction - ie in the direction of the first communication layer - or the transmission of data in both directions. This means that the second communication layer from the first protocol data unit or from a generated from the first protocol data unit further protocol data unit for transmission over the bus bushardwareabhängige bus information generates - send direction - and / or that the second communication layer at least from a Bushardwareabhängigen bus information, the first protocol data unit or another protocol data unit from which the first protocol data unit is derivable, generates - receive direction -. In addition to the first protocol data unit, there may accordingly also be further protocol data units which are either derived from the first protocol data unit or from which the first protocol data unit can be derived. This takes into account only the fact that the second communication layer can comprise a plurality of sub-communication layers or protocol layers, each of which generates its corresponding protocol data unit, as has been explained in connection with the first protocol data unit. In the transmission direction, further administration information is usually added to each further protocol data unit, and in the receive direction the further protocol data units are extracted in sub-communication layers or protocol layers until ultimately the first protocol data unit is obtained, from which the information is ultimately obtained in the first communication layer ,
Beim Test von Steuergeräten und der Buskommunikation von Steuergeräten besteht ein Interesse darin, den Test möglichst realitätsnah durchzuführen, um ein möglichst aussagekräftiges Testergebnis zu erhalten. Beim Steuergerät kann diese Bedingung erfüllt werden, indem schlicht dasjenige Steuergerät in einer Testumgebung verwendet wird, das in jeder Hinsicht dem später zum Einsatz kommenden Seriensteuergerät entspricht, das also Serienhardware wie auch Seriensoftware aufweist. When testing control units and the bus communication of ECUs, there is an interest in carrying out the test as realistically as possible in order to obtain as meaningful a test result as possible. In the case of the control unit, this condition can be met by simply using that control unit in a test environment which in every respect corresponds to the later used production control unit, which thus has serial hardware as well as series software.
Bei dem Test eines realen Steuergeräts werden andere Kommunikationspartner häufig im Rahmen einer Restbussimulation auf einem Hardware-in-the-Loop-Simulator (HIL-Simulator) nachgebildet, wobei nicht sämtliche Kommunikationspartner simuliert werden müssen, ein Teil der anderen Kommunikationspartner kann auch real vorliegen. Im Fall dieser jedenfalls auch vorhandenen Restbussimulation können Fehler im simulierten Restbusanteil verhältnismäßig einfach generiert werden, Fehler zwischen real vorhandenen Steuergeräten lassen sich jedoch nicht ohne weiteres einstreuen. Soll auch die Kommunikation zwischen realen Steuergeräten beeinflusst werden, wird dies häufig mit einem Fehlergateway realisiert. Bei einem Fehlergateway wird neben dem normalen, fehlerfrei arbeitenden Bus ein zweiter "Fehlerbus" zur Verfügung gestellt, der im Fehlerfall zwischen zwei realen Steuergeräten zum Tragen kommt. Das Fehlergateway vermittelt dann zwischen dem normalen Bus und dem Fehlerbus, wobei das Fehlergateway die zu beeinflussenden Daten im zu testenden Fehlerfall empfängt und dekodiert, bis eine solche Protokoll-Dateneinheit vorliegt, in die ein Fehler einzubringen ist, woraufhin die beeinflusste Nachricht wieder kodiert und über den Fehlerbus einem anderen Steuergerät zugeleitet wird. Es ist ohne weiteres ersichtlich, dass die Beeinflussung der Buskommunikation eines Steuergeräts über ein Fehlergateway ausgesprochen aufwendig ist. Darüber hinaus setzt die Restbussimulation mit realen Steuergeräten immer voraus, dass das Steuergerät auch in seiner Serienfassung oder zumindest als Hardware-Realisierung (sogenannte Vorserie) vorliegt, was den Test der Buskommunikation eines Steuergeräts zu einem frühen Zeitpunkt praktisch unmöglich macht. Dazu kommt, dass in dem Restbusmodell eines simulierten Steuergeräts auf einem HIL-Simulator nicht der Code implementiert ist, der später in den tatsächlichen Steuergeräten zum Einsatz kommt, so dass die beeinflusste und getestete Buskommunikation nicht der später tatsächlich realisierten Buskommunikation entspricht. In the test of a real ECU, other communication partners are often modeled as part of a residual bus simulation on a hardware-in-the-loop simulator (HIL simulator), not all communication partners need to be simulated, some of the other communication partners can also be real. In the case of this residual bus simulation, which in any case also exists, errors in the simulated residual bus component can be generated relatively easily, but errors between real existing control devices can not be readily admit. If the communication between real ECUs is also to be influenced, this is often done with an error gateway. In the case of an error gateway, a second "error bus" is provided in addition to the normal, error-free bus, which is used in the event of a fault between two real ECUs. The error gateway then arbitrates between the normal bus and the error bus, the error gateway receiving and decoding the data to be affected in the error case under test until there is such a protocol unit to which an error is to be made, whereupon the affected message is again encoded and transcribed the error bus is fed to another control unit. It is readily apparent that influencing the bus communication of a control device via a fault gateway is extremely expensive. In addition, the residual bus simulation with real ECUs always presupposes that the controller is also in its series version or at least as a hardware implementation (so-called pre-series), which makes the test of the bus communication of a controller at an early stage virtually impossible. In addition, the residual bus model of a simulated ECU on an HIL simulator does not implement the code that is later used in the actual ECUs, so that the bus communication affected and tested does not correspond to bus communication actually realized later.
Genau hier setzt das sogenannte virtuelle Steuergeräte Testen an. Im Gegensatz zum Steuergerätemodell einer Restbussimulation, enthält der Code eines virtuellen Steuergeräts bereits Komponenten des Seriensteuergerätecodes, der später auf der Steuergeräte-Hardware eingesetzt werden soll. Als virtuelles Steuergerät wird also Software bezeichnet, die in einem Simulationsszenario ein echtes Steuergerät emuliert. Das virtuelle Steuergerät umfasst dabei beispielsweise die Komponenten der Applikations-Software, das Runtime-Environment sowie von Teile der Basis-Software als Seriensteuergerätecode. This is exactly where the so-called virtual ECU testing comes in. In contrast to the control unit model of a residual bus simulation, the code of a virtual ECU already contains components of the production ECU code that will later be used on the ECU hardware. As a virtual control device so software is called, which emulates a real ECU in a simulation scenario. The virtual control unit includes, for example, the components of the application software, the runtime environment and parts of the basic software as a production ECU code.
Ein virtuelles Steuergeräte-Modell wird beispielsweise auf einem Standard-PC in einer Offline-Simulation oder auf einem Echtzeit-Simulator getestet. Dabei sollen in der Simulation realitätsnahe Effekte wie das Kommunikationsverhalten untersucht werden. For example, a virtual ECU model is tested on a standard PC in an offline simulation or on a real-time simulator. Realistic effects such as communication behavior are to be investigated in the simulation.
Aufgabe der vorliegenden Erfindung ist es daher, ein Verfahren zur Beeinflussung der Buskommunikation eines Steuergeräts bereitzustellen, das einen möglichst realitätsnahen Test der Buskommunikation des Steuergeräts zulässt. The object of the present invention is therefore to provide a method for influencing the bus communication of a control device, which permits a test of the bus communication of the control device that is as realistic as possible.
Die zuvor aufgezeigte und hergeleitete Aufgabe ist im Wesentlichen dadurch gekennzeichnet, dass wenigstens eine entweder zwischen der ersten Kommunikationsschicht und der zweiten Kommunikationsschicht oder innerhalb der zweiten Kommunikationsschicht realisierte Sende-Beeinflussungsschicht die erste Protokoll-Dateneinheit und/oder wenigstens eine von der ersten Protokoll-Dateneinheit abgeleitete weitere Protokoll-Dateneinheit beeinflusst und die beeinflusste erste Protokoll-Dateneinheit und/oder die beeinflusste weitere Protokoll-Dateneinheit zur weiteren Verarbeitung der zweiten Kommunikationsschicht zur Verfügung stellt und/oder dass wenigstens eine entweder zwischen der ersten Kommunikationsschicht und der zweiten Kommunikationsschicht oder innerhalb der zweiten Kommunikationsschicht realisierte Empfangs-Beeinflussungsschicht die weitere Protokoll-Dateneinheit oder die aus der von der weiteren Protokoll-Dateneinheit abgeleitete erste Protokoll-Dateneinheit beeinflusst und die erhaltene beeinflusste erste Protokoll-Dateneinheit und/oder die beeinflusste weitere Protokoll-Dateneinheit zur weiteren Verarbeitung der zweiten Kommunikationsschicht zur Verfügung stellt. The previously indicated and derived object is essentially characterized in that at least one transmission influencing layer realized either between the first communication layer and the second communication layer or within the second communication layer contains the first protocol data unit and / or at least one derived from the first protocol data unit influenced further protocol data unit and influenced the first protocol Data unit and / or the impacted further protocol data unit for further processing of the second communication layer provides and / or that at least one realized either between the first communication layer and the second communication layer or within the second communication layer receiving influence layer the further protocol data unit or from the derived from the further protocol data unit first protocol data unit influenced and provides the received affected first protocol data unit and / or the affected further protocol data unit for further processing of the second communication layer.
Ein wesentlicher Aspekt des erfindungsgemäßen Verfahrens besteht darin, das außerhalb der bushardwareunabhängigen ersten Kommunikationsschicht eine Sende-Beeinflussungsschicht – Senderichtung – und/oder eine Empfangs-Beeinflussungsschicht – Empfangsrichtung – vorgesehen ist, die praktisch in beliebiger Tiefe des Protokollstapels eine Beeinflussung der zu versendenden oder empfangenen Daten ermöglicht. Dadurch, dass die Beeinflussungsschichten jedenfalls außerhalb der bushardwareunabhängigen ersten Kommunikationsschicht vorgesehen sind, kann der der ersten Kommunikationsschicht zugrunde liegende Code des Steuergeräts unverändert auch bei einer Fehlereinstreuung durch die Beeinflussungsschichten getestet werden. Der Code der bushardwareunabhängigen ersten Kommunikationsschicht muss für die erfindungsgemäße Fehlereinstreuung durch die Beeinflussungsschichten in keinster Weise verändert werden, er muss demzufolge auch nicht neu generiert werden. Da die bushardwareunabhängige erste Kommunikationsschicht in realen Anwendungen üblicherweise eine Applikations-Schicht, eine Schicht zur Implementierung einer Laufzeitumgebung und eine bestimmte bushardwareunabhängige Kommunikationsdienste umfassende Sub-Kommunikationsschicht umfasst, werden mit dem erfindungsgemäßen Verfahren bei der Beeinflussung der Buskommunikation insbesondere auch die unveränderten bushardwareunabhängigen Kommunikationsdienste getestet, was gegenüber den aus dem Stand der Technik bekannten Verfahren einen erheblichen Vorteil darstellt. An essential aspect of the method according to the invention is that outside the bushardware-independent first communication layer, a transmission influencing layer-transmission direction-and / or a reception influencing layer-reception direction-is provided, which influences the data to be sent or received virtually at any depth of the protocol stack allows. In any case, since the influencing layers are provided outside the bushardware-independent first communication layer, the code of the control device on which the first communication layer is based can be tested unchanged even in the event of an error spread by the influencing layers. The code of the bushardware-independent first communication layer does not have to be changed in any way for the inventive error spread by the influencing layers, and consequently does not have to be newly generated. Since the bushardware-independent first communication layer in real applications usually comprises an application layer, a layer for implementing a runtime environment and a particular Bushardwareunabhängige communication services comprising sub-communication layer, the method according to the invention in particular the unchanged Bushardwareunabhängigen communication services are tested in influencing the bus communication, which represents a considerable advantage over the known from the prior art method.
Für das erfindungsgemäße Verfahren ist es nicht entscheidend, ob die Sende-Beeinflussungsschicht und/oder die Empfangs-Beeinflussungsschicht zwischen der bushardwareunabhängigen ersten Kommunikationsschicht und der bushardwareabhängigen zweiten Kommunikationsschicht realisiert ist, also praktisch außerhalb der ersten und der zweiten Kommunikationsschicht, oder ob die Empfangs- und/oder die Sende-Beeinflussungsschicht als Bestandteil der zweiten Kommunikationsschicht realisiert ist. Je nach Anwendungsfall und je nach gewünschtem Ort der Einflussnahme auf die Buskommunikation kann es auch gewünscht sein, eine oder beide Beeinflussungsschichten sowohl zwischen der ersten Kommunikationsschicht und der zweiten Kommunikationsschicht als auch innerhalb der zweiten Kommunikationsschicht zu realisieren. For the method according to the invention, it is not decisive whether the transmit influencing layer and / or the receiving influencing layer is realized between the bushardware-independent first communication layer and the bushardware-dependent second communication layer, ie practically outside the first and the second communication layer, or if the receive and receive layers / or the transmit influencing layer is implemented as part of the second communication layer. Depending on the application and depending on the desired location of the influence on the bus communication, it may also be desired to realize one or both influencing layers both between the first communication layer and the second communication layer and within the second communication layer.
In einer vorteilhaften Ausgestaltung des Verfahrens wird die erste Protokoll-Dateneinheit und/oder wenigstens eine von der ersten Protokoll-Dateneinheit abgeleitete weitere Protokoll-Dateneinheit durch die Sende-Beeinflussungsschicht beeinflusst, indem die erste Protokoll-Dateneinheit und/oder die weitere Protokoll-Dateneinheit dekodiert wird, die erhaltene dekodierte und zu beeinflussende Information beeinflusst wird und die beeinflusste Information wieder zu einer beeinflussten ersten Protokoll-Dateneinheit und/oder zu einer beeinflussten weiteren Protokoll-Dateneinheit kodiert wird. Vor allem wenn die zweite Kommunikationsschicht mehrere Sub-Kommunikationsschichten – auch Protokollschichten genannt – umfasst, kommen in der zweiten Kommunikationsschicht von der ersten Protokoll-Dateneinheit abgeleitete weitere Protokoll-Dateneinheiten vor, die in Richtung auf die busnahen Sub-Kommunikationsschichten jeweils mit zusätzlichen und protokollabhängigen Informationen ausgestattet sind. In an advantageous embodiment of the method, the first protocol data unit and / or at least one further protocol data unit derived from the first protocol data unit is influenced by the transmit influencing layer by decoding the first protocol data unit and / or the further protocol data unit is affected, the obtained decoded and to be influenced information is encoded and the affected information again to an affected first protocol data unit and / or to an affected further protocol data unit. Especially if the second communication layer comprises a plurality of sub-communication layers, also called protocol layers, further protocol data units derived from the first protocol data unit are present in the second communication layer, which in each case provide additional and protocol-dependent information in the direction of the bus-related sub-communication layers are equipped.
Korrespondierend zu dem vorgenannten bevorzugten Ausführungsbeispiel zeichnet sich ein weiteres bevorzugtes Ausführungsbeispiel des Beeinflussungsverfahrens dadurch aus, dass die Empfangs-Beeinflussungsschicht die weitere Protokoll-Dateneinheit und/oder die von der weiteren Protokoll-Dateneinheit abgeleitete erste Protokoll-Dateneinheit beeinflusst, indem die weitere Protokoll-Dateneinheit und/oder die erste Protokoll-Dateneinheit dekodiert wird, die erhaltene dekodierte und zu beeinflussende Information beeinflusst wird und die beeinflusste Information wieder zu der beeinflussten ersten Protokoll-Dateneinheit und/oder zu der beeinflussten weiteren Protokoll-Dateneinheit kodiert wird. Genau wie schon bei der Sende-Beeinflussungsschicht erläutert, wird die erste Protokoll-Dateneinheit oder die weitere Protokoll-Dateneinheit soweit entpackt, bis die zu beeinflussenden Daten "freiliegen" und daher einer Beeinflussung zugänglich sind, woraufhin die beeinflussten Daten durch Kodierung wieder "verpackt" und dem Datenfluss der Buskommunikation wieder zur Verfügung gestellt werden. Durchzuführende Manipulationen bzw. Fehlereinstreuungen betreffen beispielsweise das Ausfallenlassen und/oder eine Verzögerung der Übertragung von Protokoll-Dateneinheiten, das Ausfallenlassen oder Verzögern einer Empfangsbestätigung, die Beeinflussung von Rohdaten, Update-Bits, Checksummen, Countern und Signalen/Daten. Corresponding to the aforementioned preferred embodiment, a further preferred embodiment of the influencing method is characterized in that the receiving influencing layer affects the further protocol data unit and / or the first protocol data unit derived from the further protocol data unit by the further protocol data unit and / or the first protocol data unit is decoded, the resulting decoded information to be influenced is influenced and the influenced information is again coded to the influenced first protocol data unit and / or to the affected further protocol data unit. Exactly as already explained in the case of the transmission influencing layer, the first protocol data unit or the further protocol data unit is unpacked until the data to be influenced are "exposed" and therefore accessible for influencing, whereupon the influenced data is again "packaged" by coding. and the data flow of the bus communication are made available again. Manipulations to be performed or errors in error relate, for example, to dropping out and / or delaying the transmission of protocol data units, dropping out or delaying acknowledgment of receipt, influencing raw data, update bits, checksums, counters and signals / data.
Wie zuvor schon angedeutet worden ist, wird bei einer weiteren bevorzugten Ausgestaltung des Beeinflussungsverfahrens aus der ersten Protokoll-Dateneinheit eine Mehrzahl von Protokoll-Dateneinheiten für eine Mehrzahl von Protokollschichten erzeugt und/oder wird in einer Mehrzahl von Protokollschichten aus einer Mehrzahl von Protokoll-Dateneinheiten die erste Protokoll-Dateneinheit abgeleitet. Dabei nimmt zwischen einer Mehrzahl von Protokollschichten eine Mehrzahl von Sende- und/oder Empfangs-Beeinflussungsschichten eine Mehrzahl von Beeinflussungen einer Mehrzahl von Protokoll-Dateneinheiten vor. Wenn dies innerhalb der zweiten Kommunikationsschicht erfolgt, dann sind die genannten Protokollschichten praktisch Sub-Kommunikationsschichten innerhalb der zweiten Kommunikationsschicht. Beispiele für Protokollschichten innerhalb der zweiten Kommunikationsschicht, also für Sub-Kommunikationsschichten innerhalb der zweiten Kommunikationsschicht, sind eine Hardware-Abstraktionsschicht und eine Hardware-Treiberschicht, wobei die Sende-Beeinflussungsschicht und/oder die Empfangs-Beeinflussungsschicht beispielsweise zwischen der Hardware-Abstraktionsschicht und der Hardware-Treiberschicht realisiert ist. Zusätzliche Beeinflussungsschichten können darüber hinaus oder alternativ realisiert sein. As already indicated above, in a further preferred embodiment of the influencing method, a plurality of protocol data units for a plurality of protocol layers is generated from the first protocol data unit and / or the plurality of protocol data units are used in a plurality of protocol layers derived first protocol data unit. In this case, a plurality of transmission and / or reception influencing layers occupy a plurality of influences of a plurality of protocol data units between a plurality of protocol layers. If this is within the second communication layer, then said protocol layers are practically sub-communication layers within the second communication layer. Examples of protocol layers within the second communication layer, that is to say for sub-communication layers within the second communication layer, are a hardware abstraction layer and a hardware driver layer, wherein the transmit influencing layer and / or the receiving influencing layer, for example, between the hardware abstraction layer and the hardware Driver layer is realized. Additional influencing layers can be realized beyond or alternatively.
Das erfindungsgemäße Verfahren zur Beeinflussung der Buskommunikation eines Steuergeräts lässt sich zwanglos in Zusammenhang mit bereits existierenden Standards einsetzen. Ein bevorzugter Anwendungsfall besteht darin, dass die bushardwareunabhängige erste Kommunikationsschicht gemäß der Automotive Open System Architecture (AUTOSAR) umgesetzt ist, die darauf ausgelegt ist eine Trennung zwischen Applikation und der zugrunde liegenden Hardware vorzunehmen. The method according to the invention for influencing the bus communication of a control device can be used casually in connection with already existing standards. A preferred application is that the bushardware-independent first communication layer is implemented according to the Automotive Open System Architecture (AUTOSAR), which is designed to separate the application from the underlying hardware.
Das erfindungsgemäße Verfahren hat den Vorteil, dass mit ihm praktisch beliebige Testszenarien unter Beibehaltung der beschriebenen Vorteile realisiert werden können. Das Verfahren ist beispielsweise problemlos mittels einer Softwareimplementierung auf einem Steuergerät durchführbar, insbesondere auf einem Serien-Steuergerät. Bei einer solchen Softwareimplementierung kann der der ersten bushardwareunabhängigen Kommunikationsschicht zugrunde liegende Code unberührt bleiben, das Serien-Steuergerät muss nur insoweit instrumentiert werden, als dass die Sende-Beeinflussungsschicht und/oder die Empfangs-Beeinflussungsschicht zwischen der ersten Kommunikationsschicht und der zweiten Kommunikationsschicht und/oder innerhalb der zweiten Kommunikationsschicht vorgesehen werden müssen bzw. muss. Insbesondere innerhalb der ersten Kommunikationsschicht vorgesehene Kommunikationsdienste werden unabhängig von der Sende-Beeinflussungsschicht und/oder der Empfangs-Beeinflussungsschicht getestet. The method according to the invention has the advantage that virtually any desired test scenarios can be realized while maintaining the described advantages. For example, the method can be carried out without problems by means of a software implementation on a control unit, in particular on a series control unit. In such a software implementation, the code underlying the bushardware-independent communication layer may remain unaffected, the series control device need only be instrumented insofar as the transmit influencing layer and / or the receiving influencing layer between the first communication layer and the second communication layer and / or must be provided within the second communication layer or must. In particular, communication services provided within the first communication layer are tested independently of the transmit influencing layer and / or the receiving influencing layer.
Zur Durchführung des erfindungsgemäßen Beeinflussungsverfahrens bedarf es eines Serien-Steuergeräts jedoch nicht. In einem bevorzugten Anwendungsfall wird das erfindungsgemäße Beeinflussungsverfahren mittels einer Softwareimplementierung auf einem emulierten Steuergerät durchgeführt, insbesondere beispielsweise auf einem mittels eines Hardware-in-the-Loop-Simulators in Echtzeit emulierten Steuergeräts. Besonders hervorzuheben ist auch hier, dass der der ersten bushardwareunabhängigen Kommunikationsschicht zugrunde liegende Code, so wie er später auf der endgültigen Zielhardware zur Anwendung kommt, auch auf einem emulierten Steuergerät zur Anwendung kommt und dort praktisch losgelöst von den implementierten Beeinflussungsschichten getestet wird. To carry out the influencing method according to the invention, however, a series control device is not required. In a preferred application, the influencing method according to the invention is carried out by means of a software implementation on an emulated control device, in particular, for example, on a controller emulated in real time by means of a hardware-in-the-loop simulator. It should also be emphasized here that the code underlying the first bushardware-independent communication layer, as it is later used on the final destination hardware, is also used on an emulated control device and tested there virtually detached from the implemented influencing layers.
Das erfindungsgemäße Verfahren ist ohne weiteres auch gänzlich "offline" durchführbar, also mittels einer Softwareimplementierung auf einem Zielrechner, der insbesondere nicht-echtzeitfähig ist. Auch hier ist wiederum der Code der ersten Kommunikationsschicht mit den darin enthaltenen Kommunikationsdiensten ohne weiteres so verwendbar, wie er später auf der finalen Hardware verwendet wird. The method according to the invention can also be carried out completely "offline", that is to say by means of a software implementation on a target computer, which is in particular non-real-time capable. Again, again, the code of the first communication layer with the communication services contained therein is readily usable as it will later be used on the final hardware.
Eine weitere vorteilhafte Ausgestaltung des Verfahrens zeichnet sich dadurch aus, dass die erste Kommunikationsschicht und/oder die zweite Kommunikationsschicht und/oder die Sende-Beeinflussungsschicht und/oder die Empfangs-Beeinflussungsschicht auf verschiedenen Recheneinheiten ausgeführt werden/wird, insbesondere auf verschiedenen Prozessoren oder auf verschiedenen Kernen eines Prozessors. A further advantageous refinement of the method is characterized in that the first communication layer and / or the second communication layer and / or the transmission influencing layer and / or the reception influencing layer are / is executed on different arithmetic units, in particular on different processors or on different ones Cores of a processor.
Im Einzelnen gibt es nun eine Vielzahl von Möglichkeiten, das erfindungsgemäße Verfahren zur Beeinflussung der Buskommunikation eines Steuergeräts auszugestalten und weiterzubilden. Dazu wird verwiesen sowohl auf die dem Patentanspruch 1 nachgeordneten Patentansprüche, als auch auf die nachfolgende Beschreibung von bevorzugten Ausführungsbeispielen in Verbindung mit der Zeichnung. In der Zeichnung zeigen: In particular, there are a variety of ways to design and develop the inventive method for influencing the bus communication of a control unit. Reference is made to both the claims subordinate to claim 1, as well as to the following description of preferred embodiments in conjunction with the drawings. In the drawing show:
In den
In
In Senderichtung wird von der zweiten Kommunikationsschicht
In
Ferner ist in
Selbstverständlich müssen nicht alle Protokoll-Dateneinheiten einer Beeinflussung durch die Sende-Beeinflussungsschicht
In
Anhand
Das Ausführungsbeispiel gemäß
In einem weiteren – hier aber im Einzelnen nicht dargestellten Anwendungsfall – wird auch das Steuergerät, auf dem das Verfahren zur Beeinflussung der Buskommunikation implementiert ist, mit einer echtzeitfähigen Hardware simuliert, das Verfahren wird also auf einem virtuellen Steuergerät in Echtzeit betrieben. Wesentlich ist auch hier, dass obwohl in dem letztgenannten Anwendungsbeispiel keine Steuergeräte-Hardware vorhanden ist, trotzdem die bushardwareunabhängige erste Kommunikationsschicht so verwendet werden kann, wie sie später auf einem Serien-Steuergerät verwendet wird, insbesondere können so auch exakt die Kommunikationsdienste erprobt und getestet werden, die Bestandteil der bushardwareunabhängigen ersten Kommunikationsschicht sind. In a further application, which is not shown here in detail, the control unit on which the method for influencing the bus communication is implemented is also simulated with real-time-capable hardware, ie the method is operated in real time on a virtual control unit. It is also important here that although no ECU hardware is present in the latter application example, the bushardware-independent first communication layer can still be used as it is later used on a serial controller, in particular the exact communication services can thus be tested and tested which are part of the bushardware independent first communication layer.
In
Claims (11)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201210104842 DE102012104842A1 (en) | 2012-06-05 | 2012-06-05 | Method for influencing bus communication of control device e.g. series control device, involves influencing protocol data units by receipt layer, and providing influenced protocol data units for processing of hardware dependent layer |
CN201310122307.4A CN103475552B (en) | 2012-06-05 | 2013-04-10 | Method for disturbing the bus communication of control device |
US13/900,008 US9940297B2 (en) | 2012-06-05 | 2013-05-22 | Method for manipulating the bus communication of a control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201210104842 DE102012104842A1 (en) | 2012-06-05 | 2012-06-05 | Method for influencing bus communication of control device e.g. series control device, involves influencing protocol data units by receipt layer, and providing influenced protocol data units for processing of hardware dependent layer |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102012104842A1 true DE102012104842A1 (en) | 2013-12-05 |
Family
ID=49579303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE201210104842 Withdrawn DE102012104842A1 (en) | 2012-06-05 | 2012-06-05 | Method for influencing bus communication of control device e.g. series control device, involves influencing protocol data units by receipt layer, and providing influenced protocol data units for processing of hardware dependent layer |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102012104842A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102020114742A1 (en) | 2020-06-03 | 2021-12-09 | Dspace Digital Signal Processing And Control Engineering Gmbh | Method and computer system for reading message packets |
-
2012
- 2012-06-05 DE DE201210104842 patent/DE102012104842A1/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102020114742A1 (en) | 2020-06-03 | 2021-12-09 | Dspace Digital Signal Processing And Control Engineering Gmbh | Method and computer system for reading message packets |
DE102020114742B4 (en) | 2020-06-03 | 2022-06-02 | Dspace Gmbh | Method and computer system for reading message packets |
US11558493B2 (en) | 2020-06-03 | 2023-01-17 | Dspace Gmbh | Method and computer system for monitoring message packets |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2801873B1 (en) | Test device for testing a virtual control device | |
DE19781804B4 (en) | Device for simulating a real-time process control | |
EP2685382B1 (en) | Method and device for producing and testing a control device program | |
EP2950175B1 (en) | Process and apparatus for the test of a control device | |
DE102010062266A1 (en) | Method for implementing at least one additional function of a field device in automation technology | |
EP2925025B1 (en) | Computer implemented method for implementing a Car2x application | |
EP1906377A1 (en) | System and method for integrating a process control system into a training simulator | |
EP3001313A1 (en) | Methods for simulating an application program of an electronic control device on a computer | |
DE102011077318B4 (en) | Simulation system, method for carrying out a simulation, control system and computer program product | |
EP2595016A1 (en) | Method, computer program, computer-readable medium and computing unit for operating field devices | |
EP3451202B1 (en) | Method for generating a model of a technical system which can be run on a test device and a test device | |
DE102011077319A1 (en) | Simulation system, method for carrying out a simulation, control system and computer program product | |
DE102016124623A1 (en) | Method for creating a model compatible with a simulation device | |
EP2672660B1 (en) | Method for influencing the bus communication of a electronical control unit | |
DE102014101321A1 (en) | Test device for testing a virtual controller | |
DE102011077317A1 (en) | Simulation system, method for carrying out a simulation, control system and computer program product | |
DE102016218429A1 (en) | A method of operating multiple devices of different types on a network of a rail vehicle | |
EP2446331A1 (en) | Emulation of an automation system | |
DE102012104842A1 (en) | Method for influencing bus communication of control device e.g. series control device, involves influencing protocol data units by receipt layer, and providing influenced protocol data units for processing of hardware dependent layer | |
EP2682865A1 (en) | Method for communicating with a control programme of a control device and application modules for same | |
DE102021206985A1 (en) | System for processing data | |
DE102017130842A1 (en) | Configuration system for configuring a test system suitable for testing an electronic control unit | |
WO2020057958A1 (en) | Method and device for configuring an access protection system | |
DE10252109B4 (en) | Method for parameterization | |
EP3193221A1 (en) | Signal path checking device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |