// 1. Pages (écrans)// 2. Tags HMI// 3. Alarmes// 4. Scripts// 5. Historisation// 6. Communication PLC ↔ HMI// Créer un dossier 'Pages'// Créer un dossier 'Alarmes'// Créer un dossier 'Scripts'// Utiliser des noms explicites : Page_Moteur, Page_AlarmeTag_Vitesse := PLC_DB.Vitesse; # Liaison PLC ↔ HMITag_Start := PLC_DB.CommandeStart; # Commande moteurTag_Alarme := PLC_DB.Alarme; # AlarmeBoolIntRealStringTime// Toujours utiliser des noms explicites// Grouper les tags par fonction// Utiliser des UDT côté PLC pour simplifier les tags// Ne jamais pointer directement vers des adresses absolues// Ajouter une nouvelle page// Ajouter des boutons, textes, images// Lier les éléments aux tags HMIBouton_Next.Page := 'Page_Moteur';Bouton_Back.Page := 'Page_Accueil';// Boutons// Textes// Champs de saisie// Bargraph// Jauges// Images dynamiquesAlarme_TempHaute.Trigger := PLC_DB.Temp > 80; # DéclenchementAlarme_TempHaute.Text := 'Température élevée';// Alarmes simples// Alarmes avec acquittement// Alarmes système// Activer 'Historisation des alarmes'// Définir la base de données interne// Afficher l’historique sur une pagefunction OnClick() { HMIRuntime.Tags('Tag_Start').Write(1); # Commande moteur}// OnClick// OnLoad// OnChange// OnAlarm// 1. Ajouter une connexion S7// 2. Sélectionner le PLC dans le projet// 3. Assigner les tags HMI aux variables PLC// Tester les tags en ligne// Tester les commandes moteur// Tester les alarmes// Voir les erreurs de connexion// Voir les tags non disponibles// Voir les alarmes systèmeTag_CPU_Error := PLC_DB.CPU_Error; # ExempleTag_CPU_Code := PLC_DB.ErrorCode;// Utiliser des noms explicites pour les tags// Grouper les pages par fonction// Tester l’HMI avec PLCSIM// Utiliser des couleurs cohérentes// Ne pas surcharger les pages// Documenter les alarmes et scripts