This invention relates to a method for transmitting data from a plurality of slave terminals to a master terminal via a communication bus.
The invention has a particularly advantageous application in any installation where slave terminals must transmit, along a communication bus, data to a master terminal, the manager of said installation, so that the latter can decide what actions to take according to the data received from the slave terminals.
An example of such installations includes air conditioning systems for motor vehicles in which remote computers or user interfaces in various areas of the vehicle, such as the front and rear doors, receive set values from the users for certain parameters, in particular the desired temperature or air flow. These set values are routed via the communication bus to a central computer that then appropriately manages the various parts of the air conditioning system, such as the air circulation valves, so as to best match the set values received.
The prior art, in particular in the field of motor vehicle air conditioning, describes data transmission methods that involve, for the master terminal, which is the central computer in the chosen example, of sequentially querying the slave terminals, namely the remote computers or user interfaces, so as to obtain, from them, the data needed for the overall management of the system for which it is responsible. The master terminal therefore opens a series of response frames in which the slave terminals take turns transmitting the data that they have in order to inform the master terminal.
However, these known data transmission methods have the disadvantage of operating in sequential mode in the sense that all of the slave terminals are systematically queried in their turn according to a cyclical procedure, even if the data that they must transmit to the master terminal has not changed from one cycle to the next. Moreover, the slave terminals are required to respond to the query from the master terminal by transmitting the current data to it even when this data has already been provided in the previous cycle. Finally, the length of the allocated data sequence is identical for all of the slave terminals, without taking into account the specificities of each slave terminal. The access time and response time are therefore abnormally lengthened, and the user therefore does not immediately obtain the desired effect. In addition, the energy consumption is increased by the sequential operation of the communication bus of the prior art.
It can be understood that these known methods result in unnecessary redundancy in the data transmission as well as management that is far from being optimized in the data transmission sequence allocated to each slave terminal.
In addition, the technical problem to be solved by the subject matter of this invention is that of providing a method for transmitting data from a plurality of slave terminals to a master terminal via a communication bus, that would in particular enable the communication flow on the bus to be reduced and adjusted strictly to the requirement of the slave terminals.
The solution to the stated technical problem, according to this invention, consists of said method including the following steps:
(a) the master terminal transmits a check sequence including a response sequence, intended to receive, from the slave terminals, an indicator of the presence of data to be transmitted,
(b) the slave terminals provide said presence indicator in said response sequence,
(c) the master terminal provides a data transmission authorization to a slave terminal of which the indicator of the presence of data to be transmitted is positive,
(d) said slave terminal transmits said data after receiving the authorization from the master terminal,
(e) steps (c) and (d) are repeated for any slave terminal of which the indicator of the presence of data to be transmitted is positive.
Thus, it is understood that only the slave terminals with new data to be transmitted to the master terminal will provide a positive presence indicator, which enables the master terminal to identify, at the end of the response sequence, the slave terminals to which it will give, in turns, the authorization to transmit data.
It results from the method according to the invention that no unnecessary data is transmitted over the communication bus. In particular, no slave terminal must transmit data already sent in a previous query cycle. The flow over the communication bus is therefore reduced to the strict minimum required.
In addition, according to the invention, the slave terminals are identified by the position of their indicator of the presence of data to be transmitted in said response sequence. In this way, the master terminal, which has identified the slave terminals that have data to transmit to it, can determine the length of the data sequence to be allocated to each of them, for example, by means of a predetermined correspondence table. The length of the data sequences is therefore not set once and for all for all of the slave terminals, but is adjusted according to the slave terminal in question.
It should be noted that instead of using a table to determine the length of the data sequence of each slave terminal, the invention also stipulates that said indicator of the presence of data to be transmitted include an indicator of the length of the data to be transmitted.
According to an embodiment of the invention, said communication bus is a single-wire bus with a dominant state and a recessive state. In this case, the invention stipulates that said indicator of the presence of data to be transmitted is obtained by forcing the dominant state of the bus.
Finally, according to another embodiment of the invention, said communication bus is a two-wire bus.
The following description of the appended drawings, given by way of non-limiting examples, will make it easier to understand the invention and how it can be carried out.
a is a diagram of a master terminal connected to the communication bus.
b is a diagram of a slave terminal connected to the communication bus.
The bus 10 is advantageously a single-wire bus with a dominant state and a recessive state, in accordance with ISO standard 9141. However, the invention is not limited to this type of bus and can also be implemented using a two-wire bus.
As shown in
It can be noted that, alternatively, the response sequence can be initialized by any one of the slave terminals.
To this end, each check sequence SCi includes an initialization sequence SIi followed by a response sequence Sri. The initialization sequence is solely intended to notify the slave terminals of the arrival of a response sequence in which they can provide, as the case may be, an indicator of the presence of data to be transmitted.
By way of example,
To identify a sequence SC1 as the initialization sequence, it can be identified in the fame by at least one characteristic bit, for example and initial bit B1 equal to 1 at the beginning of the sequence, located immediately after the start bit BD1 which, according to the UART (“Universal Asynchronous Receiver Transmitter”) protocol, systematically precedes the eight-bit sequence to be transmitted. The word constituting the initialization sequence is designated by “AA”.
After a stop bit BA1 marking the end of the initialization sequence SI1 and the interruption INT between two consecutive eight-bit sequences in the frame, the response sequence SR1 begins with a start bit BD2 providing the slave terminals with a response zone specific to them so that they can indicate whether they have data to be transmitted. The response zone allocated to each slave terminal is identified by its position in the sequence, which position is defined by a timing counted from the start bit BD2.
In the example of
The steps of the check sequence are shown in the diagram of
Also in the specific example of
The bits 1 of the presence indicator “11” can be obtained by forcing the dominant state of the single-wire bus 10 with a dominant state and a recessive state. The device enabling a slave terminal to force this is shown in
a shows the diagram of a master terminal associated with the slave terminal of
At the end of the check sequence SC1, the master terminal is therefore capable of determining which slave terminals have data to transmit to it, i.e. terminal TE2 in the example chosen.
As can be seen in
Finally, in response to the authorization sequence SA(2), the terminal TE2 transmits its data in a data sequence SD(2).
After having received the data sequence SD(2), the master terminal transmits a new check sequence SC2 including an initialization sequence SI2, identical to SI1, and a response sequence SR2 to which, for example, both slave terminals TE3 and TE4 will have responded positively. In this case, the master terminal sends a first authorization sequence SA(3) followed by a data sequence SD(3) sent by terminal TE3, then a second authorization sequence SA(4) followed by a data sequence SD(4) sent by terminal TE4.
At the end of the last data sequence SD(4), the master terminal TM again sends a check sequence SC3. In the example of
The master terminal then cyclically retransmits a new check sequence.
It is understood that the method according to the invention functions asynchronously, which is possible due to the fact that the master terminal knows in advance the length of the data sequence associated with each slave terminal. The advantage of this type of operation is that it limits circulation over the bus to the strict minimum required and therefore reduces the flow, unlike the known methods operating in sequential mode.
The master terminal can determine the length of data sequences of the slave terminals by means of a predetermined table providing the correspondence between the length and the slave terminal. It is also possible for this information to be given in a length indicator associated with the presence indicator, with both indicators being provided in the response zone allocated to each slave terminal in the response sequence. For example, the response zone can be extended to three bits of which one indicates that the data will be transmitted in a long word (bit to 1) or a short word (bit to 0).
As the indicators of the presence of data to be transmitted are provided in the frame by the slave terminals independently of one another, it is recommended, so as to avoid any overlap, that the precision of the clocks of said terminals be as high as possible, for example, better than 2%.
Number | Date | Country | Kind |
---|---|---|---|
05 02058 | Mar 2005 | FR | national |