Brevet FR2945132A1 — publié le 20101105

Procédé de sélection d'un mode de fonctionnement d'un équipement d'automatisme La présente invention se rapporte à un procédé permettant de sélectionner un mode de fonctionnement dans un équipement d'automatisme, lorsque celui-ci est connecté à un réseau local de communication de type Ethernet conforme au protocole IP. Dans le présent document, un réseau de communication IP correspond à un réseau qui supporte le protocole de communication IP (Internet Protocol). Un réseau local est un réseau de communication dans lequel différentes stations peuvent communiquer entre elles sans passer par un routeur ou une passerelle. Le réseau local de communication IP utilise par ailleurs un protocole d'accès au réseau MAC (Media Access Control) et un protocole de liaison conforme au standard Ethernet (IEEE802.3). Actuellement, la version la plus répandue du protocole IP est une version appelée communément protocole IPv4, avec un adressage codé sur quatre octets. Néanmoins, il s'est notamment avéré que le nombre d'adresses disponibles dans le protocole IPv4 deviendra vite insuffisant à l'avenir, ce qui a entraîné la création d'une nouvelle version plus performante du protocole IP, appelée communément protocole I Pv6. Le terme équipement d'automatisme se rapporte à tout appareil ou station susceptible de se connecter et de communiquer sur un réseau de communication IP, en particulier dans le domaine des automatismes industriels, des automatismes du bâtiment, de la distribution électrique ou de la gestion d'énergie. Un équipement d'automatisme peut donc être notamment un automate programmable (PLC ù programmable Logic Controller), un module d'automate programmable, un module d'Entrées/Sorties déportées (remote I/O module), une station de contrôle/commande, un variateur de vitesse, une interface de dialogue Homme-Machine (terminal de dialogue), un appareil de gestion et de surveillance d'un réseau électrique. Un équipement d'automatisme comporte une unité de traitement qui est susceptible de remplir une ou plusieurs fonctions logicielles de contrôle, de commande, de surveillance, de diagnostic et/ou de visualisation d'une application d'automatisme. Un équipement d'automatisme travaille selon un mode de fonctionnement normal, appelé aussi mode d'usage, durant lequel il exécute des fonctions logicielles qui répondent aux spécifications fonctionnelles prévues de l'équipement d'automatisme. C'est le mode de fonctionnement habituel qui est mis en oeuvre sur le site d'utilisation finale de l'équipement d'automatisme. Afin de faciliter le développement, la mise au point ou le diagnostic d'un équipement d'automatisme, il est souvent nécessaire de concevoir dans le programme intégré (appelé aussi programme constructeur ou firmware) de cet équipement d'automatisme des fonctions logicielles spéciales qui ne doivent pas être disponibles ou utilisables par un utilisateur final, notamment pour des raisons de sécurité et de fiabilité. Néanmoins, l'activation de ces fonctions spéciales doit rester simple pour les personnes qui sont en charge de développer, mettre au point ou diagnostiquer l'équipement d'automatisme. C'est pourquoi, il est prévu au moins un mode de fonctionnement particulier, distinct du mode fonctionnement normal et appelé par la suite mode de fonctionnement test. Ce mode de fonctionnement test permet d'activer une ou plusieurs fonctions logicielles spéciales, pour lesquelles certaines zones mémoire de l'équipement d'automatisme peuvent être déverrouillées. Le mode de fonctionnement test est intéressant pour faire notamment du diagnostic ou du paramétrage de l'équipement d'automatisme, en particulier lorsqu'il est installé dans un environnement de développement ou de dépannage, par exemple sur un site du constructeur du produit. Il est connu de pouvoir sélectionner un mode de fonctionnement particulier d'un appareil à l'aide de solutions matérielles dédiées à cet usage. Ces solutions peuvent être internes et/ou externes à l'appareil. Le mode de fonctionnement peut par exemple être sélectionné manuellement en agissant sur un commutateur interne de l'appareil, ou en branchant un connecteur spécial qui permet d'envoyer un signal électrique spécifique à destination de l'unité de traitement de l'appareil. Néanmoins, la mise en oeuvre de ces solutions peut nécessiter soit le démontage de l'appareil soit l'utilisation d'une connectique dédiée, qui doit alors être accessible de l'extérieur, être électriquement protégée et rester hors de portée d'un utilisateur final. Le but de l'invention est donc de proposer une solution logicielle simple, facile à mettre en oeuvre et qui permette de garantir que le mode de fonctionnement test n'est activé que dans un cadre bien défini. Avantageusement, cette méthode ne nécessite pas de moyens matériels ou de manipulations sur l'équipement d'automatisme, mais fait appel à des moyens logiciels simples et standards. Elle reste complètement transparente pour un utilisateur final de l'équipement d'automatisme. C'est pourquoi l'invention décrit un procédé de sélection d'un mode de fonctionnement d'un équipement d'automatisme connecté à un réseau local de communication de type Ethernet conforme au protocole IP, l'équipement d'automatisme comportant au moins deux modes de fonctionnements distincts. Le procédé comporte une étape d'envoi par l'équipement d'automatisme d'une requête de résolution d'adresse MAC sur le réseau local de communication à destination d'une adresse IP prédéterminée, et une étape de sélection entre un mode de fonctionnement normal et un mode de fonctionnement test de l'équipement d'automatisme, la sélection étant effectuée en comparant une adresse MAC prédéterminée avec une adresse MAC reçue par l'équipement d'automatisme dans une réponse à la requête de résolution d'adresse MAC. Selon une caractéristique, l'étape de sélection sélectionne le mode de fonctionnement test lorsque l'adresse MAC reçue est identique à l'adresse MAC prédéterminée. L'étape de sélection sélectionne le mode de fonctionnement normal lorsque l'équipement d'automatisme (10) n'a pas de reçu de réponse (21) à ladite requête (12) au bout d'un délai fixé. Selon une autre caractéristique, l'adresse IP prédéterminée, l'adresse MAC prédéterminée et le délai fixé sont mémorisés dans l'équipement d'automatisme. Selon une autre caractéristique, le procédé est lancé après une mise sous tension de l'équipement d'automatisme. Selon une autre caractéristique, l'équipement d'automatisme mémorise une pluralité d'adresses MAC prédéterminées correspondant à une pluralité de modes de fonctionnement test, chaque mode de fonctionnement test étant sélectionné lorsque l'adresse MAC reçue est identique à une adresse MAC prédéterminée correspondante. Selon une autre caractéristique, l'équipement d'automatisme peut communiquer sur le réseau local de communication IP selon le protocole IPv4 et la requête de résolution d'adresse MAC est conforme au protocole ARP (Address Resolution Protocol). Selon une autre caractéristique, l'équipement d'automatisme peut communiquer sur le réseau local de communication IP selon le protocole IPv6 et la requête de résolution d'adresse MAC est conforme au protocole NDP (Neighbor Discovery Protocol). L'invention concerne également un équipement d'automatisme comportant des moyens de traitement pour sélectionner un mode de fonctionnement normal et un mode fonctionnement test, et susceptible de mettre en oeuvre un tel procédé de sélection. D'autres caractéristiques et avantages vont apparaître dans la description détaillée qui suit en se référant à un mode de réalisation donné à titre d'exemple et représenté par la figure 1 qui montre un exemple simplifié de mise en oeuvre du 1 o procédé. En référence à la figure 1, un équipement d'automatisme 10 possède des moyens de traitement comprenant une unité de traitement susceptible d'exécuter un logiciel constructeur (ou firmware) mémorisé dans une mémoire de l'équipement 15 d'automatisme 10. L'équipement d'automatisme 10 est connecté à un réseau local de communication 5. Le réseau local 5 est un réseau de communication IP basé sur une couche liaison de type Ethernet et basé sur une couche physique de type filaire, radio, courant porteur ou autre. L'exécution du logiciel constructeur de l'équipement d'automatisme 10 est 20 lancée au démarrage à la suite d'une mise sous tension de l'équipement d'automatisme 10. Ce logiciel constructeur commence habituellement par effectuer une série d'autotests comprenant des vérifications élémentaires classiques, avant que l'équipement d'automatisme 10 puisse être exploitable. En mode de fonctionnement normal, ces vérifications élémentaires sont suffisantes pour garantir l'intégrité 25 matérielle et logicielle de l'équipement d'automatisme et estimer qu'il peut donc fonctionner normalement, c'est-à-dire que l'équipement d'automatisme peut par exemple exécuter un programme application (ou programme utilisateur). Les vérifications élémentaires doivent être faites rapidement après la mise sous tension pour minimiser le temps entre la mise sous tension et le moment où 30 l'appareil est exploitable. De plus, elles ne doivent évidemment pas modifier le contexte d'usage de l'équipement d'automatisme pour l'utilisateur final, composé de programmes (tels que programme application) et de données (telles que configurations, valeurs de réglage, paramètres,...). Cependant, il est nécessaire d'effectuer dans certains cas des fonctions de mise à jour ou de vérification plus approfondies pour faire du diagnostic ou du dépannage de l'équipement d'automatisme. Ces fonctions permettent notamment de (i) faire des autotests avec une couverture plus large pouvant endommager le contexte d'usage de l'utilisateur final, (ii) accéder en lecture et écriture à des zones de mémoire cachées de l'équipement d'automatisme, (iii) modifier des paramètres internes tels que adresse MAC, (iv) mettre à jour tout ou partie du logiciel constructeur installé dans l'équipement d'automatisme, etc... Ces fonctions correspondent donc à un mode de fonctionnement distinct du mode de fonctionnement normal, appelé mode de fonctionnement test. Elles ne peuvent être effectuées que par des personnes qualifiées et dans certaines conditions maîtrisées. Ainsi, il faut s'assurer que le mode de fonctionnement test ne peut pas être sélectionné lorsque l'équipement d'automatisme est raccordé à un process ou application d'automatisme, sur un site final d'utilisation. Au contraire, il est intéressant de sélectionner automatiquement le mode de fonctionnement test après s'être assuré que l'équipement d'automatisme 10 est installé sur un site de développement, de mise au point ou de dépannage. C'est notamment le cas lorsqu'un équipement d'automatisme 10 défectueux est renvoyé vers un site du constructeur pour analyse du dysfonctionnement. Un tel site de développement dispose au moins d'une station d'identification IP 20 qui possède une adresse IP prédéterminée correspondant à une adresse MAC prédéterminée. La station d'identification 20 est préférentiellement un ordinateur de type PC, mais pourrait également être un automate programmable. La station d'identification 20 est connectée à un réseau local de communication IP 5 de type Ethernet. L'invention prévoit un procédé qui permet à l'unité de traitement de l'équipement d'automatisme de sélectionner le mode de fonctionnement test uniquement si elle peut s'assurer que l'équipement d'automatisme 10 est réellement connecté à la station d'identification 20 par le réseau local de communication 5. Pour cela, durant une étape d'envoi, l'unité de traitement de l'équipement d'automatisme 10 envoie sur le réseau local de communication 5 une requête 12 de résolution d'adresse MAC. Cette requête de résolution d'adresse MAC est envoyée à destination d'une adresse IP qui est l'adresse IP prédéterminée de la station30 d'identification 20. Parallèlement, l'unité de traitement de l'équipement d'automatisme active une temporisation interne. Le destinataire de la requête 12 de résolution d'adresse MAC doit renvoyer un message de réponse 21 qui contient son adresse MAC, appelée adresse MAC reçue, comme spécifié dans le protocole MAC - RFC2892. Ainsi, si la station d'identification 20 reçoit une telle requête 12, elle renvoie un message de réponse 21 qui contient son adresse MAC prédéterminée. Durant une étape de sélection, l'unité de traitement de l'équipement d'automatisme 10 analyse donc le message de réponse reçu : 1 o Si l'adresse MAC reçue dans le message de réponse 21 est identique à l'adresse MAC prédéterminée mémorisée, cela signifie que l'équipement d'automatisme 10 est connecté localement à la station d'identification 20 et est donc installé sur un site de développement. L'unité de traitement peut alors sélectionner le mode de fonctionnement test en toute sécurité. 15 Si l'adresse MAC reçue dans le message de réponse 21 n'est pas identique à l'adresse MAC prédéterminée mémorisée, cela signifie que l'équipement d'automatisme 10 n'est pas installé sur un site de développement, et donc l'unité de traitement sélectionne le mode de fonctionnement normal. Si l'équipement d'automatisme 10 n'a toujours pas reçu de réponse 21 20 lorsque la temporisation interne dépasse un délai fixé, cela signifie que l'équipement d'automatisme 10 n'est pas installé sur un site de développement, et donc l'unité de traitement sélectionne le mode de fonctionnement normal. 25 L'adresse IP prédéterminée de la station d'identification 20, servant d'adresse destinataire de la requête 12, et l'adresse MAC prédéterminée de la station d'identification 20, servant de comparaison avec l'adresse MAC reçue dans la réponse 21, sont mémorisées dans une mémoire de l'équipement d'automatisme 10, accessible par le logiciel constructeur. Le délai fixé correspondant au temps d'attente 30 maximum de réception d'une réponse 21 est aussi un paramètre qui est mémorisé dans une mémoire de l'équipement d'automatisme 10. Préférentiellement, l'adresse IP prédéterminée est une adresse IP locale, c'est-à-dire une adresse qui appartient par exemple à un réseau local de la classe C comportant des adresses IP réservées qui vont de (192.168.0.1) à (192.168.255.254), dans le protocole IPv4. Ainsi, l'adresse IP prédéterminée n'est pas routée par une passerelle ou un routeur, ce qui garantit que le destinataire de la requête 12 de résolution d'adresse MAC est bien connecté localement avec l'équipement d'automatisme 10. Dans les cas où l'on voudrait lancer différentes fonctions distinctes, telle que par exemple une mise à jour du firmware ou différents types de diagnostic, plusieurs modes de fonctionnement test peuvent être prévus dans l'équipement d'automatisme 10. L'équipement d'automatisme 10 est alors de capable de mémoriser une pluralité d'adresses MAC prédéterminées distinctes correspondant à une pluralité de modes de fonctionnement test. Chaque mode de fonctionnement test est alors sélectionné lorsque l'adresse MAC reçue dans une réponse 21 est identique à une adresse MAC prédéterminée correspondante. De même, il est possible de prévoir différentes stations d'identification 20, correspondant par exemple à différents sites de développement dans lesquels on peut lancer le mode de fonctionnement test. Pour cela, l'équipement d'automatisme 10 mémorise une pluralité d'adresses IP prédéterminées. Il envoie une première requête 12 à destination d'une première adresse IP prédéterminée. S'il reçoit une réponse 21 contenant une adresse MAC reçue correspondant à une adresse MAC prédéterminée, le mode de fonctionnement test est sélectionné. Si l'équipement d'automatisme 10 ne reçoit pas de réponse au bout du délai fixé, il envoie une seconde requête 12 à destination d'une autre adresse IP prédéterminée mémorisée. Si aucune des requêtes 12 ne donne de résultat pour les différentes adresses IP prédéterminées, le mode de fonctionnement normal est sélectionné. Dans le cas où le réseau de communication local 5 est un réseau conforme au protocole IPv4, la requête 12 de résolution d'adresse MAC envoyée par l'équipement d'automatisme 10 est de préférence une requête standard conforme au protocole ARP (Address Resolution Protocol) ù RFC 826. Dans le cas où le réseau de communication local 5 est un réseau conforme au protocole IPv6, la requête 12 de résolution d'adresse MAC envoyée par l'équipement d'automatisme 10 est de préférence une requête standard conforme au protocole NDP (Neighbor Discovery Protocol) ù RFC 4861. REVENDICATIONS1. Procédé de sélection d'un mode de fonctionnement d'un équipement d'automatisme (10) connecté à un réseau local de communication (5) de type Ethernet conforme au protocole IP (Internet Protocol), l'équipement d'automatisme comportant au moins deux modes de fonctionnements distincts, caractérisé en ce que le procédé comporte : une étape d'envoi par l'équipement d'automatisme d'une requête (12) de résolution d'adresse MAC sur le réseau local de communication (5), à destination d'une adresse IP prédéterminée, une étape de sélection entre un mode de fonctionnement normal et un mode de fonctionnement test de l'équipement d'automatisme (10), la sélection étant effectuée en comparant une adresse MAC prédéterminée avec une adresse MAC reçue par l'équipement d'automatisme dans une réponse (21) à la requête de résolution d'adresse MAC. 2. Procédé de sélection selon la revendication 1, caractérisé en ce que l'étape de sélection sélectionne le mode de fonctionnement test lorsque l'adresse MAC reçue est identique à l'adresse MAC prédéterminée. 3. Procédé de sélection selon la revendication 1 ou 2, caractérisé en ce que l'étape de sélection sélectionne le mode de fonctionnement normal lorsque l'équipement d'automatisme (10) n'a pas de reçu de réponse (21) à ladite requête (12) au bout d'un délai fixé. 4. Procédé de sélection selon la revendication 3, caractérisé en ce que l'adresse IP prédéterminée, l'adresse MAC prédéterminée et le délai fixé sont mémorisés dans l'équipement d'automatisme (10). 5. Procédé de sélection selon la revendication 1, caractérisé en ce que le procédé est lancé après une mise sous tension de l'équipement d'automatisme (10). 6. Procédé de sélection selon la revendication 1, caractérisé en ce que le l'équipement d'automatisme (10) mémorise une pluralité d'adresses MAC prédéterminées correspondant à une pluralité de modes de fonctionnement test,chaque mode de fonctionnement test étant sélectionné lorsque l'adresse MAC reçue est identique à une adresse MAC prédéterminée correspondante. 7. Procédé de sélection selon la revendication 1, caractérisé en ce que l'équipement d'automatisme (10) peut communiquer sur le réseau local de communication IP (5) selon le protocole IPv4 et en ce que la requête de résolution d'adresse MAC est conforme au protocole ARP (Address Resolution Protocol). 8. Procédé de sélection selon la revendication 1, caractérisé en ce que l'équipement d'automatisme (10) peut communiquer sur le réseau local de communication IP (5) selon le protocole IPv6 et en ce que la requête de résolution d'adresse MAC est conforme au protocole NDP (Neighbor Discovery Protocol). 9. Equipement d'automatisme comportant des moyens de traitement pour sélectionner un mode de fonctionnement normal et un mode fonctionnement test, caractérisé en ce que l'équipement d'automatisme (10) est susceptible de mettre en oeuvre un procédé de sélection selon l'une des revendications précédentes.15