Le bus Logiciel
La Suite Panorama repose sur un bus logiciel sur lequel transitent les informations. En toute transparence, les différents objets (au sens littéral et informatique) échangent des informations sans que l’utilisateur ne se soucie de leur emplacement réel : sur le même serveur ou un autre, sur un serveur actif ou en veille, etc… Ces échanges d’informations se font par notification (OPC) et non par interrogation cyclique, ce qui économise la bande passante du réseau.
Ce bus logiciel, ces objets et leurs technologies associées sont la base des fonctionnalités standards de Panorama Suite, telles que :
- l’acquisition,
- les calculs,
- la gestion d’utilisateurs,
- l’historisation, …
La programmation orientée objet (POO)
La programmation objet est au cœur de la conception de Panorama, mais elle est aussi disponible pour le développeur d’application. Il regroupe dans un modèle des fonctionnalités et des interactions (par exemple: la présence d’une alarme est associée à un voyant rouge dans un synoptique). Un modèle n’est cependant pas totalement rigide, il est possible de pré-paramétrer des valeurs pour faciliter son utilisation. Il est aussi possible de rendre présents ou absents certains éléments. Ainsi une multitude de vannes possédant pour la plupart une alarme sauf quelques-unes, ne nécessite pas de modèle différent. La création d’une application devient modulaire, et permet la construction de composants complets et complexes tout en restant scindables, dissociés et donc compréhensibles. Une fois la bibliothèque de composants créée, l’instanciation (les exemplaires d’un modèle placés dans l’application) automatise les valeurs de certaines propriétés telles que paramétrées dans le modèle.
Encore plus loin avec Panorama…
Bus logiciel et Programmation orientée objet sont intimement liés dans Panorama. En effet, toute fonctionnalité de base présente dans Panorama E2 est déclarée à Panorama par un descripteur de classe. Cet outil permet de:
- normaliser tous les objets, toutes les technologies de n’importe quel développement logiciel (fourni par Codra ou que vous-même avez créé),
- d’indiquer à Panorama comment manipuler les objets,
- d’étendre nativement Panorama à d’autres fonctionnalités spécifiques à votre métier, par exemple : caméras de vidéosurveillance au protocole propriétaire, principe particulier de calcul d’acheminement de produits dans une usine, …