50
ITII, cycle ingénieur 2E année - Automatisme Fascicule de TP Prise en Main de Codesys : 1 Création & Configuration d'un projet.....................................................................................................................2 1.Création du Projet............................................................................................................................................... 2 2.Définition des modules d'E/S.............................................................................................................................. 3 3.Attribution de Mnémoniques pour les E/S......................................................................................................... 4 4.Définition du répertoire de Compilation............................................................................................................. 6 5.Ajout de bibliothèques au projet........................................................................................................................ 6 2 Programmation CFC............................................................................................................................................... 7 1.Fonctions Logiques de base................................................................................................................................ 7 2.Compteurs.......................................................................................................................................................... 8 3.Entrées analogiques, comparateurs et fonctions mathématiques...................................................................... 9 4.Temporisateurs & fonctions mémoires............................................................................................................. 10 5.Fonctions de la bibliothèque « Util.lib »........................................................................................................... 10 3 Programmation IEC 61131-3................................................................................................................................11 1.Langage LD........................................................................................................................................................ 11 2.Langage FBD...................................................................................................................................................... 13 3.Langage ST........................................................................................................................................................ 15 4.Langage SFC...................................................................................................................................................... 16 4 Test & Implantation du Programme.....................................................................................................................19 5 Écrans de Visualisation......................................................................................................................................... 20 1.Présentation...................................................................................................................................................... 20 2.Création d'une visualisation.............................................................................................................................. 20 3.Affichage d'un Booléen..................................................................................................................................... 20 4.Affichage d'une Valeur Numérique................................................................................................................... 22 5.Action sur un Booléen....................................................................................................................................... 23 6.Saisie d'une valeur Numérique......................................................................................................................... 24 7.Représentation graphique d'une Variable Numérique...................................................................................... 25 TP 1 : Modbus TP 2 : Portail automatisé TP 3 : Tracker solaire TP 4 : Tri Postal

Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

  • Upload
    lelien

  • View
    373

  • Download
    22

Embed Size (px)

Citation preview

Page 1: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII, cycle ingénieur 2E année - Automatisme

Fascicule de TP

Prise en Main de Codesys :

1 Création & Configuration d'un projet.....................................................................................................................21.Création du Projet...............................................................................................................................................22.Définition des modules d'E/S..............................................................................................................................33.Attribution de Mnémoniques pour les E/S.........................................................................................................44.Définition du répertoire de Compilation.............................................................................................................65.Ajout de bibliothèques au projet........................................................................................................................6

2 Programmation CFC...............................................................................................................................................71.Fonctions Logiques de base................................................................................................................................72.Compteurs..........................................................................................................................................................83.Entrées analogiques, comparateurs et fonctions mathématiques......................................................................94.Temporisateurs & fonctions mémoires.............................................................................................................105.Fonctions de la bibliothèque « Util.lib »...........................................................................................................10

3 Programmation IEC 61131-3................................................................................................................................111.Langage LD........................................................................................................................................................112.Langage FBD......................................................................................................................................................133.Langage ST........................................................................................................................................................154.Langage SFC......................................................................................................................................................16

4 Test & Implantation du Programme.....................................................................................................................19

5 Écrans de Visualisation.........................................................................................................................................201.Présentation......................................................................................................................................................202.Création d'une visualisation..............................................................................................................................203.Affichage d'un Booléen.....................................................................................................................................204.Affichage d'une Valeur Numérique...................................................................................................................225.Action sur un Booléen.......................................................................................................................................236.Saisie d'une valeur Numérique.........................................................................................................................247.Représentation graphique d'une Variable Numérique......................................................................................25

TP 1 : Modbus

TP 2 : Portail automatisé

TP 3 : Tracker solaire

TP 4 : Tri Postal

Page 2: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

1 Création & Configuration d'un projet

1. CRÉATION DU PROJET.• Double-cliquez sur l'icôle « CoDeSys v2.3, puis sur « fichier » → « nouveau », et sélectionnez la cible matérielle

(API ) de votre poste (750-849) :

L'assistant vous propose de créer le module correspondant au programme principal nommé « PLC_PRG ».

• Laissez ce nom par défaut, ainsi que la case « programme » cochée, puis choisissez le langage de programmationsouhaité.

IUT Toulon ITII, Cycle Ingénieurs 2/30

Langage CFC (« Continous Functional Chart » → Logigramme) pour le programme principal.

Page 3: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

2. DÉFINITION DES MODULES D'E/S.• Dans la partie en bas à gauche de l'écran, sélectionnez l'onglet « ressources » :

• Puis cliquez sur « configuration de l'automate » :

• Développez le menu « Hardware configuration », et cliquez droit sur « K-bus » → « Éditer » :

Vous accédez alors à l'écran de configuration (cf page suivante) qui va vous permettre d'ajouter les différentes cartesd'E/S présentent sur votre rack-automate. Vous pouvez alors soit ajouter vos cartes une par une, soit scanner laconfiguration de votre automate pour que celle-ci soit automatiquement chargée dans votre projet.

IUT Toulon ITII, Cycle Ingénieurs 3/30

Page 4: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

• Cliquez sur l'icône « + » (Add) pour ajouter des cartes, la fenêtre suivante s'ouvre :

Vous pouvez alors aller chercher les cartes dans les différentes catégories, ou bien rentrer les références recherchéesdans « filter ».

• Une fois que toutes vos cartes ont été ajoutées, cliquez sur « OK ».

Vous pouvez alors éventuellement déplacer vos cartes si elles ne sont pas dans le bon ordre, ou encore accéder à ladatasheet au format pdf pour chacune d'entre-elles :

IUT Toulon ITII, Cycle Ingénieurs 4/30

Ajouter une/des carte(s)Scanner la configuration d'un automate

Déplacer

Data sheet

Page 5: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

