Brevet FR2432183A1 — publié le 19800222

La présente invention a pour objet un automate de conduite de processus, c'est-à-dire un appareil susceptible d'être relié à des capteurs, de traiter les signaux de mesure fournis par ces capteurs, de commander des périphériques actifs de sortie en fonction de ces signaux et de mémoriser ou d'enregistrer diverses données, telles queles signaux d'entrée ou les signaux traités. L'invention trouve une application importante, bien que non exclusive, dans les installations agricoles ou d'élevage exigeant une climatisation qui est assurée en utilisant l'electri- cite comme source d'énergie. On connaît déjà de telles# installations comportant une régulation indépendante des différents paramètres à commander (température, hygrométrie,...). Mais l'emploi de chaînes indépendantes se traduit par des gaspillages d'énergie. L'invention vise à fournir un automate permettant notamment une gestion en fonction de l'ensemble des paramètres à contrôler, tenant compte de l'ensemble des facteurs entrant en jeu et des prévisions possibles. Dans le cas particulier d'une installation agricole (telle qu'une serre), ou d'élevage, on pourra notamment tenir compte des gains en chaleur sensible et latente due au soleil dans le premier cas et aux animaux dans le second. L'automate agira alors sur la commande- électrique de moyens de chauffage, de ventilation et/ou d'humidification. Dans ce but, l'invention propose notamment un automate de conduite de processus comprenant un microprocesseur muni d'une mémoire vive, d'une mémoire morte contenant le programme cyclique de conduite, d'une voie de données et d'une voie d'adresses, un interface d'entrée comprenant un compar#ateur attaqué, d'une part, par un multiplexeur analogique relié à des capteurs et commande à partir des bits les moins significatifs de la voie de données sous la commande du programme en mémoire morte, et, d'autre part, par un convertisseur numérique-analogique dont l'entrée est reliée à la voie de données du microprocesseur qui commande cette voie de façon à faire converger la valeur présentée au comparateur par le convertisseur vers la valeur analogique fournie par le multiplexeur. Un tel automate peut accomplir non seulement une fonction de gestion, mais aussi des fonctions de centrale de mesure, de dépouillement et de calcul. Il sera aisément adaptable à chaque cas particulier par simple modification de programme et donc beaucoup plus avantageux qu'un système à logique câblée, onéreux à réaliser et difficile à modifier, notamment pour obtenir les résultats les plus favorables par tâtonnements. L'invention sera mieux comprise à la lecture de la description qui suit d'un automate qui en constitue un mode particulier de réalisation, donné à titre d'exemple non limitatif. La description se réfère aux dessins qui l'accompagnent, dans lesquels - la figure 1 est un schéma de principe très simplifié de la partie électronique de l'automate, - la figure 2 est un schéma très simplifié montrant l'adjonction, à l'automate de la figure 1, de cartes de "valeur butée", L'automate qui sera décrit à titre d'exemple sera supposé destiné à la gestion climatique de l'atmosphère contenue dans une enceinte, telle qu'une serre ou un local d'élevage. Dans ce cas, l'automate devra conduire un processus de maintien et d'évolution d'un ensemble de caracterìstiques climatiques suivant une règle pré-etablie, mais généralement ajustable, en réduisant au minimum la consommation d'énergie. Les caracteristiques climatiques seront déterminées par emploi de capteurs d'entrée et influencées par commande de périphériques actifs de sortie. L'automate devra de plus, après acquisition des mesures fournies par les capteurs, traiter ces mesures de façon à fournir des données exploitables pour affiner les règles de conduite de processus, c'est-à-dire effectuer une véritable gestion d'informations. Les capteurs d'entrée seront,pour la plupart, de type analogique, ayant à fournir une mesure absolue ou différentielle. Des capteurs par tout ou rien seront également souvent nécessaires. Les périphériques de sortie comporteront des périphériques actifs, de nature à modifier les caractéristiques climatiques, et des périphériques que l'on peut qualifier de passifs, destinés simplement à stocker, visualiser ou conserver l'information. Enfin, l'automate pourra être complété pai un calculateur extérieur permettant soit la mise au point du programme de l'automate, soit la réalisation de calculs supplémentaires sur les données mémori sées, ce qui peut se réaliser de façon relativement simple à condition #ue l'automate comporte un circuit d'accès direct en mémoire. L'automate dont le schéma de principe est montre en figure 1 comporte un microprocesseur 10 qui peut être de type commercial courant, par-exemple SC/MP de NATIONAL SEMICONDUCTEUR, Z80 de ZILOG ou 8080 d'INTEL. Le microprocesseur proprement dit 10 est associe à une mémoire vive ou RAM 11 et une mémoire morte programmable ou PROM 12. La mémoire morte est destinée à stocker le programme général de conduite de processus, ainsi éventuellement que des valeurs permanentes. Le microprocesseur 10 est muni d'une voie ou ligne bus d'adresse 13 et d'une voie ou ligne bus de données 14, cette dernière bidirectionnelle. Le programme stocké en mémoire morte 12 est un programme cyclique d'acquisition et de traitement de données et de gestion. La durée de cycle est par exemple de 0,20 seconde. Le microproces#seur 10 est associé, par les voies 13 et 14, d'une part, à des capteurs d'entrée fournissant les mesures nécessaires à la-gestion et, d'autre part, à des périphériques et organes de sortie. Ces divers composants seront maintenant successivement décrits. Les capteurs d'entrée comportent d'unepart, des capteurs destinés à des mesures, qu'on appellera "capteurs analogiques", d'autre part, des capteurs d'état, qu'on appellera par la suite "binaires". Les capteurs de mesure peuvent notamment fourni une information représentative d'une température, d'un éclairemer d'un taux d'humidité, de la vitesse de l'air, de la position de potentiomètres, de différence#de température entre deux points, etc. Les capteurs binaires (dont plusieurs peuvent être associes pour augmenter le nombre de niveaux de quantification) sont destines à donner des informations ne pouvant prendre qu'un ~nombre de valeurs déterminé, par exemple représentant le dépasse. ment d'une pression ou d'une température, l'arrivée en fin de course d'un organe, le tarif applicable de facturation d'énergie électrique. La jonction entre le microprocesseur et les-capteurs s'effectue par l'intermédiaire d'un interface réalisé sous forme d'une carte électronique. Cet interface 15 (figure 1)' comprend un multiplexeur analogique d'entrée 16 -dont les entrées telles que 17 sont reliées chacune à un capteur analogique. La sortie du multiplexeur est reliée à l'une des entrées d'un comparateur 18 dont la sortie attaque une entrée de déclenchement 19 du microprocesseur 10. La sortie du-multiplexeur 16 est reliée à une entrée 17 qui est sélectionnée à l'aide d'une mémoire de sélection 20, qui peut avoir une capacité faible (par exemple 1 octet). La mémoire 20 intervient lorsqu'un décodeur 20a, relié a la voie 13, identifie son adresse et excite son entrée de validation.Les signaux d'adressage simultanément appliqués sur les conducteurs de la voie 14 correspondant aux bits de poids faible, permettent alors d'effectuer la sélection. Si par exemple le multiplexeur est à seize entrées, il suffit d'appliquer les quatre bits de poids faible à la mémoire de sélection 2cri. La seconde entrée du comparateur 18 reçoit un signal analogique provenant de la conversion de signaux fournis par le microprocesseur 10. Les moyens de conversion comportent une mémoire de maintien temporaire 21 et un convertisseur numérique-analogique 22. Le fonctionnement de l'interface 15 est commandé par le programme stocké en mémoire morte 12 du microprocesseur 10. Lors de chaque cycle, chacun des capteurs sera scruté à son tour et le signal de mesure-qu'il fournit sera restitué sous forme numérique au microprocesseur 10 pour traitement, par le processus suivant, qui est répété autant de fois qu'il y a de capteurs. Le programme d'acquisition envoie à la mémoire de sélection un message représentatif de l'adresse de l'entrée du multiplexeur 16 correspondant au premier capteur. Le comparateur 18 reçoit alors sur sa première entrée un signal analogique de mesure. En même temps, le microprocesseur applique à la mémoire de conversion 21, par l'intermédiaire de la voie de données 14, un mot binaire représentatif d'un#e valeur numérique estimée ou de départ, qui peut par exemple être la derniere valeur précédemment lue ou une valeur arbitraire. Le convertisseur numérique analogique applique sur la seconde entrée du comparateur 18 un signal analogique correspondant. Si l'on--suppose que le convertisseur N/A 22 fournitxun signal supérieur à celui du multiplexeur 16, la sortie -ducomparateur 18 prend un premier niveau. En réponse à ce premier niveau, le microprocesseur émettra, vers la mémoire 21, un mot représentant un nombre décrémenté d'une -unité par rapport au nombre précédent. Une nouvelle comparaison sera faite jusqu'au moment ou le niveau du comparateur basculera. La dernière valeur numérique contenue en mémoire 21 avant basculement sera alors prise comme valeur de mesure. Une telle séquence d'opération est toute fois très longue et un procédé de pesage plus élabo-ré, par modifications successives des bits à partir du plus significatif, pourra être adopté, la valeur initiale étant le milieu de la plage de mesure. Si on suppose par e-xemple -que la grandeur d'entrée a pour valeur binaire 01 011 001 on essaie d'abord 10 000- 000 Le comparateur indique que cette valeur est trop élevée au microprocesseur qui essaie alors 01 000 000. Le comparateur indique que c'est trop faible : on essaie alors 01 100 000, puis on poursui l'itération jusqu'au dernier bit. Si la grandeur d'entrée est une valeur supérieure à la plus forte représentable, c'est celle-ci qui est mémorisée. Quoi qu'il en so#it, la valeur de mesure numérisée sera stockée en mémoire vive, en vue d'un traitementultérieur. La totalité des entrées 17 du multiplexeur est ainsi successivement mémorisée En dépit de la lenteur relative de calcul d'un microprocesseur, la numérisation d'une grandeur d'entrée s'effectue en un temps très bref, inférieur à 2 ms. Au cours de cet intervalle de temps, la grandeur d'entrée peut avoir# été profondément perturbée par un parasite. Dans certains cas, la décision qui serait prise par l'automate sur la base d'une telle mesure serait erronée. En conséquence, l'automate est prévu pour effectuer un lissage des mesures en provenance d'un capteur déterminé. Ce lissage consiste à effectuer une pondération entre plusieurs mesures successives, suivant un programme mémorisé en mémoire morte. On peut notamment utiliser un alg#orithme de lissage du genre suivant GL =-63GL+ 1 G G Ln = 64 G Ln-1 t G Dans cette formule G L est la nouvelle valeur lissée de la grandeur,# n G Ln 1 est la valeur lissée précédente#conservée en mémoire, Gb est la dernière valeur brute mesurée On voit que, si la grandeur passe soudainement et définitivement d'une valeur une autre, la valeur lissée va évoluer de l'ancienne à la nouvelle valeur, selon une loi exponentielle négative, avec une constante de temps égale à 64 fois l'intervalle entre acquisitions successives (soit environ 6 s dans l'exemple évoqué plus haut); On peut naturellement conserver en mémoire, d'une part, les valeurs brutes, d'autre part, les valeurs lissées, afin de garder une indication sur l'évolution des grandeurs qui peuvent être modifiées de façon très brutale. L'automate peut également comporter des entrées du type "tout ou rien. Ces dernières se divisent encore en deux groupes, selon qu'elles changent périodiquement d'état avec une périodicité largement supérieure à la durée d'un cycle de programme (signaux d'horloge de mesure de temps par exemple) ou qu'elles changent pendant un bref instant avant de revenir à l'état initial. Si dans le premier cas aucune mémorisation n'est nécessaire, le changement d'état étant forcément perçu par le microprocesseur lors d'un cycle, il n'en est pas de même dans le second et une mémorisation pendant une durée supérieure à celle d'un cycle est indispensable. Dans un but d'uniformisation, on pourra d'ailleurs traiter la totalité des signaux d'entrée "tout ou rien" de la même façon. Dans le mode de réalisation illustré en figure 1, les entrées "tout ou rien", telles que 23, attaquent un bloc de mémoires d'entrée 24. Les mémoires peuvent être constituées par des bascules bistables associées chacune à une entrée 23. Lorsque le capteur binaire correspondant fournit un signal qui sera considéré comme d'activité, il amène ou maintient la mémoire à l'état actif. A chaque cycle de scrutation, le microprocesseur détermine l'état de chaque bascule à son tour, le compare# à l'état relevé lors du cycle de programme précédent, mémorise les changements d'état éventuels et enfin ramène à zéro les bascules qui reviennent immédiatement à l'état actif lorsque le capteur correspondant est lui-même à l'état actif. Là gestion des sorties "tout ou rien", telles que 25, peut s'effectuer de façon semblable à celle des entrées "tout ou rien" 23. A chaque sortie 25 est associée une-bascule bistable du bloc de mémoire 26. A chaque cycle du programme, celui-ci détermine l'état que doit avoir chaque sortie et positionne en conséquence les bascules du bloc 26. Chaque sortie telle que 25 est prévue pour prendre un état fixé par celui de la bascule correspondante et, à chaque cycle du programme, il y a soit maintien, soit changement de l'état de la sortie. Dans le cas d'application à la climatisation, certaines au moins des sorties seront reliées à des périphériques actifs tels que relais d'alimentation et de coupure de moteur de déplacement d'organes, d'entraînement de pompe ou de compresseur, électrovannes de circuits d'eau, de gaz ou de combustible. D'autres sorties peuvent être reliées à des périphériques qu'on peut qualifier de "passifs", tels que des voyants d'indication ou d'alarme. D'autres sorties encore peuvent être prévues non plus pour commander ou contrôler le processus, mais pour visualiser ou enregistrer le contenu de la mémoire. Enfin, des organes d'entrée-sortie tels que téléscripteur et calculateur peuvent être prévus, notamment au cours de la période de mise au point du programme. L'intervention du calculateur peut être facilitée en utilisant un microprocesseur acceptant des ordres externes d'interruption et à accès direct en mémoire. Le programme général de conduite de processus sera généralement commun à tous les automates prévus pour la même application, par exemple pour la gestion climatique. Par contre, certaines donnes numériques intervenant dans le calcul (par exemple dimensions géométriques du local à climatiser, nombre d'individus qui l'occupent, exposition au soleil, etc.) varient d'une installation à l'autre. Il serait évidemment possible de modifier le programme contenu en mémoire morte en conséquence, mais cette façon de procéder conduit à une personnalisation des mémoires mortes et à un gel du programme.On obtient davantage da souplesse en munissant l'automate d'un dispositif de fixation de valeurs numériques, qu'on désignera par la suite sous le nom de "valeurs butées", tel que celui montré en figure 2, qui permet de conserver un programme commun #en mémoire morte. Le dispositif montré en figure 2 permet de donner, à chacun de -n paramètres de calcul, une valeur quelconque parmi un nombre déterminé de valeurs quantifiées. Le dispositif montré en figure 2 comporte alors n fiches (16 par exemple) telles que 27r adressables à partir des conducteurs de la voie d'adresses 13 correspondant aux, bits de poids fort. Chaque fiche 27 correspond à un paramètre et la valeur choisie pour ce paramètre est affichée manuellement par choix entre m valeurs predêterminees. Dans le mode de réalisation illustré, 16 valeurs prédéterminées sont prévues, ce qui correspond à un nombre de 4 bits. Chaque fiche 27 est munie d'un décodeur d'adresse 30 relié aux quatre bits de poids élevé de la voie d'adresses 13 et d'une logique 28 adressable à trois états (t, O et haute impédance). Le choix de la position de lecture du paramètre (de O à 15 sur la Fig. 2) s'effectue à l'aide des quatre conducteurs de poids faible de la voie d'adresses 13.La sélection par adressage d'une fiche 27 et de sa logique 28, ajoutée à celle d'une position de paramètre dans la fiche, fait apparaître la valeur choisie pour le paramètre sur des sorties binaires 29 reliées à des conducteurs de la voie de données 14 (quatre conducteurs si seize valeurs sont possibles, correspondant avantageusement aux bits de poids fort pour équilibrer les charges). A titre d'exemple, on peut indiquer qu'un automate destiné à la gestion climatique a été réalisé à partir d'un microprocesseur à 8 bits utilisé en association avec les capteurs et périphériques décrits ci-après. Les capteurs fournissant les grandeurs d'entrée constituent, les uns des générateurs de tension, les autres des générateurs de courant. Dans le premier cas, ils peuvent être reliés directement à une entrée du multiplexeur analogique, sous réserve que leur tension de sortie ne dépasse pas 3 Volts et qu'ils soient capables de fournir un courant de 1 nA. Les capteurs constituant générateurs de courant sont reliés aux entrées correspondantes du multiplexeur par l'intermédiaire d'amplificateurs opérationnels à bouclage par résistances. Ces capteurs comportent notamment - des thermomètres de mesure de température intérieure ou extérieure du local à climatiser, d'un stock d'eau ou de la terre, utilisant comme élément sensi ble un semiconducteur au silicium constituant générateur de tension-; - un ou des luxmètres, dont l'élément sensible est un phototransistor au silicium constituant générateur de courant - un ou des anémomètres, constituant générateurs de tension - un ou des dispositifs de mesure de degré hygrométriques, avantageusement constitués par l'association d'un thermomètre de mesure de température sèche et d'un thermomètre différentiel dont les signaux de sortie sont traités par le microprocesseur, plutôt que par des hygrometres électroniques qui sont onéreux et fragiles. Les entrées peuvent également comporter des organes ajustables manuellement, tels que des commutateurs numériques commandés- par roues codeuses. Il n'est pas nécessaire de décrire de nouveau la nature des périphériques actifs de sortie. Il suffit d'ajouter que ces périphériques de sortie peuvent également comporter des moyens d'enregistrement, par exemple une imprimante, et peuvent être combinés avec des organes d'entrée, de façon à permettre de fonctionner en régime conversationnel. Le fonctionnement du dispositif ressort de la description qui précède. il suffit donc d'indiquer que l'automate est susceptible de réaliser - d'une part, la gestion proprement dite du processus dont il a la char-ge,- par saisie des données fournies par les capteurs d'entrée, traitement de ces données conformément à un programme de calcul et commande des périphériques de sortie, - dtautre part, des calculs scientifiques sur les données d'entrée, impliquant des opérations arithmétiques ou logiques sur les valeurs des signaux d'entrée. REVENDICATIONS 1. Automate de conduite de processus comprenant un micro-processeur muni d'une mémoire vive, d'une mémoire morte contenant un programme cyclique de scrutation de capteurs et de conduite, d'une voie de données et d'une voie d'adresses, un interface d'entrée comprenant un comparateur attaque, d'une part, par un multiplexeur analogique relié aux capteurs analogiques et commandé à partir des bits les moins significatifs de la voie de données sous la commande du programme en mémoire morte et, d'autre part, par un convertisseur numérique-analogique dont l'entrée est reliee à la voie de données du micro-processeur qui commande cette voie de façon à faire converger la valeur présentée au comparateur par le convertisseur vers la valeur analogique fournie par le multiplexeur. 2. Automate suivant la revendication 1, caractérisé en ce que l'interface d'entrée comprend également des mémoires binaires affectées chacune à une entrée tout ou rien et des moyens d'adressage permettant de scruter chacune desdites mémoires binaires lors de chaque cycle de programme et de faire apparaître son contenu sur la voie de données. 3. Automate suivant la revendication 2, caractérisé par #des moyens d'adressage desdites mémoires d'entrée permettant de remettre celles-ci à zéro après chaque scrutation. 4. Automate suivant l'une quelconque des revendications précédentes, caractérisé en ce qu'il comprend une interface de sortie vers des périphériques commandés en tout ou rien, comportant des mémoires binaires reliées aux bus de données et affectées chacune à une des sorties. 5. Automate suivant l'une quelconque des revendications précédentes, caractérisé en ce que la mémoire morte contient un programme de lissage des mesures faites par les capteurs analogiques. 6. Automate suivant l'une quelconque des revendications precedentes, caractérisé en ce qu'il comprend des moyens de sélection de valeur de butée constitués par une pluralité de fiches affectées chacune à une grandeur d'entrée ou de sortie déterminée, comprenant des moyens de sélection parmi n valeurs (n étant un nombre entier), des moyens d'adressage et des moyens de sortie vers les bits les plus significatifs de la voie de données. 7. Application de l'automate suivant l'une quelconque des revendications précédentes à la gestion climatique d'une installation agricole ou d'élevage.