Method for communication between electronic control devices in a communication system and such a communication system, in particular for a motor vehicle, and corresponding motor vehicle
By adapting message length based on operating states and using implicit 'Alive' signals, the method reduces energy consumption and maintains efficient communication in vehicle control unit systems.
Patent Information
- Application Number
- PCT/EP2025/057556
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-28
- Filing Date
- 2025-03-19
- Publication Date
- 2025-12-04
AI Technical Summary
Existing communication systems between electronic control units in vehicles consume excessive electrical energy due to unnecessary transmission of unchanged data, which is inefficient and wasteful, particularly in battery-powered vehicles.
Adaptive message transmission methods that adjust the length of data frames based on the operating state of the sender component, using length information to switch between different payload formats and omit unnecessary data transmission, while maintaining the 'Alive' signal implicitly through varying length information.
Significantly reduces energy consumption by minimizing unnecessary data transmission and maintaining system functionality, offering energy savings and cost benefits.
Smart Images

Figure EP2025057556_04122025_PF_FP_ABST
Abstract
Description
[0001] Methods for communication between electronic control units in a communication system, and such a communication system, in particular for a motor vehicle, and a corresponding motor vehicle
[0002] The invention relates to a method for communication between electronic control units in a communication system according to the preamble of claim 1. Furthermore, the invention relates to such a communication system.
[0003] Due to the widespread need for energy conservation measures, technical solutions for data transmission should be developed to reduce and / or optimize electrical power consumption during bus message transmission. Furthermore, the use of energy-efficient hardware should be enabled. However, the information content transmitted through communication should not be reduced; that is, every signal change should still be signaled promptly. In addition, selecting low-energy transmission protocols and standards is crucial to maximizing data transmission efficiency.
[0004] From DE 102012 200 997 A1 a method is disclosed which enables the verification of the correct function of a serial data transmission in a communication bus with multiple participants, using a bus connection unit.
[0005] The object of the invention is to provide a method and a corresponding communication system which enables efficient data transmission, thereby reducing communication at least partially and thus enabling energy savings.
[0006] This problem is solved according to the invention by a method for communication between electronic control units in a communication system with the features of claim 1 and by means of a communication system according to claim 10. A motor vehicle according to claim 11 also solves the problem. Advantageous embodiments of the invention are the subject of the dependent claims and the description. One aspect of the invention relates to a method for communication between electronic control units in a communication system, in particular a vehicle communication system, i.e., a communication system in a motor vehicle or, in short, a vehicle. In the method, it is provided that respective messages (bus messages), also called messages or telegrams, are transmitted from a sender component (sending control unit) to at least one receiver component (receiving control unit) by means of a communication bus.As non-exhaustive examples of such a communication bus, a CAN bus (CAN - Controller Area Network) or a LIN bus (LIN - Local Interconnect Network) can be considered for illustrative purposes. The messages contain a message identifier, also called an "object identifier," for unambiguous assignment to the corresponding sender component and for describing or indicating which information is contained in the so-called payload of the message—for example, whether a current temperature value or a current torque value is signaled in the data field / payload. Generally, a message can specify at least one current value for a given operating variable, such as a measured value and / or state variable and / or a control command, so that its temporal progression (time signal) is signaled by means of successive messages.
[0007] The information contained in the message identifier regarding the payload is referred to below as the "information type," in contrast to the actual or concrete "information." For example, in the case of the information type "temperature," the concrete information could be "68°C." Accordingly, the message identifier must also specify how the (raw) bit sequence in the payload data field (i.e., the payload data) is to be processed or interpreted, for example, whether it is to be interpreted as an integer value or a float value, to name just a few examples. The "information type" can also be a combination or series of several values (a so-called array of values), such as a series consisting of a temperature value, a speed value, and a gear selection value.
[0008] The message identifier of a message can be specified in its header. Following the header, the data field containing the payload can be located. The message can then end with a tail, which may contain a checksum of the message (e.g., for a CRC - Cyclic Redundancy Check). To enable the receiving component to determine where the data field in the payload ends and the tail begins, i.e., to signal the length of the data field, the header can also contain a length value, such as an n-bit integer value (e.g., n=4 results in 4 bits of length information with possible length values in the range of 0 to 15, often expressed in bytes).
[0009] When designing or planning a communication system with a communication bus, a message catalog can be used to compile all possible combinations of each sender component and the types of information it sends (which values or arrays of values) as they might occur or be transmitted during the operation of the communication system. Each combination of sender component and its information type is then assigned a unique message identifier. From this message identifier, a receiver component can determine which sender component the message originated from and which type of information (e.g., temperature, rotational speed, or an array of different values) is contained as the message payload.When planning the communication system, the respective length information for messages of this message identifier is also necessarily required for each information type, because it must be determined how the user data of the respective information types are encoded (number of bits and quantization), and the length information is derived from the number of bytes required for a message.
[0010] The transmission of messages in a communication bus can occur according to a predefined transmission schedule or transmission grid. This means that a sender component is then forced to cyclically send messages with a predefined message identifier in prescribed time slots of the transmission grid. This is the case even if there is no change in the values of the payload information; that is, a message with the identical payload or identical user data as in the last time slot would have to be sent. The invention is based on the understanding that this leads to unnecessary energy consumption not only in the sender component but also in the communication bus itself and in every receiver component.While the transmitting component consumes energy in its bus controller, the state changes required to transmit message bits can also involve electrical energy consumption within the communication bus itself, as the voltage level in the bus line must be changed or even reversed. In the receiving component, the bus controller must check whether the received messages are actually intended for the receiving component (a hardware filter can be used for this purpose). Furthermore, the values from the payload are processed further in the receiving component, often regardless of whether the values have changed compared to the previous message. Therefore, in the case of unchanged values, electrical energy is consumed for unnecessary recalculations.
[0011] Such unnecessary electrical energy consumption can be saved or at least reduced by the invention by eliminating the need to transmit unchanged values multiple times without violating the transmission grid. This is based in particular on the understanding that values remain unchanged in certain operating situations / states of the transmitter component or a device coupled to it, for example, when the engine is switched off in a vehicle, so that the speed value always remains at zero.
[0012] Even with event-driven message transmission (as opposed to a fixed transmission schedule), the invention has identified unnecessary energy consumption when the message contains an array of multiple values as payload. Even if only one or some of these values change, this generates a transmission event, and according to the message identifier, all values must then always be sent in the order defined for the array. This means that even the unchanged values are sent, which, as described above, leads to an unnecessarily long message and corresponding energy consumption for its transmission and processing.If all unchanged values were not sent, the result would be a shorter array and thus reduced energy consumption when transmitting the message, but it would not be clear to the receiver component how to decode the shortened array, because it is unknown which values it is currently signaling.
[0013] While the focus here is on saving energy when sending individual bytes or bits—that is, small amounts of energy for a single message—the invention recognizes that messages with a specific message identifier can be sent up to one hundred times per second. This means that during operation of the communication system, for example, while a vehicle is in motion, several megabytes of user data may be transmitted unnecessarily. Therefore, simply shortening messages with a given message identifier as needed can lead to significant energy savings. Particularly in purely battery-powered electric vehicles, such a reduction in consumption through message shortening offers a significant technical advantage.
[0014] According to a further insight of the invention, the aspect of shortening messages can also be used for cost savings in another respect. The regular transmission of messages may be necessary for a transmitter component for the following reason: If an operational error occurs in the transmitter component and it therefore stops transmitting completely, or if the values are erroneously not updated, a receiver component would not be able to distinguish this error state from the state where there is "simply" no change in the operational value, since both cases would result in the absence of messages. Thus, the transmission of messages implicitly indicates, at least, the proper functioning of the transmitter component's transmitting device.This can make sending messages mandatory, because otherwise an error state would have to be assumed. However, simply sending unchanged data only signals that the sending device is functioning; according to the OSI model, an ALIVE state is therefore preferably created in the function where the recalculation of the payload takes place. In this way, the receiver is signaled that the sender is now functioning, not just the sending device.
[0015] If the payload remains unchanged in successive messages and is repeatedly transmitted cyclically without any changes, a receiver component cannot distinguish this from an error case where, due to a fault (e.g., an infinite loop) in the sender component, the transmit buffer of the sending device is not updated. Simply sending unchanged data therefore only signals the functionality of the sending device (e.g., bus controller). This means that changes to the payload (operating variable values) may exist and should actually be signaled, but the transmit buffer containing the outdated payload is no longer updated, and therefore the same messages are always sent by the bus controller of the sender component.
[0016] To detect this type of error, it is not enough to simply send a message regularly. The messages must also contain a time-varying "alive" signal, indicating proper operation of the sending component. This signal must be regenerated by the sending component with each message. In the current state of the art, an "alive" counter (e.g., a 4-bit counter) can be transmitted in the payload, which is updated with each message sent. According to the OSI model, the "alive" counter is generated in the function where the recalculation of the payload data takes place. This signals to the receiver that not only the sending device but also the function of the higher layer is working. The sending device does not even necessarily have to be integrated into the processor. The actual payload data (values of the operating parameter to be signaled) is thus augmented by an "alive" counter.Only then does sending messages implicitly provide complete evidence of the proper functioning of the sender component, namely when the recalculation performed is signaled with an "Alive" state in the data field.
[0017] However, in the operation of the communication system, this can lead to the necessity of transmitting large amounts of data simply to transfer the Alive counter in each message, and generating these messages at a certain minimum rate (number of messages per unit of time), even if the other values of the payload remain unchanged.
[0018] One embodiment of the invention offers the possibility of eliminating the need to transmit the Alive counter in every message without losing the Alive signal itself. Furthermore, it provides the ability to "pause" messages without this being interpreted as an error by a receiving component.
[0019] The invention provides that, in order to save energy, the transmission of irrelevant information and thus data bytes is avoided as much as possible, while retaining the relevant and therefore essential features of the communication system.
[0020] The measures proposed here can be broken down into the following aspects, which will be explained in more detail below:
[0021] 1. Shortening of messages depending on the current operational situation
[0022] 2. Pause / channel switching, possibly in DATAO -> Timeout monitoring
[0023] 3. Alive in DATAO (further abbreviation)
[0024] 4. Alive through messages of varying lengths (the Alive signal as a transmitted quantity can be completely omitted)
[0025] 5. Length information DLC itself as pause or alive (adjustment of the standard) 1. Shortening of the messages
[0026] The invention proposes that for one or more message identifiers, several variants (i.e., several different payload formats) are defined with respect to the configuration of the user data of the corresponding messages. This allows the system to react to the current operating situation (operating state) of the sender component or a device coupled to it by taking the operating situation into account when generating or compiling the user data and switching to a variant assigned to that operating situation. This eliminates, for example, the need to enter the rotational speed mentioned in the example above into an array of the payload. In general, it is therefore unnecessary to send a value that remains unchanged in the operating situation within a message with a given message identifier, even if another operating situation requires signaling this value / operating parameter.If a value remains unchanged in a specific operating situation (e.g., because a related device is switched off), the message variant whose payload does not contain this value by definition can be selected. The above example can then offer the following potential savings: If a message in a vehicle's communication system, for example, is to contain an array with several values (different operating parameters), one of which is engine speed, then if the vehicle switches off the engine, for example, due to start-stop operation, the array can be shortened by omitting the engine speed value from the array (because the engine speed is currently irrelevant). Thus, one could define a variant of the array for the message identifier that includes the engine speed value and the operating parameter value, and a variant that does not.With the engine running, the system can switch to the variant where the rotational speed value is part of the array. In general, the invention offers the possibility of energy savings through reduced communication. The control software of the transmitting component can thus select the variant (payload format) to be used in the message based on the current operating situation, set the corresponding length value in the message length information, and generate the payload according to the selected variant.
[0027] However, the receiver component must be able to recognize which variant is present in a currently received message. Since the array has shortened, the invention allows the variant in use to be signaled by a corresponding change in the length information in the message header (and thus, in particular, without violating the communication standard). The length information therefore acts as a variant switch in the receiver component for toggling between different variants of the payload format. The length information controls which of several predefined processing routines for the message identifier is to be executed in the receiver component. It should be noted that the length information thus not only indicates how long the array or, more generally, the payload is (how many bytes it contains), but also allows a different variant for decoding the bytes to be specified depending on the length value, because, for example, if a value is missing (e.g.,(e.g., rotational speed), other values in the array must "move up," meaning they occupy a different position in the array, compared to the case where the array is created in its intended full length with all values according to the message identifier. In particular, the length value in the length information of a message header controls or switches the processing or interpretation of the message's payload in the receiver component. Messages with the same message identifier but different length information can therefore be processed by different processing routines in the receiver component. To remain standards-compliant, the length information should preferably always specify the length information of the payload as defined by the standard (an exception is described below for a message without a payload).
[0028] This can be used, as described, to define a predefined subset from an array of values (each specifying a different operating parameter) that are entered in a shortened version of the array or that constitute the payload of this shortened version. Thus, there is a length value for the full version of the array and one or more length values that signal a respective shortened version of the array; that is, at least one operating parameter / at least one value is missing in the shortened version. A missing value has the advantage that fewer bits are transmitted on the communication bus, thus saving energy, and the value does not need to be processed by a software function in the receiver component, which again saves energy. A specific format of the array, i.e.,The order and type of the entered values are known for each variant in the receiver component, and the corresponding processing of the array is switched accordingly based on the length information. The receiver component can be configured to replace the missing value in the message with the last available value or even to use the calculated processing result of that value, meaning that the information content itself is not lost. The solution according to the invention can even be designed to the point that different information types can be assigned to the same message identifier based on different length values of the length information, i.e., not just abbreviated information types (e.g., arrays) or subsets of operational parameters compared to a "full version" of the information type.
[0029] This switching between functionally different types of information can also be used to reduce the number of different message identifiers that a specific receiver component must be able to recognize as relevant using its hardware filter (messages with different message identifiers are discarded in the receiver component). This allows for an increase in the number of signals transmitted with the same message identifier across different messages. This enables improved utilization of the hardware filter in the receiver component, which can lead to a reduction in the number of messages with different message identifiers that would otherwise have to be received, thereby reducing the processing load and the associated energy consumption in the processor.
[0030] A further advantage of the invention is therefore based on the (more pronounced) use of the hardware filter, in which messages that are not intended for the respective recipient do not have to be filtered out by the software, thereby simplifying the processing routines and saving electrical energy.
[0031] 2nd break
[0032] The described switching between functionally different information types is possible if the different information types also result in different payload lengths. The same message identifier, which for a first length value of the length information can signal, for example, an array of values for different operating parameters (temperature, speed, etc.), can, for a second length value, especially a smaller one, signal, for example, a transmission pause by the transmitter component or a change in the transmission grid. In this variant, the payload can then signal, for example, the pause duration and / or the new transmission grid as a value. This is then unrelated to the operating parameters intended for the first length value. The receiver component can then provide a corresponding processing routine for the second length value, for example, a wait routine.Switching to a PAUSE or extending the transmitter grid is preferably helpful in an operating state where the operating parameters do not change.
[0033] Furthermore, administrative messages, such as the described announcement of a broadcast break or the switching between broadcast grids, can be integrated without the need for a new message identifier.
[0034] In particular, a payload can be shortened to the point where it consists of only one byte, meaning there is only one value in the first byte (DATAO) of the payload. This value can then signal the aforementioned pause duration or the new transmission grid.
[0035] 3. Alive at DATAO
[0036] Another example of data length reduction to one byte (DataO), where instead of an operating size or a mixture with an operating size is transmitted, is the transmission of an Alive signal.
[0037] In a safety-oriented data transmission, in addition to a checksum (correctness of the data), an Alive counter is also transmitted to indicate the data's freshness. Since operational parameters do not necessarily change, the case where the data has not been updated due to an error at the sender, as described, is indistinguishable from correct behavior under a constant operating state at the receiver. The Alive counter thus serves to differentiate between a correct data transmission with unchanged values and the case of "frozen" values due to an error. The Alive counter applies to the entire data array and signals to the receiver that the sender has reassembled and transmitted the data packet.
[0038] Here, the length information can be set to the value 1, and an Alive signal, e.g., an Alive counter, can be transmitted in the single byte of the payload. If the Alive signal is only intended to trigger a change in successive messages, then the Alive counter does not need to occupy the full 8 bits of the DATAO. Instead, for example, 6 bits can be used for an operating value and 2 bits for an Alive counter, which can be incremented cyclically, e.g., with 0, 1, 2, 3, in four consecutive messages. 4. Alive signal through messages of varying lengths
[0039] A further reduction in brevity is achieved by implicitly deriving the Alive signal from a change in the receiver component detectable in successive messages. In other words, no explicit Alive counter value is sent.
[0040] Thus, in a constant operating state, a message can be sent with only one Alive counter (variant 3 above), or, in an even more energy-efficient variant, any status information can be sent, whereby every second message is sent without a data array (payload) and therefore with a length information of 0. The Alive state of the sender is communicated to the receiver by changing the length information from 0 to another value.
[0041] In one variant, the invention generally proposes to eliminate the Alive counter as a marker for updating the data array (payload) and thus the transmission memory in the transmitter, and instead to send messages of varying lengths, and thus with varying length information in successive messages. In this way, the change in length information takes over the functionality of the Alive counter / Alive signal.
[0042] The sender component can alternate between sending DATAO with a value of an operating parameter and then no data block (no payload) in successive messages, so that the length information alternates between 1 and 0, resulting in a change that can be evaluated as an Alive signal in the receiver component.
[0043] If there is no operating value to transmit (no change in an operating parameter), an energy-saving value can be transmitted in DATAO instead, which can be a value corresponding to the idle level in the data bus, i.e., in the case of a CAN bus, "FF" (hexadecimal for 8 bits set to 1).
[0044] The Alive signal can thus be generated in the receiver component purely from the length information (DLC) that changes with each message, and is no longer explicitly transmitted as an Alive counter value.
[0045] This can therefore be implicitly interpreted in the receiver component as an alive state of the sender component, and thus error handling (error: sender component not alive) can be suppressed in the receiver component. This embodiment is referred to below as "alternating shortening".
[0046] 5. Alternative use of length information
[0047] In connection with switching between functionally different information types (payload and pause announcement), a message without a payload can also be defined by entering the pause length in the length information control field. In this implementation, the value entered as length information does not correspond to the actual length of the payload (i.e., 0), which might not be feasible in a current bus standard without further modification. This could be compensated for or taken into account in the receiver component by ensuring that the supposed "length value" according to the length information actually represents a pause information value, i.e., a pause value. Multiple different pause values can also be provided. The pause value can signal the pause length in an encoded manner, e.g., 1 = 1 ms, 2 = 10 ms, 3 = 50 ms, 4 = 100 ms, 5 = 1 second.Similarly, the next transmission grid can be signaled via at least one predefined grid value in the length information control field. The receiving component can then adjust its operation accordingly.
[0048] In a missing payload (payload of length 0, no bytes), a further development process uses the bit field (control field) of the length information itself as a value to signal an operating parameter or an alive counter. If the control field of the length information serves as the alive counter, several messages can be sent consecutively without a payload, and yet the alive signal is still available in the receiving component.
[0049] Analogous to the described functionality of the pause information or transmitter grid switching, the data fields for the DLC (generally the length information) could also be used to transmit an Alive signal. In the embodiments proposed here, an adaptation / extension of the standard is required.
[0050] To ensure that the receiver recognizes and takes into account that the message has no payload and that the length value in the length information bit field is a data value and not a length specification (which would have to be 0, meaning the length value is specifically not equal to 0 in this implementation), a different flag or bit in the message header can be set accordingly to signal this. This can be a flag that is declared as undefined or free according to the bus standard used (so-called "reserved flags"), or a flag for a zero payload can be explicitly defined.
[0051] The five aspects described can be implemented individually or in combination using the following features.
[0052] To clarify, it should first be mentioned again that it is also possible that, for example, a single or a large number of receiver components can be arranged in the communication system, which enables the message identifier to identify the sending sender component and thus to assign the information in the message.
[0053] In particular, the control units can also change roles during message transmission, whereby, for example, the transmitter component can also switch to a receiver component and one of the receiver components to a transmitter component. Specifically, each control unit can act as both a transmitter and a receiver component, as is known in the prior art.
[0054] In a specific example, CAN communication (Controller Area Network communication) using a CAN bus can be applied for communication between the sending component and at least one receiving component in a vehicle system for a motor vehicle, particularly a passenger car. The message identifier is referred to here as the CAN ID, and the length information is called the DLC (Data Length Code).
[0055] Furthermore, the transmission of messages via the transmitter component is also provided for in the invention to be event-driven or at fixed times or in predetermined time grids or time intervals (transmitter grid). Moreover, the sending of messages via the transmitter component is preferably also intended to inform at least one receiver component about the "alive" state, an active state, or a life sign of the transmitter component at corresponding times. The invention imposes no restrictions on this for those skilled in the art.Communication is also uniquely assigned using the defined message identifier, message identification number, message ID, or object identifier, which is sent by the sender component and is therefore known to the receiver component in order to identify or recognize this sender component and to correctly capture, decode, and / or assign the information from the message.
[0056] In order to solve the problem of the invention and thus enable effective data transmission, by means of which communication is at least partially reduced and thus energy savings are made possible, it is provided that a respective length information or, in the case of a CAN bus, the DLC (English "data length code") is entered or specifically modified in a control field in a corresponding header of a respective message and is used as an input for a variant switch in the at least one receiver component.
[0057] In this context, a variant switch or configuration switch is a logical component used in both the transmitter and receiver components to select and control different configurations or options of the communication system, especially the respective message content, depending on an input, without having to make any physical changes.
[0058] The required communication and the amount of information / operational parameters to be transmitted are derived from the operating state / situation. The total amount of information determines the number of data bytes and thus the DLC (length information).
[0059] The messages are formed in the sender and "unpacked" in the receiver. The rule governing this packing and unpacking is stored in the operating software's program code and, in this case, is derived from the message ID in combination with the respective length information (in the case of CAN, this is DLC).
[0060] The message is sent or transmitted with the length information entered or specifically modified in the header as input for the variant switch. The variant switch is thus configured to apply predefined functions or procedures based on this input in order to read, evaluate, and apply the variant-specific information transmitted in the data field. Because the length information is entered or specifically modifiable, it can be viewed as a variable used as input for the variant switch.
[0061] Accordingly, it is possible for the sending component to encode or package data within the data field, specifically depending on or according to the adapted length information. The at least one receiving component can then, using known specifications from the variant switch and the captured length information, unpack / decode and interpret the data within the data field. Thus, with each transmitted length information, a predefined sequence of information or further combinations within the respective data bytes in the data field can be transmitted and received and unpacked accordingly.
[0062] The variant switch thus enables the communication to be adapted to different communication scenarios (operating situations) or communication system states. Therefore, the inventive method for efficient communication in the communication system or vehicle system is intended to require less communication or information transmission, thereby reducing the load on the communication system and at least partially reducing energy consumption.
[0063] In summary, the length information for messages with a predefined message identifier can be adapted, thereby increasing communication flexibility. This allows the transmission of specific information to be adjusted as needed without having to redefine the entire message and assign it a new message identifier. The adaptive length information is used for the variant switch, which can capture different information on different data bytes within the data field.
[0064] In an advantageous embodiment of the invention, a data field of the message is shortened and / or lengthened depending on the entered or specifically modified length information and / or the current operating state of the sender component (a shortened version of an array with a predefined array structure, in order to avoid transmitting unnecessary values). The actual application of the length information is also intended to be used to adapt the data field depending on the value of the length information. This situational adaptation aims to transmit only a small corresponding number of data bytes in the data field when, for example, the length information value is low. If a larger amount of information needs to be transmitted, the value of the length information and the number of data bytes to be transmitted can be increased accordingly.In this way, in addition to the number of data bytes, the order or type of information transmitted in the data bytes can also vary, whereby the receiver component knows these variations, which can be read depending on the length information and the variant switch and whose information can be correctly unpacked.
[0065] In an example CAN communication, a length information (DLC) value of 5 could represent a sequence of 5 data bytes (DATA0-DATA4), each containing a specific value in the data field (Data). Each byte could be used for a particular process parameter (e.g., speed, gear, torque, coolant temperature, engine oil temperature). If the length information (DLC) is changed to a different value, such as 3, the order of the process parameters in the data bytes (DATA0-DATA2) could be altered. Alternatively, different process parameters (e.g., speed, torque, ambient temperature) could be transmitted in the data bytes (DATA0-DATA2), rendering the sequence and / or process parameters from the previously mentioned length information value of 5 invalid.
[0066] In an advantageous embodiment of the invention, it is provided that, given a length information with a predefined value (e.g., a CAN DLC value of 1 for a length of 1 byte), the receiver component derives a pause time until the next message from a value (in the CAN example, from DATAO) of the message's data field. In the example DLC=1, this means that the single transmitted data byte of the payload contains information about the duration of the subsequent pause until the next message (pause message).In one embodiment, it can be provided that the transmitter component sends a message with the value 99 or 98 in DATAO as a pause message; then 98 transmitter grids (transmission time slots) do not send a message, then send an information message with an updated value of at least one operating parameter, then the described pause message again, and then there are 98 pause grids again, thus turning, for example, a 10ms grid into a 1s grid.
[0067] Additionally or alternatively, it is provided that, in the case of length information with a predefined value (e.g., in the alternative variant, also with a DLC value of 1), a switch to a different sender grid for future messages is derived from a value (from DATAO) in the message's data field. This switch is known to the receiver component. For example, in the case of the aforementioned length information with the value 1, information in the first data byte of the data field (DATAO) could signal, for example, transmission intervals and thus the switch to a different sender grid. A value between 1 and 5 could be transmitted, where 1 equals 1 ms, 2 equals 10 ms, 3 equals 50 ms, 4 equals 100 ms, and 5 equals 1 s.This design can be used to prevent an unnecessary or unwanted reaction to the monitoring of message transmission for a time interval defined by the information transmitted. If data transmission fails for a defined period (timeout) after a reception time expected according to the previous sender grid, the receiver might otherwise switch to a backup program. The concept of the pause or grid switching is based on sending each message with a data byte, which represents a length information value (DLC = 1). This data byte contains the pause time or the specific grid in which the message will be sent in the future, or the grid in which a message failure is to be monitored.To extend the pause time, for example, a new pause time can be specified in the next message, thus specifying the time intervals between messages depending on the information transmitted regarding the respective pause times.
[0068] In an advantageous embodiment of the invention, it is provided that, given a length information with a predetermined value, an Alive state of the sender component is derived by the receiver component from a value in the data field of the message. As a special case, it can be covered that a transmission of the length information with the value 1 (DLC = 1) signals that an Alive counter is transmitted in the single data byte (called DATAO in the case of CAN), i.e., a cyclic counter value that is incremented with the message and ensures that successive messages differ in at least one bit.
[0069] As previously described, the Alive state can even be derived without explicitly transmitting an Alive counter. In an advantageous embodiment of the invention, the Alive state is derived by the receiver component from changes in the length information in successive data packets, for example, alternating between a first and a second value. The receiver component infers the existence of the Alive state when it detects a change in the length information in successive messages. If the length information remains unchanged in successive messages, this can be interpreted as an indication of the described malfunction in the sender component.
[0070] In this embodiment, the messages for communication can be shortened to such an extent that, in an advantageous embodiment of the invention, the alive state is signaled by the transmitter component through an alternating change between 1 as the first value and 0 as the second value; that is, messages with a payload length of 1 byte and 0 bytes (no payload) are sent alternately. For messages with the length information having a first value of 1, a value of a predetermined status information is transmitted in the data field, for example, a value of an operational parameter. Message transmission without a data block (DLC = 0) also advantageously serves to avoid transmission in certain operating modes in which the data does not change, and simultaneously prevents timeouts because the transmitter grid is still maintained.
[0071] If no change in the operating parameter is present for the messages containing length information 1 (because, for example, the transmitter component is in standby mode or the operating parameter remains unchanged in the current operating situation), a further reduction in power consumption can advantageously be achieved by inserting an energy-efficient signal level, corresponding to the quiescent level of the communication bus, into the data field instead of the value itself, in an advantageous embodiment of the invention when the operating parameter remains unchanged compared to the last transmission. In the case of the CAN communication bus, this value can be FF (high level). In general, a value is thus transmitted that signals an unchanged status.Unchanging status information in successive messages from the sender component is thus replaced with an energy-efficient signal level, or it signals that the information has not changed and therefore, for example, the previously transmitted value can be reused. Thus, it is intended that energy-efficient signal transmission is used, in which messages whose information has not changed are transmitted with the energy-saving signal level. In the example of the CAN bus, however, the high level can also be used to transmit messages in an energy-efficient yet reliable manner.
[0072] In an advantageous embodiment of the invention, a change in a reserved bit from the control field, in combination with the message length information, derives a value from the length information as an operating parameter and / or a pause length and / or as an alive counter value and / or as an indication of an operating state, and the length of the data field is assumed to be zero. This variant can only be implemented by extending the standard. Each length information value is thus assigned a different meaning; it is not a length specification for the payload, but rather, for example, a specific pause time until the next message. For instance, all length information values greater than 1 can represent a pause of 1 ms, thereby providing a 1 ms time interval for interrupting the cyclic message transmission or the transmission grid.Additionally or alternatively, the live state of the transmitter component is derived from a change in a reserved bit or reserved control bit from the control field in combination with the message length information. Specifically, certain reserved bits are intended to be used, for example, in the CAN frame, particularly in the control field, to transmit information that, depending on the specified length information, activates the variant switch differently. For example, a reserved bit rO could have the value 1 and thus activate a predefined first variant switch that knows the predefined evaluations. A reserved bit rO with the value 0, on the other hand, could activate an alternative second variant switch that is only set to pause times and reads the length information 1 and the information of the corresponding data byte in the data field.Accordingly, an increase in the number of combinations and information, as well as the quantity of different variant switches, would be possible to improve the use of the transmitted, especially small, information. Since the Reserved bit is automatically transmitted in the control field, this information can be particularly useful without increasing data transmission. Several different values, such as operating size and Alive counter, can be combined. When using the Reserved bit, it would also be possible to apply it directly as information for the Alive state of the transmitter component, while the length information is set to 0, thus preventing the transmission of any data field. Alternatively, the length information field could be used not for a length value, but for a different value of an operating size and / or an Alive counter.
[0073] The following advantages can be achieved through the described configurations or through a combination of several of these configurations: a) shortening messages b) omitting messages (pause) c) omitting signal content such as ALIVE and using other mechanisms to generate ALIVE d) using energy-saving levels
[0074] Another aspect of the invention relates to a communication system comprising a communication bus for message transmission between electronic control units, in particular transmitter and receiver components or vehicle components. The communication system is designed so that individual messages, each with a unique message identifier for unambiguous assignment to a corresponding transmitter component, can be transmitted from the transmitter component to at least one receiver component. The length information of each message can be entered or selectively modified in a corresponding message header and can also be used as input for a variant switch in the at least one receiver component.
[0075] In summary, the invention aims to reduce data transmission by shortening the data frames of a message using the inventive method and the corresponding communication system. To achieve this, it is proposed to use length information as input for a variant switch of a receiver component. This length information shortens the data frames, even to the point of omitting the transmission of a corresponding data field. The variant switch allows for the transmission of transmission pauses and live states of the sender component, thereby significantly reducing data transmission. This enables the reuse of a message identifier across different messages, while simultaneously providing length information for use by a variant switch.The message identifier / ID and length information specified in the header trigger a predefined format for packaging (in the sender component) and unpacking (in the receiver component) the message. This application can be implemented particularly well within a CAN standard. In an alternative to the CAN standard, the proposed concept can be transferred to a LIN bus, where the slave shortens the message to the portion relevant to the current operating state, and where the master knows which content is transmitted in a shortened message and how it should be used.
[0076] Further features of the invention will become apparent from the claims, the figures, and the description of the figures. The features and combinations of features mentioned above in the description, as well as the features and combinations of features mentioned below in the description of the figures and / or shown in the figures alone, are not only usable in the combinations specified, but also in other combinations or on their own.
[0077] The invention will now be explained in more detail with reference to a preferred embodiment and the drawings. The drawings show:
[0078] Fig. 1 In a diagram, a communication system to illustrate a method for communication between two electronic control units, particularly taking into account reduced data transmission; and
[0079] Fig. 2 is a diagram illustrating changes in length information in a message and their effects.
[0080] Fig. 1 shows a communication system 10 in a diagram illustrating a method for communication between electronic control units, particularly with regard to reduced data transmission and the resulting energy reduction. In this method, a communication bus 12 is used to transmit messages with a unique message identifier for unambiguous assignment to a corresponding sender component 14. Accordingly, the sender component 14 transmits the uniquely identifiable message to at least one receiver component 16.
[0081] In addition, the respective length information DLC (engl.: “data length code”) of each message is entered in a corresponding header of the message and used as an input for the variant switch 20 in at least one receiver component 16.
[0082] The central component of this communication system 10 is the communication bus 12, which in this case is represented as a CAN bus (Controller Area Network bus). The communication bus 12, or CAN bus, is part of the communication system 10 and enables data exchange between various control units / functional units, for example, of a vehicle. Furthermore, it is also possible for a large number of receiver components 16 to receive a uniquely assigned message from the transmitter component 14. Accordingly, the transmitter component 14 and the receiver components 16 are electronically coupled or connected via a CAN bus, which is the communication bus 12.
[0083] The transmitter component 14 can, for example, be a control unit for an engine control system in the vehicle, which signals or sends information or operating parameters about the engine's state to at least one other component (respective receiver component 16) in the vehicle. The transmitter component 14 enables the initiation of communication and the sending of messages via the communication bus 12 or CAN bus. The messages can contain, as user data in a payload, a current value of at least one operating parameter. This message is uniquely identifiable by a message identifier or ID, so that each receiver component 16 can assign this message to this specific transmitter component 14.
[0084] The second component in Fig. 1 is the message receiver, or receiver component 16. This could be a control unit for the braking system that receives information about the current operating state of the engine. Receiver component 16 is configured to receive the transmitted messages, decode the message identifier, assign the message to the sender component 14, and react to it when necessary, for example, to properly unpack the information.
[0085] Furthermore, a time grid 18 is provided, which is a temporal reference defined in the communication system 10. It determines the times at which messages are to be sent and received. This concept enables time synchronization throughout the entire communication system 10 and, in particular, provides an efficient method for reliable message transmission and monitoring in the event of a message failure.
[0086] Furthermore, a flexible length information DLC, shown in Fig. 2, is provided in the header of each message, by means of which a variant switch 20 of the receiver component 16 can be controlled. The variant switch 20 reads the length information DLC, unpacks the information or payload of the message, and generates control parameters or information for further steps in the communication system 10. Depending on the information encoded in the length information DLC, the variant switch 20 can, for example, initiate different steps or execute commands.
[0087] Furthermore, the detection of an Alive state A of the sender component 14 is also provided and is transmitted to the receiver component 16 using the length information DLC. The Alive state A is used to inform the receiver component that the sender component 14 is active and the message content is current.
[0088] Fig. 2 shows a diagram illustrating changes in the length information DLC in a message and their effects in the communication system 10.
[0089] Here, various messages 1, 2, 3, 4, 5, 6, 7 are displayed with different length information DLC, which cause different effects on the variant switch 20 of the receiver component 16.
[0090] Each of these messages (1, 2, 3, 4, 5, 6, 7) has a message identifier ID or a unique message identifier IDO, an arbitration field ARB, a control field CTRL, a data field DATA (payload) with corresponding data bytes DO, D1, D2, D3, D4, D5, D6, D7, and the corresponding length information DLC. Data byte D0 is the aforementioned first byte DATAO of the payload. Depending on the length information DLC, different pieces of information X1, X2, X3, X4, X5 are also specified in the corresponding data field DATA.
[0091] Furthermore, the fifth message (5) and the sixth message (6) show that a pause time (t_p) or an alive state of the transmitter component 14 can also be transmitted as information in the DATA field. The seventh message (7) also shows that an alive state (A) can be derived from the length information (DLC) even without transmitting information in the DATA field. The messages in this example could have been sent sequentially in the order shown.
[0092] In an example in CAN communication, a sample length information DLC with the value 5 could mean a sequence of 5 data bytes DO, D1, D2, D3, D4 with respective information X1, X2, X3, X4, X5 in the data field DATA, where each data byte DO, D1, D2, D3, D4 can be used, for example, for a specific process parameter as the information X1, X2, X3, X4, X5 with X1 equal to speed, X2 equal to gear, X3 equal to torque, X4 equal to coolant temperature, X5 equal to engine oil temperature.If the length information DLC is changed to a different exemplary value 3, the order of the process parameters as the information X1, X2, X3 in the data bytes DO, D1, D2 could be changed, alternatively, other process parameters than the information X1, X2, X3 with X1 equal to rotational speed, X2 equal to torque, X3 equal to ambient temperature could be transmitted in the data bytes DO, D1, D2, after which the order and / or the process parameters from the aforementioned length information DLC with the value 5 are no longer valid.
[0093] In another example, if the length information DLC has a predefined value of 1, as in the fifth message 5., a pause time t_p until the next message can be derived from the DATA field using the associated data byte DO. This means that the single transmitted data byte DO contains information about the duration of the next pause until the next message, where the pause time t_p can be entered arbitrarily.
[0094] In yet another example, if the length information DLC has a predefined value of 1, as in the sixth message 6, the associated data byte DO from the DATA field can be used to derive an Alive state A of transmitter component 14 until the next message. This means that the single transmitted data byte DO contains information about the live signal and thus the activity of transmitter component 14.
[0095] In yet another example, if the length information DLC has a predefined value of 0, as in the seventh message 7., no data byte D0-D7 can be transmitted from the data field DATA, whereby the receiver component 16 detects at least no error regarding the time monitoring of the reception of a message or can even derive the Alive state A of the sender component 14 until the next message, provided that the previously sent message has a deviation in its structure.
[0096] In yet another example, by means of further information in an unseen reserved bit rO in the control field CTRL and by a changing change of the length information DLC in successive messages, for example a continuous change of the value of the length information DLC between 1 and 0, the Alive state A of the transmitter component 14 can be transmitted without the transmission of a data field DATA.
[0097] When the reserved bit rO is used, a state—that is, the level typically associated with the reserved bit—indicates that the DLC carries length information. Therefore, only ONE switching operation is required.
[0098] Ideally, the 16 combinations 0x0 to OxF of a DLC would be used to provide a raster switch and an Alive counter. Example: rO-DLC: Meaning 1-111: Raster 100ms 1-110: Raster 100ms 1-101: Raster 20ms 1-100: Raster 10ms 1-011: Raster 5ms 1-010: Raster 2ms 1-001: Raster 1ms 1-000: Raster default and 0-111: ALIVE 0-... : ... 0-000: ALIVE In summary, the method describes a way to save energy by specifically reducing communication in the proposed communication system 10.
[0099] Reference symbol list
[0100] 10 Communication system
[0101] 12 Communication bus
[0102] 14 Transmitter component
[0103] 16 Receiver component
[0104] 18 time grids
[0105] 20 variant switches 1 - 7. Messages
[0106] ARB Arbitration Field CTRL Control Field / Control Panel
[0107] DATA Data field DLC Length information (data length code) t_P Break time
[0108] X1 - X5 Information
[0109] ID Message identifier ID1 - ID7 unique message identifier
[0110] A alive state
Claims
Patent claims 1. A method for communication in a communication system (10) between electronic control units, in which respective messages (1. - 7.) with a respective message identifier (ID1 - ID7) for a unique assignment to a corresponding sender component (14) are transmitted by means of a communication bus (12) from the sender component (14) to at least one receiver component (16), characterized in that a respective length information (DLC) of a respective message (1. - 7.) is entered in a corresponding header of the message (1. - 7.) and is used as an input for a variant switch (20) in the at least one receiver component (16).
2. Method according to claim 1, characterized in that a data field (DATA) of the message (1. - 4.) is shortened and / or lengthened depending on the entered length information (DLC) and / or depending on a current operating situation of the transmitter component or a device controlled by it.
3. Method according to one of the preceding claims, characterized in that, in the case of length information (DLC) with a predetermined value, a pause time (t_p) until the next message (6.) is derived from a value (DO) of the data field (DATA) of the message (5.) by the receiver component (16).
4. Method according to one of the preceding claims, characterized in that, in the case of length information (DLC) with a predetermined value, a change to a sender grid known to the receiver component (16) for future messages is derived from a value (DO) of the data field (DATA) of the message (5.).
5. Method according to one of the preceding claims, characterized in that, in the case of length information (DLC) with a predetermined value, an Alive state (A) of the sender component (14) is derived by the receiver component (16) from a value (DO) of the data field (DATA) of the message (6).
6. Method according to one of the preceding claims, characterized in that the Alive state (A) is derived by the receiver component (16) from a change in the length information (DLC) between different values, in particular a first value and a second value of two successive messages.
7. Method according to claim 6, characterized in that the Alive state (A) is signaled by an alternating change between a value other than 0 as the first value and 0 as the second value by the transmitter component (14) and, in the case of messages with length information, a value (DO) of a predetermined status information or a value that signals an unchanged status is transmitted with the first value in the data field (DATA).
8. Method according to one of the preceding claims, characterized in that, when the value of an operating parameter in the data field (DATA) of the transmitter component (14) remains unchanged, an energy-efficient signal level (FF) corresponding to the quiescent level of the communication bus (14) is inserted into the data field (DATA) by the transmitter component (14).
9. Method according to one of the preceding claims, characterized in that by changing a reserved bit (rO) from the control field (CTRL) in combination with the length information (DLC) of the message (1. - 7.) a value of the length information (DLC) as the value of an operating parameter and / or a pause length and / or is derived as an Alive counter value and / or as an indication of an operating state, and a length of the data field (DATA) is assumed to be zero.
10. Communication system (10) comprising at least two electronic control units and a communication bus (12) coupling them, wherein the communication system (10) is configured to carry out a method according to any one of the preceding claims 1 to 9.
11. Motor vehicle with a communication system according to claim 10.
Citation Information
Patent Citations
Method and apparatus for testing the correct function of a serial data transmission
DE102012200997A1
Clutch control module for a trailer hitch
DE102021101173A1
Network device and network system
US20200137108A1
Executing multipath communication
US20220263750A1