3. ATTRIBUTION DE MNÉMONIQUES POUR LES E/S.• Cliquez sur « éditez » dans le champ « K-Bus » (bus de fond de panier de l'API) comme suit (page 5), afin de faire

apparaître les adresses des différentes entrées et sorties configurées :

• Dans la colonne « Name », complétez le nom de chaque entrée ou sortie conformément aux noms présents sur laplatine de test.

➔ L'ordre d'apparition des entrées et sorties au niveau des adresses dépend du câblage → se reporter auxdocumentations des cartes d'E/S. Exemple ci-après pour la carte 750-430 (8 entrées TOR) :

• Renommez les entrées et sorties afin que les noms que vous souhaiterez utiliser dans votre programme. Parexemple les noms utilisés sur la platine de test :

Mnémonique adresses APIS1 %IX2.0S2 %IX2.1S3 %IX2.2S4 %IX2.3S5 %IX2.4I1 %IX2.5I2 %IX2.6H1 %QX0.0H2 %QX0.1H3 %QX0.2H4 %QX0.3P1 %IW0P2 %IW1

Note : Afin de vérifier que le câblage correspond bien aux mnémoniques saisis, vous pouvez charger votreprogramme (qui ne fait rien !) dans l'API (cf § 3). Ensuite, chargez et démarrez le programme. Observez que lesvariables s'activent (bleu) lorsque vous appuyez sur S1, S2, I1 et I2, forcez les sorties en cliquant dessus et vérifiezque H1 à H4 s'allument correctement.

IUT Toulon ITII, Cycle Ingénieurs 5/30

- Ordre de numérotation sur une borne d'entrée -

S1 S2 S3 S4 S5

I1

I2

H1

H2

H3

H4

P1 P2

Bornier

Vers contrôleur

Page 6: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

4. DÉFINITION DU RÉPERTOIRE DE COMPILATION.Afin de ne pas être bloqué par les restrictions d'écriture du compte Windows « LPMEEDD », effectuez l'opérationsuivante : → Menu « Projet » → « Options » → « Répertoires ». Modifiez le chemin d'accès pour les fichiers de compilation enremplaçant le chemin défini par votre répertoire «TP1 » (situé sur le bureau, dans « documents » ou encore sur votreclé USB).

5. AJOUT DE BIBLIOTHÈQUES AU PROJET.L'ajout de bibliothèque permet d'utiliser des fonctions particulières, fournies par le fabriquant (ou créées par unutilisateur), et ainsi de gagner du temps dans la programmation.

• Pour cela, allez dans l'onglet « ressources » et sélectionnez « gestionnaire de bibliothèques ». Cliquez-droit pourajouter une « autre bibliothèque » :

• Ajoutez les bibliothèques (les bibliothèques CoDeSys portent une extension « .lib ») de votre choix.

✔Exemples :

✗ Wago_IO_Scanning_RTU_06.lib » (« C:\Program Files\WAGO Software\CoDeSys V2.3\targets\Wago\library\Applications ») permet d'interroger des esclaves Modbus RTU.

✗ « Wago_IO_Scanning_TCP_06.lib » (« C:\Program Files\WAGO Software\CoDeSys V2.3\targets\Wago\library\Applications ») permet d'interroger des esclaves Modbus TCP ou UDP.

✗ « Util.lib » (« C:\Program Files\WAGO Software\CoDeSys V2.3\library ») pour des fonctions d'utilité générale comme 'BLINK'

IUT Toulon ITII, Cycle Ingénieurs 6/30

Page 7: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

2 Programmation CFC.

1. FONCTIONS LOGIQUES DE BASE.Nous allons programmer les fonctions logiques suivantes :

H1 = (S1 + S2 + S3) . I1

H2 = S2 . S3 . S4

La programmation se fera pour notre part en langage CFC, sélectionné à la création du projet (pour le programme principal PLC_PRG).

On accède aux programmes d'un projet grâce à l'onglet « modules » du navigateur de projet :

Le programme principal « PLC_PRG » apparaît alors dans l'arborescence du projet.

Ce langage est celui utilisé pour le programme principal (module PLC_PR). La barre d'outil propose les fonctionnalités suivantes :

Pour ajouter une entrée à une porte logique, faire un clic-droit sur le bloc en question, puis choisir « entrée dumodule ».

IUT Toulon ITII, Cycle Ingénieurs 7/30

Placer une entrée

sorties mémorisées (Set / Reset)

Placer une entrée

« Placer un module » : Pour appeler n'importe

quelle fonction ou programme, en tapant son nom dans le module, une fois placé sur le schéma

Inverser une entrée ou une sortie

Page 8: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

Les équations logiques précédentes peuvent se représenter de la façon suivante en langage CFC :

• Une fois le logigramme ci-dessus réalisé, aller au chapitre 4 pour tester votre programme.

2. COMPTEURS.• Sauvegardez le projet précédent, puis faîtes « enregistrer sous » et enregistrez votre projet sous le nom

« TP1_compt » pour éviter d'avoir à recréer un projet. Supprimez le logigramme précédent.

On souhaite obtenir le fonctionnement suivant :

• Comptage des appuis sur S1 et décomptage des appuis sur S2. La valeur du comptage est stockéedans une variable de type 'INT' nommée « comptage »

• Le bouton poussoir S3 permet de remettre a zéro le compteur• Le bouton poussoir S4 permet de précharger le compteur à la valeur 10• Le voyant H1 s'allume lorsque la valeur courant du compteur est « 0 » ; le voyant H2 indique que la

valeur de préchargement est atteinte.

• Programmez un bloc CTUD afin d'obtenir le fonctionnement demandé.

• Une fois le logigramme ci-dessus réalisé, aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 8/30

Page 9: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

3. ENTRÉES ANALOGIQUES, COMPARATEURS ET FONCTIONS MATHÉMATIQUES.• Sauvegardez le projet précédent, puis faîtes « enregistrer sous » et enregistrez votre projet sous le nom

« TP1_ana » pour éviter d'avoir à recréer un projet. Supprimez le logigramme précédent.

On souhaite obtenir le fonctionnement suivant :

• Afficher la différence des tensions présentes aux bornes des potentiomètres P1 et P2 dans unevariable réelle nommée « difference »

• Chargez un programme vide dans l'API et observez les valeurs délivrées sur les entrées analogiqes%IW0 et%IW1par les potentiomètres P1 et P2.

• Complétez le tableau suivant :

Tension aux bornes de P1 (ou P2) %IW0 (ou%IW1)

0 V ….

10 V ….

• En déduire la relation suivante :Tension = ….................. x Mot d'entrée

• Programmez le fonctionnement demandé en utilisant les fonctions ci-dessous.

• Une fois le logigramme ci-dessus réalisé, aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 9/30

Page 10: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

4. TEMPORISATEURS & FONCTIONS MÉMOIRES.A partir du projet précédent, on souhaite obtenir le fonctionnement suivant :

• Lorsque l'écart de tension entre P1 et P2 dépasse 5V pendant au moins 4s, on allume le voyant H1.• Le voyant H1 ne s'éteint que lorsque l'écart entre P1 et P2 redevient inférieur à 1V pendant au moins

2s.

• Programmez le fonctionnement demandé en utilisant les fonctions ci-dessous.

• Une fois le logigramme ci-dessus réalisé, aller au chapitre 4 pour tester votre programme.

5. FONCTIONS DE LA BIBLIOTHÈQUE « UTIL.LIB »A partir du projet précédent, on souhaite obtenir le fonctionnement suivant :

• Le voyant H1 n'est plus allumé fixement, mais clignote (éteint pendant 250ms, allumé pendant500ms) lorsqu'un dépassement se produit.

• Programmez le fonctionnement demandé en utilisant les fonctions ci-dessous en utilisant la fonction BLINK.(pensez à inclure la bibliothèque « Util.lib, cf p7).

• Une fois le logigramme ci-dessus réalisé, aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 10/30

Page 11: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

3 Programmation IEC 61131-3.

1. LANGAGE LDNous allons programmer les fonctions logiques suivantes :

H1 = (S1 + S2 + S3) . I1

H2 = S2 . S3 . S4

• Créez un nouveau programme en langage LD nommé « equations » (clic droit sur « Modules » puis « insérerobjet ») :

Une ligne de programme Ladder est appelée « réseau ». Chaque réseau ne peut comporter qu'une seule bobine desortie.

La barre d'outil d'édition du programme Ladder comprend les éléments suivants :

Les équations logiques ci dessus deviennent donc :

IUT Toulon ITII, Cycle Ingénieurs 11/30

Ajouter l'attribut « Set » ou « Reset » à une sortie

Inverser un contact ou une sortie

Placer une bobine de sortie sur le réseau en cours d’édition

Ajouter un contact en série ou en // sur le réseau en cours d’édition

Ajouter un réseau devant ou derrière le réseau en cours

Page 12: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

• Une fois le logigramme ci-dessus réalisé,

• Appelez votre programme dans PLC_PRG :

• Aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 12/30

Page 13: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

2. LANGAGE FBDNous allons programmer les fonctions logiques suivantes :

H1 = (S1 + S2 + S3) . I1

H2 = S2 . S3 . S4

• Créez un nouveau programme en langage ST nommé « equa_FBD » (clic droit sur « Modules » puis « insérerobjet ») :

Une ligne de programme FBD est appelée « réseau ».

La barre d'outil d'édition du programme FBD comprend les éléments suivants :

IUT Toulon ITII, Cycle Ingénieurs 13/30

Ajouter l'attribut « Set » ou « Reset » à une sortie

Inverser une entrée ou une sortie

Placer un bloc (tapez le nom de la fonction souhaitée à l'intérieur du bloc)

Ajouter une sortie // (affectation) à un bloc

Ajouter une entrée à un bloc

Placer une sortie (affectation) sur un bloc

Page 14: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

Les équations logiques ci dessus deviennent donc :

• Une fois le logigramme ci-dessus réalisé,

• Appelez votre programme dans PLC_PRG :

• Aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 14/30

Page 15: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

3. LANGAGE STNous allons programmer les fonctions logiques suivantes :

H1 = (S1 + S2 + S3) . I1

H2 = S2 . S3 . S4

• Créez un nouveau programme en langage ST nommé « equa_ST » (clic droit sur « Modules » puis « insérerobjet ») :

• Programmez les équations en langage ST :

• Appelez votre programme dans PLC_PRG :

• Aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 15/30

Page 16: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

4. LANGAGE SFCNous allons programmer avec un grafcet le fonctionnement suivant :

• Initialement, aucune sortie n'est active.

• Si I1 ou S1 est vrai, alors H1 est activé.

• Si S2 est alors activé pendant que I1 est relâché, les voyants H2 et H3 s'allume pendant 3s. Le cycle redémarre

ensuite à son étape initiale.

• Allez dans l'onglet « modules » de CoDeSys, cliquez-droit sur « Modules » et « insérer objet ». Choisir le langageSFC et donnez lui le nom de votre choix (celui du cycle à réaliser par exemple) :

Le sous-programme apparaît sous la forme suivante dans le navigateur de projet:

• Accédez à votre programme SFC en cliquant dessus.

IUT Toulon ITII, Cycle Ingénieurs 16/30

Insérer « Etape + transition » derrière l'étape sélectionnée

Créer une branche parallèle : divergence ET

Insérer « Etape + transition » devant l'étape sélectionnée

Créer une branche alternative : divergence OU

Convergence OUConvergence ET

Insérer un saut vers une étape

Insérer « saut + transition » vers une étape

Page 17: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

• Placez-vous au niveau de la première transition et « insérez étape + transition »,

• Répétez l'opération pour obtenir un grafcet linéaire à 3 étapes.

• Vous pouvez renommer les étapes avec les noms suivants : « Etape_1 », « Etape_2 » et « Etape_3 »

La structure du grafcet exemple en langage SFC sera donc la suivante :

• Pour ajouter une action supplémentaire, faire un clic-droit sur l'étape correspondante et « Relier Action ». Poursupprimer une action, faire un clic-droit sur l'étape correspondante et « Effacer Action »;

• Pour temporiser une étape, on utilise une comparaison (cf ci-dessus) sur une variable de type « TIME ». Cettevariable sera le temps d'activité de l'étape à temporiser.

Exemple : Etape_5.t > t#1mn3s500ms

→ valide la réceptivité lorsque l'on est resté 1 minute, 3 secondes et 500 ms dans l'étape nommée « Etape_5 ».

• Complétez le grafcet de façon à obtenir le fonctionnement demandé.

• ll ne reste plus qu'à appeler le sous-programme « Grafcet » dans le programme principal « PLC_PRG » en plaçantun « module » sur le logigramme et en le renommant « Grafcet » :

IUT Toulon ITII, Cycle Ingénieurs 17/30

Page 18: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

• Aller au chapitre 4 pour tester votre programme.

IUT Toulon ITII, Cycle Ingénieurs 18/30

Page 19: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

5. PROGRAMMES SFC : FONCTIONNALITÉS SUPPLÉMENTAIRES

✗ Réceptivités

→ COMPARAISON ←

Placez vous sur la transition à programmer et tapez la comparaison en utilisant les sympoles <, >, <=, >= ou <>.

Exemple : compteur > 10 → valide la réceptivité si la variable compteur, de type INT est supérieure à 10

→ FRONTS D'UNE VARIABLE ←

Pour tester le changement d'état d'une variable, il est préférable de programmer la transition en langage LD ou FBD.

Pour ce faire, double-cliquez sur la transition et choisissez LD ou FBD, puis : programmez la transition dans le langage choisi.

Les blocs fonctionnels « R_TRIG » et « F_TRIG » permettent de tester les fronts montant (R : Rising) et descendant (F : Falling) sur une variable.

Exemple : Validation de la transition de « Etape_ »2 vers « Etape_3 » sur front montant de S1 :

IUT Toulon ITII, Cycle Ingénieurs 19/30

Page 20: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

✗ Attributs d'Action : Par défaut le type N est associé aux actions créées, mais on peut définir les types récapitulés dans le tableau suivantsuivant :

Attribut Paramètre Description

N Aucun Action Non mémorisée : L'action est activée lorsque l'étape associée est active, et se désactive automatiquement à la sortie de l'étape.

S, R Aucun Action Mémorisée : l'attribut « S » (Set) permet de mémoriser l'activation de l'action,celle-ci restera active jusqu'à ce que l'attribut « R » (Reset) soit rencontré dans le grafcet sur la même action.

L Duréed'activation :

t#.....

Action limitée dans le temps : L'action est activée à l'entrée dans l'étape, puis désactivée automatiquement au bout du temps, spécifié (ou à la sortie de l'étape).

D Temps deretard :

t#.....

Action Retardée : L'action est activée avec le retard spécifié après l'entrée dans l'étape.

• Après avoir modifier les noms d'action et ajouter une action à l'étape 3, on obtient le grafcet suivant :

✗ Actions Programmées Les actions peuvent également être codées sous forme de programme, dans une des langages CEI normalisés (SFC,LD, FBD, ST, IL). Cela est notamment utile pour :

– Les actions non booléennes (valeurs numériques, gestion d'une sortie analogique...)– Programmer une action conditionnelle de type C

→ ACTION PROGRAMMÉE CONTINUE ←

Pour ajouter une action programmée continue dans programme SFC, cliquer-droit sur le module correspondant etchoisir "Ajouter une Action" :

Ensuite, choisir un des langages de programmation, par exemple LD, puis programmer l'action. Dans l'exemple ci-

IUT Toulon ITII, Cycle Ingénieurs 20/30

Page 21: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

dessous, le programme "Action1" active la sortie "moteur" si les entrées "Capt1" et "Capt2" valent respectivement '1'et '0' :

→ ACTIONS D'ENTRÉE ET DE SORTIE ←

Il est également possible qu'une action programmée ne soit exécutée qu'une seule fois, à l'entrée ou bien à la sortiede l'étape. Cela est par exemple particulièrement utile si l'on veut compter combien de fois l'on passe dans uneétape.Pour cela, cliquer-droit sur l'étape concernée et choisir "Ajouter action d'entrée" ou "Ajouter action de sortie" :L'image de droite montre comment compter le nombre de passage dans l'étape "Step3"; le résultat est stocké dansune variable "CPT" de type INT.

Le "E" apparaissant sur le coin inférieur gauche de l'étape "Step3" représente l'action d'entrée programmée. (Un "S"apparaît dans le coin inférieur droit dans le cas d'une action de sortie).

IUT Toulon ITII, Cycle Ingénieurs 21/30

Page 22: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

4 Test & Implantation du Programme.

Note : Les paramètres de communication sont en principe mémorisés par CoDeSys, cette opération est doncnormalement faite une fois pour toutes pour chaque poste.

• Pour configurer la liaison avec l'automate : → « En ligne » → « Paramètres de communication ».

• Pour créer une nouveau canal de communication : « nouveau », puis nommez le canal (par exemple« Ethernet » :

• Vérifiez le paramètre « Adresse IP » par l'adresse IP de l'automate (192.168.0.'n° poste + 160')

• Décochez l'option simulation dans le menu « En ligne »;

• « Accéder au système » dans le même menu, le programme est alors chargé dans l'automate défini par l'adresseIP entrée dans les paramètres de communication;

• « Démarrer » le programme.

IUT Toulon ITII, Cycle Ingénieurs 22/30

Page 23: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

5 Écrans de Visualisation.

1. PRÉSENTATION.CoDeSys permet de créer des écrans de visualisation. Ces écrans permettent de superviser l'état du système. Une foiscréés, ils peuvent soit être chargés dans le programme, dans ce cas il faut passer par CoDeSys pour y accéder; soitêtre chargés en tant que site Web dans l'API. Dans ce cas, on peut y accéder via n'importe quel navigateur internet.

2. CRÉATION D'UNE VISUALISATION

• Allez dans l'onglet « Visualisation » su navigateur de projet.

• Cliquez-droit sur « modules », puis « insérer objet ».

• Donnez un nom à votre visualisation.

3. AFFICHAGE D'UN BOOLÉEN

On souhaite représenter l'état de la sortie QD ** du compteur suivant sur l'écran de visualisation :

Nous allons représenter cette variable par un rectangle dont la couleur sera rouge si QD est vraie et bleue si QD estfausse.** (QD='1' si CV=0, et QD='0' dans le cas contraire)

• Implantez le compteur ci-dessus dans un projet nommé TP1_Visu.

• Placez un rectangle dans votre visualisation :

IUT Toulon ITII, Cycle Ingénieurs 23/30

Page 24: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

• Double-cliquez sur ce rectangle et allez dans le menu « couleurs » :

• Choisissez le bleu pour la « Couleur » (dedans) et le rouge pour la « Couleur d'alarme » (dedans).

• Associez le changement de couleur à la sortie QD du compteur C1 du programme PLC_PRG :

• Dans « Texte », tapez « état de QD : » .

• Testez votre programme et vérifiez le changement de couleur de l'élément de visualisation lorsque la valeur « 0 »est atteinte par le compteur.

IUT Toulon ITII, Cycle Ingénieurs 24/30

Page 25: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

4. AFFICHAGE D'UNE VALEUR NUMÉRIQUE

On souhaite afficher la valeur courante CV du compteur précédent sur l'écran de visualisation.

• Placez un rectangle dans votre visualisation, puis dans « texte », tapez :

• Allez ensuite dans « Variables » puis dans la zone « affichege de texte », tapez le nom de la variable àafficher (dans notre cas, la sortie CV du compteur c1 du programme PLC_PRG:

• Testez votre programme et vérifiez l'affichage de la valeur du compteur sur la page de visualisation.

IUT Toulon ITII, Cycle Ingénieurs 25/30

Page 26: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

5. ACTION SUR UN BOOLÉEN

On souhaite agir sur l'entrée de préchargement (LOAD) du compteur c1 de notre exemple de la page 14.

• Créez un bouton sur la page de visualisation :

• Double-cliquez sur l'élément positionné sur la page, et dans la rubrique « texte » décrivez la fonctionnalitéqu'aura le bouton (dans notre cas le préchargement d'un compteur)

• Allez ensuite dans la rubrique « entrée » pour choisir la variable sur laquelle agira ce bouton (dans notre cas,l'entrée LOAD du compteur c1 du programme PLC_PRG) :

• Testez votre programme et vérifiez le passage à '1' de l'entrée LOAD du compteur lorsque vous cliquez sur lebouton de la visualisation.

IUT Toulon ITII, Cycle Ingénieurs 26/30

Page 27: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

6. SAISIE D'UNE VALEUR NUMÉRIQUE

On souhaite saisir la valeur de préchargement du compteur c1 de notre exemple de la page 14.

• Placez une forme géométrique sur votre page de visualisation, par exemple un rectangle, et reprenez les étapesdu paragraphe 4 (« affichage d'une valeur numérique ») afin d'afficher PV dans votre visualisation.

• Dans la rubrique « texte », cochez « insérez le texte de variable 'montrer texte' » :

• Testez votre programme et vérifiez la modification de l'entrée PV du compteur lorsque vous la saisissez dansvotre visualisation, et testez le préchargement du compteur.

IUT Toulon ITII, Cycle Ingénieurs 27/30

Page 28: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

7. REPRÉSENTATION GRAPHIQUE D'UNE VARIABLE NUMÉRIQUE

On souhaite afficher une variable du programme PLC_PRG de type INT nommée « var1 », comprise entre -100 et +100, sur un graphe ainsi que sur un vu-mètre.

• Sélectionnez l'outil « tendance » et dimensionnez votre graphe sur la page de visualisation :

• Cliquez sur « sélection des variables », puis chosir la couleur de la courbe et entrez le chemin de la (ou des)variable(s) à afficher :

IUT Toulon ITII, Cycle Ingénieurs 28/30

Page 29: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

• Cliquez ensuite sur « axe verticale », et dans la partie « échelle », définir la plage de valeurs à afficher pour votrevariable (dans notre exemple [-100;+100]) :

• Vous pouvez tester votre programme et observer l'évolution de votre variable sur le graphe.

• Pour afficher cette variable sous forme d'un vu-mettre, sélectionnez l'outil adéquat (« instrument vectorisé ») :

• Cliquez sur « Variable/Echelle » pour configurer l'affichage (dans notre cas de -100 à +100 avec graduationtoutes les 10 unités) :

IUT Toulon ITII, Cycle Ingénieurs 29/30

Page 30: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

IUT Toulon ITII, Cycle Ingénieurs 30/30

Page 31: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII, TP d'automatisme : Modbus RTU-TCP

TP1 : Modbus

Partie A : ModBus RTU - Mise en œuvre de capteurs de Courant

1.Présentation

Une centrale photovoltaïque de production d'énergie électrique est supervisée par un réseau Modbus. Des capteursde courant (Wago 789-620) relèvent les intensités de chaque chaîne de panneaux.

Un contrôleur Wago 750-849, disposant d'une carte RS-485 relève les intensités mesurées par chacun des capteurs.

Le contrôleur permettra de visualiser les différents courants, et d'alerter en cas d'anomalie (sous-production, écartde production trop important entre les différentes string...).

TP d'Automatisme ITII 1/5

Automate (Wago 750-849) - Carte de communication RS-485 (750-653)

Modbus RTU (liaison RS485)

Capteur 2 :Slave ID : 2

Ethernet

Capteur 1 :Slave ID : 1

Capteur 3 :Slave ID : 4

Capteur 4 :Slave ID : 4

Page 32: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII, TP d'automatisme : Modbus RTU-TCP

2.Préparation

1. Rappelez les caractéristiques de la couche physique RS-485, et les apports par rapport à la RS-232.

2. D'après la documentation du capteur (Wago 789-620), Indiquez quels doivent les positions des DIP-switchspour chacun des capteurs.

3. Donnez les trames, sous forme hexadécimale, permettant de lire dans les capteurs.

4. Donnez le nombre de bits total échangés lors d'une question/réponse pour la lecture du courant.

5. Avec quel débit binaire (exprimé en Bauds, équivalent dans notre cas à des bits par secondes) communiquentces capteurs ?

6. Déduire des deux réponse précédente la durée minimale nécessaire à une lecture. Durée = [ Nombre total de bits échangés lors d'une question-réponse ] / [ Débit binaire ]

Note : Il existe en réalité des "temps morts" dans la communication, ce qui nous imposera de majorer le tempsprécédemment défini.

7. Sur combien de bits est codée une variable de type « REAL » ?

8. A combien de cases mémoires de type « WORD » cela correspond-il ?

9. Soient les variables « Courant1 » et « Courant2 » de type « REAL ». Proposez une déclaration pour ces deuxvariables, de façon à ce qu’elles occupent dans le plan mémoire de l’API une zone la plus petite possible.

3.Cahier des charges

Le travail à réaliser consiste à créer une application sur le contrôleur Wago 750-849 permettant la lecture descourants délivrés par les capteurs de l'installation, et réaliser une interface graphique de visualisation qui doitpermettre :

• D'afficher la valeur du courant (en ampères) mesuré par chacun des capteurs• De représenter sur un graphe déroulant l'évolution des différents courants mesurés avec un historique de

20s• D'activer un voyant d'alarme si l'écart entre 2 courants est supérieur à 0,5A pendant plus de 15s (signifie

qu'il y a un ombrage persistant sur un panneau solaire)• D'activer un second voyant d'alarme si le courant produit est inférieur à 3,5A en journée (entre 8h et 19h).

4. Ressources

• Documentation des capteurs de courant Wago 789-620• Aide sur l'utilisation du configurateur Modbus de CoDeSys• Document de prise en main de CoDeSys• Cours

TP d'Automatisme ITII 2/5

Page 33: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII, TP d'automatisme : Modbus RTU-TCP

Partie B : ModBus TCP – Analyse de trames

1.Présentation

On se propose d'étudier la supervision du site de production d'énergie photovoltaïque, à travers le protocoleModbus TCP. L’API est relié à un réseau Ethernet. Nous allons réaliser une pré-étude en définissant les tramesModbus TCP qui pourront être utilisées pour la mise en place d'une supervision de ce système.

Nous utiliserons pour cela le logiciel libre "Modscan32", qui permet d’émettre des trames Modbus TCP et derecevoir les réponses correspondantes.

2.Présentation de Modscan32

Modscan 32 est un utilitaire gratuit permettant de simuler un client Modbus sur PC. Il peut s'avérer très utile (aumême titre que d'autres logiciels équivalents) pour tester le matériel Modbus, valider les fonctions decommunication lors de la mise en place d'un projet.

• Écran principal :

TP d'Automatisme ITII 3/5

Adresse des données à lire. !!! Attention : les adresses commencent à '1' alors que les registres modbus sont adressées à partir de '0' → décalage de 1.

Quantité de données à afficher

Type de données Modbus à afficher

Données lues

Page 34: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII, TP d'automatisme : Modbus RTU-TCP

• Écran de connexion :

• Menu « Connexion » → « Connect »

« Remote TCP/IP Server » pour Modbus TCP :

« Com 1......10 » pour modbus série (RTU notamment) :

TP d'Automatisme ITII 4/5

Page 35: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII, TP d'automatisme : Modbus RTU-TCP

• « Setup » → « data definitions » pour choisir le type de requête de lecture :

• « Setup » → « display options » pour choisir le format d'affichage :

3.Travail à réaliser

1. Dans le projet Codesys précédemment réalisé : Stocker les valeurs des courants mesurés (du projetprécédent) dans des adresses mémoires contiguës.

2. Sur Modscan32 : Émettre les requêtes de lecture permettant de lire ces valeurs, et visualiser les donnéeslues.

3. Visualisez, relevez et interprétez les trames de requête/réponse correspondantes en mode « traffic ».

TP d'Automatisme ITII 5/5

Pour afficher les trames

Page 36: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

Automatismes – cycle ingénieur ITII

TP2 : Portail automatisé

1. Présentation du système.La partie opérative à automatiser portail à battants motorisé :

Chacun des deux battants est actionné par un vérin électrique (1) entraîné par un moteur à courant continu, et est muni d'un codeur incrémental (délivrant 350 impulsions sur la course du vérin) permet de connaître sa position angulaire.Une balise lumineuse clignotante (4) signale lorsque le portail est en mouvement.Une télécommande radio (6) permet de piloter le portail selon les modes suivants :

- Voiture : ouverture des deux battants, avec un léger décalage afin d'éviter le blocage ;

- Piéton : ouverture du battant droit seul

- Apprentissage : Détection des positions des butées lors de l'installation du portail.

Enfin, une cellule photo-électrique (2) interrompt les mouvements en cours si une présence est détectée entre les bornes émettrice et réceptrice.

• Partie commande.

- API : Wago 750-849 (adresse IP : 192.168.0.167)

- Carte 8 sorties TOR : 750-530

- Carte de comptage : 750-638

- Carte 4 entrées TOR : 750-432

- Carte 2 entrées analogiques pour mesure de courant : 750-475/0020-0000

Page 37: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Portail Automatisé Automatismes

• Liste des Entrées/sorties du système.

Mnémonique : Adresse : Fonction :

PVG %Q4.0 Commande de la petite vitesse du battant gauche (grande vitesse si PVG='0')

FG %Q4.1 Fermeture du battant gauche

OG %Q4.2 Ouverture du battant gauche

PVD %Q4.3 Commande de la petite vitesse du battant droit (grande vitesse si PVD='0')

FD %Q4.4 Fermeture du battant droit

OD %Q4.5 Ouverture du battant droit

SECU %Q4.6 Commande du relais d'alimentation général des sorties

LUM %Q4.7 Balise lumineuse (active à 0V)

PosG %IW1 Mesure de position du battant gauche : 0 < PosG < 350 (à déclarer dans PLC_PRG)

PosD %IW3 Mesure de position du battant droit: 0 < PosD < 350 (à déclarer dans PLC_PRG)

CEL %IX6.0 Cellule photo électrique

Voit %IX6.1 Commande d'ouverture / fermeture en mode "voiture"

Piet %IX6.2 Commande d'ouverture / fermeture en mode "piéton"

RAZG %QX0.5 Remise à zéro de la position gauche

RAZD %QX2.5 Remise à zéro de la position droite

Img %IW4 Mot image du courant absorbé par le moteur gauche

Imd %IW5 Mot image du courant absorbé par le moteur droit

2. Préparation :Les moteurs de chacun des battants peuvent être pilotés en grande vitesse (moteur correspondant alimenté en 24 V) ou en grande vitesse (moteur alimenté en 14V).Le choix du sens de rotation se fait par inversion de la tension d'alimentation du moteur : Un battant s'ouvre lorsque son moteur est alimenté positivement, et se ferme lorsque ce dernier est alimenté négativement.Enfin, un relais de sécurité permet une coupure générale (des deux moteurs).

Les schémas ci-dessous représente les parties « commande » et « puissance » du pilotage des moteurs du système :

• Partie Commande :

2/4

…. …. ….  …. …. …. ….

Page 38: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Portail Automatisé Automatismes

• Partie Puissance :

1. Reportez sur le schéma de la partie « commande », les variables de sortie de l'API (OG , OD, PVG, PVD, SECU,OD, FD) afin que le système puisse répondre au fonctionnement demandé.

Le fonctionnement normal du système est le suivant :- A l'état initial, le portail est supposé fermé.

- Un appui sur le bouton d'ouverture "Voit" de la télécommande provoque l'ouverture complète du portail, légèrement décalée au niveau des battants : le gauche commence à s'ouvrir jusqu'à atteindre la position PosG=100, le battant droit débute alors son ouverture en parallèle.

- Une fois le portail ouvert, un second appui sur "Voit" provoque la fermeture, qui se déroule de façon similaire mais en commençant par le battant droit.

- Depuis l'état initial, l'utilisateur peut également choisir le mode piéton dans le quel seul le battant gauche est géré, et dont l'ouverture est limitée à mi-course (PosG=175).

Quel que soit le mode de fonctionnement, le démarrage et l'arrêt se font en petite vitesse afin de limiter les contraintes mécaniques sur le portail. Le démarrage et l'arrêt d'un battant correspondent respectivement aux 50 premières et dernières impulsions délivrées par le codeur.

Pour déceler une ouverture ou fermeture totale d'un battant (butée) on détectera un pic de courant ( IMG,D>3A). Attention cette détection sera suffisamment rapide pour ne pas déclencher la SECU !

2. Établir le grafcet correspondant à ce fonctionnement en langage SFC.

3/4

Page 39: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Portail Automatisé Automatismes

3. Sécurités de fonctionnement.

1. Créez un projet CoDeSys correctement configuré, déclarez les E/S nécessaires dans la configuration del'automate.

Une mesure des courants consommés par les moteurs du portail est effectuée afin de protéger ceux-ci en cas desurintensité (blocage d'un battant par exemple). Si le courant absorbé par l'un des moteurs dépasse 2 A pendant2s ou bien 1,5 A pendant 35s, la sortie « SECU » est désactivée, ce qui provoque la mise hors tension des moteurs.

Le réarmement de la sortie sécurité doit se faire lorsque le bouton piéton ou voiture est enfoncé.

Les mots Img et Imd évoluent entre 0 et 32760 lorsque les courants mesurés correspondant varient de 0 à 5A.

Par ailleurs, la cellule photo électrique doit bloquer tout mouvement du portail lorsqu'un objet ou une personneest détectée.

2. Programmez le fonctionnement décrit ci-dessus dans le programme principal (langage CFC).

3. Créez un programme principal en langage CFC, et implantez le programme ci-dessus gérant la sortie « SECU »du système en fonction des intensités mesurés sur les moteurs. !!! Appelez l'enseignant avant de tester !!!.

4. Modifiez de façon empirique les seuils de courant données dans le cahier des charges. Une arrivée en butée enpetite (à fortiori en grande) vitesse devra déclencher la sortie « SECU » alors qu'un mouvement normal engrande (à fortiori petite) vitesse ne devra pas la déclencher !

4. Fonctionnement normal.

5. Créez un programme SFC traduisant le fonctionnement du mode « Piéton » de la préparation. Appelezl'enseignant avant de tester.

6. Une fois le mode précédent validé, programmez le mode « Voiture ». Appelez l'enseignant avant de tester.

5. Signalisation.

7. Ajoutez la bibliothèque "Util.lib" à votre projet, puis pilotez la balise lumineuse conformément au cahier descharges, en utilisant la fonction "BLINK" dans le programme principal.

6. Visualisation.On souhaite pouvoir superviser et commander à distance le portail via une page graphique (qui pourraéventuellement être rendue accessible sur internet via le serveur Web de l'API).

Cette page doit permettre :

- L'affichage sur deux vu-mètres des positions des deux battants en degrés ;

- L'affichage sur deux jauges les valeurs des deux courants moteurs en ampères ;

- La visualisation d'une alarme (changement de couleur d'une forme) lorsqu'un seuil de courant (butée) estatteint ;

- La visualisation d'une alarme (clignotement d'une forme) lorsque la sécurité est déclenchée ;

- Le déclenchement distant de l'ouverture/fermeture (modes voiture et piéton) via deux boutons sur la page.

8. Créez la page de visualisation demandée et apportés les modifications nécessaires au programme (calculs ducourant en Ampères et de la position en degrés, prise en compte des ordres de commande distants)

4/4

Page 40: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

Automatismes – cycle ingénieur ITII

TP 3 : Tracker Solaire

1. Présentation du système.

•Introduction :

Le système à commander est basé sur le pricnipe du « tracker solaire » qui consiste à optimiser la récupération du

rayonnement solaire par des panneaux photovoltaïques en suivant la course du solaire au cours de la journée.

Diverses technologies existent (1 ou 2 axes de rotation, suivi en boucle ouverte ou boucle fermée...). La quantitéd'énergie récupérée peut ainsi être nettement supérieure à celle obtenue avec un panneau fixe (gains de l'ordre de20 à 30%).

On étudiera à travers ce TP un module destiné à fournir une alimentation autonome avec stockage 24Vcc à uneinstallation électrique TBTS (type éclairage par exemple). L'énergie est donc produite à partir d'un panneauphotovoltaïque qui est connecté à un régulateur permettant la charge de batteries.

1 – Panneau photoviltaïque

2 – Capteur potentiométrique + codeur incrémental pour la mesure de position

3 – Axe de rotation

4 – Coffret de commande (API + batteries)

Page 41: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Tracker Solaire Automatismes

•Description de la partie commande.

Désignation : Référence : Rôle :

API 750-841 (..FW12) exécute le programme d'automatisation et assure lasupervision du système. Adresse IP : 192.168.0.168

Carte 4 entrées TOR 750-432 fournit au programme l'état des détecteurs présentssur la P.O

Carte 8 sorties TOR 750-530 Permet de commander l'éclairage, le choix de lamesure de batterie, le basculement de l'alimentation

Carte de commande moteur 750-636 Pilote le moteur afin de positionner l'axe du panneausolaire entre -60° et +60°. Réalise également unemesure de position via un codeur incrémental.

Carte 2 entrées analogiques 0-5A 750-475/0020-0000 Assure la mesure du courant de charge des batteries,ainsi que le courant consommé par le dispositifd'éclairage.

Carte 2 entrées analogiques 0-30V 750-483 Permet de mesurer la tension aux bornes desbatteries ainsi que la tension délivrée par le capteurde position angulaire.

•Liste des Entrées/sorties du système.

Mnémonique : Adresse : Fonction :

FC_OUEST %IX0.14 Fin de course : axe en butée Ouest

FC_EST %IX0.15 Fin de course : axe en butée Est

Sel_bat %QX3.0 Commande du relais de sélection de la batterie à mesurer (tension)

Sel_source %QX3.1 Commande du relais de sélection de la source d'énergie à utiliser pourl'éclairage (batteries ou réseau)

L1 %QX3.2 Commande de la lampe 1

L2 %QX3.3 Commande de la lampe 2

Depl_OUEST %QX0.0 Mise en rotation du moteur : déplacement du panneau vers l'OUEST

Depl_EST %QX0.1 Mise en rotation du moteur : déplacement du panneau vers l'EST

V_bat %IW5 Mesure de la tension aux bornes des batteries

V_pos %IW6 Mesure de la tension aux bornes du potentiomètre de position.

Imot %IW3 Mesure du courant consommé parle moteur

Iecl %IW4 Mesure du courant consommé par l'éclairage

Codeur %IW1 Comptabilise les impulsions du codeur (env +/- 1 par degré)

2/6

Page 42: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Tracker Solaire Automatismes

• Schéma des parties commande et puissance :

2. Cahier des charges.

•Positionnement du panneau :

Pour la phase de test correspondant au TP, le positionnement sera géré de la manière suivante :

– A la mise sous tension, une phase d'initialisation va permettre au système de déterminer les positionsangulaires correspondant aux butées Est et Ouest :

– Le panneau est mis en rotation jusqu'en butée Est. Lorsque la butée est atteinte, après 1sd'attente, les valeurs de « Codeur » et de « Vpos » sont mémorisées respectivement dans VPOS_MIN

et CMIN ;– Le panneau est ensuite mis en rotation jusqu'en butée Ouest. 1S après que la butée aie étéatteinte, les valeurs de « Codeur » et de « Vpos » sont mémorisées respectivement dans VPOS_MAX

et CMAX ;

– Le cycle normal de fonctionnement va ensuite se dérouler (jusqu'à ce que le système soit mis hors tension) :

– Le système attend que l'heure de début de journée soit atteinte (pour les besoins du TP, onprendra l'heure du PC au moment du chargement du programme + 1 mn) – Toutes les 20s, la panneau effectue une rotation de 15° vers l'ouest.– Le système revient en position initiale lorsque la butée Ouest est atteinte.

•Mesure de la tension des batteries :

Le programme mesure sur la même entrée analogique, tour à tour (toutes les 2,5s), la tension aux borne de labatterie 1, puis de la batterie 2.

3/6

Page 43: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Tracker Solaire Automatismes

•Supervision :

Un écran de visualisation permet de superviser :

– L'état de charge des batteries, en affichant sous forme de jauge la tension (en volts) présente aux borne dechacune des batteries;

– Le courant consommé par le moteur, en affichant sous forme de graphe déroulant ces valeurs (en Ampères).

– La signalisation d'un défaut sur la mesure de position (voyant rouge)

3. Préparation.

1. Établir le grafcet "G_suivi" de positionnement du panneau, conformément au fonctionnement décrit dans lecahier des charges.

Le tableau suivant décrit le comportement des entrées:

Plage de valeurs à mesurer Plage des valeurs délivrées par la carte d'entrées analogiques

-60° < Position angulaire < +60° Vpos_MIN < %IW6 < Vpos_MAX

0V < Tension batteries < 30V 0 < %IW5 < 32767

0A < Courant < 5A 0 < %IW3 < 32767

Plage de valeurs à mesurer Plage des valeurs délivrées par le codeur

-60° < Position angulaire < +60° CMIN < %IW1 < CMAX

2. En vous aidant de ce tableau, établir les relations entre les mot d'entrée des cartes analogiques et...–la position angulaire (en degrés) de l'axe de rotation du panneau

–la tension des batteries,

–les courants (batterie et lampes)

Ces relations sont de la forme : Valeur_a_mesurer = a x Mot_d_entrée + b

3. Faire la même chose pour la relation entre le codeur incrémental et la position angulaire.

4/6

Page 44: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Tracker Solaire Automatismes

4. Programmation.

1. Créez un projet CoDeSys correctement configuré, avec la configuration et les mnémoniques indiqués en page2, et un programme principal en langage CFC. Transférer ce programme vide dans l'automate et tester lebon fonctionnement de toutes les entrées et sorties du système.

La structure finale programme principal, sera la suivante :

•Le programme "calc_pos" (langage ST) calcule, dans une variable "Pos" au format "REAL", la position angulaire dupanneau en degrés à partir de la tension délivrée par le capteur de position potentiomètrique, en utilisant larelation trouvée à la question 2 de la préparation. Il calcule aussi dans la variable "Pos_Codeur" cette mêmeposition mais cette fois à partir des informations fournies par le codeur.

Lorsque la différence entre les deux mesures est supérieure à 5 %, la sortie booléenne « erreur » s'active, ce quiaura pour effet de stopper le déplacement du panneau.

•Le bloc fonctionnel G1 (langage SFC) gère le positionnement du panneau (point 1 du cahier des charges) :initialisation + fonctionnement normal.

•Le bloc fonctionnel G2 (langage SFC) commute le relais de sélection de la batterie à mesurer, afin d'aiguilleralternativement l'une ou l'autre des tensions (aux bornes de B1 et B2) vers l'entrée analogique EA1. Ceprogramme permet en outre de stocker dans 2 variables Vbat1 et Vbat2 (format REAL) les tensionscorrespondantes en volts. (point 2 du cahier des charges).

•Les blocs '4' et '0' permettent de récupérer la variable d'horodatage de l'API et d'en extraire l'heure du jour.

2. Créez le programme "calc_pos" en langage ST, et implantez le calcul conformément au cahier des charges. Appelez ce programme dans PLC_PRG, chargez le programme dans l'API et validez son fonctionnement.

3. Créez le programme "suivi_soleil" en langage SFC, et implantez le grafcet conformément au cahier descharges. Appelez ce programme dans PLC_PRG, chargez le programme dans l'API et validez sonfonctionnement.

4. Créez le programme "Mesure_batt" en langage SFC, et implantez le grafcet conformément au cahier descharges (les calculs seront réalisés dans des étapes d'entrée en langage ST - cf document de prise en main). Appelez ce programme dans PLC_PRG, chargez le programme dans l'API et validez son fonctionnement.

5/6

Page 45: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII Tracker Solaire Automatismes

2. Supervision.

L'objectif de cette partie est de représenter les valeurs utiles (tension des batteries, courant de charge et courantconsommé) à l'écran. La supervision à créer aura l'allure suivante :

1. En vous aidant du dernier chapitre du document de prise en main, et de l'aide de CoDeSys, créer cette pagede visualisation (point 4 du cahier des charges).

6/6

Page 46: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

Automatismes – cycle ingénieur ITII

TP4TP4 : Tri Postal: Tri Postal

1. 1. PPRÉSENTATIONRÉSENTATION DUDU SYSTÈMESYSTÈME..La partie opérative à automatiser est un système de tri postal. Les colis sont identifiés par un numéro lu sur unQR-code, puis convoyés et aiguillés vers trois destinations possibles, deux destinations perpendiculaires auconvoyeur et la dernière en fin de bande transporteuse. L’évacuation des colis ainsi que leur chargement sur la bande transporteuse est assurée par des vérinspneumatiques.La bande transporteuse est mue par un moteur asynchrone triphasé piloté par un variateur de vitesse ATV11.L’ensemble des capteurs et actionneurs sont connectés sur un bus AS-i alors que le lecteur de QR Codes estdirectement accessible sur le réseau.

• Le tri des colis suivant sera adopté :

- Les colis destinés à TOULON ou LA VALETTE sont aiguillés vers le 1° bac,

- Les colis destinés à SIX FOURS LES PLAGES vers le second bac,

- Les autres atterrissent dans le bac en fin de convoyeur.

IUT de Toulon Département GEII LP AII - S1

Page 47: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII - TP : Tri postal - Automatisme

• Liste des entrées/sorties du système:

Description SymboleVérin (1) de poussée vers le poste de lecture (Action / Sortie) v_1A

Fin de course du vérin 1 (Capteur / Entrée) fc_1S1

Vérin (2) de Tri vers le 1° bac (Action / Sortie) v_2A

Fin de course du vérin 2 (Capteur / Entrée) fc_2S1

Vérin (3) de Tri vers le 2° bac (Action / Sortie) v_3A

Fin de course du vérin 3 (Capteur / Entrée) fc_3S1

Mise en marche du convoyeur (Action / Sortie) MA

Arrêt d'urgence (Capteur / Entrée) AU

Détecteur IR : Présence Colis au poste de lecture de code SLC

Détecteur IR : Présence Colis au poste de chargement SPC

Détecteur IR : Le front descendant de ce détecteur indique la Présence d'un Colis en face du bac 1 SPE1

Détecteur IR : Le front descendant de ce détecteur indique la Présence d'un Colis en face du bac 2 SPE2

• La partie commande comporte :

– Contrôleur Wago 750-841 (FW12), adresse IP : 192.168.0.163, muni :

– 1 carte « coupleur ASi » : 750-655 (12 octets)

– 1 carte de laison série RS232 C pour la lecture de code-barre (non utilisée ici, mais àconfigurer néanmoins) : 750-650/0003-0000#05

2. 2. PPRÉPARATIONRÉPARATION

Q1) Établir sur papier le Grafcet de fonctionnement normal GP. Deux variables d'entrée du programme nommée« Bac1 » et « Bac2 » de type « BOOL » valident l'aiguillage vers l'un de ces bacs.

Q2) Calculez les adresses CEI des entrées/sorties de l'API pilotant les différents capteurs/actionneurs connectéssur le bus Asi.

IUT de Toulon ITII 2/5

Page 48: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII - TP : Tri postal - Automatisme

3. 3. LLECTUREECTURE DUDU QR C QR CODEODE

Le code QR est un type de code-barres en deux dimensions (ou code matriciel datamatrix) constitué de modulesnoirs disposés dans un carré à fond blanc. L'agencement de ces points définit l'information que contient le code.

QR (abréviation de Quick Response) signifie que le contenu du code peut être décodé rapidement après avoir étélu par un lecteur de code-barres, un téléphone mobile, un smartphone, ou encore une webcam. Son avantage estde pouvoir stocker plus d'informations qu'un code à barres 1, et surtout des données directement reconnues pardes applications, permettant ainsi de déclencher facilement des actions

source : fr.wikipedia.org/wiki/Code_QR

Caméra industrielle utilisée dans ce TP pour lire le QRCode : Sensopart FA46

Les colis transités par le convoyeur possèdent tous un QR Code qui décrit le code postal et la ville de destination.

Q3) Créez un nouveau projet correctement configuré.

Q4) Acquisition manuelle du QR code :La caméra sensopart FA 46 diffuse le code acquis sur le port 2005. son adresse IP est 192.168.0.199.Placer un QR Code sous le champ de la caméra (front descendant du capteur de position SLC) et acquérir le codeavec la commande telnet. Comparer avec le résultat que donne votre smartphone.

Q5) Acquisition automatique du QR Code :Réaliser un programme implémenté sur un automate de type WAGO pour lire et afficher ce QR Code. Ajouter labibliothèque « WagoLibEthernet.lib »à votre projet , et implantez le bloc suivant dans le programme principal :

Ce bloc permet de créer un client tcp sur l’automate, qui nous permettra d’aller lire le QR-Code vu par le capteur.

Q6) Définir le type et le rôle de chaque entrée/sortie de ce bloc (la première lettre du nom indique le type, la suitele rôle).

