Date post: | 23-Jun-2015 |
Category: |
Documents |
Upload: | moha-belkaid |
View: | 218 times |
Download: | 3 times |
Communication Modbus WAGO- P.DREZET - 1 -
Communication Modbus
WAGO – ATV 31
Communication Modbus WAGO- P.DREZET - 2 -
Communication Modbus
WAGO – ATV 31
1. Matériel : Borne d’interface série RS 485 : 750-653 Le coupleur met les données à la disposition du bus. Le système de communication module-coupleur est indépendant du bus et travaille en full duplex à une vitesse de 19200 bauds. Cette borne est d’une très grande rapidité, elle offre une séparation galvanique parfaite et une très grande protection contre les perturbations. Le blindage est directement connecté au rail.
Borne à configurer avec logiciel
Communication Modbus WAGO- P.DREZET - 3 -
Communication Modbus
WAGO – ATV 31
2. Schéma de câblage borne 750-653 :
Communication Modbus WAGO- P.DREZET - 4 -
Communication Modbus
WAGO – ATV 31
3. Configuration avec le logiciel WAGO IO Check 2 :
Lancer le logiciel Connecter le contrôleur 750-841 au PC par le cordon série
Node Configuration montre une image de l’application
Borne d’interface série RS 485 : 750-653 003-000
Communication Modbus WAGO- P.DREZET - 5 -
Communication Modbus
WAGO – ATV 31
Clic droit sur la borne :
Settings pour configurer la borne
4. Programmation dans CoDeSys :
4.1 Configuration de l’automate : Clic sur l’icône Ressources
Configuration de l’automate Hardware configuration Clic droit sur K-Bus Ajouter sous élément
Communication Modbus WAGO- P.DREZET - 6 -
Communication Modbus
WAGO – ATV 31
Cliquer sur Serial Interface pour obtenir le liste des bornes RS 485 750-653
Bornes non configurables
Bornes configurables
Communication Modbus WAGO- P.DREZET - 7 -
Communication Modbus
WAGO – ATV 31
4.2 Bibliothèque CoDeSys avec fonction Modbus :
Fenêtre et Gestion des bibliothèques
Dans la fenêtre Gestion des bibliothèques clic droit sur la fenêtre haut à gauche :
Cliquer sur Insérer Autres bibliothèques Une fenêtre de navigation apparaît :
Communication Modbus WAGO- P.DREZET - 8 -
Communication Modbus
WAGO – ATV 31
Sélectionner le fichier Modb_105 qui correspond aux fonctions Modbus Master et Slave
MODBUSMASTER_RTU : Bloc fonctionnel qui permet de gérer une borne d’interface série en tant que maître Modbus RTU MODBUSSLAVE_RTU : Bloc fonctionnel qui permet de gérer une borne d’interface série en tant qu’esclave Modbus RTU
Communication Modbus WAGO- P.DREZET - 9 -
Communication Modbus
WAGO – ATV 31
Programmation :
4.3 Création d’un sous programme Modbus : Fichier Nouveau Paramétrage du contrôleur
Après avoir crée un programme principal PLC_PRG clic droit sur Modules puis Insérer objet
Donner un nom au sous programme et langage en ST (Texte structuré)
Communication Modbus WAGO- P.DREZET - 10 -
Communication Modbus
WAGO – ATV 31
Programme Modbus :
Nom du sous programme Modbus en ST
Fonction Modbus maître : MODBUS_MASTER_RTU
Code fonction 3 en Modbus : Lecture de n mots consécutifs
Adresse de l’esclave : 1
Lancement d’une requête de lecture
Quantité de mots lus
Adresse de départ : Ex : mot 8604 vitesse de sortie
Tableau de valeurs
Communication Modbus WAGO- P.DREZET - 11 -
Communication Modbus
WAGO – ATV 31
ModbusMaster ( bCOM_PORT:= 2, (* Numéro de la borne RS, en commençant à 2 (le port 1 est la prise console) *) cbCOM_BAUDRATE:= BAUD_19200, (* Débit *) cpCOM_PARITY:= PARITY_EVEN, (* Parité *) csCOM_STOPBITS:= STOPBITS_1, (* Bits de Stop *) cbsCOM_BYTESIZE:= BS_8, (* Bits de données *) cfCOM_FLOW_CONTROL:= HALFDUPLEX, (* Half duplex = Liaison 2 fils *) TimeOut:= t#500ms, (* Temps au bout duquel on considère qu'on ne recevra plus de réponse *)
StartFunction:= Start, (* Faire passer cette variable à TRUE pour l'émission d'une nouvelle trame. Elle repasse à FALSE lorsqu'un résultat est disponible *)
Query:= Query[Index], (* Tableau de requêtes *) Response:= Response, (* Variable structurée qui contient la réponse *) ); IF NOT Start (* Si un résultat est disponible *) THEN IF ModbusMaster.MB_Error = 0 (* Test du code d'erreur *) THEN (* Pas d'erreur *) CptOk := CptOk+1; (* Compteur de trames OK *) CASE Index OF 0 : RFRD_VitesseSortie := Response.Data[0]; ERRD_CodeDefaut := Response.Data[2]; 1 : ETA_MotEtat := Response.Data[0]; RFR_FrequenceSortie := Response.Data[1]; LCR_CourantMoteur := Response.Data[3]; ETI_MotEtatEtendu := Response.Data[5]; END_CASE ELSE CptNok := CptNok+1; (* Compteur de trames NOK ou sans réponse (timeout) *)
Communication Modbus WAGO- P.DREZET - 12 -
Communication Modbus
WAGO – ATV 31
END_IF Start := TRUE; Index.0 := NOT Index.0; END_IF 5. Programme de conversion: Module Clic droit Insérer objet Crée un programme en CFC
Communication Modbus WAGO- P.DREZET - 13 -
Communication Modbus
WAGO – ATV 31
Exemple de conversion du courant moteur lu dans le variateur : (LCR_CourantMoteur)
6. Visualisation : Exemple de visualisation de courant moteur :
Clic sur instrument vectorisé
Configuration de l’instrument vectorisé :
Communication Modbus WAGO- P.DREZET - 14 -
Communication Modbus
WAGO – ATV 31
Choisir :
- le type de flèche - la couleur de la flèche - variable/échelle
Configurer les zones de couleur :
Echelle et graduation
Affecter à l’instrument une variable : Pour l’exemple courant, le mot variateur 3204 est affecté à W_LCR_CourantMoteur