Systèmes d'acquisition de données et de contrôle opérationnel (systèmes SCADA)
Le terme système de contrôle et d'acquisition de données ou système SCADA est apparu à la fin des années 1980. XXe siècle. simultanément avec les premières tentatives d'utilisation d'ordinateurs personnels avec des applications graphiques installées dessus comme consoles d'opérateur.
Les premiers systèmes SCADA ont été développés pour les systèmes d'exploitation DOS ou Unix et avaient des capacités plutôt modestes, à la fois en raison des limitations matérielles du matériel et des capacités graphiques des systèmes d'exploitation. Les systèmes SCADA se sont répandus simultanément avec l'apparition d'interfaces graphiques, telles que Windows 3.11, X-Windows, Phantom et du matériel permettant d'atteindre la vitesse d'exécution nécessaire des processus en mode multitâche.
La raison de l'émergence des systèmes SCADA en tant qu'outils de développement logiciel de haut niveau est similaire aux raisons de l'émergence de systèmes tels que Borland Delphi et d'autres systèmes de programmation visuelle.Leur tâche principale est de soulager les développeurs de logiciels du fardeau routinier et en fait inutile de décrire des interfaces et des fonctions standard. Dans le même temps, il faut comprendre que l'utilisation de systèmes SCADA n'implique pas une réduction des exigences de qualification du développeur, comme ils essaient de l'imaginer.
Distinguer les systèmes IHM (Interface Homme Machine) et SCADA, car ils se sont tous deux développés avec succès indépendamment l'un de l'autre, occupant différentes niches sur le marché des appareils IHM (Interface Homme Machine).
Les systèmes MMI sont en fait des panneaux de commande locaux pour des appareils individuels ou des installations technologiques, équipés d'écrans et de claviers alphanumériques ou graphiques, généralement tactiles.
Dans la plupart des cas, le périphérique MMI est implémenté à l'aide d'un contrôleur spécial et sa partie logicielle n'implique aucune modification ou changement supplémentaire.
Dans le même temps, les systèmes SCADA incluent l'utilisation d'ordinateurs personnels et de systèmes d'exploitation standard, sont utilisés pour automatiser le processus de gestion de grands processus technologiques, dans lesquels un grand nombre de dispositifs exécutifs et d'unités technologiques sont impliqués, et prennent également en charge la possibilité de mise en œuvre d'applications distribuées (utilisant plusieurs consoles d'opérateur) …
Il est impossible de tracer une ligne claire entre les systèmes MMI et SCADA en raison de l'existence de systèmes de programmation de bout en bout dans lesquels il n'y a souvent pas de distinction entre les outils de développement logiciel pour les différents niveaux du système de contrôle.
L'absence d'une norme unique décrivant le but et la composition fonctionnelle des systèmes SCADA et la différence d'interprétation du terme "SCADA" lui-même compliquent la classification et la comparaison des systèmes de cette classe.
Les principaux groupes suivants de systèmes SCADA peuvent être distingués :
-
Systèmes SCADA développés par les fabricants de contrôleurs ;
-
Systèmes SCADA développés par des fabricants indépendants ;
-
Les systèmes SCADA sont des composants de systèmes de programmation de bout en bout.
La tâche du fabricant d'équipement de contrôleur dans le développement de son propre système SCADA est de fournir à l'utilisateur final un outil pour développer des applications de visualisation à l'aide des contrôleurs de ce fabricant.
Les principales caractéristiques suivantes de ces systèmes peuvent être distinguées :
-
l'interface de ces systèmes reprend l'interface de moyens d'écriture logicielle pour l'équipement contrôleur ;
-
Les composants du système SCADA sont optimisés pour fonctionner avec les données reçues de l'équipement de contrôle d'un fabricant spécifique ;
-
Les interfaces d'échange de données avec les équipements d'autres constructeurs sont mal implémentées ou difficilement utilisables.
Un exemple classique d'un tel système est Siemens WinCC… L'utilisation de tels systèmes propriétaires, d'une part, minimise le coût de formation des spécialistes du développement de logiciels, mais d'autre part, elle lie strictement le développeur et l'utilisateur final du système à un fabricant spécifique, voire à un fournisseur spécifique. gamme d'équipements d'un seul fabricant.
En outre, un certain nombre de fabricants d'équipements de contrôle ont été contraints de développer leurs propres systèmes SCADA à des fins de marketing sans fournir à leurs produits logiciels le niveau de support et de maintenance requis.
Les systèmes SCADA tiers sont les outils les plus flexibles pour créer des applications de visualisation et de contrôle de processus. Leurs avantages incluent la prise en charge d'un grand nombre de fonctions pour la création de systèmes de contrôle décentralisés et distribués, ainsi que la possibilité d'intégrer des équipements de différents fabricants, y compris concurrents, dans un seul système.
Pour échanger des données avec des équipements exécutifs, de tels systèmes utilisent des serveurs d'E/S logiciels qui implémentent des interfaces DDE ou OPC. La diffusion de tels systèmes SCADA, ainsi que la nécessité de se conformer aux normes des outils d'automatisation, ont conduit au fait que tous les développeurs d'équipements de contrôle ont leur propre Serveurs logiciels OPC ou DDE, livrés complets avec équipement ou sur commande.
Étant donné que le système de programmation de bout en bout comprend le développement de postes de conduite en tant que partie intégrante du système de contrôle, il contient toujours des composants distincts du système SCADA. Cependant, étant donné que l'ensemble du système fonctionne comme un tout, ces composants peuvent également être des composants d'autres modules du système de programmation de bout en bout, ou il peut être impossible de séparer le système SCADA dans sa forme pure en un produit logiciel.
De tels systèmes présentent les mêmes avantages et inconvénients que les systèmes SCADA développés par les fabricants de contrôleurs, en tenant compte de deux différences principales :
-
Les systèmes SCADA, qui font partie intégrante des systèmes de programmation de bout en bout, n'ont pratiquement aucune interopérabilité avec les logiciels et le matériel d'autres fabricants ;
-
le rôle du système SCADA dans de telles applications se limite au développement d'une interface graphique.
Composition et structure des systèmes SCADA
Composition et structure des systèmes SCADA
En règle générale, les systèmes SCADA se composent de deux ensembles distincts de produits logiciels : un environnement de développement et un environnement d'exécution.
Environnement de développement est appelé l'ensemble avec lequel l'environnement de visualisation du processus technologique est conçu et configuré.
Environnement pendant le travail — il s'agit d'un ensemble de produits logiciels nécessaires au travail sur le projet du programme de visualisation du processus technologique au poste de l'opérateur.
Séparément, la question de l'interaction entre l'environnement de développement et l'environnement d'exécution lors du travail avec le même projet du développeur et de l'opérateur doit être considérée :
1. Les modifications apportées par le développeur prennent effet immédiatement.
2. Le runtime reflète les modifications apportées telles qu'elles se trouvent dans le code source du projet.
3. Les modifications sont reflétées lors de l'exécution lors du redémarrage ou de la force.
La mise en œuvre du premier type d'interaction permet de démontrer assez clairement et efficacement les capacités du produit dans les présentations commerciales, et donc elle est parfois mise en œuvre dans les produits logiciels finaux. Cependant, lorsque vous travaillez avec de vrais projets, il existe un risque potentiel de manquer une partie de l'interface graphique ou du mouvement dynamique des contrôles. À cet égard, les deuxième et troisième types d'interaction ou leur combinaison sont les plus répandus.
Les principales parties suivantes du système SCADA peuvent être distinguées :
-
base de balises ;
-
module d'affichage graphique ;
-
processeur de script ;
-
système d'alarme et d'avertissement ;
-
module d'archivage des paramètres de processus technologiques.
Balise du système SCADA Est un objet pour stocker la valeur d'un paramètre de processus technologique et ses propriétés. Les étiquettes sont parfois appelées à tort "variables". Dans le même temps, le concept d'étiquette est le plus proche de la définition d'une classe dans les langages de programmation orientés objet.
Le module d'affichage graphique implémente l'interface graphique du projet. En règle générale, une interface graphique est un ensemble de formulaires d'écran sur lesquels sont placés des éléments graphiques. La tâche de création d'un écran est réduite à placer des éléments graphiques sur des formes d'écran et à définir leurs propriétés.
Lors du processus d'appel, d'affichage et de fermeture des formulaires d'écran, lorsque vous cliquez sur des objets graphiques, modifiez les propriétés ou les valeurs de balises individuelles, il est nécessaire d'effectuer des calculs ou des actions pour lesquelles il existe moteur de script… Les scripts sont également appelés « macros » ou « scripts » dans certains systèmes.
La plupart des scripts du système SCADA qui implémentent l'interface graphique des postes de travail automatisés des opérateurs sont des gestionnaires de clics de souris sur des éléments graphiques.
Pour les scripts, les systèmes SCADA de différents fabricants proposent une ou plusieurs langues. Les systèmes développés par les fabricants de contrôleurs ou dans le cadre de systèmes de programmation de bout en bout offrent généralement les mêmes langages de programmation pour les scripts que pour l'écriture logiciel de contrôleur… Les systèmes SCADA tiers proposent souvent des langages de script de macro spécialisés.
L'utilisation de langages de programmation à usage général vous permet de mettre en œuvre des interfaces utilisateur complexes et des méthodes non standard de travail avec des données en accédant à des bibliothèques et des API supplémentaires.
Dans le même temps, le développeur doit dans tous les cas étudier les bibliothèques de fonctions pour travailler avec les composants du système SCADA, de la même manière que les langages macro sont étudiés, et le code implémenté peut être potentiellement dangereux ou hériter d'erreurs de fonctions tierces. bibliothèques.
Système d'alarme est destiné à informer l'opérateur de la valeur du paramètre de processus en dehors des limites autorisées. En règle générale, pour chaque paramètre technologique, 2 types de paramètres peuvent être définis en fonction desquels la notification apparaîtra : respectivement, les paramètres d'urgence et d'avertissement.
Selon les capacités du système, ces paramètres sont définis selon un ou plusieurs critères :
-
Hors de portée. Dans ce cas, il y a : valeurs d'avertissement supérieures et inférieures et valeurs d'alarme supérieures et inférieures.
-
Un écart par rapport à la valeur nominale d'une certaine valeur. Répartir les écarts minimaux et maximaux admissibles par rapport à la valeur réglée.
-
Réglage du taux de changement maximal autorisé de la valeur du paramètre de processus. Les valeurs des paramètres de plage admissibles sont spécifiées en unités absolues, et l'écart par rapport à la valeur nominale et le taux de changement peuvent être spécifiés à la fois en unités absolues et en pourcentage de la valeur actuelle ou du point de consigne.
Étant donné que pour un processus technologique, le nombre de paramètres pour lesquels des points de consigne d'urgence et d'avertissement sont définis peut être important, dans les systèmes SCADA, il est possible de combiner les paramètres technologiquement contrôlés en groupes, ainsi que de définir le niveau de priorité pour tout consigne.
La tâche principale module de sauvegarde - offrant la possibilité d'afficher des graphiques de paramètres technologiques (Tendances) sur l'écran du moniteur pendant une période relativement courte, ainsi que de créer des rapports simples.Le module d'archivage des valeurs du système SCADA devrait fournir les fonctions suivantes :
-
archiver les valeurs dans une base de données locale avec une certaine fréquence ou modification ;
-
lors de l'archivage des valeurs en cas de modification — possibilité de définir une zone morte pour l'archivage ;
-
définir une limite de taille de base de données locale ;
-
réglage de l'heure de stockage des valeurs ;
-
effectuer une maintenance de routine pour supprimer les valeurs obsolètes ou les plus anciennes lorsque le temps de stockage ou la taille de la base de données est dépassé en mode automatique ;
-
disponibilité d'une interface pour construire des graphiques de valeurs d'archives et les visualiser;
-
disponibilité d'un système d'exportation des valeurs des paramètres pour la période spécifiée sous la forme d'un tableau de valeurs.