Q7) Paramétrez ce bloc de façon à récupérer le QR code.

IUT de Toulon ITII 3/5

Page 49: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII - TP : Tri postal - Automatisme

3. G3. GESTIONESTION DUDU BUSBUS A ASISI ETET ADRESSAGEADRESSAGE DESDES E/S. E/S.Les esclaves ASi sont adressés de la manière suivante :

• Esclave 1 : Module 4E/4S TOR– OUT0 : M_A (mise en marche du convoyeur)

• Esclave 2 : Module 4E TOR– IN0 : SLC (Présence Colis au poste de lecture de code)– IN1 : SPE1 (Présence Colis en face du bac n°1)– IN2 : SPE2 (Présence Colis en face du bac n°2)– IN3 : SPC (Présence Colis au poste de chargement)

• Esclave 3 : Distributeur électro-pneumatique 4S TOR (vérins) + 4E TOR (fins de course)– IN0 : (N.C)– IN1 : fc_1S1 (fin de course vérin 1)– IN2 : (N.C)– IN3 : fc_2S1 (fin de course vérin 2)– OUT0 : v_1A (sortie vérin 1)– OUT1 : v_2A (sortie vérin 2)– OUT2 : v_3A (sortie vérin 3)

• Esclave 4 : Module 4E TOR– IN0 : (N.C)– IN1 : fc_3S1 (f.c vérin 3)–

