Procédé de communication entre deux calculateurs électroniques automobiles et dispositif associé
L'invention concerne un procédé de communication entre deux calculateurs électroniques ayant son application dans le domaine automobile.
La communication entre deux ou plusieurs calculateurs électroniques automobiles est par exemple réalisée au moyen d'une interface de communication utilisant le protocole de communication du type CAN (acronyme anglais pour « Controller Area Network »). L'envoi de messages d'un calculateur électronique vers l'autre est réalisé par l'intermédiaire d'un bus informatique CAN, contenu dans un câble (appelé ligne CAN) reliant les deux calculateurs électroniques.
L'avantage principal de ce protocole de communication est qu'il permet d'envoyer plusieurs messages à travers une seule ligne CAN à destination d'un ou de plusieurs calculateurs électroniques et contenant par exemple des paramètres ou des commandes d'actuateurs d'un système (moteur, véhicule). En effet, auparavant, plusieurs lignes de communication filaires étaient nécessaires, c'est à dire autant de lignes filaires que d'actuateurs à commander. D'autres avantages de ce protocole CAN sont connus (vitesse d'émission élevée des messages, facilité de diagnostic, etc), et il est désormais largement utilisé dans le monde de l'automobile.
Cependant, l'inconvénient majeur de l'utilisation d'une seule ligne CAN comportant des messages propres à plusieurs actuateurs ou contenant plusieurs paramètres, est que, lorsque cette interface de communication est défectueuse, aucun message ne peut être envoyé, ni reçu. Les actuateurs du système (moteur, véhicule) dont le fonctionnement dépend de cette communication deviennent alors inopérants. Même si cette situation est rare, les lignes CAN étant de plus en plus fiables, les conséquences d'une telle défaillance peuvent être dramatiques et causer par exemple l'arrêt intempestif du véhicule lors de son fonctionnement.
Une solution simple à ce problème, connue de l'art antérieur EP 1 359 057 A2 et WO 85/03825 A1 est de doubler cette interface de communication, c'est à dire d'utiliser deux lignes CAN en parallèle entre les deux calculateurs électroniques automobiles. L'une est redondante et ne fonctionne que lorsque l'autre est défectueuse, comme décrit dans l'art antérieur EP 1 359 057 A2. Alternativement, l'utilisation des deux interfaces de communication peut être réalisée en commutation permanente, c'est à dire l'une ou l'autre interface de communication est sélectionnée selon son niveau de qualité de transmission de messages à un instant donné, comme décrit dans l'art antérieur WO 85/03825 A1. On assure donc le fonctionnement d'une ligne CAN, la communication entre les deux calculateurs électroniques et le fonctionnement normal du véhicule, même en cas de
défaillance ou de baisse de qualité de la transmission de messages d'une des deux lignes CAN.
Malheureusement étant donné le coût élevé d'une ligne CAN, la faible probabilité d'une défaillance, ce dispositif redondant et sans fonctionnalité additionnelle autre que lors d'une défaillance d'une des deux lignes CAN n'est pas utilisé.
La présente invention propose donc de remédier à ce problème en assurant la communication entre les deux calculateurs électroniques en cas d'une ligne CAN défectueuse tout en bénéficiant d'une fonctionnalité supplémentaire due à la présence d'une seconde ligne CAN. On atteint les buts de l'invention au moyen d'un procédé de communication entre au moins deux calculateurs électroniques automobiles, comportant deux interfaces de communication entre les calculateurs électroniques permettant l'envoi des messages par l'intermédiaire de l'une ou l'autre des interfaces de communication, les dits calculateurs électroniques comportant chacun un microcontrôleur relié aux interfaces de communication gérant l'envoi et la réception des messages par l'intermédiaire de ces interfaces de communication selon un niveau de priorité, une vitesse d'émission et une récurrence données, et comportant :
• un système de diagnostic afin de vérifier la fonctionnalité des interfaces de communication, • un planificateur de messages, le procédé étant caractérisé en ce qu'il comporte les étapes suivantes :
• étape 1 : introduction d'un interrupteur logique dans chaque microcontrôleur, commandé par le planificateur de messages, et connecté aux interfaces de communication, permettant de sélectionner l'une ou l'autre des interfaces de communication,
• étape 2 : vérification par le système de diagnostic d'un microcontrôleur qu'aucune des deux interfaces de communication n'est défectueuse,
• étape 3 : planification par le planificateur de messages de l'envoi des messages successivement par l'intermédiaire de l'une ou de l'autre des deux interfaces de communication, avec une vitesse d'émission supérieure à celle d'une seule interface de communication,
• étape 4 : sélection au moyen de l'interrupteur logique de l'une ou de l'autre des deux interfaces de communication afin d'envoyer les messages planifiés par le planificateur de messages, • étape 5 : envoi des messages planifiés successivement par l'une ou l'autre des deux interfaces de communication
Avantageusement dans le cas d'un procédé de communication entre deux calculateurs électroniques, la vitesse d'émission entre les deux calculateurs électroniques, réalisée lors de l'étape 3, est deux fois supérieure à celle d'une seule interface de communication. L'invention propose en outre que si, si lors de l'étape 1 , le système de diagnostic d'un microcontrôleur diagnostique une interface de communication défectueuse, alors lors de l'étape 3, la planification par le planificateur de messages de l'envoi des messages se fasse par l'intermédiaire de l'interface de communication non défectueuse.
De même, lorsqu'une interface est défectueuse, l'étape 4 consiste en la sélection de l'interface de communication non défectueuse au moyen de l'interrupteur logique afin d'envoyer les messages planifiés par le planificateur de messages. Puis lors de l'étape 5 on envoie les messages par l'interface de communication non défectueuse.
Dans un mode de réalisation, lorsqu'une interface de communication est défectueuse, la planification des messages effectuée à l'étape 3 comporte l'établissement d'une nouvelle priorité des messages par le planificateur de messages.
Dans un deuxième mode de réalisation, lorsqu'une interface de communication est défectueuse, la planification des messages effectuée à l'étape 3 comporte l'établissement d'une nouvelle vitesse d'émission réduite des messages par le planificateur de messages.
Dans un troisième mode de réalisation, la priorité des messages est modifiée par l'intermédiaire de la récurrence des messages.
Généralement, les interfaces de communication consistent en des bus de type CAN.
L'invention concerne également tout dispositif de communication mettant en œuvre le procédé présentant l'une quelconque des caractéristiques précédentes. Ainsi, l'invention s'applique à tout calculateur électronique comportant le dispositif de communication selon l'invention.
D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description qui va suivre à titre d'exemple non limitatif et à l'examen des dessins annexés dans lesquels: • la figure 1 est une représentation schématique du dispositif de communication entre deux calculateurs électroniques automobiles selon l'invention, • la figure 2 est une vue schématique illustrant le procédé de communication entre deux calculateurs électroniques automobiles selon l'invention, • la figure 3 est une représentation schématique illustrant l'envoi de messages selon l'invention,
• la figure 4a est une représentation schématique illustrant un premier exemple d'envoi de messages selon l'invention,
• la figure 4b est une représentation schématique illustrant un deuxième exemple d'envoi de messages selon l'invention. Un dispositif de communication entre deux calculateurs électroniques automobiles est illustré à la figure 1. Un calculateur électronique 1 est relié à un calculateur électronique 2 par l'intermédiaire de deux interfaces de communications 3, 4 de type bus CAN. Pour permettre la communication, chaque calculateur électronique 1 , 2 comporte un microcontrôleur 5 gérant l'envoi et la réception des messages par ces interfaces de communication 3, 4.
Pour cela, chaque microcontrôleur 5 est équipé d'un planificateur de messages 6 (cf. figure 1) qui planifie l'envoie des messages sur les deux interfaces de communication 3, 4 selon un niveau de priorité, une vitesse d'émission et une récurrence données. La vitesse d'émission sur les deux interfaces de communication 3, 4 est commune à tous les messages et est fixée par le standard CAN (de l'ordre de 125 à 500 kBauds). Cependant chaque message possède un niveau de priorité et une récurrence donnée (10 ms, 20 ms, 30 ms, etc.). Par exemple les messages de diagnostic ont une priorité et une récurrence plus élevée que les messages commandant le fonctionnement d'un actuateur.
Chaque microcontrôleur 5 comporte, pour l'envoi des messages sur chaque interface de communication 3, 4, deux émetteurs 6a,. 6c, puis pour la réception des messages, deux récepteurs 6b, 6d. Chaque interface de communication 3, 4 de type bus CAN est constitué d'une paire de câbles enroulés l'un sur l'autre (cf. figure 1 , câbles non référencés), un câble étant relié, à une première extrémité, à un des deux émetteurs 6a, 6c d'un calculateur électronique 1 , 2 et à l'autre extrémité, à un des deux récepteurs, respectivement 6b et 6d de l'autre calculateur électronique 1, 2. Bien sûr, les émetteurs 6a et 6c peuvent aussi être connectés respectivement aux récepteurs 6d et 6c, croisant ainsi les deux câbles enroulés. Ainsi les messages envoyés par un calculateur électroniquel , 2 sont reçus par l'autre 1 , 2 par l'un des câbles enroulés.
Chaque microcontrôleur 5 est aussi doté d'un système de diagnostic 8 (cf. figure 1) qui vérifie constamment l'état des interfaces de communication 3, 4 afin de détecter le plus rapidement possible si l'une des interfaces de communication 3, 4 est défectueuse et ainsi alerter le microcontrôleur 5. Celui ci peut ensuite déclencher des actions appropriées, comme avertir le conducteur ou mettre le véhicule en mode dégradé, c'est à dire réduire sa vitesse maximale par exemple. Selon l'invention, chaque microcontrôleur 5 comporte également un interrupteur logique 7 (cf. figure 1) relié aux deux interfaces de communication 3, 4 et commandé par le planificateur de messages 6. Cet interrupteur logique 7 permet de
sélectionner l'une ou l'autre des interfaces de communication 3, 4 selon l'ordre provenant du planificateur de messages 6. Il est relié aux interfaces de communication 3, 4 au niveau de leur émetteur 6a, 6c respectif. Il peut ainsi permettre l'envoi des messages sur l'une ou l'autre des interfaces de communication 3, 4 en sélectionnant l'émetteur approprié 6a, 6c.
Le procédé de communication entre les deux calculateurs électroniques 1 , 2 est illustré à la figure 2. Tout d'abord, le système de diagnostic 8 vérifié l'état des interfaces de communications 3, 4 (cf. figure 2, étape 100).
S'il ne détecte aucune interface de communication 3, 4 défaillante, le planificateur de messages 6 planifie l'envoi successif des messages sur l'une et l'autre des interfaces de communication 3, 4 (cf. figure 2, étape 210).
Cette planification peut être arbitraire ou suivre une logique précise : par exemple, les messages peuvent être planifiés de manière à ne pas surcharger ponctuellement les interfaces de communication 3, 4. Comme illustré à la figure 4a, une succession de messages I, II, III, IV de récurrence différente (respectivement 10 ms, 10 ms, 20 ms et 30 ms) doit être envoyée. Le planificateur de messages 6 planifie l'envoi des messages sur les deux interfaces de communication 3 et 4 en alternant les messages selon l'ordre suivant : I, III sur la première interface 3 et II, IV sur la deuxième interface 4. Ceci permet de distribuer les messages sur les deux interfaces de communication 3, 4 de façon relativement homogène sans risque de surcharge ponctuelle (cf. figure 4a). Alternativement, l'envoi peut être réalisé par groupe de messages. Comme illustré à la figure 4b, le planificateur de messages 6 a planifié l'envoi des messages sur les deux interfaces de communication 3 et 4 en les groupant de la manière suivante : I, II, III, IV successivement sur chacune des deux interfaces de communication 3 et 4. Ceci a le désavantage de surcharger ponctuellement les interfaces de communication 3, 4 mais permet d'augmenter plus facilement la récurrence des messages, du fait du délai de temps plus grand (t) (cf. figures 4a et 4b) laissé entre deux groupes de messages successifs.
Lorsque la planification est terminée, l'interrupteur logique 7, commandé par le planificateur de messages 6, sélectionne, l'une ou l'autre des interfaces de communication 3, 4 (cf. figure 2, étape 220), afin d'envoyer les messages selon la planification effectuée. Puis les envois successifs sont réalisés (cf. figure 2, étape 230).
Si le système de diagnostic 8 détecte une interface de communication 3, 4 défectueuse, il en informe le planificateur de messages 6. Celui ci procède à une nouvelle planification des messages (cf. figure 2, étape 110), en tenant compte de la défaillance d'une interface de communication 3, 4, c'est à dire qu'il planifie l'envoi de tous les messages uniquement sur l'interface de communication 3, 4 non défaillante.
Une variante de l'invention consiste à instaurer une nouvelle vitesse d'émission des messages (cf. figure 2, étape 110a). En effet, auparavant, lorsque les interfaces de communication 3, 4 étaient en parfait état de fonctionnement, les messages étaient envoyés avec une vitesse fixe donnée sur chaque interface de communication 3, 4 et supérieure à la vitesse d'émission d'une seule ligne CAN. Les deux interfaces de communications 3, 4 pouvaient envoyer ensemble jusqu'à deux fois plus de messages qu'une seule, c'est à dire à deux fois 125 kbauds ou deux fois 500 kbauds. Comme illustré à la figure 3, les messages à envoyer sont répartis par le planificateur de messages 6, sur les deux interfaces de communication 3 et 4 puis envoyés, au moyen de l'interrupteur logique 7. On peut augmenter la récurrence d'envoi des messages sur ces deux interfaces de communication 3, 4 sans risquer de les surcharger. Néanmoins en cas de défaillance d'une des deux interfaces de communication, cette même quantité de messages ne peut pas être envoyée sur une seule interface de communication CAN car elle serait complètement saturée. En envoyant les messages sur une seule interface de communication 3, 4, par rapport à deux, la quantité de messages par unité de temps doit être donc divisée par deux pour ne pas saturer cette interface de communication. Par conséquent, la vitesse d'émission des messages par le planificateur des messages est réduite (cf. figure 2, étape 110a) pour s'adapter à la vitesse d'émission possible sur une seule interface de communication 3, 4 et réduire, comme expliqué ci dessus, la quantité de messages envoyés.
De plus, certains messages urgents ou importants, qui étaient envoyés auparavant avec une vitesse d'émission plus élevée, comme les messages de diagnostic doivent continuer à être envoyés en priorité. La baisse de la vitesse d'émission est donc compensée en réaffectant une nouvelle priorité au message (cf. figure 2, étape 110b). Cette priorité peut être modifiée par la récurrence des messages. En effet, plus un message est récurrent, c'est à dire plus sa récurrence est élevée, plus il est important.
Une fois cette planification réalisée, l'interrupteur logique 7 commandé par le planificateur de messages 6 sélectionne l'interface de communication 3, 4 qui n'est pas défaillante (cf. figure 2, étape 120), et l'envoi des messages avec la nouvelle vitesse d'émission et leur nouvelle priorité est réalisé (cf. figure 2, étape 130).
Le procédé de communication entre deux calculateurs électroniques comporte donc les étapes suivantes :
• étape 1 : introduction d'un interrupteur logique 7 dans chaque microcontrôleur 5, commandé par le planificateur de messages 6, et connecté aux interfaces de communication 3, 4, permettant de sélectionner l'une ou l'autre des interfaces de communication 3, 4,
• étape 2 : vérification, par le système de diagnostic 8, d'un quelconque des microcontrôleurs 5, qu'aucune des deux interfaces de communication 3, 4 n'est défectueuse,
• étape 3 : planification, par le planificateur de messages 6, de l'envoi des messages successivement par l'intermédiaire de l'une ou de l'autre des deux interfaces de communication 3, 4, selon une vitesse d'émission supérieure à celle d'une seule interface de communication 3, 4,
• étape 4 : sélection, au moyen de l'interrupteur logique 7, de l'une ou de l'autre des deux interfaces de communication 3, 4 afin d'envoyer les messages planifiés par le planificateur de messages 6,
• étape 5 : envoi des messages planifiés successivement par l'une ou l'autre des deux interfaces de communication 3, 4.
Si lors de l'étape 2, le système de diagnostic met en évidence une interface de communication 3, 4 défectueuse, alors le procédé de communication comporte alors les nouvelles étapes suivantes, à la place des étapes 3, 4, 5 :
• étape 3 : planification, par le planificateur de messages 6 de l'envoi des messages entre les deux les deux calculateurs électroniques 1 2 par l'intermédiaire de l'interface de communication non défectueuse 3, 4,
• étape 4 : sélection de l'interface de communication non défectueuse 3, 4 au moyen de l'interrupteur logique 7 afin d'envoyer les messages planifiés par le planificateur de messages 6,
• étape 5 : l'envoi des messages par l'interface de communication non défectueuse 3, 4.
L'invention permet donc de maintenir la communication entre deux calculateurs électroniques automobile, même lorsqu'une des deux interfaces de communication est défectueuse et de bénéficier de la présence des deux interfaces de communication durant les conditions normales de fonctionnement, en envoyant deux fois plus de messages qu'avec une seule interface de communication sans risque de surcharge.
Bien entendu, l'invention n'est pas limitée au mode de réalisation décrit et représenté qui n'a été donné qu'à titre d'exemple.
Cette invention peut être appliquée à plusieurs calculateurs électroniques, par exemple à trois calculateurs électroniques connectés entre eux, ou à tous les calculateurs électroniques présents sur un même réseau de communication.