Perspective Designer vs Vision : guide de migration et de choix pour Ignition
Ignition d'Inductive Automation propose deux modules de visualisation distincts, Perspective et Vision, chacun reposant sur des fondations technologiques radicalement différentes. Que vous lanciez un projet greenfield, mainteniez des installations existantes ou planifiiez une migration progressive, comprendre les forces et les compromis de chaque module est essentiel pour faire le bon investissement.
En tant qu'intégrateur certifié Premier Ignition, OperaMetrix a déployé les deux modules dans des dizaines d'environnements industriels. Ce guide condense notre expérience terrain en conseils actionnables pour les responsables d'usine, les ingénieurs en automatisme et les décideurs IT.
Vue d'ensemble de l'architecture
Vision, Le client bureau Java
Vision est le module de visualisation historique d'Ignition. Il affiche les écrans dans un client bureau basé sur Java, lancé via Java Web Start (ou le lanceur natif Ignition depuis la dépréciation de Java Web Start).
Caractéristiques architecturales clés :
- Runtime : composants Java Swing exécutés dans une JVM sur chaque poste opérateur
- Rendu : tous les graphiques sont rendus localement par le CPU et le GPU du client
- Communication : le client maintient une session TCP/IP persistante avec le Gateway Ignition
- Gestion d'état : l'état de la session réside sur le client ; le Gateway diffuse les mises à jour de tags et gère les appels de scripts
Le client étant une application bureau complète, Vision peut exploiter des fonctionnalités du système d'exploitation comme l'accès aux fichiers locaux, la communication sur port série et l'impression directe, des capacités difficiles à reproduire depuis un navigateur web.
Perspective, L'application web moderne
Perspective, introduit avec Ignition 8.0, adopte une approche radicalement différente. Il délivre la visualisation via une application web servie par le Gateway et rendue dans n'importe quel navigateur moderne ou dans l'application dédiée Perspective Workstation.
Caractéristiques architecturales clés :
- Runtime : HTML5, CSS3 et JavaScript exécutés dans le moteur de rendu du navigateur
- Rendu : le navigateur gère toute la mise en page et le dessin ; Perspective utilise un arbre de composants React en interne
- Communication : des connexions WebSocket maintiennent les abonnements de tags en temps réel entre le navigateur et le Gateway
- Gestion d'état : l'état de la session est géré sur le Gateway ; le navigateur est une couche de présentation légère
Cette architecture signifie que les sessions Perspective peuvent être ouvertes depuis n'importe quel appareil disposant d'un navigateur, tablettes sur le terrain, téléphones en mobilité ou écrans de bureau en salle de contrôle, sans installer aucun logiciel.
Tableau comparatif
| Critère | Vision | Perspective |
|---|---|---|
| Technologie | Java Swing (client bureau) | HTML5 / CSS / JavaScript (navigateur) |
| Installation client | Requise (lanceur ou JNLP) | Aucune, fonctionne dans tout navigateur moderne |
| Support mobile | Non supporté | Design responsive natif, application mobile dédiée |
| Système de mise en page | Positionnement absolu en pixels | Conteneurs Flex responsifs |
| Stylisation | Basée sur les propriétés (polices, couleurs) | Classes CSS complètes et styles inline |
| Bibliothèque de composants | 150+ composants matures | Bibliothèque en croissance avec des patterns UX modernes |
| Scripting | Jython (Python 2.7) | Jython sur le Gateway + JavaScript côté client (Expression/Transform) |
| Mode hors-ligne | Le client peut mettre en cache localement | Nécessite une connexion active (cache PWA limité) |
| Multi-écran | Excellent support natif | Possible via plusieurs fenêtres de navigateur |
| Impression | Impression native du système | Impression navigateur ou export PDF |
| Tactile et gestes | Limité | Touch, swipe, pinch-to-zoom intégrés |
| Thèmes | Manuel par écran | Classes de thèmes CSS centralisées |
| Licence | Licence module Vision | Licence module Perspective |
| Feuille de route | Mode maintenance (correctifs) | Développement actif (nouvelles fonctionnalités) |
Quand choisir Vision
Vision reste un choix pertinent dans des scénarios spécifiques :
1. Déploiements Vision existants
Si votre usine exploite déjà des dizaines d'écrans Vision affinés au fil des années, une réécriture totale est rarement justifiée. Vision continue de recevoir des correctifs de bugs et des patchs de sécurité, et Inductive Automation n'a annoncé aucune date de fin de vie.
2. Environnements de salle de contrôle dédiés
Lorsque les opérateurs utilisent des postes fixes avec plusieurs grands moniteurs, le positionnement absolu de Vision et ses mises en page au pixel près peuvent sembler plus naturels. La gestion multi-écran est intégrée au lanceur client, sans configuration supplémentaire.
3. Intégration matérielle locale
Les clients Vision peuvent interagir avec les périphériques locaux, lecteurs de codes-barres, appareils série, imprimantes, via des scripts Jython accédant directement aux bibliothèques Java. Perspective, exécuté dans le bac à sable du navigateur, ne peut pas le faire sans middleware.
4. Utilisation intensive de composants legacy
Si votre projet repose fortement sur le Template Canvas, la Power Table ou le Classic Chart de Vision, la migration vers les équivalents Perspective peut nécessiter une refonte significative.
Quand choisir Perspective
Perspective est le module recommandé pour la plupart des nouveaux projets, et voici pourquoi :
1. Accès mobile et multi-appareils
L'avantage le plus décisif. Les superviseurs peuvent surveiller la production depuis une tablette en parcourant l'usine. Les techniciens de maintenance peuvent acquitter les alarmes depuis leur téléphone. La direction peut consulter les tableaux de bord KPI depuis n'importe quel navigateur. Aucune installation, aucune dépendance Java.
2. Design responsive et mise en page Flex
Le système de conteneurs Flex de Perspective adapte les écrans à toute taille de viewport :
{
"type": "ia.container.flex",
"props": {
"direction": "row",
"wrap": "wrap",
"justify": "space-between"
},
"children": [
{
"type": "ia.display.label",
"props": { "text": "Ligne de production A" },
"position": { "basis": "300px", "grow": 1 }
}
]
}
Les mises en page qui nécessiteraient plusieurs tailles d'écran dans Vision sont gérées automatiquement.
3. Stylisation moderne avec CSS
Les composants Perspective acceptent des classes CSS et des styles inline, permettant un thème centralisé :
/* Définir une seule fois dans la feuille de style du thème du projet */
.status-card {
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
transition: transform 0.2s ease;
}
.status-card:hover {
transform: translateY(-2px);
}
Cette approche garantit la cohérence visuelle sur des centaines de vues et rend les mises à jour de design globales triviales.
4. Vues intégrées et composants réutilisables
Le composant Embedded View de Perspective avec passage de paramètres crée une véritable architecture de composants :
# Script Gateway : résolution dynamique de la vue à intégrer
def getEquipmentView(equipmentType):
viewMap = {
'pump': 'Equipment/PumpDetail',
'valve': 'Equipment/ValveDetail',
'motor': 'Equipment/MotorDetail'
}
return viewMap.get(equipmentType, 'Equipment/GenericDetail')
5. Développement actif et pérennité
L'investissement d'Inductive Automation en ingénierie est concentré sur Perspective. Les versions récentes ont introduit le Power Chart, l'Alarm Status Table et le Symbol Factory, comblant l'écart avec la bibliothèque de composants de Vision. Choisir Perspective signifie que votre projet bénéficie des améliorations continues.
Stratégies de migration
Stratégie 1 : Coexistence parallèle (recommandée)
Ignition supporte l'exécution simultanée des deux modules sur le même Gateway. C'est l'approche la moins risquée :
- Conservez les clients Vision existants pour les opérations quotidiennes
- Construisez les nouveaux écrans dans Perspective, tableaux de bord, vues mobiles, rapports KPI
- Migrez progressivement à mesure que les écrans Vision atteignent leur cycle de maintenance
- Partagez les mêmes fournisseurs de tags, scripts et connexions base de données entre les deux modules
Cette approche permet aux opérateurs de continuer à travailler dans les écrans Vision familiers tandis que la direction et les utilisateurs mobiles bénéficient immédiatement de Perspective.
Stratégie 2 : Reconstruction écran par écran
Pour les organisations engagées dans une migration complète :
- Inventoriez tous les écrans Vision, documentez les composants, les bindings et les scripts par fenêtre
- Priorisez par complexité, commencez par les écrans de synthèse simples, reportez les écrans interactifs complexes
- Mappez les composants Vision vers les équivalents Perspective :
- Vision Template Canvas -> Perspective Embedded View
- Vision Power Table -> Perspective Table
- Vision Classic Chart -> Perspective Time Series Chart / Power Chart
- Vision Popup windows -> Perspective Docked Views ou navigation par page
- Convertissez les scripts Jython client en scripts de portée Gateway (Perspective ne peut pas exécuter de Jython côté client)
- Testez avec les opérateurs en parallèle avant de désactiver les écrans Vision
Stratégie 3 : Hybride avec Perspective Workstation
Perspective Workstation est une application bureau dédiée qui affiche les sessions Perspective en dehors du navigateur. Elle supporte :
- Les agencements multi-écran avec des affectations d'écran configurables
- Le mode kiosque pour les postes opérateurs dédiés
- La saisie de codes-barres (mode keyboard wedge)
Cela comble une grande partie des lacunes qui maintenaient auparavant les salles de contrôle sur Vision.
Considérations sur le scripting
L'un des plus grands défis de la migration concerne le scripting. Vision autorise les scripts Jython côté client qui s'exécutent sur la machine de l'opérateur. Perspective déplace toute l'exécution Jython vers le Gateway.
Exemple de script client Vision
# Vision : s'exécute sur la machine client
import system
window = system.gui.getWindow("MainOverview")
window.setLocation(0, 0)
system.nav.openWindow("AlarmPopup")
Équivalent Perspective
# Perspective : s'exécute sur le Gateway, envoie des instructions à la session
def onAlarmClick(self, event):
system.perspective.openPopup(
"alarmPopup",
"Popups/AlarmDetail",
params={"alarmId": self.props.alarmId}
)
Différences clés à anticiper :
- Pas de module
system.guidans Perspective, utilisezsystem.perspectiveà la place - Pas d'accès aux fichiers locaux, les opérations fichier doivent se faire sur le Gateway ou via une API web
- Les transformations JavaScript gèrent la logique côté client dans les bindings Perspective
- Les message handlers remplacent de nombreux patterns de scripting d'événements client
Considérations de performance
Vision excelle dans les scénarios avec des graphiques très denses (des milliers d'éléments animés) car le client Java exploite l'accélération GPU directement. Les écrans P&ID lourds avec 5 000+ objets animés peuvent s'afficher plus fluidement dans Vision.
Perspective est plus performant avec des arborescences de composants bien structurées et une utilisation appropriée du chargement paresseux. Évitez de placer des milliers de composants sur une seule vue, privilégiez plutôt la pagination, les conteneurs à onglets ou les patterns de chargement à la demande.
Une règle pratique : si un seul écran nécessite plus de 500 composants animés simultanément visibles, faites un benchmark dans Perspective avant de valider le design.
Notre recommandation
Pour les nouveaux projets en 2026, Perspective est le choix évident. L'accessibilité mobile, les capacités UX modernes et la feuille de route de développement actif en font l'investissement stratégique. La bibliothèque de composants a considérablement mûri, et Perspective Workstation répond à la plupart des exigences des salles de contrôle.
Pour les installations Vision existantes, adoptez une stratégie de coexistence. Exécutez les deux modules sur le même Gateway, construisez les nouvelles fonctionnalités dans Perspective, et migrez les écrans legacy selon un calendrier planifié plutôt que tout d'un coup.
Comment OperaMetrix peut vous aider
En tant qu'intégrateur certifié Premier Ignition, OperaMetrix est spécialisé dans les déploiements Vision et Perspective. Nos services de migration incluent :
- Évaluation d'architecture, analyser votre déploiement Vision actuel et recommander un chemin de migration
- Inventaire des écrans et scoring de complexité, identifier les gains rapides et les écrans à fort effort
- Migration pilote, convertir un ensemble représentatif d'écrans pour valider l'approche
- Formation opérateur, aider votre équipe à devenir productive dans Perspective Designer
- Support continu, maintenir les environnements Vision et Perspective pendant la transition
Que vous planifiiez une nouvelle installation SCADA ou la modernisation d'une installation existante, nous pouvons vous aider à faire le bon choix et à l'exécuter efficacement.
Contactez-nous pour discuter de votre projet de migration vers Perspective.