– IN2 : (N.C)– IN3 : AU (arrêt d'urgence (NF))

Q8) Déclarez dans les variables globales du projet (onglet « ressources »), les capteurs et actionneurs ci-dessus,aux adresses CEI déterminées dans la préparation.

IUT de Toulon ITII 4/5

f.c

f.c

A.U

Page 50: Fascicule de TP - neanne.univ-tln.frneanne.univ-tln.fr/IMG/pdf/fasciculetp_itii_2017.pdf · Fascicule de TP Prise en Main de Codesys : ... \Program Files\WAGO Software\CoDeSys

ITII - TP : Tri postal - Automatisme

4. P4. PROGRAMMATIONROGRAMMATION DEDE LALA SÉQUENCESÉQUENCE DEDE TRITRI..Q9) Créez un sous programme « TRI » en langage SFC.

Q10) Déclarez les noms symboliques du tableau page 15 aux adresse adéquates déterminées à la question Q23)comme variables internes de votre sous programme, en utilisant la syntaxe suivante:

Q11) Définir les variables d'entrée de votre sous programme qui vont vous permettre de récupérer les valeursbooléennes relatives à l'aiguillage des colis générées en Q21).

Q12) Programmez le grafcet correspondant à la séquence de tri des colis, et synchronisez-le avec la séquence delecture du QR code.

