Bonjour à tous,
Je dois faire communiquer un PC et un équipement sur le port série ( en protocole ModBus ).
Le PC interroge l'équipement pour connaitre les valeurs de certains de ses registres.
Ensuite le PC enregistre les valeurs dans une base de donnée sur un serveur ( mySQL ou PostgreSQL ) en local.
Jusque là, rien de compliqué, j'ai pu réaliser toutes ces actions séparées dans divers projets de tests.
Cependant, je cherche à mettre en place cette communication en permanence.
C'est à dire que le PC et l'équipement ne serait jamais mis hors tension ( ou le moins possible ) et que la communication entre les 2 serait à intervalle réguliers 24h/24 7j/7 sur le port série.
C'est là que beaucoup de questions se posent pour moi. Ce programme doit :
être autonome, se lancer au démarrage de Windows, redémarrer s'il a planté, relancer la communication entre le PC et l'équipement si nécessaire.
Enfin il doit réagir à tous les problèmes potentiels pour fiabiliser la communication et éviter au maximum les pertes de données éventuelles, débordement de piles, etc ( le 0% de perte serait l'idéal mais bon je ne miserais pas ma main là-dessus sur une telle application surtout développée par moi)
Je précise que l'application sur le PC doit acquérir des données toutes les 10 minutes. Les données sont récupérées en moins d'une minute.
Donc la plupart du temps l'application attend et scrute l'heure du PC jusqu'au prochain relevé.
Comment aborder le développement ?
Comment définir le type de mon application ( service, dll, Forms, etc ... )
Comment mettre en place l'application en sachant que j'ai déjà validé les différentes fonctionnalités du logiciel séparément ? La difficulté étant de les faire s'exécuter en permanence.
Je développe sous C++ Builder 5 et/ou C++Builder 2007.
Toutes les fonctionnalités ( communication entre PC et équipement + stockage vers base de données ) ont été validées dans divers projets de tests.
Voilà, tous les conseils sont bons à prendre alors n'hésitez pas à conseiller !
PS : je ne savais pas dans quel forum poster mon message, désolé si je me suis trompé![]()
Partager