FR 3010540 A1 20150313 FR 1358686 A 20130910 Domaine technique de l'invention La présente invention se rapporte à un système d'automatisme comprenant plusieurs contrôleurs logiques programmables connectés sur un réseau de communication. Etat de la technique De manière connue, un contrôleur logique programmable (désigné également PLC pour "Programmable Logic Controller" en anglais) est chargé d'exécuter sa propre application d'automatisme de manière à contrôler un ensemble de modules d'entrée/sortie. Le contrôleur logique programmable lit des données envoyées sur les modules d'entrée et écrit des données sur les modules de sortie. Les modules d'entrée sont par exemple raccordés à des capteurs et les modules de sortie sont par exemple raccordés à des actionneurs. Un système d'automatisme peut comporter plusieurs contrôleurs logiques programmables, dits primaires, connectés entre eux sur un réseau de communication. Les ensembles de modules d'entrée/sortie commandés chacun par un contrôleur logique programmable distinct sont également connectés à ce réseau de communication. Dans l'état de la technique, un contrôleur logique programmable de secours est associé à chaque contrôleur logique programmable primaire du réseau afin de pouvoir le suppléer en cas de mise hors service volontaire ou involontaire. La mise hors-service peut survenir pour différentes raisons telles que par exemple une défaillance, une coupure de l'alimentation électrique, une maintenance, un remplacement ou une mise à jour logicielle et/ou matérielle. Une fois en service, le contrôleur logique programmable de secours pilote l'ensemble de modules d'entrée/sortie associé au contrôleur logique programmable primaire qu'il remplace. L'architecture d'automatisme est donc particulièrement lourde et coûteuse car elle nécessite de prévoir un contrôleur logique programmable de secours pour chaque contrôleur logique programmable primaire. Le but de l'invention est de proposer un système d'automatisme présentant une architecture simplifiée par rapport à l'état de la technique, moins coûteuse et facile à mettre en oeuvre. Exposé de l'invention Ce but est atteint par un système d'automatisme réalisé à travers un réseau de communication et comportant au moins : un premier contrôleur logique programmable connecté audit réseau de communication et agencé pour exécuter une première application d'automatisme, un premier ensemble de modules d'entrée/sortie commandé par le premier contrôleur logique programmable à travers le réseau de communication, un deuxième contrôleur logique programmable connecté audit réseau de communication et agencé pour exécuter une deuxième application d'automatisme, un deuxième ensemble de modules d'entrée/sortie commandé par le deuxième contrôleur logique programmable à travers le réseau de communication, un troisième contrôleur logique programmable, dit de secours, connecté audit réseau de communication et agencé pour suppléer le premier contrôleur logique programmable ou le deuxième contrôleur logique programmable devenu hors service, le contrôleur logique programmable de secours comportant des moyens de mémorisation stockant la première application d'automatisme et la deuxième application d'automatisme et étant agencé pour exécuter la première application d'automatisme en vue de suppléer le premier contrôleur logique programmable et de contrôler le premier ensemble de modules d'entrée/sortie, ou pour exécuter la deuxième application d'automatisme en vue de suppléer le deuxième contrôleur logique programmable et de contrôler le deuxième ensemble de modules d'entrée/sortie. Selon une particularité, le premier contrôleur logique programmable et le deuxième contrôleur logique programmable sont connectés au contrôleur logique programmable de secours par une liaison de surveillance. Selon une autre particularité, le contrôleur logique programmable de secours comporte des moyens de détection de la mise hors service du premier contrôleur logique programmable ou du deuxième contrôleur logique programmable. Selon une autre particularité, le premier contrôleur logique programmable et le deuxième contrôleur logique programmable comportent chacun des moyens de génération d'une image représentative d'un état interne et sont agencés pour envoyer cet état au contrôleur logique programmable de secours à travers la liaison de surveillance. Selon une autre particularité, le premier contrôleur logique programmable mémorise la première application d'automatisme et la deuxième application 5 d'automatisme dans une mémoire de masse. Selon une autre particularité, le deuxième contrôleur logique programmable mémorise la première application d'automatisme et la deuxième application d'automatisme dans une mémoire de masse. 10 Brève description des figures D'autres caractéristiques et avantages vont apparaître dans la description détaillée qui suit faite en regard des dessins annexés suivants : _ Les figures 1, 2 et 3 représentent le système d'automatisme de l'invention et 15 illustrent le principe de fonctionnement de ce système d'automatisme. Description détaillée d'au moins un mode de réalisation L'invention concerne un système d'automatisme comprenant plusieurs 20 contrôleurs logiques programmables A, B, C, dits primaires (désignés PR sur les dessins), interconnectés sur un réseau de communication R. A chaque contrôleur logique programmable primaire est associé un ensemble de modules d'entrée/sortie E/S A, E/S B, E/S C. Les ensembles de modules d'entrée/sortie E/S A, E/S B, E/S C sont préférentiellement déportés par rapport à leur contrôleur logique 25 programmable A, B, C respectif et sont connectés au réseau de communication. Chaque contrôleur logique programmable A, B, C exécute une application d'automatisme particulière pour contrôler ses modules d'entrée/sortie. Chaque contrôleur logique programmable contrôle son ensemble de modules d'entrée/sortie à travers le réseau de communication R. Le système d'automatisme peut être câblé 30 suivant une topologie en anneau ou en étoile. Dans la suite de la description et sur les figures, nous prendrons l'exemple d'une architecture réseau en anneau mais il faut comprendre que le principe de l'invention peut s'appliquer à une architecture réseau en étoile ou de tout autre type. Sur la figure 1, nous considérons un système d'automatisme comportant trois contrôleurs logiques programmables A, B, C primaires, et trois ensembles de modules d'entrée/sortie E/S A, E/S B, E/S C, chaque ensemble de modules d'entrée/sortie étant associé à un contrôleur logique programmable A, B, C distinct. Bien entendu, le nombre de contrôleurs choisi n'est pas limitatif et l'invention s'applique à tout système d'automatisme comportant plus de deux contrôleurs logiques programmables. Le contrôleur logique programmable A exécute une première application d'automatisme app A et pilote un premier ensemble de modules d'entrée/sortie E/S A, le contrôleur logique programmable B exécute une deuxième application d'automatisme app B et pilote un deuxième ensemble de modules d'entrée/sortie E/S B et le contrôleur logique programmable C exécute une troisième application d'automatisme app C et pilote un troisième ensemble de modules d'entrée/sortie E/S C. Selon l'invention, le système d'automatisme comporte également un contrôleur logique programmable D dit de secours (désigné STB sur les dessins). Ce contrôleur logique programmable D de secours est destiné à suppléer n'importe lequel des contrôleurs logiques programmables A, B ou C primaires si l'un d'eux est hors-service. Les causes de mise hors service peuvent être multiples. Il peut s'agir par exemple d'une coupure d'alimentation électrique, d'une défaillance, d'un arrêt pour mise à jour ou pour maintenance,... Le contrôleur logique programmable D de secours est également connecté au réseau de communication R de manière à pouvoir communiquer avec les contrôleurs logiques programmables A, B, C primaires et les ensembles de modules d'entrée/sortie E/S A, E/S B, E/S C du système. Par ailleurs, les contrôleurs logiques programmables A, B, C primaires sont également connectés au contrôleur logique programmable D de secours par une liaison de surveillance L, distincte du réseau de communication R. Un premier type de signaux est échangé sur le réseau de communication R pour permettre à chaque contrôleur logique programmable A, B ou C primaire de communiquer avec son ensemble de modules d'entrée/sortie E/S A, E/S B, E/S C. Un deuxième type de signaux est envoyé sur la liaison de surveillance L par chaque contrôleur logique programmable A, B, C primaire à destination du contrôleur logique programmable D de secours afin de l'informer en permanence de son état. A chaque cycle, le contrôleur logique programmable A, B, C primaire construit une image de son état interne et envoie cet état au contrôleur logique programmable de secours sur la liaison de surveillance L. Le contrôleur logique programmable D de secours mémorise les états reçus des différents contrôleurs logiques programmables A, B, C primaires. Pour pouvoir suppléer n'importe lequel des contrôleurs logiques programmables A, B ou C primaires du système, le contrôleur logique programmable D de secours mémorise en permanence toutes les applications d'automatismes app A, app B, app C exécutées par les contrôleurs logiques programmables A, B, C primaires du système. Les applications des contrôleurs logiques programmables A, B, C primaires sont mémorisées en mémoire RAM du contrôleur logique programmable D de secours afin d'être exécutables immédiatement dès la détection d'une mise hors-service d'un contrôleur logique programmable A, B ou, C primaire du réseau sur la liaison de surveillance L. Dès qu'il détecte une mise hors-service d'un contrôleur logique programmable A, B ou, C primaire, le contrôleur logique programmable D de secours sélectionne l'application du contrôleur logique programmable hors-service et l'exécute immédiatement en prenant le contrôle, à travers le réseau de communication, de l'ensemble de modules d'entrée/sortie associé au contrôleur logique programmable hors-service. Le contrôleur logique programmable de secours est destiné à détecter les mises hors service des contrôleurs logiques programmables primaires du réseau. Un contrôleur logique programmable A, B ou C primaire est considéré comme hors-service lorsqu'il ne communique plus avec le contrôleur logique programmable D de secours, ni sur le réseau de communication R, ni sur la liaison de surveillance L. Lorsque le contrôleur logique programmable D de secours détecte une mise hors-service d'un contrôleur logique programmable A, B ou C primaire, il sélectionne dans sa mémoire l'application de ce contrôleur logique programmable primaire et l'exécute. Il prend également le contrôle de l'ensemble de modules d'entrée/sortie du contrôleur logique programmable remplacé. L'application à exécuter est identifiée dans les trames échangées sur le réseau de communication et sur la liaison de surveillance. Une fois que le contrôleur logique programmable D de secours a remplacé le contrôleur logique programmable A, B ou C primaire hors-service, un nouveau contrôleur logique programmable doit devenir le contrôleur logique programmable de secours. Les contrôleurs logiques programmables primaires du système surveillent la mise en service du nouveau contrôleur logique programmable de secours afin de pouvoir lui envoyer leur état comme décrit précédemment sur la ligne de surveillance. Préférentiellement, une fois rétabli, il s'agit du contrôleur logique programmable (B sur la figure 2) qui était hors service qui devient le nouveau contrôleur logique programmable de secours pour tous les contrôleurs logiques programmables primaires du système. Préférentiellement, chaque contrôleur logique programmable du système mémorise dans une mémoire de masse (par exemple mémoire flash ou ROM) les applications d'automatisme de tous les contrôleurs logiques programmables du système, permettant ainsi à chaque contrôleur logique programmable de disposer de toutes les applications d'automatisme s'il est amené à devenir le contrôleur logique programmable de secours du système. En variante de réalisation, le nouveau contrôleur logique programmable de secours est par exemple amené à télécharger toutes les applications d'automatisme des contrôleurs logiques programmables primaires du système depuis un serveur distant. Sur la figure 2, le contrôleur logique programmable B primaire tombe en panne. Le contrôleur logique programmable D de secours remplace le contrôleur logique programmable B primaire en panne et devient ainsi un contrôleur logique programmable primaire (PR). Il exécute ainsi l'application app_B déjà présente en mémoire RAM et prend le contrôle de l'ensemble de modules d'entrée/sortie E/S B associé au contrôleur logique programmable B primaire. Sur la figure 3, le contrôleur logique programmable B primaire devient le nouveau contrôleur logique programmable de secours (STB) et dispose en mémoire, des applications app A, app_B et app C des contrôleurs logiques programmables du système.25 REVENDICATIONS1. Système d'automatisme réalisé à travers un réseau de communication (R) et comportant au moins : un premier contrôleur logique programmable (A) connecté audit réseau de communication et agencé pour exécuter une première application d'automatisme (app A), - un premier ensemble de modules d'entrée/sortie (E/S A) commandé par le premier contrôleur logique programmable (A) à travers le réseau de communication (R), - un deuxième contrôleur logique programmable (B) connecté audit réseau de communication (R) et agencé pour exécuter une deuxième application d'automatisme (app B), un deuxième ensemble de modules d'entrée/sortie (E/S B) commandé par le deuxième contrôleur logique programmable (B) à travers le réseau de communication (R), caractérisé en ce qu'il comporte: un troisième contrôleur logique programmable (D), dit de secours, connecté audit réseau de communication (R) et agencé pour suppléer le premier contrôleur logique programmable (A) ou le deuxième contrôleur logique programmable (B) devenu hors service, et en ce que le contrôleur logique programmable (D) de secours comporte des moyens de mémorisation stockant la première application d'automatisme (app_A) et la deuxième application d'automatisme (app_B) et est agencé pour exécuter la première application d'automatisme (app_A) en vue de suppléer le premier contrôleur logique programmable (A) et de contrôler le premier ensemble de modules d'entrée/sortie (E/S A), ou pour exécuter la deuxième application d'automatisme (app_B) en vue de suppléer le deuxième contrôleur logique programmable (B) et de contrôler le deuxième ensemble de modules d'entrée/sortie (E/S B). 2. Système selon la revendication 1, caractérisé en ce que le premier contrôleur logique programmable (A) et le deuxième contrôleur logique programmable (B) sont connectés au contrôleur logique programmable (D) de secours par une liaison de surveillance (L). 3. Système selon la revendication 2, caractérisé en ce que le contrôleur logique programmable (D) de secours comporte des moyens de détection de la mise hors service du premier contrôleur logique programmable (A) ou du deuxième contrôleur logique programmable (B). 4. Système selon la revendication 2, caractérisé en ce que le premier contrôleur logique programmable (A) et le deuxième contrôleur logique programmable (B) comportent chacun des moyens de génération d'une image représentative d'un état interne et en ce qu'ils sont agencés pour envoyer cet état au contrôleur logique programmable (D) de secours à travers la liaison de surveillance (L). 5. Système selon la revendication 1 ou 2, caractérisé en ce que le premier contrôleur logique programmable (A) mémorise la première application d'automatisme (app_A) et la deuxième application d'automatisme (app B) dans une mémoire de masse. 6. Système selon la revendication 1 ou 2, caractérisé en ce que le deuxième contrôleur logique programmable (B) mémorise la première application d'automatisme (app_A) et la deuxième application d'automatisme (app B) dans une mémoire de masse.20