Q13) Appelez votre sous programme « TRI » depuis le programme principal, et reliez-le aux autres éléments.

Q14) Chargez votre programme dans le contrôleur et ajustez votre programme afin d'obtenir un fonctionnementacceptable (ajout d'étapes d'attente lorsque cela est nécessaire etc...)

5. G5. GESTIONESTION DEDE LL'A'ARRÊTRRÊT DD'U'URGENCERGENCE..

Nous allons dans cette partie réinitialiser le grafcet lorsque l'arrêt d'urgence est enclenché.

Q15) En étudiant le schéma électrique du système, indiquer si la coupure des actionneurs est gérée parl'automate. Selon vous pourquoi ?

Les variables drapeau permettent d'agir sur un programme SFC pour le figer, le ré-initilaiser etc...

Q16) En utilisant l'aide de CoDeSys, donnez le nom de la variable drapeau permettant de remettre à zéro ungrafcet.

Q17) Programmez la gestion de l'arrêt d'urgence en utilisant cette variable drapeau.

6. V6. VISUALISATIONISUALISATION..Nous allons dans cette partie créer une page de visualisation offrant les principales informations du programme :

– État des capteurs et des actionneurs

– Comptage des colis dans chacun des bacs

– N° du colis en cours de traitement

– Temps de fonctionnement du tapis

Q18) Créez la page de visualisation demandée, ainsi qu'un sous-programme permettant les comptage des colis etdu temps de fonctionnement du tapis.

IUT de Toulon ITII 5/5