Brevet FR2998983A1 — publié le 20140606

La présente invention concerne un système automate pour agir sur un ensemble d'au moins un bloc fonctionnel en vue d'effectuer au moins une tâche, système comprenant : - un organe central de commande, - au moins une ligne de données commune, - des circuits d'interfaces pour la connexion des blocs sur au moins une des lignes communes. Ce genre de système trouve d'importantes applications. Notamment dans le domaine des processus industriels utilisés pour la fabrication de différentes pièces ou aussi pour l'entretien de machines dont il faut assurer la maintenance. Un tel système est décrit dans le document de brevet EP 0 278 802. Ce système connu présente une structure complexe et on estime qu'il y a de grandes difficultés à mettre au point le fonctionnement dudit système. La présente invention propose un système du genre déjà mentionné dans le préambule qui à partir d'une structure de ce genre apporte des facilités pour définir un fonctionnement correct dudit système. Pour cela, un tel système est remarquable en ce que l'organe de commande est formé d'un ordinateur de type PC comprenant une mémoire coopérant avec un logiciel de fonctionnement pour déterminer des phases de fonctionnement desdits blocs, Ce qu'on entend par blocs, ce sont des éléments sur lesquels le système est susceptible d'agir : par exemple des avertisseurs sonores ou lumineux, des pompes hydrauliques et à partir desquels il est susceptible de collecter des informations : compteurs d'eau compteur électriques etc. Ce genre de système trouve d'importantes applications. Notamment dans le domaine des processus industriels, d'automatisme et acquisition de données en tout genre. Le système peut être alimenté en 12 Vcc et donc embarqué sur des véhicules ou des bateaux ou fonctionner en site isolé. -2 La description suivante accompagnée des dessins ci-annexés, le tout donné à titre d'exemple non limitatif, fera bien comprendre comment l'invention peut être réalisée. Dans les dessins : la figure 1 montre un schéma d'un système conforme à l'invention, la figure 2 montre un exemple de réalisation d'une ligne commune convenant à un système conforme à l'invention, la figure 3 montre un mode de réalisation d'un boîtier d'interconnexion sur la ligne de données commune, la figure 4 montre un premier mode de réalisation d'un circuit d'interface, la figure 5 montre un deuxième mode de réalisation d'un circuit d'interface la figure 6 montre un troisième mode de réalisation d'un circuit d'interface la figure 7 montre un quatrième mode de réalisation d'un circuit d'interface la figure 8 montre un mode de réalisation visant une installation formée de chaudières industrielles, la figure 9 montre un schéma bloc explicitant l'organisation de logiciels utilisable par l'invention. Sur ces figures, les éléments communs portent tous les mêmes références. La figure 1 montre un système conforme à l'invention. Tout le système est basé sur l'utilisation d'un ordinateur de type PC industriel (25). Cet ordinateur 25 est alimenté en 12 volts continus soit par un bloc d'alimentation 26 secteur soit par une batterie 27 si le système est embarqué. A cet ordinateur est rattaché un ensemble de périphériques 28 constitué essentiellement par un écran 30, un clavier 32, une imprimante 34, une souris 36 et un modem 38 permettant une liaison par Internet. Cet ordinateur 25 travaille en coopération avec un ensemble de logiciels contenu dans un ensemble de mémoire-programme 40. Pour relier l'ordinateur 25 aux différents blocs fonctionnels 42, 43 et 44 (par exemple : des thermomètres, des manomètres, des électrovannes, des détecteurs etc), l'invention propose différentes mesures. En effet, il faut prévoir une communication entre cet ordinateur 25 et ces blocs dont il faut gérer les phases de fonctionnement. -3 On a prévu pour cela, tout d'abord une première ligne BUS 50 et une seconde ligne 51 connectées à l'ordinateur 25. La structure de ces lignes est montrée à la figure 2. Cette ligne est formée de huit fils. Parmi ces huit fils, un ensemble de 4 fils El est affecté à la transmission de tension d'alimentation (48 Volts) pour transmettre une puissance de 30 Watts environ, un ensemble de 3 fils E2 est affecté à la transmission de données dans les deux sens de transmission possible (norme R5485) et un fil E3 pour transmettre une interruption vers différents blocs. D'une manière pratique les connecteurs de ces lignes 50 et 51 sont des connecteurs de type RJ45. Sur la figure 1, on a représenté d'une manière schématique par un fil 53, l'application d'une tension à fournir à ces lignes 50 et 51. Deux paires sont utilisées pour un bus R5485. Les deux autres paires sont utilisées pour la transmission de l'alimentation 48Vcc dérivée d'un convertisseur 54. La ligne 50 est connectée à différents circuits d'interfaces 55, 56 et 57 en utilisant des boîtiers d'interconnexion 60, 61 et 62 La structure de ces boîtiers d'interconnexion est montrée à la figure 3. Ceux-ci présentent une structure simple : les fils sont directement interconnectés entre eux, comme le montre clairement la figure 3. Pour des raisons de clarté des explications, on ne mentionnera pas les interconnexions avec la ligne 51, celles-ci s'effectuant de la même manière. On voit apparaître ainsi que la seule alimentation du système est celle élaborée au sein de l'ordinateur 25. Les éléments à alimenter séparément sont les éléments péri- informatique et les blocs tels que capteurs ou actionneurs si leur consommation est trop importante pour être alimentés par les lignes 50 et 51. La figure 4 montre la structure commune à toutes les interfaces utilisables, notamment les circuits 55, 56 et 57, par le système de l'invention. Ces circuits d'interface sont formés à partir d'un même circuit de base 70 auquel on associe des circuits adaptés 72. Ces circuits adaptés 72 autorisent le dialogue avec les blocs fonctionnels. Le circuit de base 70 comporte essentiellement un microcontrôleur 75 qui peut être programmé par un programme injecté sur sa borne JTAG formée en fait par 4 accès pour des fils conducteurs, un ensemble convertisseurs 77 qui, à partir des tensions véhiculées par la ligne 50, fournit les tensions requises à l'alimentation des différents composants du circuit d'interface par exemple des tensions de 5 Vcc et de 3.3 Vcc, un convertisseur de protocole R5485/R5232, dont la référence est 79, qui convertit les signaux du BUS 50 en signaux répondant au -4 protocole RS232 pour être admis par le microcontrôleur 75. Il est prévu une pile 80 de sauvegarde qui autorise un fonctionnement du microcontrôleur 75, notamment la sauvegarde de certaines données importantes, l'état des mémoires du microcontrôleur et aussi la possibilité d'exécuter les fonctions indispensables en cas de coupure de courant. Le microcontrôleur dialogue avec l'ordinateur 25 via un port RS232. La présence du convertisseur RS485/RS232, dont la référence est79, se justifie pour la raison suivante. En effet une liaison RS232 ne permet pas de transmettre le signal sur une distance supérieur à 30m à 9600 bauds. Le protocole RS485 lui tolère des distances bien plus grandes ce qui donne une grande souplesse pour la mise en place du système de l'invention. Il est à noter que chaque circuit d'interface se voit affecter une adresse, ainsi depuis le PC 2,5 on pourra définir quelles sont les fonctions qui sont applicables aux différentes entrées et sorties. Chaque carte d'interface comprend, en plus du circuit de base 70 un circuit adapté 72, comme déjà mentionné, de sorte que l'on puisse lire ou agir sur les blocs rattachés sur les accès 82. Ce circuit adapté peut être différent, bien entendu, pour chaque circuit d'interface en fonction des blocs extérieurs. Un exemple de circuit d'interface 90 est montré à la figure 5. Il a pour but d'activer un dispositif d'alarme pour avertir un utilisateur d'une anomalie telle qu'une alarme, une anomalie de fonctionnement, ou tout autre urgence. On utilise soit une sirène soit un gyrophare soit un feu soit une lampe flash. Dans l'exemple qui va être décrit il a été choisii une lampe flash avec sirène alimentée en 12 à 24 volts ne consommant que 1,5 watts. Les lignes BUS 50 ou 51 peuvent délivrer suffisamment de puissance pour faire fonctionner la sirène. La carte d'interface montrée à cette figure peut présenter une taille suffisamment petite pour être incluse dans le boîtier de la sirène. Le convertisseur 77 doit générer une tension supplémentaire de 24Vcc pour alimenter la sirène. Un optocoupleur 94 permet d'envoyer la tension à la sirène lorsque la sortie connectée est activée. Le firmware prévoit la réception d'une commande générique. Dans ce cas, le microcontrôleur 75 ne répond pas. C'est le seul cas où plusieurs circuits d'interfaces peuvent être connectés sur la même ligne commune en portant la même adresse sans le perturber. Plusieurs sirènes équipées peuvent donc être connectée sur la même ligne avec le même paramétrage et ajoutées à n'importe -5 endroit de la ligne BUS. Ainsi, les signaux d'alarme peuvent être perçus en de nombreux endroits. Bien entendu ce même type de carte trouve d'autres applications, par exemple il est devient possible de transformer par exemple un capteur existant analogique en capteur numérique et de l'alimenter. Ceci permet de s'affranchir des contraintes de transmission et d'alimentation du capteur et souvent d'en augmenter ses performances si la transmission perturbe le signal. Un autre exemple de circuit d'interface est montré à la figure 6. Ce circuit d'interface portant la référence 95 présente une structure plus complexe que les précédentes. Les éléments communs avec ceux des figures précédentes portent les mêmes références. Dans de nombreux domaines dont le secteur des automatismes industriels, un besoin de circuits d'interface comportant un nombre important d'entrées et de sorties se fait sentir. Le principe de l'invention est de disposer les circuits d'interfaces au plus près des blocs comportant des éléments à lire ou à commander afin de minimiser les coûts de câblage. Lorsque plusieurs éléments sont proches, le circuit d'interface 95 décrit ci-dessous trouve une application particulièrement intéressante. En plus des éléments communs aux circuits d'interfaces déjà décrits, il a été ajouté une alimentation ajustable 97 commandé par le microcontrôleur. Ceci permet d'adapter l'interface à la tension utilisée par les éléments extérieurs. La tension dans le domaine industriel peut être du 24 volts mais également du 12 volts ou une autre tension suivant les cas. Huit entrées sont disponibles repérées par Il à 18. Pour chaque entrée un connecteur à trois points comportant la masse, l'entrée et la tension ajustable permet d'y relier un capteur en assurant, si besoin est, son alimentation. Une électronique, non représentée ici, doit bien entendu être ajoutée pour protéger le microcontrôleur. En ce qui concerne les sorties, deux types de câblage ont été réalisés sur la carte. Les sorties 01, 02, 03, 04 ne délivre aucune tension si elles ne sont pas activées et la tension ajustable si elles le sont. Les deux autres sorties 98, 99 sont des contacts de relais commandés par le microcontrôleur. Si la sortie n'est pas active les contacts C et R sont court-circuités et si la sortie est activée les contacts C et T sont court-circuités. Les relais permettent une utilisation directe sur le secteur 230 volts pour une puissance inférieure à 1000 Watts. Ils peuvent également servir à la commande de relais de puissance pour les puissances supérieures ou le triphasé. -6 - Ce circuit d'interface réalisé sous forme de carte est, bien entendu, beaucoup plus volumineux et coûteux que le circuit précédent. Si l'on doit intégrer une carte dans un ensemble, l'étude d'une carte dérivée avec une adaptation spécifique à un produit ou une installation reste toujours possible. Un autre exemple, encore, est montré à la figure 7. Le circuit d'interface qui est montré à cette figure 7 porte la référence 110. Un domaine privilégié de son application est l'opération de relevés de compteurs. Certains peuvent être lus électriquement par le bus R5485 mais d'autres sont mécaniques. C'est le cas de la plus part des compteurs d'eau et de gaz. Les constructeurs de ce type de compteur offrent deux possibilités pour la lecture du compteur soit un compteur électronique avec téléreport (mais dans ce cas, le logiciel de lecture est propriétaire et les relevés ne peuvent être effectués que par le constructeur ou une société habilitée) soit en ajoutant sur le compteur un générateur d'impulsions. Selon un mode de réalisation de l'invention, il a été choisi d'utiliser des compteurs avec générateurs d'impulsion. Pour pouvoir contrôler l'état des compteurs et les comparer avec la valeur des compteurs mécaniques, il a été ajouté un afficheur 112 de deux lignes de 16 caractères permettant ainsi d'afficher deux compteurs dont les impulsions sont reçues sur les bornes IC1 et IC2 respectivement de l'accès 82. La pile de sauvegarde 80 est ici indispensable pour que le microcontrôleur conserve l'état des compteurs internes et même puisse ajouter les impulsions si elles arrivent. En effet, si la ligne BUS 50 ne délivre plus de tension, les compteurs doivent rester actifs car la consommation d'eau ou de gaz est indépendante. Deux autres entrées du microcontrôleur sont utilisées. L'une pour que le microcontrôleur soit prévenu du passage entre une alimentation fournie par la ligne BUS 50 à une alimentation par la pile 80 de sorte qu'il passe en mode économique, l'autre pour mesurer la tension de la pile pour que l'ordinateur 25 puisse prévenir l'utilisateur de faire le remplacement de la pile avant sa décharge complète. Les compteurs internes devront être initialisés à la même valeur que celle des compteurs mécaniques. Certains compteurs électriques divisionnaires de tableau comportent également un générateur d'impulsions. Il est possible de les utiliser également avec la même carte d'interface si l'on veut par exemple relever la consommation d'un groupe d'appareils -7 - définis pour déterminer le coût d'utilisation. Si l'ordinateur peut être informé des tranches horaires et des tarifs EDF il sera possible de ventiler la consommation pour connaître plus précisément le coût spécifique de l'utilisation des appareils. La figure 8 montre un exemple de mise en application d'un système de l'invention dans un cadre du domaine de l'automatisme industriel. Notamment pour la production d'électricité ou de chauffage collectif au niveau d'une commune. Pour cela, on utilise des chaudières de grandes dimensions. Elles sont alimentées soit au charbon soit au fioul lourd ou peuvent être dans une usine d'incinération. Un arrêt pour maintenance est très coûteux et peut durer jusqu'à une semaine. Il faut deux à trois jours pour que le four refroidisse et le même temps pour qu'il remonte en température. Les tubes dans lequel circule l'eau de récupération d'énergie se trouvent rapidement recouvert de cendre provenant de la combustion. Le rendement de la chaudière s'en trouve amoindri. Le ramonage doit donc se réaliser en période de production. Pour cela, une des solutions est d'envoyer périodiquement un jet de solution chimique aqueuse sur les tubes avec une ou plusieurs lances. La figure 8 représente l'installation comprenant dans la zone de stockage 220 le réservoir de produit 222 avec la pompe 224 et le débitmètre 226 qui permet de connaître le volume de produit envoyé pour arrêter la pompe au bon moment. Dans la zone de récupération d'énergie 230 en face des tubes se trouvent deux lances fixes 233 et 234. Selon ce mode de réalisation, trois circuits d'interface 241, 242, et 243 sont utilisés. Ce sont des circuits du type déjà montré à la figure 6. Un des circuits d'interface 241se trouve près de la pompe dans la zone de stockage 220. Les deux autres 242 et 243 se trouvent chacune prés de chaque lance. Les distances entre chaque circuit d'interface et l'ordinateur 25 sont importantes et peut atteindre plus de 100 m. Selon les techniques de l'art antérieur, l'automatisme se faisait à l'aide d'un automate avec toutes les sorties partant de cet automate fixées dans un tableau se trouvant en zone de stockage. Le câblage imposait un câble par lance comportant des conducteurs de forte section traversant toute l'entreprise. Grâce aux mesures préconisées par l'invention, on obtient l'avantage d'une importante diminution du coût d'installation et une visualisation du fonctionnement de l'automatisme dans une zone propre loin de la zone de stockage. -8 Le premier circuit d'interface 241 se trouve près de la pompe 224 et de la cuve 222 dans une armoire électrique la sortie 05 (sortie par relais) commande le relais triphasé de la pompe. Les entrées Il et 12 permettent de voir si le relais est collé et si le disjoncteur de surcharge de la pompe n'est pas déclenché. Si ce disjoncteur est déclenché cela signifie que la canalisation est bouchée. L'entrée 13 alimente le débitmètre et récupère des impulsions qui sont comptées dans un compteur interne au microcontrôleur. Au moment du lancement d'une injection, l'ordinateur envoie le nombre d'impulsions correspondant au volume à injecter, remet à zéro le compteur, puis active la sortie 05. Le microcontrôleur de la carte d'interface 241 arrête la pompe 224 en désactivant 05 lorsque le compteur atteint la valeur préétablie. Les entrées 14 et 15 permettent de connaître l'état du niveau de la cuve car la pompe ne peut pas fonctionner à vide. Les deux autres circuits d'interfaces 242 et 243 sont montés sur chacune des lances 233 et 234 de la même manière. Les lances sont gérées par des commandes à air comprimé disponible sur des accès 250 et 251 respectivement La sortie 01 active le passage d'air pour son refroidissement avant l'injection et la purge après l'injection. La sortie 02 active une électrovanne d'air qui sert à ouvrir l'électrovanne relative au produit. La sortie 03 sert à faire fonctionner un vérin pour faire avancer la lance lorsque celle-ci est mobile. Les entrées Il et 12 reçoivent les informations concernant la présence de l'air comprimé et de l'air comprimé détendu qui est nécessaire pour la purge de la lance. Les entrées 14 et 15 reçoivent les contacts de fin de course de la vanne produit afin que l'ordinateur puisse vérifier que la vanne est bien fermée ou ouverte. La figure 9 montre l'organisation des logiciels implémentés dans la mémoire 40 de l'ordinateur 25. Cette organisation fait appel notamment à l'horloge système 300 de l'ordinateur 25 et de sa mémoire de masse 305. L'écran 30 est aussi mis à contribution. Les autres éléments des composants informatiques peuvent aussi être utilisés. Le logiciel est un environnement de développement complet d'automatisme et d'acquisition de données plus particulièrement utilisable avec le système de l'invention. Ce même ensemble de logiciels est utilisé pour lancer l'application chez le client. Pour lancer cet ensemble de logiciels, on donne en argument le chemin et le nom du fichier contenant la liste de fichiers à interpréter. -9 Donc dans un premier temps, il charge et analyse l'ensemble des fichiers concernés est chargé et analysés. Ceci est illustré à la case Ki. Suite à cette analyse il se crée l'ensemble des variables et des actions ainsi que les fenêtres des écrans et les automatisme qui sont déterminés en analysant les « grafcets » élaborés pour définir les différentes actions à opérer avec les blocs fonctionnels ( voir case K5). Ces différentes phases sont montrées aux cases K11, K12, K13 et K14 relatives respectivement aux automatismes, aux variables, aux actions et aux écrans à élaborer. Enfin on lance l'application qui permet de faire interagir les éléments créés entre eux et avec la mémoire de masse 305 (pour lire ou écrire des fichiers) et les lignes BUS , la ligne 50 (pour dialoguer avec les différents circuits d'interfaces impliqués dans l'automatismes à gérer.) Exemple : L'action sur un bouton à l'écran peut déclencher une opération qui change la valeur d'une variable. Le changement de la valeur de la variable peut rendre vraie la condition du démarrage d'un automatisme. L'automatisme peut déclencher un dialogue avec un circuit d'interface via la ligne BUS 50. Ce dialogue peut changer la valeur d'une variable qui est affichée. Dans la déclaration de la variable, on peut avoir demandé qu'elle soit enregistrée dans la mémoire de masse pour qu'elle reprenne la dernière valeur connue en cas de relance du programme. Cet événement peut intervenir par exemple en cas de coupure de courant. Dans ce cas, le fichier contenant la valeur de la variable sera modifié. L'écran sera aussi modifié et affichera la nouvelle valeur de la variable. Tout ce qui se réfère au temps (arrêt d'un automatisme pendant un temps donné, Top de démarrage d'un automatisme, ...) utilise l'horloge interne 300 du PC. Ceci permet de programmer des temps depuis la milliseconde jusqu'à plusieurs années sans ajout de matériel supplémentaire. Pour utiliser le logiciel en vue de créer une application, il faut impérativement qu'un fichier décrivant un écran impliquant un éditeur de fichier et un écran relatif au de débogage soient inclus. Un bouton permettant la relance complète du logiciel peut être - 10 - présent sur ces écrans et autorise une relance en moins de dix secondes si le développeur veut se rendre compte de l'effet de la modification des fichiers sur le fonctionnement. REVENDICATIONS. 1) - Système automate pour agir sur un ensemble d'au moins un bloc fonctionnel (42, 43, 44) en vue d'effectuer au moins une tâche comprenant : - un organe central de commande (25,27) - au moins une ligne de données commune (50,51), - des circuits d'interfaces (55, 56, 57) pour la connexion des blocs sur au moins une des lignes communes caractérisé en ce que l'organe de commande est formé d'un ordinateur de type PC comprenant une mémoire (40) coopérant avec un logiciel de fonctionnement pour déterminer 10 des phases de fonctionnement desdits blocs, - un logiciel de supervision pour fournir au niveau du PC des valeurs sur lesquelles le système agit, 2) - Système automate selon la revendication 1 caractérisé en ce que le logiciel de fonctionnement est prévu pour interpréter des fichiers de type « Grafcet » 15 3) - Système automate selon l'une des revendications bu 2 caractérisé en que la ligne de données commune est du type RS485 à laquelle on a adjoint une source d'alimentation. 4) - Système automate selon l'une des revendications 1 à 3 caractérisé en ce qu'il comporte des circuits d'interfaces (55, 56, 57) connectés entre les blocs fonctionnels à commander et la ligne de données commune (50) et formés à partir de microcontrôleur (75). 20 5) Système automate selon l'une des revendications 1 à 4 caractérisé en ce que le système peut être alimenté sous une tension de 12Volts convertible en 24 Volts en vue d'être embarqué sur des véhicules ou bateaux ou aptes à fonctionner sur un site isolé. 6) - Système automate selon l'une des revendications 4 ou 5 caractérisé en qu'il comporte une source d'alimentation (54) fournissant de l'énergie aux différents circuits 25 d'interface reliés à ladite ligne de données commune (50). 7) - Système automate selon l'une des revendications 4 à 6 caractérisé en ce qu'au moins un programme» destiné aux microcontrôleurs (75) desdits circuits d'interface est chargé par les broches « jtag » de ces microcontrôleurs. 8) - Système automate selon l'une des revendications 4 à 7 caractérisé en ce que les circuits d'interfaces sont formés d'un circuit de base (70) et d'un circuit adapté (72) au bloc à contrôler. 9) - Système automate selon l'une des revendications 4 à 8 caractérisé en ce qu'une adresse est affectée aux circuits d'interface à partir de l'organe central de commande (25, 27). 10) - Système automate selon l'une des revendications 4 à 9 comprenant une pluralité de blocs fonctionnels destinés à fournir des signaux d'alarme, caractérisé en ce que des circuits d'interfaces rattachés à des blocs de signaux d'alarme sont affectés d'une même adresse. 11) - Système automate selon l'une des revendications 4 à 10 caractérisé en ce que le 15 circuit de base (70) est formé dudit microcontrôleur, d'un convertisseur de protocole (79) entre les données transmise par le bus et les données traitable par ledit contrôleur, d'un convertisseur de tension d'alimentation (77) pour fournir les tensions convenant auxdits blocs à partir de l'alimentation transmise par ladite ligne commune. 12) - Système automate selon l'une des revendications 8 à 10 caractérisé en qu'il est 20 prévu une pile (80) de sauvegarde au niveau des circuits d'interfaces.