FR 2538028 A1 19840622 FR 8320232 A 19831216 La présente invention concerne des procédés et appa- reils de contrôle du fonctionnement d'ensembles de pompage de puits à tigesde pompage, et plus précisément des procédés et appareils de détection du cognement contre le fluide dans des puits mettant en oeuvre des ensembles à tigesde pompage. On utilise beaucoup les ensembles à tige de pompage dans l'industrie du pétrole afin de récupérer le fluide des puits qui pénètre dans les formations souterraines De tels ensembles comportent un train de tiges de pompage qui Dénètre dans le puits et un dispositif placé à la surface et destiné à assurer un mouvement vertical alternatif du train de tiges afin qu'une pompe de fond de sondage soit entraînée Des exemples de tels ensembles sont les ensembles de pompage à "balancier" dans lesquels le train de tiges est suspendu à la surface du puits à-une structure formée d'un support et d'un balancier articulé sur le support Le train de tiges de pompage est normalement raccordé à une première extrémité du balancier et l'autre extrémité de celui-ci est raccordée à un dispositif principal d'entraînement tel qu'un moteur par une connexion convenable à bielle et manivelle Dans cet arrangement, le balancier et le train de tiges sont en- traînés de manière alternative par le dispositif d'entraîne- ment. Divers défauts de fonctionnement tels que des pompes usées, destiges cassées de pompage, des tubes fendus et des soupapes collées de pompe peuvent interrompre le pompage du fluide provenant d'un puits Ces défauts de fonctionnement peuvent être provoqués par l'usure et le grippage normal de l'appareillage, étant donné la nature du fluide pompé, ou ils peuvent être dus à des conditions anormales de pompage. Une condition anormale de pompage qui est très commune est le "cognement" du fluide Ce cognement apparaît lorsque le puits est pompé excessivement, c'est-à-dire lorsque le fluide est retiré du puits avec un débit supérieur à celui avec lequel le fluide pénètre dans le puits à partir de la formation Dans ces conditions, le puits dans lequel travail- le la pompe de fond de sondage n'est que partiellement rempli pendant la course ascendante du plongeur et, pendant la course descendante, le plongeur vient frapper ou "cogner" le fluide qui se trouve dans le corps et provoque ainsi des secousses importantes de la totalité de l'ensemble de pompage. Ce phénomène provoque une détérioration du train de tiges et de l'appareillage de surface et peut provoquer une panne de l'ensemble de pompage. La présente invention concerne des procédés et appa- reils de détection du cognement du fluide dans un ensemble de pompage de puits ayant un train de tiges de pompage et un ensemble d'entraînement destiné à déplacer alternativement le train de tiges afin qu'un fluide d'un puits soit produit. Une cellule dynamométrique est montée entre le train de tiges et l'ensemble moteur afin qu'ils forment un signal représen- tatif de la force appliquée au train de tige, et un trans- ducteur est connecté afin qu'il forme un signal représentatif de la position du train de tiges Dans un premier mode de fonctionnement selon l'invention, un dispositif de remise à jour utilise le signal de force pour établir une valeur choisie de ce signal et utilise la position du train de tiges pour une position de référence de ce train Un dispositif contrôle le signal de force lorsque le train atteint la posi- tion de référence, et un dispositif est destiné à arrêter le fonctionnement de l'ensemble -d'entraînement lorsque l'absence de fluide sous le plongeur de la pompe provoque un dépassement de la valeur choisie par le signal de force alors que le train de tiges se trouve dans la position de référence. Dans un second mode de fonctionnement selon l'invention, le dispositif de remise à jour utilise la position du train de tiges pour établir une position de référence de ce train et utilise le signal de force pour établir la vitesse de variation de la force appliquée au train de tiges lorsque celui-ci se déplace vers le bas Lorsque le niveau du fluide se trouve au-dessous du piston de la pompe, celui-ci descend à une vitesse qui s'accélère et la position de la tige pour laquelle la vitesse maximale de variation est maximale se trouve plus bas dans la course descendante lorsque le niveau du fluide descend Un dispositif est destiné à vérifier la position de la tige pour laquelle la'vitesse de variation de la force appliquée à la tige a une valeur maximale lors de la course descendante de la tige Un dispositif est destiné à arrêter le fonctionnement de l'ensemble d'entraînement lorsque la position dé la tige pour laquelle la vitesse de variation de-la force appliquée à la tige a une valeur maxi- male est inférieure à la position de référence. Dans un troisième mode de fonctionnement selon l'inven- tion, le dispositif de remise à jour utilise le déplacement de la position de la valeur maximale du signal de-force pour déterminer le moment o le piston de la pompe descend progressivement plus bas avant que le piston n'atteigne le niveau du fluide dans le puits Lorsque cette valeur de force minimale est détectée et lorsque la position de la tige est inférieure à la position de référence, l'ensemble d'entraîne- ment est arrêté. La possibilité de l'utilisation des signaux de position du train de tiges, selon l'invention, pour l'établissement d'une position de référence correspondant à un puits parti- culier, permet l'utilisation de l'appareil avec divers puits et permet aussi un réétalonnage automatique du puits de. manière que l'appareillage du puits puisse être utilisé pen- dant de longues périodes sans intervention humaine Le dispo- sitif d'établissement de la position de référence comporte un microprocesseur qui mémorise des programmes et certains paramètres du puits dans des mémoires permanentes si bien qu'une perte d'énergie au niveau du dispositif d'établisse- ment ne provoque pas une perte des programmes ou des paramètres du puits, si bien que le fonctionnement et la commande du puits reprennent lorsque l'alimentation est rétablie. Les programmes contenus dans le microprocesseur peu- vent être choisis de manière que l'un quelconque des trois modes de fonctionnement selon l'invention ou ces trois modes puissent être utilisés avec un puits qui est commandé par l'appareillage du puits Les puits diffèrent par leurs carac- téristiques individuelles et l'un des modes peut mieux conve- nir à un puits particulier Le cas échéant, tous-les modes de fonctionnement peuvent être utilisés avec un puits donné, et le microprocesseur peut être programmé afin qu'il inter- rompe le fonctionnement de l'ensemble d'entraînement lorsque l'un quelconque ou plusieurs des modes déterminent qu'un épui- sement de pompage a eu lieu Le microprocesseur peut aussi être programmé afin qu'il interrompe le fonctionnement de l'ensemble d'entraînement uniquement lorsqu'une majorité des modes de fonctionnement détermine qu'un tel épuisement de pompage a eu lieu Cependant, on constate qu'un seul mode de fonctionnement assure habituellement une détection fiable de l'épuisement de pompage du fluide. D'autres caractéristiques et avantages de l'invention seront mieux compris à la lecture de la description qui va suivre d'exemples de réalisation et en se référant aux dessins annexés sur lesquels: la figure 1 est un schéma en partie sous forme de diagramme synoptique d'un puits équipé d'un ensemble de- pompage à tiges de pompage la figure 2 est un graphique représentant la varia- tion de la position en fonction de la force de la tige de pompe pendant un cycle de fonctionnement normal, la figure représentant un point de référence-sur le graphique; la figure 3 est un graphique représentant la varia- tion de la position en fonction de la charge de la tige de pompage lorsque le puits progresse dans la condition de cognement; la figure 4 est un graphique représentant la varia- tion de la position en fonction de la force appliquée à la tige de pompage lorsque le puits progresse vers un cognement dû au gaz; la figure 5 est un graphique représentant l'opération d'interpolation de valeurs de la position de la tige de pom- page et de valeurs de la force afin que la valeur de la force, & la position de référence, soit déterminée avec précision; la figure 6 est un schéma représentant la transmis- sion de messages dans un premier mode de fonctionnement de l'appareil de la figure 1 la'figure 7 est un schéma représentant les états d'un détecteur de cognement de fluide à point de consigne du type de la figure 6 utilisé pour la détection de l'épuise- ment de pompage du puits; les figures 8 A et 8 B forment ensemble un circuit d'un ordinateur qui peut être utilisé dans l'appareil de la figure 1 la figure 9 est un tableau illustrant l'exécution de processus réalisé par logiciel, selon l'invention; la figure 10 est un sch éma représentant des symboles d'un exemple de processus réalisé par logiciel utilisé selon l'invention la figure 11 représente un ensemble commuté par des messages et mettant en oeuvre un logiciel selon l'invention; la figure 12 représente un ordonnanceur de processus réalisé par logiciel selon l'invention; les figures 13 et 14 représentent la circulation des données dans le système d'exploitation et un programme utilitaire mathématique selon l'invention la figure 15 représente des exemples de forme d'onde de position et de la dérivée de la position dans l'appareil selon l'invention la figure 16 représente la relation entre les signaux de données lissés (filtrés) et les signaux bruyants (non filtrés), et elle représente les déphasages des signaux qui doivent être considérés dans l'appareil selon l'invention; la figure 17 est un organigramme représentant les messages dans un discriminateur de course selon l'invention; la figure 18 est un schéma de processus réalisé par logiciel dans un discriminateur de course selon l'invention; la figure 19 est un schéma de processus réalisé par logiciel dans un détecteur de la dérivée de la course selon l'invention; la figure 20 est un schéma de processus réalisé par logiciel d'un détecteur des extrema de course selon l'inven- tion, la figure 21 est un schéma de processus réalisé par logiciel d'un calculateur de surfacesde course selon l'inven- tion la figure 22 représente une procédure utilisée pour le calcul de la surface d'une courbe d'un dynamographe pour un exemple de puits; la figure 23 est un organigramme représentant la circulation des messages dans un second mode de fonctionnement de détecteur de cognement de fluide selon l'invention; la figure 24 est un schéma représentant la circula- tion des messages dans le détecteur de cognement de fluide de la figure 23; la figure 25 est un graphique représentant les varia- tions de position en fonction de la force analogue à la figure 3 mais correspondant à un second mode de fonctionnement de l'appareil de la figure 1; - la figure 26 représente l'étalonnage de l'appareil de la figure 1 destiné à être utilisé suivant le troisième mode de fonctionnement afin que les effets des signaux de bruits soient réduits dans l'appareil; la figure 27 est un graphique représentant la varia- tion de la position en fonction de la force, analogue à la figure 3, mais correspondant à un troisième mode de fonction- nement de 1 tappareil de la figure 1 la figure 28 est un schéma représentant la circula- tion des messages selon le troisième mode de fonctionnement de l'appareil de la figure 1;et les figures 29 et 30 sont des processus réalisés par logiciel, correspondant au troisième mode de fonctionne- ment de l'appareil représenté sur la figure 1. On se réfère à la figure 1 qui représente une tête d'un puits qui pénètre de la surface 11 de la terre dans une formation souterraine productrice (non représentée) La tête de puits comporte les parties supérieures d'un train de tubes 12, et un train 16 de tiges de pompage descend dans une pompe de fond de sondage (non représentée) qui chasse le liquide vers la surface au niveau-de laquelle il s'écoule par une canalisation 17 Le train de, tiges 16 est suspendu dans le puits à un ensemble de supports qui comprend un support 18 et un balancier 22 articulé sur le support autour d'un axe 23 Une cellule dynamométrique 24 est montée entre l'extrémité supérieure du train 16 et l'extrémité inférieure d'un tronçon 28 de câble Ce dernier est raccordé au balan- cier 22 par une tête de cheval 29. Le balancier 22 est entraîné alternativement par un dispositif principal d'entraînement tel qu'un moteur élec- trique 30 Ce dispositif principal entraîne le balancier par l'intermédiaire d'un système qui comprend une courroie 34 d'entraînement, un volant 35, un vilebrequin 36, une manivelle 37 et une bielle 41 qui est articulée entre la manivelle et le balancier au niveau d'articulations 42, 43. L'extrémité externe de la manivelle 37 a un contrepoids 47 qui équilibre une partie de la force appliquée au train de tiges afin que la force appliquée à l'organe principal d'en- traînement soit plus constante. La cellule dynamométrique 24 transmet un signal continu de sortie qui est proportionnel à la force appliquée au train 16 de tiges, et un convertisseur analogique-numérique 48 a un signal numérique-correspondant à un ordinateur 49 a Un dispositif ou transducteur-53 de mesure de position comporte un bras 54 de manoeuvre destiné à mesurer la position verti cale du train 16 de tiges par transmission d'une tension proportionnelle à l'angle du balancier 22 et ainsi propor- tionnelle à la position du train de tiges 16 Le convertis- seur numérique-analogique 48 a transforme aussi le signal du transducteur 53 en un signal numérique utilisé par l'ordi- nateur 49 a Les signaux sont transmis de l'ordinateur 49 a à un ordinateur 49 b par deux émetteurs-récepteurs synchrones- asynchrones universels 55 a, 55 b destinés à commander le fonc- tionnement d'une table traçante XY 59 Les instructrions provenant d'un ensemble 60 à clavier et d'affichage et les signaux de sortie de la cellule dynamométrique 24 sont utilisés par la table traçante XY afin qu'ils donnent un tracé visible de la caractéristique du puits particulier avez lequel fonctionne le train de tiges La table traçante 59 peut être utilisée pour l'observation du fonctionnement du puits et pour le réglage de l'appareillage de contrôle du puits Lorsque le réglage est terminé, la table traçante peut être déconnectée ou, le cas échéant, elle peut aussi être éliminée et un autre dispositif de réglage de l'appa- reillage peut être utilisé Les signaux analogiques prove- nant de la table traçante 59 sont mis sous forme de signaux numériques par un convertisseur analogique-numérique 48 b afin qu'ils puissent être utilisés par l'ordinateur 49 b, et les signaux numériques de l'ordinateur 49 b sont trans- formés en signaux analogiques par un convertisseur numérique- analogique 61 de manière qu'ils puissent être utilisés par la table traçante. Un graphique représentant la variation de la position en fonction de la force appliquée au train 16 de tiges pour un exemple de cycles de ce train de tiges lorsque le puits est rempli de fluide, est représenté sur la figure 2 On note que, lorsque le train de tiges se déplace pendant la course ascendante de la position Xmin à la position Xmax, la force appliquée au train augmente jusqu'à Ce valeur maxi- male puis revient à peu près à la valeur initiale La varia- tion de la force lorsque le train descend a plus d'importance, la force diminuant jusqu'à une valeur minimale d'une manière assez rapide puis reprenant approximativement la valeur d'origine pour la position Xmin. Lorsque le puits se rapproche de la condition d'épuise- ment de la pompe (figure 3), la force appliquée au train de tiges change plus rapidement lorsque le train descend. Lorsque le fluide a un niveau qui diminue dans le puits, un piston de la pompe tombe et frappe la surface du fluide dans le puits en produisant un cognement du fluide" qui peut détériorer le train de tiges et d'autres parties de l'ensemble de pompage Lorsque le niveau du fluide dans le puits diminue, le piston se déplace progressivement d'une plus grande distance dans la course descendante avant de venir au contact de la surface du fluide dans le puits et provoque une variation progressive de la courbe représentant la force, de la courbe 65 correspondant au puits plein, aux. courbes 66 a 69 en traits interrompus, la courbe se déplaçant progressivement vers la gauche lorsque le niveau du fluide dans le puits diminue Cette tendance au déplacement peut être observée et la pompe peut être arrêtée afin que l'ap- pareillage ne soit pas détérioré. La présente invention concerne un premier procédé de détection de l'épuisement de la pompe par utilisation de l'appareil de la figure 1 pour la sélection d'un point de consigne (Xs, Ys) ayant une valeur déterminée par les carac- téristique S de chaque puits individuel, et pour la variation du point de consigne lorsque ces caractéristiques varient: L'ordinateur 49 a (figure 1) compare les courbes 66 à 69 de cognement à la position du point de consigne et arrête le moteur 30 lorsque la courbe de cognement se déplace vers la gauche du point de consigne représenté sur la figure 3. Un opérateur humain utilise le clavier 60 ou un autre organe de saisie pour la transmission à l'ordinateur 49 b (figure 1) d'une valeur de pourcentage X et d'une valeur de pourcentage Y à l'ordinateur 49 b qui transmet ces valeurs à l'ordinateur 49 a si bien que celui-ci calcule une valeur Xs de consigne représentant le pourcentage de la distance entre Xmin et Xmax (figure 2), et qu'il calcule une valeur Ys correspondant au pourcentage de distance entre Ymin et Ymax, donnant ainsi la position du point de consigne La valeur Xs et Ys peut être calculée d'après les formules Xs = (Xmax Xmin) (X% / 100) + Xmin Ys = (Ymax Ymin) (Y% / 100) + Ymin Les valeurs de Xmax, Xmin, Ymax et Ymin qui peuvent être utilisées sont les valeurs maximales et minimales de la courbe des figures 2 et 3 Les pourcentages X et Y représen- tent les pourcentages choisis par l'opérateur humain lors- qu'il a connaissance du puits et de l'appareil de pompage, pour la sélection de ces pourcentages En outre, deux valeurs valeurs nominales quelconques de X et deux valeurs nominales quelconques de Y peuvent être choisies & la place des valeurs maximales et minimales suggérées Lorsque les caractéristi- ques du puits ou de sa pompe, etc doivent changer dé manière que la courbe des figures 2 et 3 change, l'ordinateur calcule à nouveau la position du point de consigne. Lorsque le point de consigne (Xs, Ys) a été choisi, l'ordinateur contrôle'de façon continue la valeur X de la courbe (figure 3) pendant la course descendante du piston jusqu'à ce que la courbe atteigne la valeur Xs lorsque la courbe passe de Xmax à Xmin Lorsque la courbe se trouve au point Xs, l'ordinateur vérifie la valeur de Y Si celle- -ci dépasse la valeur de Ys, l'ordinateur 49 a (figure 1) donne un signal qui provoque l'arrêt du moteur 30 et l'arrêt du puits Il peut être souhaitable de s'assurer que le puits est réellement en épuisement à ce moment, en permettant un déplacement de la pompe pendant deux cycles ou plus, avec la courbe (de la figure 2) à gauche du point de consigne à chaque fois, avant l'arrêt du moteur 30 Ceci empêche l'arrêt du puits sous la commande d'un signal erroné de la cellule dynamométrique 24 ou du transducteur 53 ou d'un autre appareil électronique ou dû au comportement du puits lui- même. Il est aussi important de pouvoir faire la différence entre le cognement du fluide et le "cognement du gaz" dans le puits contrôlé Le cognement du gaz se produit lorsque le puits est rempli de fluide mais lorsque du gaz est présent dans le fluide extrait du puits, et le gaz retarde le dépla- cement de la force du fluide provenant d'une soupape incorpo- rée à la pompe pendant la course de descente car le gaz est compressible Cependant, le mélange de gaz et de fluide présente une plus grande résistance à la descente du piston qu'une condition d'épuisement si bien que le plongeur descend plus lentement que lors d'un cognement du fluide Ces diffé- rences peuvent être observées par comparaison du tracé de la figure 2 correspondant au puits plein à la courbe de cognement de fluide de la figure 3 et à la courbe de cogne- ill ment de gaz de la figure 4. La teneur en gaz du fluide pompé d'un puits peut varier de manière imprévisible si bien que la course de descente du piston peut sauter de manière tout à fait aléat oire entre les courbes de descente 70 a à 70 e de la figure 4 Par exemple, lors d'une course de descente, la cellule dynamométrique 24 et le transducteur 53 (figure 1) peuvent donner la courbe b, alors que la course descente suivante donne la courbe e et la course descendante suivante la courbe 70 c. Lorsqu'un puits est en cours d'épuisement, le niveau du fluide diminue progressivement si bien que la force du train de tiges suit la courbe 65 (figure 3) lors d'une course descendante, puis la courbe 66, puis la courbe 67, etc, vers la courbe 69, le signal de sortie de la cellule dynamo- métrique 24 (figure 1) se déplaçant progressivement vers la gauche lors des courses descendantes successives comme l'indique la figure 3 Cette différence-entre un déplacement vers la gauche pour le cognement du fluide et un déplacement aléatoire pour le cognement du gaz peut être utilisée car il facilite la distinction entre ces deux conditions. Les figures 6 a 8 A et 8 B donnent des détails sur le procédé et l'appareil d'étalonnage automatique d'un puits et de contrôle du fonctionnement de celui-ci Les figures 8 A, 8 B, placées côte à côte au niveau du trait de raccorde- ment forment un diagramme synoptique d'un mode de réalisation des ordinateurs 49 a et 49 b (figure 1). La partie du système des ordinateurs représentée sur la figure 8 A comporte un organe 71 de commande de moteur destiné à recevoir des signaux de la cellule dynamométrique 24 et du transducteur 53 et a utiliser ces signaux pour la détermination de la séquence de commande du moteur 30. L'ordinateur 49 b représenté sur la figure 8 B comprend un organe 72 de commande de table traçante destiné à utiliser les signaux de la cellule dynamométrique et du transducteur provenant de l'ordinateur 49 a pour la commande de la table traçante XY 59 Les signaux sont échangés entre les organes 71 et 72 de commande du moteur et de la table par la paire de fils 66, 67 de connexion Chacun des organes 71, 72 de commande comporte un processeur central 73 a, 73 b, un organe programmable de commande d'interruption 74 a, 74 b, une inter- face programmable de périphérique 75 a, 75 b et un décodeur de mémoire 76 a, 76 b, reliés afin qu'ils échangent des infor- mations et des instructions par une ligne commune 80 a, 80 b du système Un processeur central 73 a, 73 b qui peut être utilisé selon l'invention est du type 8088 fabriqué par Intel Corporation, Santa Clara, Californie Une interface program- mable 75 a, 75 b de périphérique qui peut être utilisée est du type 8255 A, et un organe programmable de commande d'inter- ruption 74 a, 74 b qui peut être utilisé est du type 8259 A, tous deux fabriqués par Intel Corporation Un décodeur d'entrée-sortie 77 a, 77 b, décode les signaux d'adresse afin qu'ils permettent sélectivement aux interfaces 75 a, b, de transmettre et de recevoir des informations par échange avec la ligne commune 80 a, 80 b. Des impulsions d'horloge destinées à piloter les pro- cesseurs centraux 73 a, 73 b sont transmises par deux circuits 81 a, 81 b d'excitation d'hocloge qui sont initialisés par deux générateurs 82 a, 82 b de remise à zéro lors de la mise sous tension Le générateur 82 a comporte aussi un circuit de panne d'alimentation destiné à indiquer que l'énergie ne parvient plus à l'organe de commande Un circuit 81 a, 81 b, de pilotage d'horloge qui peut être utilisé selon l'in- vention est du type 8284 A fabriqué par Intel Corporation. Deux dispositifs indicateurs 83 a, 83 b donnent un affichage visible de l'information provenant des interfaces 75 a, 75 b. Le dispositif 83 a a aussi plusieurs commutateurs destinés à l'introduction d'informations dans l'organe de commande du moteur Deux rythmeurs 84 a, 84 b transmettent des signaux de synchronisation pour la commande des organes 74 a, 74 b et l'information est transférée entre les organes 71 et 72 de commande par deux émetteurs-récepteurs synchrones-asyn- chrones universels 55 a, 55 b Un tel émetteur-récepteur qui peut être utilisé selon l'invention est du type 8251 A de Intel Corporation Les programmes de commande des organes 71 et 72 sont conservés dans une mémoire passive programmable 86 a, 86 b et les données destinées à être utilisées dans le système sont conservées dans une mémoire à accès direct 87 a, 87 b Les données qui doivent-être conservées en cas de panne d'alimentation peuvent être stockées dans une mémoire perma- nente à accès direct 85 Un circuit 88 de préparation de force-course (figure 8 A) amplifie et filtre les signaux transmis par la cellule 24 et le transducteur 53 et transmet les signaux lissés à la ligne commune 80 a par l'intermé- diaire d'un multiplexeur 89 a et d'un convertisseur analogique- numérique 48 a Deux convertisseurs numériques-analogiques 61 a,61 b (figure 8 B) transmettent des signaux analogiques de commande de la table traçante 59 en fonction des signaux numériques transmis par la ligne commune 80 b, Un multiplexeur 89 b et le convertisseur analogiquenumérique 48 a transmettent des signaux numériques qui correspondent aux positions X et Y de la table 59 Un convertisseur analogique-numérique qui peut être utilisé est du type AD 574 A fabriqué par Analog Devices. On a décrit la mise en oeuvre générale d'un premier procédé de détection de l'épuisement à l'aide de l'appareil selon l'invention en référence aux figures 1 à 4 On décrit maintenant en détail la sélection du point de consigne (Xs, Ys) et l'utilisation des organes-71 et 72 de commande du moteur-et de la table afin de déterminer lorsque le puits est en cognement du fluide, en référence aux figures 5 à 22 qui illustrent la mise en oeuvre de processus réalisés par logiciel et leur utilisation dans l'appareil des figures 1, 8 A et 8 B, des descriptions donnant des détails sur le fonctionnement d'un programme d'ordinateur destiné à exécuter diverses opérations dans l'ordinateur des figures 8 A, 8 B. Le programme utilisé dans l'ordinateur considéré est supporté par un système d'exploitation en temps réel ayant divers programmes d'exploitation qui ne sont pas orientés vers les applications et qui sont réalisés spécifiquement pour le support de programmes conçus d'après le principe des processus réalisés par logiciel, c'est-à-dire un program- 2538 Ot O me d'état commandé par des signaux d'entrée Certains des programmes sont des sous-programmes alors que d'autres forment un module qui crée un simple environnement en temps réel dans lequel les processus réalisés par logiciel peuvent opérer. Le système d'exploitation constitue un équipement dans lequel une collection de processus réalisés par logiciel peut opérer. Un processus réalisé par logiciel est un processus qui est exécuté sur l'ordinateur chaque fois qu'un message est transmis au processus Le processus n'assure pas une exé- cution exactement semblable chaque fois qu'un message identi- que lui est transmis car le traitement à réaliser pour un message quelconque dépend de l'"tat" du processus, c'est- à-dire de sa mémoire de tout le traitement antérieur qui a été réalisé en fonction des messages antérieurs L'état peut avoir une longueur quelconque, allant de huit chiffres binai- res à plusieurs milliers de chiffres binaires suivant la complexité d'un processus donné Une fois l'état du processus donné et le message en cours, le processus assure un jeu donné de traitement qui est totalement prévisible Un processus peut être représenté sous forme d'une matrice d'opérations, indexée par un état et un message comme représenté sur la figure 9 Par exemple, si le processus de la figure 9 reçoit le message N O 1 à l'état 1, le processus A est exécuté Si le processus A provoque le passage de l'état à l'état 2, un second message numéro un, venant à droite après le premier message, provoque l'exécution de l'opération D qui peut provo- quer un passage du processus à l'état 3 Il n'est pas néces- saire qu'une opération provoque un changement d'état, bien qu'elle puisse le faire dans de nombreux cas. Un processus réalisé par logiciel, lorsqu'il a terminé l'exécution de l'opération définie par l'état et par le messa- ge, renvoie la commande au programme qui l'a appelé, l'ordon- nanceur de processus qui est décrit dans la suite Pendant l'opération donnée, le processus n'est pas interrompu afin qu'il laisse un temps de traitement à un autre processus du même système Ainsi, l'attribution du temps de traitement entre un processus donné et l'un quelconque de ses processus contemporains dans le système s'effectue message par message, et un -tel environnement est considéré comme un système d'exploitation commuté par message Aucune des opérations du processus n'est toujours suspendue aux opérations d'un autre processus Par exemple, lorsque le message 3 vient à l'état 1, l'opération C commence et se termine avant qu'un autre processus d'état ait pu avoir la réponse de l'unité centrale de traitement-73 a (figure 8 A) à son message suivant dans son état donné. Certaines causes peuvent provoquer une "suspension" d'une opération d'un processus Par exemple, une interruption asynchrone peut être enregistrée et traitée Un critère de l'environnement d'exploitation est que de tels événements du matériel sont transformés en messages du logiciel à trai- ter dans l'ordre par le processus responsable Seul le trai- tement qui doit être réalisé à l'instant exact d'interruption est exécuté et l'opération de service d'interruption provoque la levée d'un drapeau du logiciel, terminant l'ôpération d'interruption Lorsque le système d'exploitation note un drapeau asynchrone (sémaphore), il crée le message du logi- ciel qui doit être transmis au processus qui doit exécuter le segment de traitement d'interruption qui ne dépend pas du temps d'une manière primordiale Un exemple de telles opérations est la collecte des données à des intervalles minutés avec précision Lorsque l'interruption du rythmeur indique que des données doivent être collectées, elles sont lues de la manière nécessaire suivant la nature des données, mises en file dans une zone de mémorisation afin d'être traitées ultérieurement, et un drapeau est levé Lorsque ce drapeau levé est noté par le système d'exploitation, un message logiciel est créé, les données sont conservées et le processus qui est responsable du traitement de-ces données reçoit le message à un moment ultérieur. Un processus d'état n'a pas accès au processeur sous la commande du système d'exploitation d'une manière synchro- nisée régulièrement mais il est relié au processeur unique- ment pour le traitement d'un message Chaque fois que le traitement d'un message est terminé, le processus d'état doit s'assurer qu'il doit recevoir un autre message à un moment quelconque dans le futur Ceci est réalisé des manières sui- vantes 1) un autre processus transmet un message pour une synchronisation. 2) Une période s'écoule comme signalé par un message de rythmeur. 3) Des données en temps réel deviennent disponibles à partir d'une file particulière. 4) Un signal d'entrée qui est interrogé passe à l'état voulu et déclenche un message du logiciel. ) Une interruption est détectée et un message du logiciel est transmis afin qu'il informe le processus de cet événement. Le seul moment o un processus ne peut pas prendre soin de lui-même est antérieur à la réception de son premier message, si bien que le système d'exploitation prend la res- ponsabilité de l'initialisation du système par transmission, à tous les processus réalisés par logiciel qui y sont mis en oeuvre, d'un message d'initialisation appelé message de "mise sous tension" Quel que soit l'état du processus, il répond avec une opération donnée-prédéterminée lorsque ce message est recu indépendamment de l'état du processus. Les symboles de processus de la figure 10 mettant en oeuvre les messages indiqués sur la figure 9 pour l'exécution de certaines opérations et pour un passage à certains des états de la figure 9, est un moyen commode pour l'illustration de la mise en oeuvre d'un processus réalisé par logiciel. Si l'on suppose que le processus (figure 10) est initialement à l'état 1, la réception du message 1 provoque l'exécution de l'opération A comme action de transition pour le message 1 reçu à l'état 1, et provoque aussi le passage du processus à l'état 2 A l'état 2, la réception du message 2 provoque l'opération E, provoque la transmission d'un message vers un autre processus et ramène le processus a l'état 1 Dans cet état, la réception du message 3 provoque l'opération C comme action de transition pour la réception du message 3 à l'état 1, mais ne provoque aucun changement d'état du pro- cessus Certains des autres états et opérations-représentés sur la figure 9 ne sont pas indiqués sur la figure 10 afin que le dessin soit simplifié. Un système d'exploitation commuté par les messages du type représenté sur la figure 11 met en oeuvre une procédu- re principale qui transmet des signaux pour l'initialisation du système par l'intermédiaire d'une procédure d'initialisa- tion, et comprend l'initialisation des divers dispositifs de l'interruption, des rythmeurs, de l'ordonnanceur, des entrées, de l'acquisition de données, des mémoires permanentes à accès direct, du programme utilitaire mathématique et des sorties ainsi que l'initialisation des blocs disponibles de messages si bien que toute la mémoire dynamique est mise en file d'espaces disponibles pour la mémorisation de données. La procédure appelle alors la procédure de temps de mise sous tension qui appelle séquentiellement le traitement asynchrone, l'ordonnanceur des processus d'état et le traitement syn- chrone de façon répétée Tous les programmes d'interruption communiquent avec le programme de temps de mise sous tension à 1 'aide de sémaphores Le programme de temps de mise sous tension est mis en oeuvre indéfiniment avec distribution d'un message de processus, d'une opération asynchrone et de toutes les opérations synchrones commandées par l'horloge en temps réel pour chaque cycle de la boucle Les opérations asyn- chrones qui peuvent se présenter sont l'introduction de don- nées d'une file d'acquisition de données en temps réel et les interruptions de lignes de communication afin que les caractères soient transmis au système et extraits de celui- ci Dans le fonctionnement asynchrone, les évènements signi- * ficatifs qui ont lieu provoquent la saisie d'un bloc dispo- nible de messages et sa mise sous forme d'un message à trans- mettre au processus quelconque qui est chargé du traitement de l'interruption particulière Comme les données sont mises en file au moment de l'acquisition, l'opération de transfert est asynchrone Si le traitement des données s'effectue après l'entrée des données, le système peut utiliser le temps com- pris entre les impulsions d'horloge synchrones pour s'accro- cher à l'opération nécessaire Les détails de l'organigramme du traitement asynchrone du bloc DQ de la figure 11 sont représentés sur la figure 13 Les signaux de la cellule dynamométrique 24 et du transducteur 53 de course (figure 13) sont acquis par la procédure de données d'acquisition XY et sont transférés dans les données QXY de la mémoire à accès direct 87 a (figure 8 A) par la procédure de mise en-place QXYà la suite d'uneinterruption d'horloge en temps réel, et elles sont retirées par la procédure de saisie Q XY. Lorsque les données ont été saisies, elles sont trai- tées par le programme utilitaire mathématique (en PM, sur la figure 11) Le programme utilitaire mathématique a accès aux valeurs brutes de la course (X) et de la force (Y) et lisse les valeurs de X et de Y La valeur lissée de X (X} (figure 14) et la valeur lissée de Y (Y) sont obtenues à l'aide d'une technique de lissage à moyenne mobile dans laquelle les N dernières valeurs de X (ou Y) reçues sont ajoutées et divisées par le nombre de valeurs (n) afin qu'une première valeur lissée soit obtenue Lorsque la valeur lissée suivante X est obtenue, la valeur la plus récente est incor- porée à la somme mais la valeur reçue la plus ancienne n'est pas incorporée. La dérivée première Xe est alors calculée et X est corrigé en fonction du retard introduit par le calcul de la dérivée première afin que le résultat du retard Xr soit obtenu. Les valeurs de X', Xr, Y' et Yr sont alors transmises à tous les processus d'état qui ont indiqué qu'ils voulaient ces valeurs à l'aide de la procédure du "message de transmission" (figure 12) afin que les messages soient placés sur la file de message à distribuer. La dérivée première est calculée par la mise en oeuvre de la méthode mise au point par A Savitzky et M Golay et décrite en détail pages 1627 à 1638 dans le numéro de juillet 1964 de "Analytical Chemistry" Cette méthode utilise une adaptation de polynomes quadratiques des moindres carrés d'un nombre impair de points et un jeu correspondant d'entiers de convolution pour l'évaluation du point central La dérivée calculée correspond à la valeur au point médian d'une fenêtre d'observations équidistantes La valeur obtenue est identique au meilleur accord des valeurs observées avec le polynome quadratique A 2 X + A 1 X + A O = Y A 2 P Al et A O sont choisis de manière que, lorsque chaque X (pour le nombre de points compris dans la fenêtre) est remplacé dans cette équation, le carré des différences entre les valeurs calculées y et le nombre observé est minimal pour le nombre total d'observa- tions (dimensions de la fenêtre) Lorsque A 2, A 1 et A O sont déterminés, le point central est évalué La méthode de Savitzky Golay met en oeuvre un jeu d'entiers de convolution et les points observés de données pour l'évaluation du point central. Comme la dérivée est évaluée au centre du jeu de don- nées, un retard égal à l a dimension de la fenêtre réduite d'une unité et divisée par deux est introduit Les détails du programme utilitaire mathématique donnant les valeurs de X', Rr', y et Yr sont représentés sur la figure 14. Le traitement synchrone assure la consultation des signaux d'entrée des circuits, le vieillissement des rythmeurs et la distribution des signaux Lorsqu'une entrée, interrogée par un processus quelconque, prend l'état voulu tel qu'un état ouvert, un état fermé, un état supérieur ou inférieur a un niveau, etc, un bloc disponible de message est transmis sous forme d'un message au processus demandeur, indiquant qu'une entrée donnée se trouve à l'état voulu L'entrée n'est plus interrogée jusqu'à ce qu'une autre demande soit faite. L'opération du rythmeur est légèrement différente en ce que la file du rythmeur est formée de blocs de message jouant le rôle de réceptacles pour le processus demandant le marquage du passage du temps et du temps actuel lorsque le temps s'est écoulé Lorsque le temps s'est écoulé, le bloc est retiré de la file du rythmeur et est placé dans la file de distribution de message sous forme d'un message Ainsi, toutes les responsabilités reposant sur le processus réalisé par logiciel sont accomplies dans le système d'exécution par 253 & 028 transfert de messages du logiciel et par utilisation d'éti- quettes en temps réel et de files (sémaphores). Le premier élément du système d'exploitation (figure 11) est un programme destiné à transmettre un message à un processus d'état ou réalisé par logiciel (figures 11, 12). Un message est un petit bloc de mémoire dynamique qui est mis en file afin d'être distribué à un processus désigné d'état Ce programme est appelé ordonnanceur de processus et est représenté en détail sur la figure 12, et il sélec- tionne le message ayant l'ordre hiérarchique dont la priorité est la seconde dans les files de messagesprêts à être distri- bués Le processus consulte le code de processus de désigna- tion conservé dans le message et utilise ce code pour la sélection du programme convenable du processus à appeler avec un pointeur dirigé vers le bloc de message constituant une entrée Une mémoire d'état est contenue dans le programme. A l'aide de la mémoire et de l'état, l'opération convenable peut être transmise et exécutée, et le bloc de mémoire peut être transféré de la file de distribution à la file d'espace disponible afin d'être réutilisé ultérieurement Deux exemples de données qui y sont réutilisés sont les instructions desti- nées à la transmission des messages ou à l'établissement des rythmeurs Ces opérations prélèvent des blocs disponibles et les transforment en messages qui sont mis dans la file de distribution de message à un temps ultérieur Des program- mes tels que l'expéditeur de message et le lanceur de rythmeur sont des programmes utilitaires appelés par le processus afin qu'ils remplissent les responsabilités évoquées précédemment. Le programme d'ordonnanceur des processus est la forme la plus basse d'ordre hiérarchique qui forme le facteur de marche principal du système d'exploitation Le schéma de la figure 11 représente la relation de l'ordonnanceur avec le reste du système d'exploitation. Lorsque l'ordinateur des figures 8 A, 8 B est mis sous tension, l'énergie parvenant aux générateurs 82 a, 82 b de remise à zéro assure la transmission de signaux qui remettent à zéro divers circuits de l'ordinateur et provoque-: I'exécu- tion de la première instruction du programme d'ordinateur conservé dans la mémoire programmable 86 a par le processeur central 73 a Un message de "mise sous tension" est transmis de la manière décrite précédemment à chacun des modules 91- 94 (figure 6) dans l'ordinateur et ces modules de processus sont initialisés Les valeurs des signaux de force provenant de la cellule dynamométrique 24 (figure 8 A) et les valeurs des signaux de course du transducteur 53 sont obtenues-par le processeur 73 a par l'intermédiaire du circuit 88 de préparation et du convertisseur 48 et sont conservées dans la mémoire 87 a (figures 8 A, 13) pour être utilisées par le discriminateur de course qui utilise ces signaux pour la détection des valeurs maximales et minimales de la force et de la position de la tige Les valeurs maximales et mini- males de la force et de la position sont disponibles pour les autres modules, sur demande. Le discriminateur de course 93 (figure 6) transmet des signaux au détecteur 92 de cognement de fluide au début de la course descendante, à la fin de la course descendante et il transmet des rapports de crête correspondant à Xmax, Xmin, Ymax et Ymin et des rapports de surface Les détails du discriminateur 93 de course (figure 6) et son procédé de mise en oeuvre sont représentés sur les figures 15 à 22- sur lesquelles la courbe 104 de chercher une autre valeur extrême pendant un temps prédé- terminé d'obscurcissement afin que la consommation moyenne du temps de traitement réel soit réduite par le détecteur de dérivée de la course Le temps d'obscurcissement rend aussi le système de course moins sensible aux bruits des données transmises par le transducteur 53 (figure 1). Plusieurs messages de logiciel sont transmis au dis- criminateur de course par le système de détection d'épuise- ment de pompe et par d'autres processus qui ne sont pas voi- sins dans la hiérarchie des processus d'état Ces messages comportent un message de "mise sous tension" commun à tous les processus, des messages de mise en route et d'arrêt pour d'autres processus qui demandent un rapport sur le point bas de la course, une note sur le point haut de la course, des rapports de crête pour X et Y (valeurs extrêmes de la course et de la force), et des rapports de surface Les messages de dérivée Xr yr et X sont reçus à partir du programme uti- litaire mathématique. Le discriminateur de course 93 (figure 17) communique directement avec le programme directeur 91 de pompage et avec le détecteur subordonné 109 de dérivée de course, un calcula- teur 110 de surface de course, un détecteur 111 d'extrema de course et d'autres processus d'état 112 Le détecteur 111 utilise des valeurs brutes du signal de la cellule 24 (figure -1) et du transducteur 53 pour la détermination de Xmax, Xmin, Ymax et Ymin Le calculateur 110 de surface intègre la surface du dynamographe (figure 2) et le discriminateur de course 93 dirige le fonctionnement des autres processus 109 à 112 représentés sur la figure 17. Après que le programme directeur de pompage (figure 17) a commandé la mise en route du moteur (figure 1), un message de moteur en fonctionnement et un message de rapport de départ au point mort bas (PMB) (c'est-à-dire une inscrip- tion pour le début d'un rapport de course descendante) (figure 17) sont transmis au discriminateur 93 Celui-ci attend 3 secondes afin que le signal de course se stabilise et transmet un message de début aux processus 109 à 111 afin que le fonctionnement du puits soit contrôlé Lorsqu'un cogne- ment de fluide est détecté pendant l'opération de contrôle, 2538 028 un signal d'alarme est transmis au programme directeur de pompage 91 qui interrompt le fonctionnement du moteur et transmet un signal d'arrêt de moteur au discriminateur de course. Lorsque le discriminateur de course 93 reçoit un signal de fonctionnement du moteur du programme directeur 91, il transmet un signal de mise en route qui provoque la mesure par le détecteur 109 de la dérive et de la course du bruit du signal de dérivée de course pendant une période de retard de mise en route de 3 secondes A la fin du retard de 3 secondes, le détecteur 109 utilise le bruit mesuré et les signaux de course pour la formation de signaux de course ascendante et de course descendante jusqu'à ce que le discri- minateur 93 transmette un message d'arrêt au détecteur de dérivée. Le détecteur 111 des extréma de la course (figure 17) donne une position de course minimale, une force à la course minimale, une position de course maximale, une force à la course maximale, une force minimale, une position de course -à la force minimale, une force maximale et une position de course à la force maximale chaque fois qu une demande d'état est reçue en provenance du discriminateur 93 Au moment de la réception de la demande d'état, une remise'à zéro est effectuée et le calcul d'un nouveau jeu de valeurs extrêmes commence L'opération se poursuit jusqu'à la réception d'un signal d'arrêt par le détecteur 111, en provenance du discri- minateur 93 1 Lorsque le calculateur 110 de surface de course (figure 17) reçoit un signal de départ du discriminateur 93, le cal- culateur reçoit des rapports de face inférieure et d'extrema qui sont utilisés pour le calcul de la surface du dynamo- graphe (figure 2) La valeur calculée de-la surface est transmise du calculateur 110 au discriminateur 93 à la suite d'un signal de demande d'état. Lorsqu'un signal de mise sous tension est reçu par le discriminateur de course (en A sur la figure 18), sa mémoire est initialisée et des listes d'adressage des proces- sus qui demandent la réception des rapports sont préparées. Lorsque le signal de fonctionnement de moteur en B est reçu à partir du programme directeur de pompage, le discriminateur de course (figure 18) passe de 1 'état de moteur arrêté à l'état de mise en route de moteur, met en route un rythmeur de 3 secondes et transmet un message de mesure de bruit X' de début au détecteur de dérivée afin qu'il déclenche sa mesure du bruit sur la dérivée de la course pendant cette période de 3 secondes Lorsque lerythmeur présentant un retard de 3 secondes pour la mise en route du moteur a expiré (en C)l le détecteur 109 de dérivée (figure 17), le calculateur 110 de surface de la course et le détecteur 111 des extréma reçoivent des messages de mise en route et le comptage du point mort bas est mis à zéro La position du point mort bas correspond au point mort bas de l'extrémité gauche du balancier 22 (figure 1) et correspond au début de la course descendante du train de tiges 16 Un signal de rapport de départ (en G sur la figure 18) provenant de l'un quelconque des processus d'état place le processus de demande sur la liste spécifiée d'adressage s'il n'y est pas déjà Un signal de rapport d'arrêt (en F) provenant d'un prc(r essus quelconque d'état supprime le processus de demande uu la liste spécifiée d'adressage. Lorsqu'un signal de côté supérieur (en H sur la figure 18) est reçu à partir du détecteur de dérivée, dans l'état dans lequel le moteur fonctionne, lorsque le nombre du point mort bas est inférieur à 2, ce nombre progresse Une demande d'état est transmise au détecteur 111 (figure 17) et un rapport de point mort bas est transmis à tous les processus qui se sont inscrits par l'intermédiaire d'un message de début de rapport de point mort bas comme décrit précédemment. Lorsqu'un signal de face inférieure (I figure 18) est reçu à partir du détecteur de dérivée lorsque le moteur est sous tension, un rapport de point mort haut par rapport à l'extré- mité externe du balancier est transmis à tous les processus qui se sont inscrits pour ce rapport Un message de face inférieure est aussi transmis au calculateur 110 (figure 17). 253-8 02 O Lorsqu'un message d'extréma de la course, une demande d'état est transmise à ce calcula- teur et un rapport de crête est transmis à tous les processus qui se sont inscrits lorsque le nombre de points morts bas est au moins égal à 2 Lorsqu'un rapport de surface (en K de la figure 18) est reçu à partir du calculateur de surface alors que le moteur est sous tension, un rapport de surface est transmis à tous les processus qui se sont inscrits lorsque le nombre de points morts bas est au moins égal à 2. Le détecteur 109 de dérivée de la course (figure 17) identifie les positions de course minimale et maximale par utilisation du passage à zéro de la dérivée première du signal de course (figure 15) provenant du transducteur 53 (figure 1). La première étape de l'opération est la détermination d'une bande morte ou de bruit autour de la valeur de passage à zéro (X' = 0) comme l'indiquent les figures 15 et 16 Une valeur de bruit 'd' représente une différence maximale entre XI du programme utilitaire mathématique et XV lissé par une moyenne mobile sur quinze points, détectée pendant la période de contrôle de trois secondes et corrigée en fonction du déphasage La bande de bruit est utilisée pour la déclaration qu'une position de point mort haut a été atteinte (PMH) lorsque X' dépasse +d et qu'une position de point bas Pmb a été atteinte lorsque X' est inférieur à -d Le fonc- tionnement du détecteur 109 (figure 17) est décrit en détail par le schéma de la figure 19 Lorsque le système transmet un signal de mise sous tension (en A, figure 19), le détecteur de la dérivée est initialisé et demande un rapport de Xl au programme utilitaire mathématique 94 (figure 6) Le détecteur de dérivée établit aussi un rythmeur d'obscurcissement à deux secondes A ce moment, un signal de mesure de bruit X' de début ultérieur provenant du discriminateur de course déclen- che le détecteur de dérivée (en B figure 19) Un lissage de X' par une moyenne mobile sur quinze points est déclenché avec la dernière valeur antérieure de la dérivée utilisée 253802 e comme valeur initiale et avec le bruit maximal réglé à une valeur nulle. Le signal de message de début de mesure de bruit X' (en B sur la figure 19) met le détecteur de dérivée à l'état de contrôle de bruit XI ( 2) Lorsqu'une valeur X est reçue à partir du programme utilitaire mathématique, elle est lissée La valeur absolue de la différence entre la valeur lissée et la valeur brute X' est alors calculée Si cette valeur dépasse la valeur du bruit maximal, le bruit maximal est alors réglé à cette valeur Lorsqu'un signal de début est reçu à partir du discriminateur de course (en E sur la figure 19) indiquant qu'une période de mesure de bruit de 3 secondes est terminée, la bande-de bruit nul XI est réglée (figures 15 et 16) La valeur du bruit maximal est alors augmentée d'une marge de sécurité de 10 % et -d est réglé à la valeur du bruit maximal négatif et +d est réglé à la valeur du bruit maximal positif (figure 16). Lorsque la dernière valeur XI reçue est supérieure à zéro, l'état croissant est déclenché O Cependant,si la dernière valeur X est inférieureà 0, l'état décroissant est déclenché Le détecteur de dérivée contrôle alors les valeurs X' afin de détecter le haut et le bas de la course (figure 15). L'opération de détection du début de la course ascen- dante (états 3 à 5 à 8 à 4, figure 19) est identique (à l'exception du sens) à l'opération de détection du début de la course descendante qui passe de l'état 4 à 6 à 7 à 3, si bien que l'on ne décrit qu'une seule opération de détection dans le présent mémoire. Lorsque le détecteur de dérivée de la course est à l'état décroissant ( 3, -figure 19) et lorsqu'une valeur X' est reçue du progamme utilitaire mathématique, la valeur X' est vérifiée par rapport à l'extrémité supérieure de la bande de bruit +d Si la valeur de XI est inférieure à +d, aucune action n'est effectuée et le détecteur de discrimina- teur de course reste à l'état 3 Cependant, si X' dépasse +d, le signal est passé dans la bande X' zéro en direction 2538 02 B croissante et peut avoir détecté la crête négative de position (point mort haut ou fin de course descendante et début de course ascendante) Cependant, il est possible que le bruit ait provoqué une détection erronée,si bien qu'un rythmeur à trois points (le temps nécessaire à l'acquisition de trois points de données à la fréquence d'acquisition des données) est mis en route et l'état 5 (figure 19) est entamé Les valeurs X' sont enregistrées dans cet état pendant le temps nécessaire à la collecte des trois points de données Lorsque le temps s'est écoulé, XI est à nouveau comparé à +d et, s'il est inférieur à +d, un parasite de bruit a apparu La bande de bruit zéro entre +d et -d est accrue de 10 % ou d'une unité, c'est-à-dire de la plus grande de ces valeurs, et le détecteur de discriminateur de course revient à l'état 3 Cependant, si XI est supérieur à la valeur d, une crête négative de posi- tion a été détectée Un rythmeur d'obscurcissement est mis en route, l'état 8 est entamé et un message de course des- cendante est transmis au discriminateur 93 (figure 17) Pen-. dant le temps d'obscurcissement, X' n'est pas vérifié Etant donné la nature cyclique de la course de pompage, une autre crête n'est pas prévue avant qu'un temps minimal connu se soit écoulé L'utilisation du temps d'obscurcissement amé- liore l'immunité aux bruits du détecteur Lorsque le temps d'obscurcissement s'est écoulé, le programme mathématique X' est à nouveau entamé, l'état croissant ( 4) est entamé et le système recherche la crête positive de la position L'opé- ration est la même que décrit précédemment, mis à part le sens de la comparaison comme indiqué précédemment. Les détails du détecteur 111 des extrema de course (figure 17) qui détectent les valeurs Xmax, Xmin, Ymax et Ymin sont représentés par le schéma des états du détecteur d'extréma de la figure 20 Lors de la mise sous tension, le détecteur d'extréma passe à l'état libre ( 1, figure 20) A la suite d'un signal de mise en route (en B) provenant du discriminateur 93 (figure 17), le calcul mathématique des valeurs Xr et Yr commence et les extrema sont initialisés. Pendant l'initialisation des extrema, Xmin est mis à la valeur positive maximale utilisée dans le détecteur, Y à Xmin est réglé à la valeur zéro, Xmax est réglé à zéro et Y à Xmax est réglé à une valeur nulle. Le détecteur d'extrema de la course (en C sur la figure 20) utilise le signal Xr du programme utilitaire mathématique 94 (figure 6) pour le calcul des valeurs remises à jour de Xmax et Xmin et utilise les signaux Yr (en D, figure 20) pour le calcul des valeurs remises à jour de Ymax et Ymin. Les valeurs remises à jour des maxima et minima de X et Y sont calculées de la valeur suivante Lorsque X reçu est supérieur àa Xmax, Xmax est réglé à la valeur X reçue et Y à Xmax est réglé à la valeur Y correspondante La même opéra- tion est exécutée pour Ymax Si X reçu est inférieur à Xmin, Xmin est réglé à la valeur X reçue et Y à Xmin est réglé à la valeur Y correspondante, et la même opération est suivie. pour Ymin Ces valeurs sont transmises au discriminateur 93 (figure 6) à la suite d'une demande d'état (en E, figure ) et les extréma sont alors initialisés. Le détecteur 110 de surface de course (figure 17) cal- cule la surface totale du dynamographe (figure 2) sous la commande du discriminateur 93 de course Lorsqu'un message de mise sous tension est reçu (en A, figure 21), la surface totale de la courbe du rapport d'état est réglée à une valeur nulle Lorsqu'un message de début est reçu à partir du dis- criminateur de course, le calculateur de surface de course passe à une 'attente du premier état de rapport" Lorsqu'un début de course ascendante (D) ou un début de rapport de course descendante (C) est reçu pendant l'attente du premier état de rapport, l'état convenable, 3 ou 4, est entamé et les paramètres sont initialisés L'index tampon (figure 22) et la surface totale sont tous deux réglés à une valeur initiale nulle et le programme mathématique est entamé. Lorsque les valeurs Yr (force) sont reçues, elles sont trai- tées dans la manière déterminée par l'état du calculateur de surface (course ascendante ou descendante). Les détails du procédé et de l'appareil de calcul de la surface totale du dynamographe sont représentés sur la figure 22 sur laquelle les valeurs des forces Ul Un-sont échantillonnées A intervalles réguliers pendant la course ascendante et conservées dans les positions de mémoire Ml- Mn d'un circuit tampon de force L Bl Au début de chaque course ascendante (figure 22), un index Il est mis a zéro afin qu'il pointe vers la position Ml de mémoire du tampon LB 1 dans la mémoire 87 a (figure 8 A) et la surface totale est mise a zéro. A intervalles réguliers lors de la course ascendante, chacune des valeurs de force Ul-Un est échantillonnée et placée dans l'une des positions de mémoire Ml-Mn du tampon LB 1 sous la direction de l'index Il L'index progresse alors vers la position suivante. Lors de la course descendante, lorsque chacune des nouvelles valeurs est reçue, l'index Il est réduit, chacune des valeurs inférieures de force LnLl est soustraite des valeurs de force supérieures correspondantes Un-Ul, puis con- servée dans le circuit tampon LB 1, et les valeurs des diffé- rences sont utilisées pour le calcul de la surface du dynamo- graphe par découpe de celui-ci en petites bandes verticales, par calcul de la surface de chaque bande et par addition de ces surfaces de bande afin qu'elles donnent la surface totale. Par exemple, la valeur de force inférieure L 14 (figure 22) est soustraite de la valeur correspondante de force supérieure U 14 et est multipliée par la largeur comprise entre les limites B 13 et B 14 afin que la surface de la bande A 14 soit obtenue Comme seules les surfaces relatives du dynamographe, entre des conditions bien différentes, sont nécessaires, la largeur de chaque bande peut être supposée égale à 1, bien que les largeurs des bandes varient d'une partie du dynamo- graphe à l'autre Chaque bande, telle que la bande A 14, a pratiquement la même largeur chaque fois que les valeurs des forces sont échantillonnées. Les bandes de surface (figure 22) sont représentées comme étant relativement larges afin que le schéma soit sim plifié, mais un plus grand nombre d'échantillons de force, correspondant à des bandes plus étroites, peut être utilisé afin que la précision des calculs soit accrue Lorsqu'une largeur de bande est supposée égale à 1, il faut simplement que chaque valeur de force Ll-Ln soit soustraite de la valeur correspondante Ul-Un afin que la surface de chaque bande soit obtenue. Le message de mise sous tension provoque l'alimentation du-moteur 30 de pompage (figure 8 A) par l'intermédiaire de l'interface 75 a et d'un relais 98 de moteur, par le module 91 de processus réalisé par logiciel du programme directeur de pompage (figure 6)- Un message de "mise sous tension" transmis au détecteur de point de consigne (figure 7) fait passer ce processus à l'état d'attente de moteur Le moteur déplace le train de tiges 16 (figure 1) pendant un nombre prédéterminé de cycles de mise en route qui sont ignorés afin aue le niveau du fluide dans le puits se stabilise, et le module directeur de pompage 91 (figure 6) transmet un message de moteur en fonctionnement au détecteur 92 de cognement de fluide qui fait passer le détecteur de point de consigne (figure 7) de l'état d'attente du moteur à l'état d'étalonnage. Au moment -de cette transition, un jeu de quatre tampons de lissage (non représenté) compris dans la mémoire 87 a (figure 8 A) est initialisé pour la réception des valeurs Xmax, Xmin, Ymax, Ymin avant lissage, et le nombre de cycles d'étalonnage est réglé à zéro. Le discriminateur 93 de course (figure 6) transmet un rapport de crête et un rapport de surface au détecteur 92 de cognement au début de chaque course descendante Le rapport de crête contient les valeurs de Xmax, Xmin, Ymax et Ymin L'invention met en oeuvre quatre cycles consécutifs d'opérations de pompage pour l'obtention des valeurs lissées de crête Xmax, Xmin, Ymax et Ymin, bien qu'un nombre de cycles plus ou moins grand puisse être utilisé Lorsqu'un rapport de surface est reçu (en E, figure 7) , la surface est comparée à une surface-antérieurement calculée qui est conservée dans la mémoire permanente 85 (figure 8 A). Lorsque la surface de courbe qui vient d'être calculée est égale ou supérieure à 80 % de la surface antérieure, les valeurs de Xs et Ys (figure 2) sont calculées avec les dernières valeurs lissées de Xmax, Xmin, Ymax, Ymin et les dernières valeurs introduites par l'opérateur de X % et Y % dans les formules Xs = (Xmax Xmin) (X% / 100) + Xmin Ys = (Ymax Ymin) (-Y% / 100) + Ymin- Toutes les valeurs de Xs, Ys, Xmax, Xmin, Ymax, Ymin et de la surface d'étalonnage du dynamographe sont conservées dans la mémoire 85 (figure 8 A) dans le cas o le test de la surface tombe à moins de 80 % à un moment ultérieur Lorsque le nombre d'étalonnages atteint une valeur de quatre et lorsque le test de surface a dépassé le test de 80 % à chacun des quatre cycles, la période de contrôle est déclenchée lors de la course descendante suivante de la tige 7 (figures 1,7). Lorsque la surface de-courbe qui vient d'être calculée est inférieure à 80 % de la surface précédente, les valeurs précédentes de Xmax, Xmin, Ymax et Ymin sont retirées de leur position de mémoire dans la mémoire 87 a (figure 8 A) et sont utilisées pour le calcul des valeurs de Xs et Ys (figure 2). Lorsque Xs et Ys ont été obtenus, la période de contrôle (figure 7) est déclenchée à la course descendante suivante de la tige de pompage 16 (figure 1) car l'étalonnage n'est pas recommandé lorsque la surface du dynamographe est réduite. La technique précitée d'étalonnage permet la remise à jour du point de consigne (Xs, Ys) afin qu'il suive lente- ment les conditions du puits telles qu'une variation du niveau de fluide due à un noyage par de l'eau, mais elle empêche une variation du point de consigne due à un problème de pompa- ge ou à un niveau élevé de fluide dû à une panne d'alimenta- tion ou à un excès de travail du puits Toute variation bru- tale de surface de la courbe du dynamographe est probable- ment due à un épuisement ou à des-problèmes de-pompage qui peuvent détériorer en outre l'équipement de pompage et ces variations brutales doivent être détectées comme constituant des problèmes Ces problèmes peuvent ne pas être détectés si le point de consigne (Xs, Ys) change de position par rapport au dynamographe. Lorsque le détecteur de point de consigne (figure 6) s'est étalonné luimême, il commence à contrôler le cognement du fluide dans le puits pendant la course descendante de la pompe à l'aide des valeurs de la course (Xr) et de la force (Yr) provenant du programme utilitaire mathématique 94 Lors- que chaque valeur actuelle (Xc, Yc) est reçue, la dernière valeur antérieure Xl, Yl est conservée dans la mémoire 87 a (figure 8 A) et ces valeurs Xc, Xl, Yc, Yl sont utilisées pour l'interpolation des valeurs entre les points contrôlés (figure 5) et l'obtention d'une valeur véritable de Y pour Xs Ceci est nécessaire car la vérification périodique échan- tillonnée au cours du temps des valeurs de X et Y peut ne pas donner une lecture correspondant exactement au point Xs. Lorsqu'une valeur actuelle de X est inférieure à Xs (figures 2 à 5), la valeur suivante de Y (Yc) est utilisée avec la valeur Y antérieure (Yl) pour-l'obtention d'une valeur Y pour Xs Lorsque Y à Xs est supérieur à la valeur Ys (figure 2) un nombre de violations est augmenté O Lors-que le nombre de violations atteint un nombre prédéterminé, un signal de détec- tion d'épuisement de pompage est transmis au programme direc- teur 91 (figure 6). Lorsque la valeur de Y calculée pour Xs est inférieure ou égale à Ys, le nombre de violations est mis à zéro afin qu'un nombre déterminé de violations consécutives soit obtenu avant que le signal de détection d'épuisement soit transmis au programme directeur (figure 6). Un second procédé de mise en oeuvre de l'appareil des figures 1, 8 A et 8 B pour la détection de l'épuisement est représenté par les schémas des messages des figures 23 et 24 et par la courbe de force de la figure 25 La pente de cette courbe de force entre la position supérieure du train de tiges Xmax et la position inférieure Xmin est contrôlée et la position pour laquelle la pente de la courbe de force a la plus grande valeur négative X (Ypmin) est calculée pour chaque cycle de fonctionnement Le sens de déplacement de ce point X (Ypmin) est utilisé pour la détection du cognement du fluide Lorsque le niveau du fluide dans un puits diminue, le point X (Ypmin) se déplace progressivement du point X 1) est arrêté. La valeur Xs est calculée dans l'ordinateur 49 a (figure 1) par calcul initial d'une valeur Xav qui est une valeur moyenne de X à laquelle se trouve X(Y'min) lorsque le puits est rempli de fluide Un opérateur humain utilise un clavier 60 (figure 1, 8 B) ou un autre dispositif d'entrée de l'ordinateur 49 (figure 1) pour la transmission d'une valeur-de sensibilité (pourcentage) qui provoque le calcul par l'ordinateur 49 d'une valeur Xs à un pourcentage prédé- terminé de la distance comprise entre Xmin et Xav (figure ) Lorsque les caractéristiques du puits ou de sa pompe, etc doivent varier si bien que la courbe de la figure 25 varie, l'ordinateur peut être utilisé pour le calcul à nouveau de la position du point de consigne Xs. Lorsque le point de consigne Xs a été choisi, l'ordina- teur contrôle constamment la valeur X(Y' min) de la courbe (figure 25) jusqu'à ce que X(Y'min) atteigne la valeur de Xs lorsque la course se déplace de Xmax vers Xmin Lorsque la valeur de X(Y'min) est inférieure à la valeur de Xs, l'ordinateur 49 a (figure 1) transmet un signal qui provoque l'arrêt du moteur 30 et l'arrêt du puits Il peut être souhai- table d'utiliser la valeur moyenne de X(Y'min) calculée sur plusieurs cycles de pompage et de permettre à la pompe d'exé- cuter au moins deux cycles avec la courbe (figure 25) à gauche du point de consigne à chaque fois avant que le moteur 30 soit arrêté afin qu'il soit sûr que le puits est réellement en épuisement à ce moment Ceci empêche l'arrêt du puits sous la commande d'un signal erroné de la cellule 24 ou du trans- ducteur 53 ou d'un autre équipement électronique ou du puits lui-même. L'opération de détection de l'épuisement à l'aide de la position de la pente maximale de la courbe de force est déclenchée par les générateurs 82 a, 82 b de remise à zéro à la mise sous tension qui transmettent des signaux qui remettent à zéro divers circuits dans l'ordinateur et provoquent l'exécution de l'instruction de programmes d'ordinateur con- servés dans la mémoire programmable 86 a par le processeur central 73 a Un message d'alimentation est transmis à chacun des modules de processus 91-94 (figure 23) dans l'ordinateur et ces modules de processus sont initialisés par passage du détecteur de cognement 92 (figure 23) à l'état d'attente de moteur (figure 24). Le message de mise sous tension provoque la transmis- sion par le module directeur de pompage 91 (figure 23) d'énergie au moteur 30 de la pompe (figure 8 A) par l'intermé- diaire d'un relais 98 Le moteur 30 déplace le train de tiges (figure 1) pendant un nombre de cycles prédéterminés afin que le niveau du fluide dans le puits se stabilise, et le module directeur de pompage 91 (figure 23) transmet un mes- sage de moteur en route au module détecteur de cognement 92. Le détecteur de cognement de fluide est établi dans le mode de contrôle (figure 24) dans lequel il restitue la valeur moyenne actuelle de X (Xav) au point X(Y'min) (figure 25) auquel la pente négative maximale de la courbe caracté- ristique du puits est disposée Cette valeur de Xav est tirée d'une mémoire permanente utilisée afin que les données ne soient pas perdues en cas de panne d'alimentation de l'ordina- teur Avant le premier cycle d'étalonnage, la valeur de Xav est nulle Un bouton 100 d'étalonnage (figure 8 B,9) est armée afin que l'étalonnage commence lorsque le bouton est enfoncé, le nombre de cycles est réglé à zéro, la pente Y'min est réglée à -1, et Xav à Y'min est réglée à une valeur nulle. Au début de la course descendante suivante, le détecteur 92 reçoit la valeur Xmin (figure 25) du discriminateur 93 (figure 23) Lorsque Xav est égal à zéro, Xs est mis à zéro, et dans le cas contraire, la valeur de Xs est calculée d'après la formule Xs = ( 100 X%) (Xav Xmin) + Xmin, X% représentant le pourcentage entre O et 100 et étant choisi par un opérateur humain, Xav étant la valeur moyenne de X pour laquelle la pente Ypmin de la courbe a une valeur 2538 028 négative maximale, et Xmin est la position minimale du train de tiges Le nombre de cycles est augmenté. Lorsque le bouton d'étalonnage 100 (figures 23, 8 B) est enfoncé le mode est réglé afin qu'il assure l'étalonnage et le nombre de cycles est mis à zéro (figure 24) Au début de chaque course descendante, la valeur de Ypmin est réglée. à -1 Pendant la course descendante, les valeurs de la pente de la course Y' sont reçues par le détecteur 92 de cognement de fluide (figure 23) à partir du programme utilitaire mathé- matique comme décrit précédemment et sont comparées à la valeur la plus négative-de la pente déterminée antérieure- ment pendant la course descendante actuelle Lorsque la pente est plus négative que la valeur précédemment déterminée, l'ancienne valeur de Y' est remplacée par la nouvelle valeur Y' et la valeur de X pour laquelle cette pente la plus néga- tive apparait, X(Y'min) est conservée et donne lieu à une moyenne avec les valeurs antérieures, si bien que la valeur * Xav est obtenue A la fin de la course descendante, le nombre- de cycles progresse Lorsqu'un nombre prédéterminé de valeurs de X pour Ymin a été utilisé pour le calcul d'une moyenne, c'est-à-dire lorsque le nombre de cycles a atteint le nombre voulu de cycles d'étalonnage, la valeur de Xav est conservée dans une mémoire permanente et le mode passe au contrôle. Cet étalonnage a lieu dans la boucle 101 de course descendante- ascendante (figure 24) La valeur de Xs est recalculée à l'aide de la valeur Xav ainsi déterminée, la valeur reçue de Xmin et la valeur X% telles que décrites précédemment. En mode de contrôle, la valeur de X'min est initialisée à -1 au début de chaque course descendante Les valeurs de la pente de la courbe Y' sont reçues et comparées comme précé- demment à la valeur la plus négative de la pente reçue précé- demment pendant la course descendante actuelle Si la pente est plus négative que la valeur déterminée précédemment, l'ancienne valeur de Y' est remplacée par la nouvelle valeur Y' et la valeur X pour laquelle cette pente plus négative existe X(Y'min) est conservée et donne lieu à la moyenne avec les valeurs antérieures afin qu'une valeur de Xav soit obtenue. 2 538028 En mode de contrôle, Xav donne lieu à une moyenne pendant un nombre spécifié de cycles de sensibilité de cognement de fluide plutôt que pendant les cycles d'étalonnage comme décrit précédemment Si la valeur moyenne X au point de la pente la plus négative Xav est inférieure à Xs, le détecteur 92 de cognement (figures 23,24) transmet un message de cognement de fluide au programme directeur de pompage 91 et le moteur (figure 1) est arrêté. La présente invention met en oeuvre la position de la pente la plus négative de la courbe position de tige-force de tige pour la détermination du moment o un cognement du fluide est présent dans un puits souterrain La pente négative de la courbe est calculée à la course descendante de la tige de pompage et la position de la tige pour laquelle la pente du changement de force est maximale, est comparée à une posi- tion de référence de tige établie pendant une période d'étalonnage Si la position réelle de tige au point de pente la plus négative est inférieure à la position de référence, l'ensemble de pompage du puits est arrêté. Un troisième procédé de mise en oeuvre de l'appareil des figures 1, 8 A et 8 B pour la détection d'un épuisement de pompage est décrit en référence au schéma de transmission de messages des figures 28 à 30, à la courbe de force de la figure 27 et au schéma d'étalonnage de la figure 26 La valeur minimale de la force appliquée au train de tiges Ymin est contrôlée et le sens de déplacement de Ymin est utilisé pour la détection du cognement de fluide Lorsque le niveau du fluide dans un puits diminue, la position de force minimale X(Ymin) se déplace progressivement d'un point X(Ylmin) (figure 27) à un point X(Y 2 min) vers un point X(Y 5 min) Ce déplacement progressif est détecté par l'appareil des figures 8 A, 8 B et, lorsque le mouvement a progressé d'une quantité prédéterminée, un signal de cognement de fluide est créé Une valeur de X appelée Xs peut être choisie et, lorsque X(Ymin) atteint Xs, le moteur 30 (figure 1) est arrêté. La valeur de Xs est calculée dans l'ordinateur 49 a (figure 1) par calcul initial d'une valeur lissée (moyenne 2538 025 de X pour laquelle Ymin apparaît, X(Ymin), lorsque le puits est rempli de fluide Un opérateur humain utilise un clavier 99 (figure 8) ou un autre dispositif d'entrée dans l'ordina- teur pour-la transmission d'une valeur de sensibilité (en pourcentage) qui provoque le calcul par l'ordinateur 49 a d'une valeur Xs à un pourcentage prédéterminé de la distance com- prise entre Xmin et Xmax (figure 27) Si les caractéristiques du puits ou de sa pompe, etc varient au point que la courbe de la figure 3 varie, l'ordinateur peut calculer à nouveau la position du point de consigne Xs. Lorsque le point de consigne Xs a été choisi, l'ordina- teur contrôle constamment la valeur X(Ymin) de la courbe- (figure 23), une valeur lissée est calculée et le sens de déplacement de la valeur de X(Ymin) est observé Si la valeur de X(Ymin)est inférieure à Xs et si la valeur de X(Ymin) se déplace dans le sens négatif (vers la gauche sur la figure 23, l'ordinateur 49 (figure 1) transmet un signal qui provoque l'arrêt du moteur 30 et le puits est interrompu. L'opération de détection de l'épuisement de pompage d'après la tendance au déplacement du point minimal de la courbe de force est déclenchée par les générateurs 82 a, 82 b de remise à zéro lors de la mise sous tension (figures 8 A, 8 B) qui transmettent des signaux qui remettent à zéro divers circuits de l'ordinateur et provoquent l'exécution de l'instruction du programme d'ordinateur qui est conservée dans la mémoire programmable 46 a, par le processeur central 73 a Un message de mise sous tension est transmis à chacun des modules de processus 91, 93, 94, 116 et 117 (figure 28) dans l'ordinateur, et ces modules sont initialisés Les valeurs des signaux de force de la cellule 24 (figure 8 A) et les valeurs des signaux de course du transducteur 53 sont obtenues d'après le programme utilitaire mathématique. Le message de mise sous tension provoque la mise à l'état d'attente de début du programme superviseur de détec- teur de tendance 116 (figures 28,29), la mise du contrôleur 117 de position minimale (figures 28,29) à l'état d'attente de commande et la transmission d'une valeur X% au contrôleur de position minimale Le message de mise sous tension provo- que la transmission d'énergie au moteur ( 30) de pompage (figure 8 A) par l'intermédiaire d'un relais 98 du moteur par le module directeur de pompage 91 (figure 28) Le moteur 30 déplace le train de tiges 16 (figure 1) pendant un nombre prédéterminé de cycles afin que le niveau du fluide dans le puits puisse se stabiliser, et le module directeur 91 de pompage (figure 28) transmet un message de fonctionnement du moteur au programme superviseur 116 de détecteur de ten- -10 dance si bien que celui-ci (figure 28) passe en mode d'atten- te de course descendante. Au début de la course decendante suivante, un message de début d'étalonnage (figures 28,29) est transmis au con- trôleur 117 de position minimale et le nombre de cycles est mis à zéro Lorsque-le contrôleur de position minimale (figure 30) reçoit le message de début d'étalonnage, il attend un rapport de crête provenant du discriminateur de course 93 (figure 28) Le rapport de crête qui apparait au début de la course descendante contient les valeurs de Xmax, Xmin et X(Ymin), (figures 27,28) Lorsque le premier rapport de crête est reçu (en A, figure 30), la valeur maximale de min' est réglée à zéro et sa valeur minimale est réglée à -1 Lors des rapports suivants pendant l'étalonnage (en B) ces valeurs sont transmises au programme utilitaire mathé- matique 94 (figure 28) qui transmet les valeurs lissées en moyenne mobile de Xmin et transmet une dérivée première de la valeur lissée de Xmin La valeur de la dérivée première de la valeur lissée de Xmin est alors appelée min' et compa- rée à la valeur maximale et à la valeur minimale de min'. Si la valeur actuelle minimale de min' dépasse la valeur maximale de min', cette valeur maximale de min' est mise à la valeur actuelle de min' Si la valeur actuelle de min' est inférieure à la valeur minimale de min', cette valeur minimale min' est mise à la valeur actuelle de min' La valeur maximale et la valeur minimale de min' sont les limites réelles d'une bande de bruit entourant la valeur de la dérivée Une constante K est sélectionnée et est mul- 2538 028 tipliée par la valeur maximale de min' et la valeur minimale de min' afinqu'elles forment deux limites de bande centrale (figure 26) correspondant à une valeur supérieure et à une valeur inférieure de min' Aucune tendance de la valeur de X(Ymin) n'est indiquée dans cette bande. Au cours de l'étalonnage au début de chaque course descendante, le programme superviseur (figure 29) du détecteur de tendance fait progresser le nombre de cycles d'étalonnage jusqu'à ce que celui-ci soit supérieur au nombre de cycles d'étalonnage nécessaire Lorsque le nombre de cycles d'étalon- nage dépasse ce nombre de cycles nécessaire, un message d'arrêt d'étalonnage est transmis par le programme superviseur 116 (figure 28) au contrôleur de position minimale 117 e Ce dernier règle la bande centrale de min' (figure 26) à une valeur pour laquelle la valeur élevée de min' est égale à K fois la valeur maximale de min' et la valeur inférieure de min'-est égale à quatre fois la valeur minimale de min', et Xs est égal à X(Ymin) X% (Xmax Xmin), et le contrôleur de position mini- male revient à l'état d'attente de commande (figure 30) jusqu'à ce qu'il reçoive un message de début de contrôle - provenant du programme superviseur 116 (figure 28). Lorsque le programme superviseur 116 du détecteur de tendance (figure 28) transmet un message de début de contrôle au contrôleur de position minimale 117, le programme supervi- seur se déplace dans l'un de deux sens le long du schéma des états de la figure 29 Si le moteur de la pompe a été mis sous tension pour la première fois dans la séquence actuelle, le programme superviseur passe par les étapes 1,2,3,4 (figure 29) par l'état d'attente de course descendante, vers l'état d'attente d'étalonnage à la course descendante du train de tiges Le contrôleur de position minimale (figure 30) passe à l'état d'attente de crête de contrôleur Lorsque le contrô- leur de position minimale reçoit un rapport de crête contenant X(Ymin), le contrôleur 117 (figures 28,30) appelle le program- me utilitaire mathématique 94 afin qu'il transmette une valeur lissée en moyenne mobile de X(Ymin) et une dérivée première de la valeur lissée X (Ymin) Le contrôleur de position mini- maie (figure 30) passe alors à l'état de contrôle. Pendant l'état de contrôle, le contrôleur de position minimale reçoit un nouveau rapport de crête au début de chaque course descendante Ce rapport comprend les valeurs actuelles de la position de la course à la force minimale X(Ymin) Si la dérivée actuelle est inférieure à la bande centrale de la figure 26, indiquant une tendance négative de X(Ymin) et si la-position actuelle de la course de la force minimale est inférieure à Xs, le cognement du fluide est indiqué au cours de la procédure suivante: le contrôleur de position minimale 117 (figure 28) reçoit les valeurs actuelles de Xmin, Xmax et X(Ymin) Le contrôleur-117 transmet les valeurs de X(Ymin) au programme utilitaire 94 (figure 28) afin qu'elles soient lissées et reçoit la valeur lissée de X(Ymin) Le con- trôleur 117 transmet alors la valeur lissée X(min) au program- me utilitaire mathématique 94 et reçoit une valeur lissée de X(min) = min' Lorsque min' est inférieur à la valeur inférieure de min' (figure 26) et X(Ymin) (figure 27) est inférieur à Xs, un message de cognement de fluide détecté est transmis au programme superviseur 116 (figures 28, 29) et au programme directeur de pompage 92 Le programme direc- teur de pompage arrête le moteur de la pompe et-le programme superviseur indique au moniteur 117 de position minimale d'arrêter le contrôle. Lorsque le moteur 30 de la pompe (figures 1, 8 A) est à nouveau alimenté, le détecteur de tendance passe par les étapes 1,5,4 (figure 29) et élimine la partie d'étalonnage du schéma des états de la figure 29 Le cas échéant, l'étalon- nage peut aussi être exécuté au début de chaque épisode de pompage par passage suivant les étapes 1,2,3,4. Bien entendu, diverses modifications peuvent être apportées par l'homme de l'art aux dispositifs et procédés qui viennent d'être décrits uniquement à titre d'exemples non limitatifs sans sortir du cadre-de l'invention-. REVENDICATIONS 1 Appareil de contrôle du-fonctionnement d'un ensemble de pompage de puits ayant un train de tiges de pompage ( 16) et un ensemble moteur ( 30) destiné à déplacer en translation le train de tiges afin qu'un fluide soit produit depuis un emplacement souterrain, ledit appareil étant caractérisé en ce qu'il comprend un premier transducteur ( 24) destiné à former un signal représentatif d'une force appliquée au train de tiges, un second transducteur ( 53) destiné à former un signal représentatif d'une position du train de tiges, un dispositif ( 49 a,49 b) destiné à utiliser le signal de force afin qu'il établisse une valeur choisie correspondant à ce signal de force, et à utiliser le signal de position afin qu'il établisse une position de référence du train de tiges, et un dispositif ( 49 a) destiné à interrompre le fonction- nement de l'ensemble moteur ( 30) lorsque la valeur corres- pondant au signal de force dépasse la valeur choisie alors que le train de tiges est à la position de référence. 2 Appareil selon la revendication 1, caractérisé en ce que la position de référence se trouve dans une course descendante du train de tiges ( 16). 3 Appareil de contrôle du fonctionnement d'un en- semble de pompage de puits ayant un train de tiges ( 16) et un ensemble moteur ( 30) destiné à déplacer en translation le train de tiges afin qu'un fluide soit produit depuis un emplacement souterrain, ledit appareil étant caractérisé en ce qu'il comprend: un premier transducteur ( 24) destiné à former un signal représentatif d'une force appliquée au train de tiges, un second transducteur ( 53) destiné à former un signal représentatif d'une position du train de tiges, un dispositif de remise à jour ( 49 a,49 b) destiné à utiliser le signal de force afin qu'il établisse une valeur choisie correspondant au signal de force et qu'il utilise à deux positions pour l'établissement d'une position de réfé- 2 538028 rence du train de tiges, un dispositif ( 49 a,49 b) de contrôle du signal de force lorsque le train de tiges atteint la position de référence, et un dispositif ( 49 a) destiné à arrêter le fonctionnement de l'ensemble moteur lorsque la valeur correspondant au signal de force dépasse la valeur choisie alors que le train de tiges se trouve dans la position de référence. 4 Appareil selon la revendication 3, caractérisé en ce que la position de référence se trouve dans une course descendante du train de tiges. Appareil selon la revendication 3, caractérisé en ce que l'ensemble moteur ( 30) est arrêté après que le signal de force a dépassé la valeur choisie un nombre prédéterminé de fois consécutives, à la position de référence. 6 Appareil selon la revendication 3, caractérisé en ce qu'il comprend un dispositif ( 60) d'introduction d'un pourcentage du signal'de position et un dispositif destiné à utiliser ce pourcentage pour l'établissement de la position de référence du train de tiges, la position de référence variant à la suite d'une variation progressive de la valeur du signal de position. 7 Appareil selon la revendication 3, caractérisé en ce qu'il comprend un dispositif ( 60) d'introduction d'un pourcentage du signal de force et un dispositif destiné à utiliser ce pourcentage pour l'établissement d'une valeur choisie de la force, cette valeur choisie variant pendant une variation progressive de la valeur du signal de force. 8 Appareil selon la revendication 3, comprenant un dispositif ( 60) d'introduction d'un pourcentage de X et d'un pourcentage de Y dans le dispositif de remise à jour ( 49 a, 49 b), le pourcentage de X étant un pourcentage prédéterminé de la différence entre une valeur minimale et une valeur maximale de la position du train de tiges, le pourcentage de Y étant un pourcentage prédéterminé de la différence entre une valeur minimale et une valeur maximale du signal de force, et un dispositif destiné à utiliser les valeurs du pourcen- tage X et du pourcentage Y pour l'établissement de la position de référence du train de tiges ( 16) et de la valeur choisie du signal de force. 9 Appareil selon la revendication 3, caractérisé en ce que le dispositif de remise à jour utilise au moins une valeur maximale du signal de force et au moins une valeur minimale du signal de force pour l'établissement de la valeur choisie du signal de force. Appareil selon la revendication 9, caractérisé en que l'ensemble moteur ( 30) est arrêté après que le signal de force a dépassé la valeur choisie un nombre prédéterminé de fois à la position de référence pendant une durée prédéter- minée. 11 Appareil selon la revendication 3, caractérisé en ce que la valeur choisie du signal de force est dans une position a laquelle la vitesse de diminution de la force du train de tiges a une valeur maximale. 12, Appareil selon la revendication 3, caractérisé en ce que la valeur choisie du signal de force se trouve à une position a laquelle la force du train de tiges a une valeur minimale. 13 Appareil de contrôle du fonctionnement d'un en- semble de pompage de puits ayant un train de tiges de pompage ( 16) et un ensemble moteur ( 30) destiné à déplacer en-transla- tion le train de tiges afin qu'un fluide soit produit à partir d'un emplacement souterrain, ledit appareil étant caractérisé en ce qu'il comprend un premier transducteur ( 24) destiné à former un signal représentatif-d'une force appliquée au train de tiges, un second transducteur ( 53) destiné à former un signal représentatif d'une position du train de tiges, une table traçante ( 59) destinée à utiliser le signal de force et le signal de position afin qu'ils forment un graphique représentant la variation de la force appliquée au train de tiges en fonction de la position de celui-ci, un dispositif ( 60) d'introduction d'une valeur choisie correspondant au signal de force et d'une position de réfé- rence du train de tiges comme point de consigne sur le graphi- que, un dispositif de contrôle du signal de force lorsque le train de tiges ( 16) atteint la position de référence, et un dispositif destiné à arrêter l'ensemble moteur ( 30) lorsque le signal de force dépasse la valeur choisie alors que le train de tiges se trouve dans la position de référence. 14 Appareil selon la revendication 13, caractérisé en ce qu'il comprend un dispositif de remise à jour ( 49 a, 49 b) destiné à utiliser une valeur maximale du signal de force et une valeur minimale du signal de force pour la détermina- tion de ladite valeur choisie du signal de force au point de consigne, et à utiliser une valeur maximale de la position du train de tiges et une valeur minimale de cette position pour la détermination de la position de référence du train de tiges au point de consigne. Appareil selon la revendication 13, caractérise en ce qu'il comprend un dispositif ( 60) destiné à permettre à un opérateur humain d'introduire le point de consigne sur le graphique à la suite d'une observation visuelle de ce gra- phique. 16 Procédé de contrôle du fonctionnement d'un ensemble souterrainde pompage de puits, cet ensemble comprenant un train de tiges de pompage ( 16), un dispositif ( 30) de dépla- cement alternatif du train afin qu'un fluide soit pompé, un dispositif ( 24) générateur d'un signal représentatif d'une force appliquée au train de tigeset un dispositif ( 53) géné- rateur d'un signal représentatif d'une position du train de tiges, ledit procédé étant caractérisé en ce qu'il comprend l'utilisation du signal de force pour l'établissement d'une valeur choisie correspondant au signal de force, l'utilisation du signal de position du train de tiges pour l'établissement d'une position de référence du train de tiges et l'arrêt de l'ensemble de pompage lorsque la valeur correspondant au signal de force dépasse la valeur choisie alors que le train de tiges est à la position de référence. 17 Procédé de contrôle du fonctionnement d'un ensemble souterrain de pompage de puits, comprenant un train de tiges de pompage ( 16), un dispositif ( 30) de déplacement alternatif du train afin qu'un fluide soit pompé, un dispositif ( 24) destiné à former un signal représentatif d'une force appliquée au train de tiges, et un dispositif( 53) destiné a formér un signal représentatif d'une position du train de tiges, ledit procédé étant caractérisé en ce qu'il comprend l'utilisation du signal de force pour l'établissement d'une valeur choisie correspondant au signal- de force, l'utilisation du signal de position de train de tiges pour l'établissement d'une position de référence du train de tiges, le contrôle du signal de force lorsque le train de tiges atteint la position de référence, et l'arrêt de l'ensemble de pompage lorsque ladite valeur correspondant au signal de force dépasse la valeur choisie alors que le train de tiges se trouve à la position de réfé- référence. 18 Procédé de contrôle du fonctionnement d'un ensemble souterrain de pompage de puits, comprenant un train de tiges de pompage ( 16) et un dispositif ( 30) destiné à déplacer en translation le train de tiges afin qu'un fluide soit pompé, ledit procédé étant caractérisé en ce qu'il comprend - la création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représentatif d'une position du train de tiges, l'utilisation du signal de force pour l'établissement d'une valeur choisie correspondant au signal de force, l'utilisation du signal de position du train de tiges pour l'établissement d'une position de référence du train de tiges, le contrôle du signal de force lorsque le train de tiges atteint la position de référence, et l'arrêt de l'ensemble de pompage lorsque la valeur correspondant au signal de force dépasse la valeur choisie alors que le train de tiges est à la position de référence. 19 Procédé selon la revendication 18, caractérisé en ce que l'étape d'arrêt de l'ensemble de pompage comprend la vérification du nombre de fois pendant lequel le signal de force a dépassé la valeur choisie et l'arrêt de l'ensemble de pompe lorsque le signal de force a dépassé la valeur choi- sie un nombre prédéterminé de fois. Procédé selon la revendication 18, caractérisé en ce que l'étape d'utilisation du signal de position du train de tiges pour l'établissement d'une position de référence comprend la vérification du sens de déplacement du train de tiges et la sélection de la position de référence lors d'une course descendante du train de tiges 21 Procédé selon la revendication 18, caractérisé en ce que l'étape d'utilisation du signal de force pour l'établissement d'une valeur choisie comprend l'utilisation d'une paire de valeurs du signal de force pour la détermina- tion de la valeur choisie, et l'étape d'utilisation du signal de position du train de tiges pour l'établissement d'une posi- tion de référence comprend l'utilisation d'une paire de valeurs de signaux de position du train de tiges pour la détermination de la position de référence. 22 Procédé selon la revendication 18, caractérisé en ce que les étapes d'utilisation d'un signal de force pour l'établissement d'une valeur choisie et d'utilisation du signal de position du train de tiges pour l'établissement d'une position de référence comprennent la sélection, par un opérateur humain, de la position de référence et de la valeur choisie à la suite d'une observation du signal de force et de la position du train de tiges. 23 Procédé de contrôle du fonctionnement d'un en- semble souterrain de pompage de puits, comprenant un train de tiges de pompage ( 16) et un dispositif ( 30) de déplacement en translation du train de tiges afin qu'un fluide soit pompé, ledit procédé étantcaractérisé en ce qu'il comprend la création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représentatif d'une position du train de tiges, l'utilisation d'une valeur maximale et d'une valeur minimale du signal de force pour l'établissement d'une valeur choisie du signal de force, l'utilisation d'une valeur maximale et d'une valeur minimale de la position du train de tiges pour l'établisse- ment d'une position de référence du train de tiges, le contrôle du signal de force lorsque le train de tiges atteint la position de référence, et l'arrêt de l'ensemble de pompage lorsque le signal de force dépasse la valeur choisie alors que le train de tiges se trouve à la position de référence. 24 Procédé selon la revendication 23, caractérisé en ce que l'étape d'arrêt de l'ensemble de pompage comprend des étapes de vérification du nombre de fois pendant lequel le signal de force a dépassé la valeur choisie, et d'inter- ruption de l'ensemble de pompage après que le signal de force a dépassé la valeur choisie un nombre prédéterminé de fois. 25 Procédé selon la revendication 23, caractérisé en ce que l'étape d'utilisation d'une valeur maximale et d'une valeur minimale de la position du train de tiges pour l'établissement d'une position de-référence comprend la véri- fication du sens de déplacement du train de tiges et la sélection de la position de référence lors d'une course descendante du train de tiges. 26 Procédé selon la revendication 23, caractérisé en ce que l'utilisation d'une valeur maximale et d'une valeur minimale pour l'établissement d'une valeur choisie comprend la sélection d'une valeur correspondant à un pourcentage prédéterminé entre les valeurs minimale et maximale, et l'étape d'utilisation d'une valeur maximale et d'une valeur minimale-pour l'établissement d'une position de référence comprend la sélection d'une position un pourcentage prédêter- miné de la distance entre les positions minimale et maximale. 27 Procédé selon la revendication 23, caractérisé en ce que les étapes d'utilisation d'une valeur maximale et d'une valeur minimale pour l'établissement d'une valeur choisie du signal de force et d'utilisation d'une valeur maximale et d'une valeur minimale pour l'établissement d'une position de référence comprennent la sélection par un opéra- teur humain de la position de référence et de la valeur choi- sie à la suite d'une observation du signal de force et de la position du train de tiges. 28 Procédé selon la revendication 23, caractérisé en ce que l'utilisation dlune valeur maximale et d'une valeur minimale pour l'établissement d'une valeur choisie du signal de force comprend la sélection par un opérateur humain d'une valeur de signal sous forme d'un pourcentage de la différence entre la valeur minimale et la valeur maximale du signal de force, et l'utilisation d'une valeur maximale et d'une valeur minimale de la position du train de tiges comprend la sélec- tion par un opérateur humain de la position de référence sous forme d'un pourcentage de la différence entre la valeur mini- male et la valeur maximale de la position du train de tiges. 29 Procédé de contrôle du fonctionnement d'un ensemble souterrain de pompage de puits ayant un train de tiges de pompage ( 16) et un dispositif ( 30) de déplacement en transla- tion du train de tiges afin qu'un fluide-soit pompé, ledit procédé étant caractérisé en ce qu'il comprend la création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représentatif d'une position du train de tiges, le tracé d'un graphique représentant la variation du signal de force en fonction de la positiondu train de tiges, l'utilisation du graphique tracé pour guider un opéra- teur humain lors de la sélection d'une valeur choisie du signal de force et lors de la sélection d'une position de référence du train de tiges, le contrôle du signal de force lorsque le train de tiges atteint la position de référence, et l'arrêt de l'ensemble de pompage lorsque le signal de force dépasse la valeur choisie alors que le train de tiges est dans la position de référence. Procédé de contrôle du fonctionnement d'un ensemble souterrain de pompage de puits, ayant un train de tiges de pompage ( 16) et un dispositif ( 30) de déplacement en trans- lation du train de tiges afin qu'un fluide soit pompé à partir d'un puits, ledit procédé étant caractérisé en ce qu'il comprend. la création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représentatif d'une position du train de tiges, l'utilisation de la position du train de tiges pour l'établissement d'une position de référence du train de tiges, l'utilisation du signal de force pour l'établissement de la vitese de variation de la force appliquée au train de tiges lorsque celui-ci se déplace en direction descendante, la sélection d'une valeur maximale de la vitesse de variation de la force appliquée au train de tiges, le contrôle de la position du train de tiges lorsque la vitesse de variation a sa valeur maximale, et l'arrêt de l'ensemble de pompage-lorsque la position du train de tiges se trouve au-dessous de la-position de - référence au moment o la vitesse de variation a sa valeur maximale. 31 Procédé selon la revendication 30, caractérisé en ce que l'étape d'arrêt de l'ensemble de pompage comprend la vérification du nombre de fois pendant lequel la position du train de tiges se trouve au-dessous de la position de référence au moment ou la vitesse de variation a sa valeur maximale, et l'arrêt de l'ensemble de pompage après que la position du train de tiges se soit trouvé au-dessous de la position de référence au nombre prédéterminé de fois consécu- tives alors que la vitesse de variation se trouvait à sa valeur maximale. 32 Procédé selon la revendication 30, caractérisé en ce que l'étape d'utilisation de la position du train de tiges pour l'établissement d'une position de référence com- prend la sélection d'une position moyenne du train de tiges lorsque la vitesse de variation a sa valeur maximale, alors que le puits est rempli du fluide, est l'utilisation de la position moyenne comme position de référence. 33 Procédé selon la revendication 30, caractérisé en ce que l'étape d'utilisation de la position du train de tiges pour l'établissement d'une position de référence com- prend la sélection d'une position correspondant à un pourcen- tage prédéterminé de la distance comprise entre la position minimale du train de tiges et une position moyenne du train de tiges pour laquelle la vitesse de variation a sa valeur maximale lorsque le puits est rempli de fluide. 34 Procédé selon la revendication 33, caractérisé en ce que ltétape d'établissement d'une position à un pour- centage prédéterminé de la distance comprend la sélection du pourcentage prédéterminé de la distance par un opérateur humain. Procédé de contrôle du fonctionnement d'un en- semble souterrain de pompage de puits, ayant un train de tiges de pompage ( 16) et un dispositif ( 30) de déplacement en trans- lation du train de tiges afin qu'il pompe du fluide d'un puits, ledit procédé étant caractérisé en ce qu'il comprend la création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représentatif d'une position du train de tiges, l'utilisation du signal de force pour-l'établissement de la vitesse de variation de la force appliquée au train de tiges lorsque ce dernier se déplace en direction descen- dante, la sélection d'une position moyenne du train de tiges pour laquelle la vitesse de variation de la force a une valeur maximale lorsque du fluide a rempli l'ensemble de pompage, l'utilisation de la position moyenne du train de tiges et d'une position minimale du train de tiges pour la détermi- nation d'une position de référence du train de tiges, et l'arrêt de l'ensemble de pompage lorsque la position du train de tiges se trouve audessous de la position de référence au moment o la vitesse de variation de la force a une valeur maximale. 36 Procédé de contrôle du fonctionnement d'un ensemble souterrain de pompage de puits, comprenant un train de tiges de pompage ( 16) et un dispositif ( 30) destiné à- déplacer en translation le train de tiges afin qu'il pompe du fluide d'un puits,-ledit procédé étant caractérisé en ce qu'il comprend la création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représentatif d'une position du train de tiges, l'utilisation de la position du train de tiges pour l'établissement d'une position de référence du train de tiges. l'utilisation des signaux de force et des signaux de position pour la détermination de la position du train de tiges au moment o le signal de force a une valeur minimale, le contrôle de la tendance du déplacement de la posi- tion de la tige lorsque le signal de force est minimal, et l'arrêt de l'ensemble de pompage lorsque-la position de la tige se déplace progressivement vers le bas pour les positions successives de force minimale, jusqu'à une position qui se trouve au-dessous de la position de référence. 37 Procédé selon'la revendication 36, caractérisé en ce que l'utilisation de la position du train de tiges pour l'établissement d'une position de référence comprend la sélection d'une position à un pourcentage prédéterminé de la distance comprise entre la position minimale du train de tiges et une position du train de-tiges au moment o le signal de force a une valeur minimale alors que le puits est rempli de fluide. 38 Procédé selon la revendication 37,caractérisé en ce que la sélection d'une position comprend la sélection du pourcentage prédéterminé de la distance par un opérateur humain. 39 Procédé de-contrôle du fonctionnement d'un ensemble souterrain de pompage de puits, ayant un train de tiges de pompage ( 16) et un dispositif ( 30) de déplacement en trans- lation du train de tiges afin qu'un fluide soit pompé hors d'un puits, ledit procédé étant caractérisé en ce qu'il comprend la-création d'un signal représentatif d'une force appliquée au train de tiges, la création d'un signal représéntatif d'une position du train de tiges, l'utilisation du signal de force et du signal de posi- tion pour la détermination de la position du train de tiges chaque fois que le signal de force a une valeur minimale pen- dant la course descendante du train de tiges, l'établissement d'une position d'étalonnage du train de tiges lorsque le signal de force est minimal alors que du fluide remplit l'ensemble de pompage, l'utilisation de la position d'étalonnage et d'une position minimale du train de tiges pour la détermination d'une position de référence du train de tiges, et l'arrêt de l'ensemble de pompage lorsque la position du train de tiges se déplace progressivement vers le bas pour les positions successives de force minimale, jusqu'à une posi- tion qui se trouve au-dessous-de la position de référence. Procédé selon la revendication 39, caractérisé en ce que l'étape d'utilisation de la position d'étalonnage et d'une position minimale du train de tiges comprend la sélection d'une position à un pourcentage prédéterminé de la distance comprise entre la position minimale du train de tiges et la position d'étalonnage afin que la position de référence soit déterminée.