Unity 3 PDF
Unity 3 PDF
Unity 3 PDF
Unity Pro permet de programmer les automates Modicon M340, Premium, Atrium,
Quantum. Actuellement PL7-Pro cohabite avec Unity sur la gamme des automates
Premium, il est toutefois possible de faire migrer certains processeurs utilisant PL7-Pro
vers des processeurs Unity par une mise à jour du système d’exploitation.
Attention peuvent subir la migration tous les processeurs TSXP572 sauf les
TSXP572823 et tous les processeurs TSXP573, il faut en plus que le dernier
chiffre des références se terminent par 3.
Unity Pro propose les langages suivants pour la création du programme utilisateur :
Lancement du logiciel : le logiciel se lance par un double clic sur l’icône Unity sous
le bureau ou depuis le menu démarrer de Windows répertoire Schneider Electric,
puis Unity Pro et clic sur le lien Unity.
Interface Utilisateur
Menus et Toutes les fonctionnalités sont
Barres d’outils accessibles depuis les menus ou les
barres d’outils.
Navigateur de
projet, donne accès
à tous les éléments
de l’application
Unity
Barre d’informations, donne des informations Barre de statut, donne des informations
sur les erreurs survenues, le suivi des sur l’état du projet et sur le driver
signaux, les fonctions d'importation, etc.) utilisé pour la connexion automate
Page - 1 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Remarque : avec Unity beaucoup de fonctionnalités sont également accessibles depuis
des menus contextuels (accès par sélection avec la souris de l’élément en surbrillance,
puis clic sur le bouton droit pour faire apparaître le menu contextuel lié à l’élément
sélectionné). Si lors de l’utilisation du logiciel on se retrouve perdu dans la
navigation entre les différentes fenêtres ouvertes, toujours revenir à la fenêtre du
navigateur de projet. Pour avoir accès à cette fenêtre (si cette dernière est
fermée) soit on utilise l’icône situé dans la barre d’outils supérieure (icône à gauche
des jumelles) ou depuis la commande navigateur de projet du menu Outils.
Tous les éditeurs peuvent être basculés du mode normal au mode plein écran ou
directement agrandi par utilisation de la souris.
Sur cette représentation, on peut voire le navigateur d’application qui contient toutes
les éléments de l’application Unity et deux éditeurs d’ouverts, on peut réorganiser
l’espace de travail avec une vision différentes des fenêtres ouvertes.
Page - 2 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Pour réorganiser l’espace de travail, il suffit de sélectionner les icones ci-dessous de la
barre d’outils :
Certaines fenêtres comme l’éditeur de données et les tables d’animations peuvent être :
Navigateur de projets
C’est l’éditeur qui permet de se rendre dans toutes les parties de l’application Unity
• Vue structurelle
• Vue fonctionnelle
Dans tous les projets, la vue structurelle existe, par contre la vue fonctionnelle
ne sera présente que si le concepteur l’a crée. On retrouvera toutes les parties
de programme dans la vue structurelle et pas nécessairement dans la vue
fonctionnelle en fonction du découpage effectuée par le développeur.
Page - 3 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Exemple de décomposition
Ci-contre la vue structurelle d’une application
qui contient toutes les parties de programme
et la vue fonctionnelle où l’on retrouvera dans
chaque module une ou plusieurs sections de
programme de la vue structurelle.
On peut faire afficher avec ces icones soit une vue soit l’autre, voire les deux
Configuration
matérielle
Table d’animations
Sections de programmes
Écran d’exploitation
Page - 4 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Editeur de données
Il faut éviter d’utiliser une variable topologique (adressage automate par exemple
%M2 ou %MW0), par contre on la déclare et on lui donne un nom (mnémonique).
Editeur de configuration
Comme sous PL7, la configuration matérielle et logicielle s’effectue dans cet éditeur.
La configuration matérielle permet de renseigner le logiciel sur le type d’automate
programmé ainsi que les cartes utilisées, cette configuration est obligatoire.
Par contre en fonction des applications cette configuration peut être étoffée ce
celle des réseaux, essentiellement CANOPEN et ETHERNET, si ces derniers sont
présents.
Page - 5 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Editeur de programmation
Les éditeurs de langage sont propres à chaque langage et contiennent des outils
spécifiques de programmation, ci-dessous une section de programme en langage FBD.
Editeur d’informations
Situé dans la partie
basse de l’écran, cette
fenêtre donne des
informations précieuses
sur les erreurs de
programmation lors de
l’analyse, ou lors de
l’import export, ou bien lors de remplacement de variables. Il est recommandé de
vérifier fréquemment son contenu.
Page - 6 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Architecture mémoire et règles de recouvrement des données à adressage
direct
Les instances de données à adressage direct possèdent un emplacement prédéfini
dans la mémoire automate ou dans un module métier et cet emplacement est connu de
l'utilisateur.
Les octets (8 bits), mots simples (16 bits), double longueur (32 bits) et flottant (32
bits, permet le stockage de chiffre à virgule) sont rangés à l'intérieur de l'espace donné
dans une même zone mémoire.
%MWi
%MDi
%MWi+1
%MWk
%MFk
%MWk+1
Page - 7 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Exemple :
On s’aperçoit qu’en stockant la valeur 3238 dans le mot simple %MW0, l’octet %MB0
contient la valeur 156 (10011100 en binaire). Si à la suite de l’instruction de stockage de
la valeur 3238 on stocke 243 (11110011) dans %MB0, c’est alors la valeur de %MW0 qui
change : 00001100 11110011 en binaire soit : 3315.
La syntaxe d’une instance de données à adressage direct est définie par le symbole
% suivi d’un préfixe de localisation mémoire et dans certains cas d’informations
supplémentaires.
Variables internes %M
Légende :
R : variable accessible en lecture
W : variable accessible en écriture
Remarque : dans l’automate M340, l’adressage direct des zones mémoires de type
double (mot double) ou flottant (réel) n’existe pas. Pour les déclarer il faut les placer
dans une zone de type mot (%MW). L’index i %MW doit être pair.
Page - 8 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Constantes %K
Les variables %KDi et %KFi ne sont pas disponibles sur l’automate M340. Pour les
déclarer il faut les placer dans une zone de type mot (%KW). L’index i %KW doit
être pair. Les constantes sont des variables que l’on ne peut que lire, on fixera la
valeur de ces variables dans l’éditeur de données.
Variables systèmes %S
Droit d’accès du
Syntaxe Format Exemple
programme
Bit %Si 1 bit %S6 R/W ou R
%SW0
Mot %SWi 16 bits R/W ou R
Page - 9 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Ligne de fin
Bus n°2
%IW\2.7\0.5.1.5
Bus adresse 2, équipement
7, rack0, module 5, voie 1,
donnée 5
Page - 10 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Dans le cas de l’application en mode locale, les termes b et e peuvent être omis on
retrouve donc uniquement la syntaxe %Ir.m.c soit dans notre cas %I0.1.5. Dans le cas
d’adressage direct de la voie d’une entrée ou d’une sortie le terme d (n°de données est
le plus souvent égale à 0).
UINT : nombre entier de 16 bits non signés valeur comprise entre 0 et 65535
DINT : nombre entier de 32 bits non signés, valeur comprise entre -2147483648 et
+2147483647
REAL : nombre réel (chiffre à virgule), codé sur 32 bits, valeur comprise entre
-3.402824e+38 et +3.402824e+38
Page - 11 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
bases qui sont : l’hexadécimal (16#valeur en hexa), l’octal (8# valeur en octal) et le
binaire (2#valeur en binaire).
TIME : codé sur 32 bits contient l’heure codés en millisecondes, soit une durée
maximale d’environ 49 jours. La syntaxe est T# ou TIME# suivi de la valeur pouvant
être exprimée en plusieurs unités
• T# 4294967295MS valeur en millisecondes
• T#4294967S_295MS valeur en secondes et millisecondes
• T# 71582M_47S_295MS valeur en minutes, secondes, ms
• T# 1193H_2M_47S_295MS valeur en heures, minutes, s, ms
• T# 49J_17H_2M_47S_295MS valeur en jour, heures, minutes, s, ms
DATE : format de 32 bits contenant la date, syntaxe D#1994-3-15 (15 mars 2005).
L’année, le mois et le jour sont respectivement codés en BCD, les 8 bits de poids
faibles sont inutilisées.
DT : date and Time codé sur 64 bits, syntaxe : DT#2000-1-10-0:40:0 (10 janvier
2000, 0h40mn0s). Chaque grandeur est codée en BCD, les 8 bits de poids faibles sont
inutilisées.
Année (2000) Mois Jour (20) Heure Minute(25) Secondes Octet de poids
(09) (13) (47) faible
0010 0000 0000 0010 0001 0010 0101 0100 0111 Inutilisés
0000 0000 1001 0000 0011
Page - 12 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Cette variable peut contenir 16 caractères, dans notre cas elle en contient 12
(l’espace compte comme un caractère).
On peut également définir le nombre de caractère que contiendra la variable
STRING. Lors de l’affectation de l’attribut il suffit de saisir STRING[12]. Dans ce cas
la variable à laquelle on aura affectée cet attribut pourra contenir au maximum 12
caractères. Le nombre de caractères devra être inférieur 65534.
Les données de types dérivées (DDT) comprennent des données complexes de deux
natures :
• Tableaux
• Structures
Structures : c’est une donnée qui contient un ensemble de données de type différent
telles que :
• Un ensemble de BOOL, WORD, UINT, etc (structure EDT)
• Un ensemble de tableaux (structures DDT)
• un ensemble de REAL, DWORD, tableaux (structure EDT et DDT)
Les structures sont très utilisées dans les programmes d’automatismes pour créer des
recettes. En effet les machines de production peuvent en général fabriquer plusieurs
Page - 13 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
produits avec des conditions de fabrication bien différentes. Chacune des recettes
contiendra toutes les variables permettant la gestion respective d’un produit, encore
une fois cela structure le programme, supposons que l’on fabrique deux produits et que
l’on est besoin dans le programme de 10 variables pour gérer la fabrication de chacun de
ses produits, au lieu de déclarer 20 variables de types EDT, on déclare 2 variables
auxquelles on attribue le type structures, on sein des ses structures on gérera le type
de variables que l’on a besoin.
Remarque : toutes les variables EDT et DDT seront déclarés dans l’éditeur de données
Les IODDT constituent une des grosses différences entre la programmation PL7 et
la programmation Unity. En effet sous Unity on peut adresser directement une entrée
ou une sortie avec son adresse topologique (cf. adressage p 9 et 10), on peut voir que cet
adressage peut être vite relativement fastidieux, grâce à l’utilisation des IODDT, le
logiciel va directement nous faire correspondre l’adresse topologique avec le nom que
l’on a donnée à l’IODDT, avec en plus l’avantage de remonter tout un tas d’information
supplémentaire (cf. p 27). Sous Unity il faut éviter de travailler en adressage direct
(topologique).
Page - 14 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
• t: donnée élémentaire (EDT) de type TIME contenant le temps d'activité de
l'étape (valeur en ms). Lorsqu'il est désactivé, la valeur de l'étape est maintenue
jusqu'à la prochaine activation.
Cette structure rassemble les données liées aux paramétrages du temps d’exécution
de l’étape ou de la Macro-étape.
Syntaxe Commentaire
Nom_Etape.x Permet de connaitre l’état de l’étape (active\inactive)
Page - 15 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Nom_Etape.tmaxErr Permet de connaitre si le temps maximal d’activation de l’étape
est supérieur au temps programmé dans Nom_Etape.tmax
Les types blocs fonctions élémentaires (EFB) sont fournis par le constructeur, et
sont stockés dans les bibliothèques de Unity, c’est dans ces blocs que l’on trouvera
les temporisations, compteurs et autres blocs fonctions prédéfinis que l’on se
servait dans PL7-Pro
Ils sont programmés en langage C. L'utilisateur peut créer ses EFB, pour cela il doit
disposer d'un outil logiciel optionnel "SDKC".
Un type EFB peut avoir une ou plusieurs instances, chaque instance est référencée par
un nom (symbole) et possède les données du type de l'EFB. C’est à dire que l’on peut
utiliser plusieurs fois le même bloc temporisation ou compteur, il suffit simplement
de lui donner un nom différent (instancier).
Les types blocs fonction utilisateur (blocs fonction dérivés) sont développés par
l'utilisateur avec un ou plusieurs langages (suivant le nombre de sections). Ces langages
sont les suivants :
• ladder
• FBD
• List Instruction
• Litteral Structure
L’utilisateur peut ensuite enregistrer ces blocs dans la bibliothèque pour les utiliser
dans d’autres applications. Un type DFB peut avoir une ou plusieurs instances, chaque
instance est référencée par un nom, c'est-à-dire que l’on peut utiliser plusieurs fois le
même bloc, il suffit de lui donner un nom différent.
Page - 16 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Page - 17 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Page - 18 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
On peut faire
remonter tout un tas
d’avertissement lors de
l’analyse du projet, ce
choix est à l’initiative du
développeur. Il peut
être intéressant de
faire cocher la case
multi-écritures de
variables et le
chevauchement
d’adresse génère un
avertissement. En effet
dans le premier cas un
message nous informera
lors de l’analyse si une
variable est pilotée
plusieurs fois dans le
projet (intéressant pour éviter la multi-écriture de la même sortie dans un programme).
Pour le chevauchement d’adresse, cela permet d’éviter des erreurs de recouvrement,
par exemple si dans le programme on utilise %MW0 et %MD0, le logiciel nous avertira
que ces deux zones mémoires se superposent.
Les informations d’Upload ne doivent être chargées dans l’automate que dans les cas
indispensables afin d’optimiser la taille mémoire disponible et de la réserver pour le
code exécutable, ainsi que d’améliorer les performances des modifications en connecté.
Page - 19 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Remarque : dans le langage SFC, la case à cocher autoriser plusieurs jetons doit être
cochée si on veut représenter sur une même page plusieurs grafcet. Si dans un éditeur
de programmation, on saisie une ligne de programmation et que l’on détecte une erreur
lors de l’analyse, il est possible que certaines options n’est pas été sélectionnées.
Page - 20 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Onglet d’option de l’application, accessible menu Outils, Options
Page - 21 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Méthodologie de configuration:
• Choisir ou remplacer le rack
• Choisir la puissance de l’alimentation, module le plus à gauche
• Replacer le processeur si nécessaire
• Double cliquer sur les emplacements vides du rack et
sélectionner le matériel dans le catalogue, ou bien faire du
glisser-déposer depuis le catalogue sur l’emplacement libre
Page - 22 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Le module d’alimentation est toujours à gauche pour Premium et M340, le logiciel permet
d’établir un bilan de la consommation électrique afin de savoir si l’alimentation est
bien dimensionnée, pour cela il suffit de sélectionner l’alimentation avec la souris puis
clic droit et choisir bilan de l’alimentation et des E/S.
Chaque module peut ensuite être configuré individuellement par un double clic
Page - 23 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Si l’option protection mémoire est sélectionnée, la protection est activée par un bit
d'entrée (à saisir en adresse topologique). Elle interdit le transfert d’un projet dans
l’automate et la modification en mode connecté quelque soit la voie de
communication. Les commandes d'exécution et d'arrêt sont autorisées.
Entrée à 1 -> la carte mémoire et l'application interne ne sont pas protégées.
Entrée 0 -> la carte mémoire et l'application interne sont protégées
Page - 24 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Nature du signal à
sélectionner
Une variable est une entité mémoire de types BOOL, EBOOL, WORD, DWORD, ……dont
le contenu peut être modifié par le programme durant son exécution.
Une variable localisée est une variable qui est liée à un module d’entrées sorties ou
modules métier ou associé à une zone mémoire spécifique (INT, DINT…..)
Une variable non localisée est une variable qui n’est liée à aucun module ou zone
mémoire. Une variable qui n’a pas d’adresses est dite non localisée.
Page - 25 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Page - 26 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Le filtrage des données est intéressant quand dans l’éditeur se trouve un grand
nombre de variables, on peut alors via les options de filtre ne faire afficher que celle
que l’on désire. Dans l’exemple précédent on ne fera afficher que les variable de
type INT, dont toutes les adresses débutent par %MW1 (le symbole étoile permet
de spécifier toutes).
Création des IODDT affectés aux cartes métier (T.O.R, analogique, …..)
Se rendre dans l’onglet dans l’écran de configuration, puis sélectionner l’onglet E/S de la
carte sur laquelle on veut créer les IODDT (cf. p 24). Sélectionner uniquement %CH
(Channel), puis mettre à jour la grille. On voit alors apparaître toutes les voies de
la carte, sélectionner la voie désirée, puis lui donner un nom, sélectionner le type
d’IODDT que l’on veut créer. Par exemple si dessous, la voie 0 est choisie et on l’a
nommée bouton_dcy, on choisit l’IODDT T_DIS_IN_GEN.
Page - 27 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Remarque : la procédure est à respecter pour chaque voie de cartes utilisées dans la
configuration matérielle.
En page suivant un exemple complet d’IODDT crée dans un projet, ou l’on retrouve des
IODDT pour des cartes d’entrées T.O.R (T_DIS_IN_GEN), des cartes de sorties T.O.R
(T_DIS_OUT_GEN), des cartes de sorties analogiques (T_ANA_OUT_GEN), une carte
de communication pour bus Canopen (T_COM_CPP110). Dans le programme, toutes les
adresses topologiques liées à ces cartes auront disparues, on utilisera les variables
des différentes IODDT.
Page - 28 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Pour cela depuis le navigateur de projet ouvrir l’éditeur de données et se rendre dans
l’onglet types DDT, renseigner les différents champs.
Après avoir saisi les différents champs de la structure que l’on désire créer, en
sélectionnant le nom de la structure (ici variateur) puis clic droit et analyser le type, si
aucune erreur n’a été décelé, on peut voir que l’icône a changé, la structure est
maintenant prête à être instanciée. L’onglet type DDT permet la création de la
structure. L’onglet type DFB permet la création de bloc de fonctions dérivées.
On retourne ensuite dans l’onglet variable et l’on donne un nom ici altivar21, altivar31,
altivar71, à ces variables on affecte alors l’attribut variable dérivées variateur crée
précédemment.
Page - 29 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Onglet Choisir le
variables Type DDT
On reproduit ces étapes pour les variables altivar31 et altivar71, au résultat on obtient
les structures ci-dessous.
Remarque : dans l’onglet de type DDT, on aurait également pu créer un tableau (cf.
p13), la démarche aurait ensuite été la même que pour les structure : analyse puis
on instancie.
Une variable peut être crée directement depuis des éditeurs de programmation au fur
et à mesure du développement du programme. Ci-dessous on place le nom CFAI au
dessus d’un contact, si la variable n’existe pas la fenêtre ci-dessous s’ouvre.
Validation de création
Saisie de l’adresse topologique si variable localisée
Page - 30 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Les blocs fonctions sont beaucoup plus nombreux que sous PL7, on retrouve bien
évidemment les classiques : temporisations, compteurs. Ces blocs sont stockés dans la
bibliothèque de Unity, lors de la création d’un programme c’est à l’utilisateur d’aller les
chercher.
On veut créer une temporisation de type repos (TOF) nommé tempo, après l’ouverture la
fenêtre (cf.ci dessous) on peut avoir accès aux bibliothèque de Unity, la plupart des
blocs fonctions se trouvent dans le répertoire Bibliothèque⇒⇒BaseLib. Concernant les
temporisations et les compteurs, ces blocs se trouvent dans le sous répertoire
Timers&Counters du répertoire BaseLib. Tous les blocs disponibles s’affichent alors
dans la fenêtre de droite.
N’affiche que les blocs élémentaires
Éditeur pour blocs fonctions de la bibliothèque de Unity
Page - 31 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Dans l’éditeur de données sous l’onglet Blocs fonction se trouve le bloc fonction TOF
instancié avec le nom tempo, on peut directement saisir la durée de la temporisation au
format time (cf. p 12).
Saisie de la valeur de
temporisation par exemple
time#500ms
La temporisation est réglée, il ne reste plus qu’à l’appeler dans l’éditeur de programme.
Depuis cet éditeur sélectionner le menu édition puis sélection de données la fenêtre ci-
dessous s’ouvre, ne cocher que le type EFB, apparaît alors tous les blocs fonctions crée
dans l’éditeur de données, choisir celui qui nous intéresse, dans le cas ci-dessous on ne
retrouve que notre variable tempo.
Page - 32 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Dans le répertoire application se trouve les blocs fonctions que l’on utilise
dans le programme, dans l’exemple ci-dessus si on veut une tempo TON ou
TOF ce n’est pas la peine de retourner les chercher dans la bibliothèque, elle
existe déjà. Par contre pour tous autres blocs fonctions, il faut se déplacer
dans la bibliothèque, comme vu précédemment.
Donné le nom de
l’instance que l’on
veut, ici
tempo_monostable,
puis valider.
Si on retourne ensuite dans l’éditeur de données sur l’onglet blocs fonctions, on retrouve
notre bloc instancié et ceux préalablement existant.
TON :
Paramètres d’entrées
Paramètres données signification
IN BOOL déclenchement
temporisation
PT TIME Temps de
retard
Paramètres de sorties
- Le bloc fonction est utilisé pour le
Paramètres données signification
retard de mise en marche.
Q BOOL Sortie
- Les paramètres supplémentaires EN et
ENO peuvent être configurés ET TIME Horloge
interne
Page - 33 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
TOF :
TOF
Paramètres d’entrées
Paramètres données signification
IN BOOL Déclenchement
temporisation
PT TIME Temps de
retard
Paramètres de sorties
- Le bloc fonction est utilisé pour effectuer
Paramètres données signification
un retard au déclenchement
- Les paramètres supplémentaires EN et ENO Q BOOL Sortie
peuvent être configurés ET TIME Horloge
interne
TP :
TP
Paramètres d’entrées
Paramètres données signification
IN BOOL Déclenchement
d’impulsion
PT TIME durée de
l’impulsion
Paramètres de sorties
- Le bloc fonction est utilisé pour générer une
Paramètres données signification
impulsion de durée définie
- Les paramètres supplémentaires EN et ENO Q BOOL Sortie
peuvent être configurés ET TIME Horloge
interne
CTU :
Ces blocs fonction servent au comptage.
Paramètres d’entrées
Paramètres données signification
En présence d’un signal "1" à l’entrée R, la
CU BOOL Comptage
valeur "0" est attribuée à la sortie CV.
R BOOL Remise à 0
Chaque fois que la valeur, à l’entrée CU,
passe de "0" à "1", la valeur de CV est
PV INT Présélection
incrémentée de 1. Si CV est supérieur ou
égal à PV, la sortie Q passe à "1". Les paramètres EN et ENO peuvent être
configurés. Paramètres de sorties
Le compteur ne fonctionne que jusqu'aux Il existe d’autre type de compteur, seul Paramètres données signification
valeurs maximum du type de données utilisé. change les formats des données PV et CV Q BOOL Sortie
Aucun débordement n’a lieu. qui peuvent être : DINT, UINT, UDINT. CV INT Valeur de
Les types se nomment CTU_DINT, comptage
CTU_UINT, CTU_UDINT
CTD :
Ces blocs fonction servent au
Paramètres d’entrées
décomptage.
Paramètres données signification
CD BOOL Décomptage
En présence d’un signal "1" à l’entrée LD, la
valeur de l’entrée PV est attribuée à la
LD BOOL Chargement
sortie CV. Chaque fois que la valeur, à
des données
l’entrée CD, passe de "0" à "1", la valeur de
PV INT Présélection
CV est décrémentée de 1.
Les paramètres EN et ENO peuvent être
Si CV est inférieur ou égal à 0, la sortie configurés. Paramètres de sorties
Q est à 1. Il existe d’autre type de décompteur, seul Paramètres données signification
change les formats des données PV et CV Q BOOL Sortie
Le bloc ne fonctionne que jusqu'aux valeurs qui peuvent être : DINT, UINT, UDINT. CV INT Valeur de
maximum du type de données utilisé. Aucun Les types se nomment CTD_DINT, comptage
débordement n’a lieu. CTD_UINT, CTD_UDINT
Page - 34 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
CTUD :
Page - 35 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Les sections SR sont des sous programmes auxquels on peut affecter des sections,
ces sections seront alors appelées depuis la tâches MAST ou FAST. Un SR ne peut
être appelé que depuis une section qui est dans la tâche à laquelle il est rattaché.
Les traitements évènementiels sont des sections de programme qui sont déclenchés par
des cartes spécifiques en fonction de la configuration matérielle déclarés dans le
logiciel. Par exemple on peut déclarer un traitement évènementiel pour des cartes de
comptage rapides, lorsque l’on arrive à une certaine valeur, l’automate arrête de lire le
Page - 36 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
programme en cours et traite directement la tâche événementielle. Ces tâches
permettent de réagir très rapidement sur des évènements fugitifs.
Tous les automates acceptent le traitement des taches MAST et FAST, pour le reste
cela dépend du type de processeur utilisé (cf. tableau ci-dessous).
Page - 37 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Légende graphique page précédente :
I : lecture des entrées associée à la tâche
P : lecture des sections de programme associé à la tâche
O : pilotage des sorties associées à la tâche.
On peut bien voire que le traitement le plus prioritaire est le traitement évènementiel,
le programme est dérouté pour traiter cette tâches.
Attention, il faut éviter dans les sections associées aux tâches FAST et
évènementielle de placer trop de lignes de programmes, car cela sera au détriment
du programme principal (MAST). De plus le temps de traitement de tout le
programme pourrait s’allonger.
Cyclique
Programme
Programme
Cycle n Cycle
n+1 T.I = traitement interne (attente)
Périodique
Programme Programme
Page - 38 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
basse sinon le programme n’aura pas le temps de s’exécuter, il est conseillé de laisser
la valeur par défaut en général 250 ms.
Sur le graphe de représentation des tâches p 37, on peut voir une tâche maitre
cyclique, une tâche rapide (FAST) périodique avec une période réglé à 20 ms. Si le
temps de la tâche rapide devient supérieur au chien de garde configuré,
l'application est déclarée en erreur, ce qui entraîne l'arrêt immédiat de
l'automate.
Page - 39 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Prenons l’exemple d’une carte de comptage rapide sur lequel est raccordé un codeur
incrémental.
Activation de l’évènement
0, cet évènement sera
déclenché quand la valeur
de comptage deviendra
supérieure à la présélection.
Le moment de
Affectation des entrées du déclenchement de
codeur à une tâche, de l’évènement dépend du
préférence FAST, car les type de cartes et des
signaux arrivent rapidement fonctions activées.
Règles de programmation : les entrées échangées (et le groupe de voies associées) lors
de l'exécution du traitement événementiel sont remis à jour (perte des valeurs
historiques, donc des fronts). Il faut donc éviter de tester des fronts sur ces
entrées dans les tâches maître (MAST), rapide (FAST) ou auxiliaires (AUX).
Page - 40 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Traitement évènementiel de type TIMER (disponible sur M340, autres CPU
cf.tableau p 37)
Protection
cf.p 35-36
Langage de
Numéro du
programmation
temporisateur
Page - 41 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Exemple de programmation :
Sur cet exemple de programmation l’évènement Timer0 sera déclenché toute les 100ms,
à chaque déclenchement de l’évènement Timer0, la section de programme n’est lue
que sur un cycle automate.
Fonctionnement du programme :
Au bout de 100ms le bit %M0 est mis à 1 et la valeur du mot %MW0 prend la valeur 1
(incrémenter), 100 ms plus tard la valeur du mot %MW0 passe à 2 et le bit %M0 est
remis à 0 ainsi que la valeur de %MW0, 100ms on est reparti pour le même
fonctionnement qui vient d’être énoncé.
Par conséquent le bit %M0 est mis à 1 pendant 100 ms et remis à 0 pendant 100ms.
Page - 42 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Lors du résultat de
l’analyse du projet, un
double clic sur la ligne
amène directement sur
les éditeurs à modifier
ou à configurer. Il faut
bien sur s’aider du
texte apparaissant la
fenêtre de visualisation.
Page - 43 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
• Générer le projet : ne génère que la partie du projet qui a été modifié. Cette
commande n’est disponible que si une génération complète a déjà été effectuée.
• Regénérer tout le projet : compile la totalité du projet, il est nécessaire de
l’effectuer au moins une fois
Remarque : les erreurs détectées bloquent le processus de génération, par contre si des
avertissements sont émis, la génération se déroule quand même. Un double clic sur
l’erreur ou l’avertissement amène directement dans l’éditeur en question. Il est conseillé
Page - 44 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
de ne déclencher le processus de génération qu’après une analyse du projet ne
présentant pas d’erreurs.
Après que le processus de génération se soit déroulé sans erreurs, on peut transférer
le programme dans l’automate. Il faut en suite vérifier les paramètres de connexion
pour savoir à travers quel support on transfère le programme automate. Pour cela il
suffit de se rendre dans le menu Automate-Définir l’adresse, la fenêtre ci-dessous
s’ouvre.
La connexion à l’automate peut s’effectuer directement par câble ou depuis un réseau.
Porte d’accès à
l’automate. Pour Paramètres du simulateur,
un accès direct toujours laissé cette adresse
depuis un des
câbles cités ci-
dessus, toujours
laissé SYS
Choix du driver à
utiliser pour se
connecter.
Le driver XIP permet l’accès à un automate par l’intermédiaire d’un réseau Ethernet en
utilisant le protocole d’adressage X-WAY.
Le format général défini pour décrire l'adresse d'une entité destinataire faisant partie
d'un réseau X-Way est détaillé ci-dessous :
Saisir l’adresse X-
Way de l’automate
au format {x.y}SYS
ou x : n° de réseau
et y : n° de station
Sélection du driver
XIP
Page - 46 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Configuration driver USB disponible sur tous les M340 et quelques Premium
Configuration driver Ethernet IP pour les CPU M340 native Ethernet et certains
coupleur Premium et M340.
Une fois l’application générée, il suffit de se connecter à l’automate en ayant pris soin au
préalable de vérifier par quel driver on se connecte (cf. ci-dessus). Attention Unity
possède un mode de simulation qui permet le test de votre programme sans avoir à
disposition l’automate, on peut donc se connecter à l’automate physiquement ou au
simulateur.
- Sélectionner le mode standard (automate) ou simulation à l’aide
des icones indiqués ci-contre.
- Cliquer sur connecter
Mode Mode
Connecter standard simulation
Une fois la connexion établie, plusieurs choix s’offrent à l’utilisateur :
Déconnexion : coupure liaison avec l’automate ou le simulateur
Comparer : compare les projets entre le PC et l’automate
Transférer : permet le transfert dans l’A.P.I ou depuis l’A.P.I
Arrêter : mise automate en stop
Exécuter : mise automate en run
Initialiser : initialise toutes les valeurs et les étapes de grafcet
Sauvegarde du projet : permet d’enregistrer, de comparer ou de
restituer sur un M340 le projet sur la carte SD, cette
manipulation est possible sur certains premium équipé d’une carte
mémoire : TSX MFP B 096K
Page - 47 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Page - 48 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
• sans animation de liens où les contacts fermés et les bobines déclenchées
s'affichent en vidéo inverse.
Animation programme avec option animation de lien Animation programme avec option sans animation de lien
Page - 49 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Unity met à votre disposition plusieurs éditeurs permettant de faciliter la mise au point
du programme, ces éditeurs nécessite de travailler en connexion avec l’automate ou le
simulateur.
• Fenêtre de variable
Page - 50 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
• Fenêtre d’inspection
• Tables d’animations
• Point d’arrêt pour stopper l’exécution du programme à un point bien précis
Fenêtre de variables :
Fenêtre d’inspection :
Les fenêtres d’inspections sont placées par
l’utilisateur sur la variable que l’on veut
visualiser. Ces fenêtres sont
particulièrement adaptées pour les
langages IL et ST.
Sélectionner la variable puis clic droit-
nouvelle fenêtre d’inspection. On peut
effectuer un réglage de la fenêtre en se
positionnant dessus puis clic droit-
réglages (cf.ci contre).
Si la valeur courante est comprise dans la
plage définie, le champ de surveillance est
affiché.
Si la valeur courante est inférieure à la
plage définie, le champ de surveillance est affiché en jaune.
Si la valeur courante est supérieure à la plage définie, le champ de surveillance est
affiché en magenta.
On peut masquer toutes les fenêtres via le menu Affichage-Masquer les fenêtres
d’inspection.
Pour supprimer les fenêtres, placez le curseur sur le champ de surveillance à supprimer
et exécutez la commande Supprimer l'inspection dans le menu contextuel.
Remarque : ces fenêtres peuvent être placées en mode local (non connecté). En langage
ladder on ne peut placer des fenêtres d’inspection que pour des variables booléennes.
Page - 51 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Table d’animation :
Une table d’animation est utilisée pour surveiller les valeurs des variables et pour
modifier et/ou forcer ces valeurs. Seules les variables déclarées dans Variables et
instances FB peuvent être ajoutées à la table.
Une table d'animation permanente fait partie intégrante d'un projet. Elle est
enregistrée avec le projet et peut être exportée.
Page - 52 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
La fonction chaines étendues n’est utilisée que si l’on veut visualiser des variables de
type STRING (chaine de caractères) de plus de 16 caractères. Par défaut la table
permet d’afficher 16 caractères d’une variable STRING. Lorsque vous utilisez cette
fonctionnalité, n'oubliez pas que l'animation de grandes chaînes peut réduire le
nombre de sections et de tables d'animation susceptibles d'être animées
simultanément.
Visualisation variables sans activation de chaines Visualisation variables avec activation de chaines
étendues, on visualise les 16 premiers caractères de étendues, on visualise toute la chaine, car on a sélectionné
la chaine l’animation de 30 variables (cf. p précédente)
Mode modification :
Ce mode permet de basculer les variables TOR et de définir la valeur pour les autres
types. Attention en mode modification le programme est prioritaire sur la valeur que
vous définissez à la variable.
Activation du Positionner à 0 ou
mode modification à1
Activer le mode modification, sélectionner la
variable booléenne puis positionner la valeur à 0
ou à 1. Si aucun résultat ne se produit, c’est que
le programme est prioritaire.
Pour les variables non booléennes il suffit
directement de saisir la valeur si le mode
modification a été activé
Page - 53 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Attention : en mode modification le programme est prioritaire, par conséquent il
est possible que la modification ne marche pas car le programme écrase les valeurs
que l’on désirait modifier.
Mode forçage :
Ce mode est disponible uniquement pour les variables répondant aux conditions
suivantes :
• la variable doit être de type EBool (entrées, sorties, mémentos)
• il doit s'agir d'une variable localisée (adressage topologique)
Activation du Forcer à 0 ou à 1 Supprime le
mode forçage forçage Activer le mode forçage, sélectionner la
variable puis forcer la valeur à 0 ou à 1.
Page - 54 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Tables de bits forcés :
Vous pouvez créer une table d'animation incluant tous les bits forcés d'un projet.
Page - 55 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Sélectionner le point d’arrêt soit :
• en sélectionnant à partir du menu la commande Mise au point->Définir le point
d’arrêt
• en sélectionnant à partir du menu contextuel la commande Définir le point
d’arrêt
• en sélectionnant le bouton avec l’icône en forme de main de la barre d’outils
mise au point (cette barre doit être au préalable affichée).
La suppression d’un point d’arrêt ne relance pas la tache, pour cela vous devez
sélectionner la commande Aller à du menu mise au point, ou depuis l’icône Aller à de
la barre d’outils mise au point.
Ce mode est lancé via un point d'arrêt défini au préalable. Il permet d'examiner le
comportement du code et la valeur des variables.
Il est mis en œuvre en mode connecté, la section exécutée en mode pas à pas stoppe
la tâche correspondante, et les liens ne sont plus animés.
On peut voire la position des réseaux évalués en affichant l’étape courant via le menu
Mise au point afficher l’étape courante, une flèche jaune se positionne en face du
réseau ladder en évaluation.
Page - 56 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Sans point de visualisation les valeurs des variables animées sont affichées à la fin de
traitement de la tâche MAST.
La limite de ce mode de fonctionnement est qu’il ne permet pas de connaître la valeur
d’une variable en un point précis du programme si celle-ci est utilisée dans différentes
sections.
Le point de visualisation permet de synchroniser l’affichage des variables animées
avec l’exécution d’un élément programme afin de connaître leur valeur à ce point précis
du programme.
Les variables synchrones au point de visualisation appartiennent obligatoirement à la
section dans laquelle le point de visualisation est posé, la visualisation des autres
variables reste synchrone avec la fin de la tâche MAST.
Page - 57 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Remarque : la commande effacer le point d’arrêt, rend toutes les variables de la table
d’animation synchrone avec la fin de la tâche MAST. La commande afficher le point de
visualisation ouvre la section ladder et se positionne devant ce dernier.
Le diagnostic sous Unity Pro est constitué d’outils et de fonctionnalités qui permettent
d’agir à toutes les étapes d’un cycle de développement et d’utilisation d’une application
d’automatisme.
Le diagnostic système : le diagnostic système est un service qui associe les bits
et mots système au Viewer de diagnostic. Lorsqu’un projet a été généré avec
l’option Diagnostic système, le comportement des bits et mots système génère
automatiquement des messages de diagnostic sur les Viewers de diagnostic.
Page - 58 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Le diagnostic système s’effectue de manière automatique. Lorsque l’automate
détecte une erreur système (par exemple, le dépassement du chien de garde, un
défaut d’entrées/sorties, une division par zéro,...), une information est transmise
au Viewer de diagnostic. Le viewer de diagnostic affichera un message
d’erreur système si dans les options du projet, vous avez coché la case
Diagnostic système (commande options du projet du menu outils).
Page - 59 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
%SW0 Période de scrutation de la tâche MAST
%SW1 Période de scrutation de la tâche FAST
%SW2 Période de scrutation de la tâche AUX 0
%SW3 Période de scrutation de la tâche AUX 1
%SW4 Période de scrutation de la tâche AUX 2
%SW4 Période de scrutation de la tâche AUX 3
%SW11 Durée du chien de garde
%SW17 Statut de défaut pour opération flottante
%SW76 Fonction de diagnostic : enregistrer
%SW77 Fonction de diagnostic : annuler l'enregistrement
%SW78 Fonction de diagnostic : nombre d'erreurs
%SW96 Enregistrer/restituer %MW dans la mémoire flash
%SW97 Code d'erreur pour carte de stockage
%SW125 Type d'erreur bloquante
%SW146 Fonction d'arbitre sur bus Fipio
%SW153 Liste des défauts du gestionnaire de voie Fipio
%SW154 Liste des défauts du gestionnaire de voie Fipio
Il est intéressant d’activer cette fonction via les options du projet car, à ce
moment le diagnostic SFC (grafcet) est activé automatiquement et permet la
surveillance des temps d’activités d’étapes de grafcet.
Page - 60 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Le Viewer de diagnostics utilise les icônes suivantes pour indiquer l'état du message :
Page - 61 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Acquittement des défauts :
Pour acquitter un message qui le nécessite, vous devez le sélectionner et activer l’une
des commandes suivantes :
- la rubrique correspondante dans le menu contextuel (accessible
par un clic droit de la souris)
- la touche fonction F6
- dans le menu Service puis acquittement ou dans le bouton de la
barre d’outils Diagnostic Viewer ci-celle-ci est affichée.
Les écrans de diagnostic de niveau module ou de niveau voie ne sont accessibles qu'en
mode connecté. Lorsqu'un défaut non masqué apparaît, celui-ci est signalé :
Page - 62 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
- dans tous les écrans de niveau voie (onglets Configuration,
Réglage, Mise au point et Défaut)
Outils de simulation
Les points d'arrêt, les procédures pas à pas et la fonction Atteindre vous permettent
de tester votre programme utilisateur dans l'automate simulé.
Le simulateur d'automate simule un projet complet avec des tâches utilisateur.
Comme pour un automate réel, avant la connexion vérifier que votre projet soit
généré et qu’il ne contienne pas d’erreurs.
Basculer alors en mode simulation via l’icône de la barre d’outils, cf. p47 (il faut que la
barre API soit sélectionnée, commande Personnaliser du menu Outils), ou via la
commande Mode Simulation du menu Automate.
Les commandes sont ensuite identique à celle que l’on effectuerait sur un
automate réel.
Page - 63 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Un double clic sur l’icône de la barre d’outils de Windows ouvre la fenêtre ci-dessous,
cette fenêtre dépend du type d’automate (M340, Premium, Quantum, Atrium).
Page - 64 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Toutes ces commandes sont disponibles via le menu contextuel, on trouvera alors
également la commande effacer permettra de supprimer le projet de la mémoire du
simulateur. La commande synchronisation permet de voire la charge de la CPU de
l’ordinateur pour le traitement (pour plus de renseignements se référer à l’aide du
logiciel).
Remarque importante : pour que la connexion soit possible, il faut que l’adresse IP du
simulateur soit de 127.0.0.1 (cf.p 47). Le simulateur permet également une connexion au
runtime de Vijeodesigner (logiciel pour la programmation d’écran), on peut donc simuler
une application sans l’automate et sans l’écran. Il suffit de déclarer dans
Vijeodesigner un driver ModbusTCPIP et un équipement Modbus portant l’adresse
IP : 127.0.0.1. Le runtime de Vijeodesigner interagit directement alors avec le
simulateur de Unity. Pour simuler les entrées-sorties, il faut passer par des tables
d’animation et forcer les variables, ou bien par des écrans d’exploitation (cf.p 68).
Ecran d’exploitation
Les écrans d’exploitation intégrés sont destinés à faciliter l’exploitation d’un procédé
automatisé. Ils s’utilisent dans le logiciel Unity Pro.
L’éditeur graphique qui permet de créer ou modifier les écrans. En mode connecté, il
permet également de visualiser les écrans animés et de conduire le procédé.
La bibliothèque d’objets qui présente des objets constructeur et permet de les
insérer dans les écrans. Elle permet aussi de créer ses propres objets et de les insérer
dans une famille de la bibliothèque.
Pour un projet donné, vous pouvez créer des écrans d’exploitation, en utilisant
l’éditeur graphique.
Ces écrans sont réalisés au moyen de textes et d’objets graphiques que vous pouvez
dessiner (lignes, rectangles, courbes,...) ou récupérer dans la bibliothèque des objets
graphiques. Ils sont constitués de parties statiques (fond de l’écran, titre,...) et de
parties dynamiques ou animées qui permettent de refléter l’état du procédé.
Pour animer les objets dynamiques, vous devez leurs affecter une variable dont la
valeur déterminera l’affichage.
Pour conduire le procédé vous pouvez également insérer dans vos écrans des objets
de pilotage (boutons, zones de saisie,...).
Page - 65 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Après la création et l’ouverture d’un écran d’exploitation, la barre d’outils liée à cet
éditeur apparaît, si la case IOSEDITOR a été cochée dans la commande Personnaliser
du menu Outils. La barre d’outils permet la création, la modification et l’édition des
écrans d’exploitation.
Remarque : beaucoup de fonctions sont disponibles par le menu contextuel, tant sur les
écrans que sur les objets de la bibliothèque.
Page - 66 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Après un clic droit puis propriétés de l’écran sur l’écran créer dans le navigateur
d’application, la fenêtre suivante avec différents onglets apparaît.
Lorsque la case utilisée modèle est cochée, cet écran peut être utilisé
comme modèle pour tout autre écran du projet. Un écran modèle ne peut
pas contenir d’objets animés.
Lorsque la case utilise le modèle est coché, le fond de cet écran utilise le
fond d’écran modèle que vous avez défini. Le bouton de droite permet de
sélectionner l’écran modèle dans une liste déroulante.
On peut modifier les couleurs de fond de l’écran et sa taille
Les objets qui peuvent être créés dans un écran graphique sont de 4 types :
• les objets standards : ligne, rectangle, ellipse, courbe, polyligne, texte
• les images : fichiers bitmap avec l’extension BMP ou JPG
• les objets de pilotage (ou de commande) : bouton, case à cocher, champ de saisie,
compteur, curseur, objet d’échange explicite, bouton de navigation écran
• les objets composés : ensemble d’objets des 3 types précédents, créé par
l’utilisateur ou en provenance de la bibliothèque d’objets
Tous ces objets, utilisés pour créer un écran, peuvent être statiques ou animés.
Il existe des objets statiques et des objets dynamiques (animés)
Les objets statiques n’ont pas de variable associée. Leur représentation
graphique est fixe.
Les objets dynamiques ont une variable associée qui permet de modifier leur
affichage.
Les objets de pilotage (ou de commande) sont des objets qui permettent d’exécuter
une action :
- naviguer d’un écran à un autre
- modifier la valeur d’une variable
- envoyer une commande vers un module métier de l’automate
Ces objets sont de 7 types : les boutons, les cases à cocher, les zones de saisie, les
compteurs, les curseurs, les boutons de navigation d’écrans, les objets d’échanges
explicites.
Pour créer un objet de pilotage, sélectionner dans la palette d’outils le type
d’objets à insérer, pointer dans l’écran avec le bouton gauche et agrandir l’objet,
Page - 67 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
quand la taille correspondant est bonne, relâcher la souris, l’objet est alors inséré
dans l’écran, on peut par la suite le déplacer et le redimensionner. Sélectionner
l’objet avec la souris puis activer la commande caractéristique du menu contextuel
de l’objet. Résultat : une boite de dialogue contextuelle apparaît. Cette boîte dépend
du type d’objet et permet d’en fixer les attributs
Les objets de pilotage sont activés par une action de la souris (ou du clavier). En
fonction de l’attribut qui a été fixé, ces objets agissent sur leurs variables associées.
Remarque : tous les objets de pilotage sont directement disponibles, depuis le menu
contextuel (clic droit puis Nouveau Contrôles), à condition qu’un écran soit déjà ouvert
et que le clic droit intervienne dans cet écran.
Pour connaître les différents attributs de chacun des objets, se rendre dans l’aide du
logiciel.
Ouverture de l’écran
bouton de la
bibliothèque par
double clic, puis
sélection de l’objet
puis menu contextuel
copier
Page - 68 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Pour associer une variable à un objet :
Affichage de messages :
Les messages sont composés d'un texte et d'un libellé. Ils sont mémorisés dans le
projet et sont associés aux objets par leur numéro. Ainsi, il n’est pas nécessaire de
créer un message pour chaque objet et dupliquer des messages identiques.
Lors de la création d’un projet, la liste des messages est vide et c’est à vous de la
remplir: en créant vos propres messages.
Page - 69 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Ces messages seront ensuite affichés dans une zone de texte que l’on configurera en
conséquence dans l’écran d’exploitation.
Une zone de texte a été placée dans l’écran d’exploitation Si la case valeur est activée la valeur prise par la
sur laquelle on a affiché le menu contextuel caractéristique, variable s’affiche selon le mode d’affichage
une boite de dialogue s’ouvre choisi.
Objet bargraphe :
Un bargraphe permet de représenter graphiquement, sous forme de rectangles,
l’évolution d’une variable.
Seuls les objets de type rectangle peuvent être des bargraphes
Page - 70 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Chronogramme
Sélection de la variable
depuis l’éditeur de données
Accès à la palette de
couleurs étendues
Remarque : lorsque l’on est en mode connecté et que le pilotage de l’écran se fait par
l’utilisateur, via des bouton de commande, des champs de saisie…, pour que l’écriture des
variables associées aux objets puissent se faire, il faut activer l’icône valider variable
de la barre d’outils.
Bouton de navigation
d’écran
Boutons de pilotage
Affichage de
messages
Page - 71 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Fonction Rechercher-Remplacer
Il peut être très utile pour effectuer du dépannage de la mise au point de programme
de connaître à quel endroit est piloté une variable dans le programme, c’est ce que l’on
appelle les références croisées. De plus, il peut être également intéressant de pouvoir
remplacer une variable par une autre dans toutes les sections de programme, sans avoir
à se déplacer manuellement dans chacune.
Permet l’affichage des données soit sous la forme Bouton de lancement de la recherche
arborescence ou sous la forme liste
Page - 72 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
en écriture. Un double clic sur la ligne ouvre l’éditeur en conséquence et se positionne
sur la variable.
Sélection des
sections dans Lancement du remplacement
laquelle la
variable doit
être remplacée, Choix de la variable de remplacement
on peut
sélectionnée,
celle que l’on
désire.
Unity vous permet de pouvoir insérer des répertoires utilisateur dans la vue
structurelle de votre application, ainsi que des liens hypertextes (lien permettant d’aller
chercher une donnée sur le disque dur).
Pour cela faire afficher la vue structurelle du navigateur (cf.p 3,4), sélectionner le
répertoire sous lequel on veut insérer un répertoire personnalisé, puis via le menu
contextuel choisir la commande Ajouter un répertoire utilisateur, une boite de
dialogue s’ouvre demandant le nom à donner, valider, le répertoire est inséré dans
l’arborescence de la vue structurelle. On peut ensuite insérer un lien hypertexte pour
aller lancer une documentation technique, voire un autre logiciel, l’insertion de ce lien se
fait toujours dans la vue structurelle par le menu contextuel Ajouter lien hypertexte.
Page - 73 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Fonction imprimer
Sélectionner la
commande imprimer
du menu Fichier
Double
clic
Remarque : vous pouvez imprimer juste un éditeur, pour cela quand un éditeur
(programmation, données…) est ouvert effectuer la commande imprimer du menu Fichier
et choisir alors Rubrique actuelle, seul l’éditeur en cours est imprimé.
D’une manière générale le fichier STU ne peut être ouvert par Unity que dans la version
avec laquelle il a été compilé. Par exemple un fichier STU compilé avec une version 3.1 de
Unity, ne pourra être ouverte avec Unity V4.0. Les fichiers STA et XEF permettent de
Page - 74 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
pouvoir s’affranchir de ces limitations. C’est pour cette raison qu’il est nécessaire
après validation de l’application de disposer de ces trois formats de fichier.
Prenons un exemple, une entreprise dispose de Unity V3.1 et ne dispose que des
sauvegardes de programme au format STU. Si la mise à jour en versions supérieure est
installée (V4.0), Unity V4.0 refusera d’ouvrir le fichier STU compilé en V3.1.
Par contre on pourra se connecter aux automates et récupérer les programmes
existant, et le cas échéant les commentaires si le projet a été validé avec les
options adéquat (cf.p 19).
Remarque : pour ouvrir un fichier STA, STU, XEF, sélectionner la commande ouvrir
du menu Fichier. Le format XEF exporte la totalité du projet, on peut exporter juste un
éditeur de programmation, la configuration matériel, ou les données de l’éditeur de
données, pour cela se positionner dans la vue structurelle ou fonctionnelle sur l’élément
que l’on veut exporter puis sélectionner la commande Exporter du menu Fichier, une
boite de dialogue s’ouvre demandant le nom et l’emplacement ou l’on veut stocker le
fichier.
XLD : format XML d’export de sections de programme ladder
XIL : format XML d’export de sections de programme List Instructions
XST : format XML d’export de sections de programme Litteral Structuré
XBD : format XML d’export de sections de programme FBD
XSF : format XML d’export de sections de programme grafcet
XHW: format d’export de la configuration matérielle
XSY: export de variables de l’éditeur de données
XCR : format d’export d’écrans d’exploitation
Ces éditeurs seront importés via la commande Importer du menu Fichier et si l’on
est positionné sur le bon éditeur dans la vue structurelle.
Petite astuce : si vous ne disposez que du fichier STU, modifier l’extension de votre
fichier en .STA et Unity vous l’ouvrira.
Le logiciel OSLoader fourni avec Unity Pro permet d'effectuer les tâches suivantes :
• mise à niveau des systèmes d'exploitation de certains processeurs
Premium/Quantum
Page - 75 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
• mise à niveau des systèmes d'exploitation de certains processeurs
Premium/Quantum équipés de ports Ethernet
• Mise à niveau des systèmes d'exploitation de certains modules Ethernet
• installation d'anciennes versions sur les processeurs Premium/Quantum
afin qu'ils soient compatibles avec les logiciels de programmation PL7 V4
et Concept V2.6.
Le mode de
transfert le plus
simple est via le
protocole unitelway,
on peut alors
transférer un
système
d’exploitation
directement avec le
câble de transfert
TSXPCX3030 ou
3031.
Sélectionner le sens de
transfert du système
d’exploitation. Les
En cliquant sur systèmes sont fournis
le bouton sur CD avec le logiciel ou
démarrer une téléchargeable sur le
recherche des site Schneider XSL, ce
équipements sont des fichiers au
connectés est format bin.
lancée.
Unity Loader est un outil logiciel autonome destiné à la plate-forme matérielle M340. Il
n'est pas nécessaire d'avoir une licence Unity Pro pour utiliser ce chargeur.
Le logiciel Unity Loader propose les fonctionnalités de transfert suivantes :
Page - 76 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
• transfert d'une application Unity Pro d'un PC vers un automate
• transfert d'une application Unity Pro d'un automate vers un PC
• transfert d'un micrologiciel (FW, Firmware) d'un PC vers un automate
Ce logiciel est très intéressant, il permet à une personne ne possédant pas le logiciel
Unity de pouvoir transférer ou récupérer des données ou le programme complet. Il se
lance depuis le menu démarrer de Windows Schneider Electric Unityloader
Sélection du projet à
charger au format
STU, STA, STM
Sélection du type de
connexion USB ou
Ethernet
Catalog Manager est un outil logiciel intégré à Unity V4.0 qui simplifie la gestion des
équipements CANopen dans la base de données de catalogue Unity Pro. Catalog Manager
est un logiciel distinct permettant d'effectuer les opérations suivantes :
• Intégrer des produits de fournisseurs tiers
• Ajouter, supprimer et configurer l'accès aux équipements CANopen sur le bus
terrain
• Réduire la taille de la mémoire de l'UC réservée à un
équipement donné
• Personnaliser l'interface utilisateur
Page - 77 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Ce logiciel permet de s’affranchir de l’utilisation de Sycon (logiciel permettant de gérer
le bus Canopen, Profibus et Interbus, dans la configuration du maître et des esclaves).
Sélection de la famille
d’équipement
Sélection de l’image
représentative de
l’équipement
Page - 78 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
En fonction des automates certaines CPU seront natives avec un ou plusieurs réseaux,
sinon on pourra leur adjoindre des cartes faisant office de coupleurs, ou pour des CPU
PREMIUM des cartes PCMCIA.
Page - 79 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Réseau
Ethernet
Switch
I/O devices
Le nombre d’équipement dépend en général du type de coupleur ou de CPU en général on
peut scruter 64 ou 128 équipement. La lecture et l’écriture des entrées et sorties se
fait dans des zones mémoires %MW de la CPU, c’est le programmeur qui effectue le
mapping (correspondance des mots entre les entrées-sorties des équipements et de
la zone mémoire CPU) de chacun des équipements.
Paramètres
automatiquement
calculéss
Page - 80 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Chaque équipement est représenté par une adresse IP fixe et univoque sur le
réseau.
La zone %MW du maitre de définir les plages de mots internes de la mémoire de
l'application (%MW) spécifiques aux zones de lecture et d'écriture.
Pour ce faire, vous devez compléter :
- pour la zone de lecture, Lecture (adresse de démarrage dans la
table des mots internes pour la lecture des entrées)
- pour la zone d'écriture, Ecriture (adresse de démarrage dans la
table des mots internes pour l'écriture des sorties)
Exemple :
Page - 81 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Les modules de communication sont rassemblés dans un groupe de distribution afin
d'échanger les variables utilisées pour la coordination de l'automate.
Chaque module de communication publie une variable d'application locale pour les autres
modules de communication du groupe.
Chaque module peut également souscrire aux variables d'application publiées par
l'ensemble des autres modules partageant le groupe de distribution, quel que soit son
emplacement.
Une fois le module configuré, les échanges entre les modules de communication
partageant le même groupe de distribution s'effectuent automatiquement lorsque
l'automate est en mode RUN.
Chaque station peut publier une variable (jusqu’à 1024 bytes) et souscrire de
1 à 64 variables.
La sélection des variables à publier ou souscrire s’effectue dans l’éditeur de
données.
Data distribution
IP multicast address
239.255.255.251
Page - 82 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Pub
Variable 1 Sub
Sub Pub
Variable 2
Variable 3
Pub
Variable n Sub
Distribution group
Adresse IP de multis-diffusion
Variable publiée
Variable souscrite
Variable publiée
Variable souscrite
Page - 83 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Remarque : il est nécessaire de faire afficher les colonnes SUB (souscription) et PUB
(publication) dans l’éditeur de données, pour cela ouvrir l’éditeur de données, dans le
bandeau supérieur d’une colonne choisir personnaliser colonne via le menu contextuel.
La configuration du service Global Data est la même pour la machine 2 que pour la
machine 1, il est fondamental que l’adresse IP de multidiffusion soit la même sur les
deux programmes Unity. L’ID de données doit être univoque entre 1 et 64, c’est grâce à
cet ID que l’on pourra définir quelle variable sera souscrite pour tel équipement.
Donc si on reprend les 2 configurations global data de la machine 1 et 2 en page
précédente, on peut donc en déduire que :
• La machine 1 lit 2 mots de la machine 2 et vis versa
Machine 1 Machine 2
Machine 1 Machine 2
%MW22 %MW43
%MW23 %MW44
%MW24 %MW41
%MW25 %MW42
DHCP : le protocole DHCP (Dynamic Host Configuration Protocol) gère les paramètres
réseau pour les équipements réseau. Les équipements individuels peuvent obtenir des
adresses IP réseau d'un serveur DHCP par le biais d'une requête
Certains modules peuvent être configurés comme serveur DHCP. Leur adresse peut
également être configurée par l'utilisateur ou allouée dynamiquement par un serveur
d'adresses (configuration en tant que client BOOTP).
Page - 84 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Un module configuré comme client BOOTP transmet des requêtes sur le réseau
toutes les secondes au cours du démarrage, jusqu'à l'obtention d'une réponse de la part
d'un serveur d'adresses.
L'équipement distant agissant comme serveur BOOTP/DHCP répond à cette requête
et affecte au module client :
• une adresse IP
• l'adresse IP du Gateway
• le masque de sous-réseau correspondant
La différence entre DHCP et BOOTP est que DHCP peut fournir à une station une
certaine plage d’adresses et que chacune de ces adresses est négociée et n’est valable
que pour une certaine période de temps .
Nécessité pour le serveur de connaître l'adresse MAC (physique) du client pour être
autorisé à lui répondre et disposer de ses paramètres IP. En bootp, il est nécessaire
d’utiliser une table contenant l’adresse mac des différents protagonistes en
correspondance avec les adresses IP à leurs affecter.
Page - 85 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Remarque : le choix de client bootp, ou serveur DHCP est soit fixe pour certains
modules, voire configurable par l’intermédiaire du serveur web embarqué (réglage en se
connectant au serveur web par un navigateur internet, par exemple internet explorer).
Sélection de la voie de
communication
Double clic sur le module
Ethernet (cartes ou CPU)
Choix de la fonction de la
Après fermeture de la fenêtre
voie, ici fonction TCPIP
et validation des modifications,
Affectation du réseau l’icône à changé, notre réseau
logique crée précedement logique est maintenant
raccordé à notre automate
Le logiciel Unity Pro vous permet de créer des blocs fonction utilisateur DFB, en
utilisant les langages d’automatismes. Un DFB (Derivated Function Block) est un bloc de
programme que vous avez écrit, afin de répondre aux spécificités de votre application.
Page - 86 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Les blocs fonction vous permettent de structurer et d’optimiser votre application. Vous
pouvez les utiliser dès qu’une séquence de programme est répétée plusieurs fois dans
votre application ou pour figer une programmation standard. L’export puis l’import de
ces blocs fonction permet leur utilisation par un groupe de programmeurs travaillant sur
une même application ou dans des applications différentes.
Variable public : Ces variables internes du DFB peuvent être utilisées par le DFB,
par le programme application dans des sections de programme à l’extérieur du bloc DFB.
Page - 87 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Variable privées : Ces variables internes de DFB peuvent être utilisées uniquement
par ce bloc de fonction et ne sont par conséquent pas accessibles par le programme
application.
Programme
gérant le
fonctionnement
du bloc
Page - 88 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Après avoir terminé la modification du bloc de code, il faut analyser le bloc DFB :
L’icône a changé, si la
validation est OK
Le bloc DFB
Apparaît avec sa
section de
programme
Répéter cette opération autant de fois que nécessaire, sur l’exemple ci-dessous on
trouve deux blocs DFB compteur chacun gérant sa propre opération de comptage.
Page - 89 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Sélection du bloc
DFB puis clic droit On peut alors
et choisir copier enregistrer le bloc
dans la dans la bibliothèque
bibliothèque, la crée précédemment
fenêtre ci-contre ou dans la
apparaît. bibliothèque par
défaut de Unity
(Custom Lib).
Après validation le
bloc est enregistré
dans la bibliothèque
et utilisable dans
d’autres
applications
Conversion de projet
Unity vous permet de convertir des projets PL7-Pro en type de projet Unity. Depuis
la version 4.0, le convertisseur peut convertir des applications TSX micro, avec
cependant certaines restrictions.
Page - 90 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Pour la conversion vous devez disposez des fichiers XEF de PL7-Pro de l’application
que l’on veut convertir.
Sélectionner la commande ouvrir du menu fichier, choisir l’extension de fichier FEF,
puis aller chercher votre fichier sur le disque dur, puis valider, la conversion débute.
A l’issu de la conversion, un
rapport de conversion est émis, il
faut le consulter pour voir quelles
sont les erreurs de conversion
éventuelles. A l’issu de la conversion
Unity, vous proposera
automatiquement une CPU
compatible avec celles de PL7.
Les erreurs et les
avertissements s’affichent
également dan la fenêtre de Double clic pour ouvrir le
visualisation (cf.p 44). rapport de conversion
Cas particulier pour les TSX micros, à l’issu de la conversion le logiciel indique un
message : Erreur d’analyse l’UC TSX37 ne peut être convertie en UC Unity
compatible.
Ce message vient du fait qu’il n’y a pas d’automates similaires dans Unity au
TSXMICRO. Ce message est sans gravité pour la conversion, Unity place par
défaut une CPU M340, il suffit ensuite de se rendre dans la configuration
matérielle et le cas échéant de modifier la CPU.
Page - 91 -
Auteur : Samuel Bonot
Support à l’utilisation du logiciel Unity Pro
Sommaire