Interface Modbus pour l'Enregistrement des Mesures d'Automates

J'ai travaille sur ce projet dans le cadre de mon travail en tant que technicien en automatisme pour le service de la Maitrise de l'Energie de la ville de Besancon.

Ce projet consiste a journaliser des valeurs recueillies dans des automates utilises pour les chaufferies et centrales de traitement de l'air present sur le reseau informatique de la ville. Pour realiser cet objectif j'ai fais appel a mes connaissances en langage de programmation Rust, pour la partie PC, et Structure, pour la partie automate.

Pour la partie PC en Rust, j'ai utilise les crates tokio_modbus, tokio, chrono et csv. Le programme s'articule ainsi :

Le programme itere sur les adresses IP en suivant cette boucle jusqu'a ce que toutes les adresses soient traitees. Apres une pause de 15 minutes, le processus relance un nouveau cycle de lecture des registres sur tout le reseau automate.

Pour la partie Automate, j'ai mis en place un serveur modbus grace au bloc fourni par le constructeur et ai expose les registres voulu avec un DataBlock dedie.

Il reste des modifications a operer et des fonctionnalites a rajouter, mais le coeur du programme est la et repond a besoin de securite des donnees avec une duplication des format et des localites.