Comment tout a commencé
Tout a commencé avec le développement d'algorithmes pour le relais programmable PR200, et a souvent nécessité la visualisation ou la saisie d'informations à partir d'un ordinateur, pour cela il est nécessaire d'utiliser des pupitres opérateurs ou des systèmes SCADA, mais ce n'est pas toujours pratique, et est-il nécessaire pour des systèmes simples. La solution a été trouvée rapidement et au fil du temps, j'ai essayé d'améliorer et de faciliter mon travail dans cette direction autant que possible, ce qui en est ressorti.
Nous parlerons de la carte réseau WI-FI et de ses capacités.

Comme cette carte est utilisée pour déboguer divers projets, l'interface d'interaction est constamment modifiée pour une configuration plus pratique et plus rapide. La première modification a été un simple convertisseur RS-485 en TCP avec sortie en WEB, avec un firmware prêt à l'emploi connu dans la communauté ESP8266. Plus de 2 ans se sont écoulés depuis, et il a fallu des archives pour analyser des processus longs, et comme je voulais combiner tout cela dans un seul appareil sans équipement supplémentaire, il a été décidé d'intégrer le support microSD, ce qui a grandement facilité l'analyse des processus avec la possibilité d'accéder rapidement archives. La deuxième modification de la carte avait un slot, avec la possibilité de retirer une carte microSD pour sauvegarder les fichiers enregistrés sur l'ordinateur. Cela ne m'a pas semblé très pratique, et une version est apparue avec la possibilité de télécharger des fichiers via WI-FI. Parfois, le téléchargement n'est pas terminé et une opération de téléchargement répétée est nécessaire, mais étant donné qu'à l'heure actuelle, l'équipement reste opérationnel et que l'archivage peut également fonctionner, je pense que ce n'est pas un très gros problème. Version également testée avec une puce mémoire de 16 Mo au lieu d'une carte microSD. Téléchargement plus rapide, mais il n'y a aucun moyen de sauvegarder de nombreux fichiers, l'enregistrement est séquentiel jusqu'à ce que toute la mémoire soit pleine.
Objectif et caractéristiques de la carte d'interface
La carte est conçue pour étendre l'accès aux variables internes de la logique du relais programmable PR200 et donne accès aux variables de lecture et d'écriture.
Grâce à l'interface WI-FI sans fil, l'accès à l'appareil est fourni sans avoir à connecter d'équipement supplémentaire. Tout d'abord, la solution se concentre sur des projets domotiques simples dans des endroits avec des réseaux WI-FI. Celles-ci incluent des solutions pour l'automatisation de l'éclairage intérieur et extérieur, le contrôle et la surveillance des stations de pompage, des serres, etc. En raison de la présence d'un serveur WEB intégré dans la carte, il n'est pas nécessaire d'acheter de l'équipement supplémentaire pour les cas où l'accès au système est nécessaire pas souvent. La sortie d'entrée de base est effectuée à l'aide d'un smartphone / tablette ou d'un PC situé sur le même réseau.
La carte d'interface peut fonctionner dans différents modes. Lorsqu'il est connecté à un routeur avec accès Internet, il vous permet de surveiller à distance l'état des variables dans la logique du PR200, ainsi que de contrôler l'algorithme via des variables réseau dans des formats pris en charge par le PR200 en mode esclave.
La communication avec l'algorithme programmé dans l'appareil est effectuée via des variables de réseau, tandis que la carte d'interface peut agir comme maître ou esclave. Les vitesses et paramètres standard de l'interface réseau PR200 sont pris en charge. L'échange via le protocole Modbus TCP est pris en charge; pour cela, une zone mémoire de 100 cellules est allouée, accessible à la fois depuis l'interface WEB et via le protocole Modbus RTU du côté PR200.
Le choix du mode de la carte réseau est similaire au choix lorsque l'on travaille avec des panneaux graphiques; travailler en mode maître permet de contrôler de manière plus flexible l'échange de variables; pour les registres dont la valeur doit être obtenue plus souvent que les autres, il est possible de paramétrer moins la période d'interrogation. Les commandes suivantes sont disponibles pour le protocole Modbus:
03 (0x03) Lecture des registres d'attente Lecture.
04 (0x04) Lecture des registres d'entrée Lecture
06 (0x06) Enregistrement de registre unique prédéfini
16 (0x10) Enregistrement de plusieurs registres prédéfinis
Les variables reçues du relais sont disponibles pour l'écriture dans un fichier (archive), qui se trouve sur la carte micro SD, l'enregistrement est au format texte. Après le téléchargement, vous pouvez le visualiser sur un ordinateur dans un simple éditeur de texte. Les valeurs enregistrées dans le fichier peuvent être affichées sur le graphique historique. En utilisant les options de mise à l'échelle et de sélection d'une période spécifique sur la chronologie, ainsi que l'affichage / masquage individuel des lignes du graphique, l'analyse des données d'archive est effectuée.
Les fichiers créés pendant le fonctionnement de l'archiveur restent sur la carte microSD et peuvent être téléchargés sur un ordinateur, un seul fichier est disponible à tout moment, il peut enregistrer des données d'archive, lire des informations pour créer un graphique historique ou lire des informations pour les enregistrer sur un PC .
Pour l'archivage, des variables sont disponibles à partir de l'espace d'adressage de la carte réseau, dans lequel il est nécessaire d'écrire les données reçues via Modbus RTU de PR200 ou Modbus TCP à partir d'autres appareils prenant en charge le protocole Modbus TCP en mode maître.
La carte d'interface peut être configurée à la fois en mode point d'accès (Access Point) et en mode client - station de travail (Station), et peut-être dans les deux modes simultanément. Le plus souvent, le point d'accès a accès à Internet et sert de pont entre l'appareil et le réseau.
La connexion sans fil peut être protégée par mot de passe, il est également possible de masquer le point d'accès.
Les variables obtenues via l'interface RS485 du PR200 peuvent être analysées en les présentant sous forme graphique, dans ce mode les valeurs seront affichées en temps réel avec une période de ~ 1 seconde.
10 variables sont disponibles pour tracer en entier, en virgule flottante ou en représentation 16/32 bits. Le nombre, le type, les adresses des variables et le format de sortie sont issus des paramètres d'archivage.
Pour un fonctionnement rapide et pratique, il a été décidé de répéter la forme de la carte réseau «native» de l'appareil.
La carte est installée dans l'appareil.La carte réseau peut être installée dans le premier ou le deuxième emplacement La carte a deux commutateurs, l'un sert à réinitialiser la carte réseau (n'affecte pas le programme dans PR200), le deuxième commutateur peut être programmé pour activer l'archivage (sélectionné via les paramètres de l'interface WEB de la carte). Il y a également 2 LED d'information:
1 bleu s'allume brièvement pendant l'échange de données via l'interface RS-485 avec PR200
2-rouge s'allume brièvement au moment de l'écriture des données sur la carte micro SD et est constamment allumé s'il n'y a pas de carte ou s'il est impossible de lire les données sur la carte.
Voici les menus principaux lorsque vous travaillez dans différents modes:
Paramètres réseau de base pour la connexion via WEB.
Paramètres de connexion à l'interface réseau PR200 et paramètres de connexion via Modbus TCP via WIFI
Carte des registres internes communs au Web, Modbus RTU et Modbus TCPPage WEB de test pour contrôler et surveiller l'état des E / S du PR200 avec le module d'extension PRM-1 connecté. Pages d'entrée / sortie des valeurs du PR200 et transmission des données aux sorties de contrôle de l'appareil. Lors de la connexion d'une carte réseau à un routeur avec accès Internet et redirection de port, le travail à distance avec la carte via un navigateur est possible.
Comment ça marche
Voici des captures d'écran lors de l'exécution de PR200 sur un projet réel, avec archivage des données. Un projet est chargé dans le PR200, qui lit les valeurs des 4 canaux analogiques auxquels les capteurs NTC sont connectés et convertit ces valeurs en température, à l'aide de la deuxième interface réseau configurée en mode maître, le PR200 interroge le module MV110-8A auquel 2 DTC Pt1000 sont connectés. Ainsi, des données sont collectées sur 4 valeurs de résistance des entrées analogiques du PR200, 4 valeurs de température obtenues à l'aide de la macro NTC, ainsi que 2 valeurs de température reçues du module MV110-8A via RS-485. Les 10 registres au format flottant de la première interface réseau configurée en mode maître sont lus pour écriture dans l'archive et visualisation WEB.
Le menu de travail avec la carte SD, lorsque l'archivage est désactivé, affiche une liste des fichiers sur la carte, lorsque l'archivage est activé, affiche le journal de l'enregistrement sur la carte.
Menu de gestion des archives. 
Les horodatages pour l'archivage sont lus à partir des registres d'horloge en temps réel du PR200; dans cet exemple, l'horloge n'est pas synchronisée avec le temps réel.
Fichier d'archive téléchargé via WI-FI avec micro SD installé sur la carte et ouvert avec un éditeur de texte. Prêt pour la représentation graphique. La page s'est ouverte dans le navigateur pour construire un graphique à partir du fichier téléchargé.
Le planning généré en fonction des données du fichier archive.
Gérer la visibilité des graphiques à travers une légende
Détailler les sections nécessaires sur le graphique.Enregistrer l'accès via Modbus TCP (WIFI)
Si les capacités WEB ne suffisent pas pour créer la visualisation, alors en utilisant l'accès via Modbus TCP, vous pouvez organiser la communication avec les systèmes SCADA et créer rapidement la visualisation nécessaire à partir de blocs prêts à l'emploi. À l'aide de divers moniteurs réseau, il est possible de surveiller l'état des registres internes de la carte réseau et des registres intégrés du PR200. Exemple d'interrogation à l'aide du logiciel Modbus Poll.
Connexion via le protocole ModBus TCP à l'aide du logiciel Modbus Poll.
Lire les registres et les présenter sous différents formats.Conclusions
Après avoir installé la carte réseau dans l'appareil, des fonctionnalités et des outils supplémentaires apparaissent lors de l'utilisation du relais programmable PR200. Différents scénarios d'utilisation sont possibles à la fois individuellement et en mode combiné.
Par exemple, l'enregistrement d'événements archivés dans PR200, à l'heure actuelle, diverses macros ont été créées pour enregistrer des événements archivés dans l'appareil, mais elles occupent beaucoup de ressources dans l'appareil et ont des capacités limitées à la fois pour la sortie des informations et pour la profondeur de l'archivage, en utilisant un lecteur externe, il existe une possibilité plus flexible pour configurer et enregistrer les événements nécessaires. Pour faciliter l'analyse, un mode d'écriture des registres en mode bit a été ajouté, donc un nombre de 16 ou 32 bits décomposé en bits entre dans l'archive. Différents modes de démarrage de l'archivage sont pris en charge, via un interrupteur sur la carte, une interface WEB, un registre ModBus. À l'aide du registre ModBus, l'appareil détermine lui-même le moment d'enregistrement en écrivant un nombre autre que «0» dans la cellule, le paramètre est dépassé, nous écrivons dans le registre «1» et les journaux sont écrits jusqu'à ce que la valeur soit écrite dans le registre «0», semblable au fonctionnement des signaux d'entrée. Séparément, vous pouvez sélectionner un enregistrement avec une certaine période de diverses données sur la température, la pression, l'humidité pour une analyse ultérieure dans une représentation graphique. Pour convertir des données en vue graphique, une page Web est intégrée à l'appareil.
Le deuxième scénario est la télécommande ou la surveillance de l'état des variables internes, la modification des modes de fonctionnement. Cette option peut être divisée en local, au sein du réseau interne et via Internet.
Les options restantes sont auxiliaires, débogage, affichage des variables d'intérêt sur la visualisation actuelle, affichage des variables réseau, etc.
Il est intéressant d'entendre l'opinion de la communauté sur ce sujet, qui résout de quelle manière des problèmes similaires?