ARS3 : MODBUS Département GEII – Année universitaire 2011-2012.

Slides:



Advertisements
Présentations similaires
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
Advertisements

LIAISON MODBUS.
CHAftITREI ARCHITECTURE de BASE. Modèle de Von Neumann Langage d’assemblage1 John Von Neumann est à l'origine d'un modèle de machine universelle de traitement.
SRT 2 NTP. Nécessité ● Les ordinateurs utilisent des horloges à quartz – Peu de précision – Tendance à dériver – Parfois plusieurs secondes par jour.
Présentation LabPlus v3. Solution novatrice en Technologies de l’information Solution novatrice en Technologies de l’information Application pour la Gestion.
Logiciel Assistant Gestion d’Événement Rémi Papillie (Chef d’équipe) Maxime Brodeur Xavier Pajani Gabriel Rolland David St-Jean.
Adressage IP Page 1 L’adressage IP.
Codage et Protection contre les Erreurs M1/M2 ISV M2 IPS 2006/2007 Neilze Dorta UFR Mathématiques et Informatiques - Crip5.
Cahier des charges.
Les Réseaux informatique.
Communication série Le matériel Concepts généraux
ARCHITECTURE RESEAUX.
Ethernet TCP/IP.
MENUS PRINCIPAL RESEAU.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Le modèle TCP/IP Présentation Couche Interface-Réseau Couche Réseau
Support et Maintenance SIAN : MDEL partenaires
ATS8500 Standalone Downloader.
show dialer interface bri
Technologie wifi.
LAN Médias cch_ccnp.
SNET: Administration et sécurisation des réseaux EPFC Alain Smets
CCNP Routage Chapitre 4 - Questionnaire N°1
Table passage en caisse
Les Bases de données Définition Architecture d’un SGBD
SNMP - Comment calculer l'utilisation de la Bande passante
Algorithmique demander jeu du pendu.
Ajouter le code dans une page html
Initiation aux bases de données et à la programmation événementielle
Système DALI Mael JENNY
introduction à TCP seuls certains aspects du protocole seront traités
ADMINISTRATION RESEAU
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Configuration de Voice VLAN
Asynchronous Javascript And Xml
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Codification et Représentation de l’information
Projet PPE SISR.
Modèle OSI.
Présentation des EJB Enterprise Java Beans.
Direction commerciale
Les Réseaux Informatiques
QoS - Configuration de COPS pour RSVP
Introduction aux réseaux de communication industriels
En 1978, Pico Electronics une petite entreprise de Glenrothes (Ecosse) finalise le standard international ouvert X-10 et fabrique ses premiers produits.
Short distance Exposure (Mask Aligner)
Le port série GIF-1001 Ordinateurs: Structure et Applications, Hiver 2015 Jean-François Lalonde.
Liaison série.  Dans une liaison série, les données sont envoyées successivement, bit par bit. Il suffit de deux fils (un fil de signal et un fil de.
FONCTION COMMUNIQUER Michel SEGURA Stéphane LIBUTTI.
Communications séries synchrones
En 1997 Batibus EIB EHS ont décidé de s’associer
Kastagné Cédrick Chambreuil Maskime Giraudeau Damiheing
Communications séries synchrones
TP N°4 Développement d’ une application client / Serveur en utilisant les Sockets TCP.
LES RESEAUX.
La Station de pompage.
Le Bus CAN CAN est un véritable réseau qui respecte le modèle OSI
B.Shishedjiev - Informatique
Module 13 : Implémentation de la protection contre les sinistres
Chapitre 4 Couche Liaison : Protocoles
03- Evaluation Access 2003 Cette évaluation comporte des QCM (1 seule réponse) et des Zones à déterminer dans des copies d’écran.
Echange de Données ALE / I-DOC Pierre-Olivier GREGOIRE Julien HUYNH
Communications séries synchrones
Présentation du Multicast
Systèmes de Transport Intelligent: Interactions
Les liaisons des données Sommaire Principe Les couches de liaison –LLC (Contrôle de Liaison Logique) –MAC (Contrôle d’Acces au Support) Mode de Communication.
TP N°4 Développement d’ une application
LES RESEAUX. Besoin de communication LES RESEAUX Pour communiquer via un réseau informatique Support de transmission Carte réseau Éléments de réseau.
LES TRANSMISSIONS DE DONNEES : Les types de liaisons en PARALLELE ou en SERIE
Transcription de la présentation:

ARS3 : MODBUS Département GEII – Année universitaire 2011-2012

MODBUS Développé par MODICON en 1979 Protocole d ’échange « CLIENT/SERVEUR » Requête (request) Client Serveur Réponse (reply)

MODBUS Un des plus utilisés dans la communication entre automates industriels s ’adapte au nouvelle technologie: intègre TCP/IP permet une communication sur différents supports entre différents équipements

MODBUS

MODBUS N ’implémente que les couches 1, 2 et 7 du model OSI, sauf sous TCP/IP

MODBUS 1 Protocol Application

Protocol Application Couche application définie PDU (Protocol Data Unit) indépendant de la couche liaison et du support de transmission Couche liaison Adresse Contrôle Couche application Code fonction Données Couche liaison rajoute des champs pour constituer ADU (Application Data Unit)

PDU Client ->Serveur Code fonction Data Client Envoi une requête Serveur Code fonction 1 octet code fonction [1;127] code exception [128;255] Data : n octets , dépend du code fonction et contient habituellement des variables. Peut être nul.

PDU Serveur ->Client Si pas d ’erreur Client Attend la réponse Serveur Exécute l ordre, renvoie la réponse Code fonction Data Les données demandées en mode lecture Les données reçues en mode écriture Celui envoyé par le client

01|00|13|00|13 Serveur Client 01|03|CD|6B|05 Sortie 27 à 20 0x01 : code de la fonction lecture des sorties tout ou rien 0x0013 : code hexa sur 2 octets de la première sortie 0x0013 : nombre de sorties à lire, codé en hexa sur 2 octets 01|00|13|00|13 Serveur Client 0x01 : code de la fonction demandée par le client 0x03 : nombre d’octet à suivre 0xCD : état des sorties 27 – 20 0x6B : état des sorties 35-28 0x05 : état des sorties 38 - 36 01|03|CD|6B|05 0xCD=>11001101 Sortie 27 à 20 LSB MSB

Celui envoyé par le client mais en mettant le MSB à 1 Si erreur! Client Attend la réponse Serveur Détection d ’erreur, renvoie la réponse Code fonction Code Erreur Celui envoyé par le client mais en mettant le MSB à 1

01|04|A1|00|01 0x01 : code de la fonction lecture des sorties tout ou rien 0x04A1 : code hexa sur 2 octets de la première sortie 0x0001 : nombre de sorties à lire, codé en hexa sur 2 octets Serveur Client 81|02 0x81 : code de la fonction demandée par le client+0x80 0x02 : code correspondant à une adresse inexistante

MODBUS 2 MODBUS sur liaison série

MODBUS série maitre -> Client esclave(s) -> Serveur(s) Couche 1 et 2 du model OSI liaison 2 fils sur interface EIA/TIA-485 (RS485) protocole de type maître/esclave maitre -> Client esclave(s) -> Serveur(s) topologie en bus

protocole maitre/esclave 1 seul maître parle, le(s) esclave(s) écoute(nt) communication toujours à l ’initiative du maître esclaves ne communiquent pas entre eux 2 modes de communication diffusion (broadcast) individuel (unicast)

Mode Broadcast Requête envoyée à tous les esclaves Requête d ’écriture uniquement Requête envoyée à l ’adresse 0x00 Pas de réponse des esclaves

Mode Unicast Maitre adresse 1 seul esclave à la fois Après traitement de la demande, esclave renvoie sa réponse

Mode Unicast maître n ’a pas d ’adresse Règles d ’adressage maître n ’a pas d ’adresse adresse 0 réservée au mode broadcast adresses esclaves [1;247] adresses [248;255] sont réservées une adresse unique pour chaque esclave

TRAME MODBUS adresse du récepteur détection d ’erreur de transmission L application fournie le PDU la couche liaison rajoute les informations adresse du récepteur détection d ’erreur de transmission

trame MODBUS Tout échange contient deux trames : 1. une demande du maître … 2. … et une réponse de l'esclave ! Chaque trame contient 4 types d'informations TRAME ADU= Application Data Unit PDU modbus PDU= Protocol Data Unit Adresse Code fonction data CRC Ou LRC 1 octet Entre 1 et 247 Identifie Le destinataire 1 octet Entre 1 et 127 X octets Complément d'informations (dépend du code Fonction) 2 octets Contrôle de validité

Contrôle d ’erreur MAITRE Esclave Ne renvoie rien N°esclave Code fonction Données CRC16 N°esclave Code fonction Données CRC16 Calcul du CRC16 Calcul du CRC16 Comparaison des CRC16 CRC16 identique Ne renvoie rien Exécute l ’action et répond au client

MODBUS série RTU (Remote Terminal Unit) 2 modes de transmission RTU (Remote Terminal Unit) ASCII (American Standard Code for Information Interchange) le mode de transmission doit être configuré de façon identique pour tous les équipements branchés sur le bus.

Mode RTU 1 bit de start 8 bits de donnée (LSB en premier) Rappel Trame MODBUS Envoi d ’un octet sur le support physique 1 bit de start 8 bits de donnée (LSB en premier) 1 bit de parité (paire) 1 bit de stop

Transmission RTU Forme physique des données Start Data parité Stop Forme physique des données 1 bit 8 bits 1 bit 1 bit La detection d ’erreur est assurée par un calcul de type CRC Cyclical Redundancy Checking

Mode ASCII 1 bit de start 7 bits de donnée (LSB en premier) Trame MODBUS constituée de 2 caractères ASCII pour coder un octet Envoi d ’un caractère sur le support physique 1 bit de start 7 bits de donnée (LSB en premier) 1 bit de parité (paire) 1 bit de stop

Transmission RTU Contrairement au mode RTU, la détection de debut et fin de trame n ’est pas assuré par des silences sur la ligne, mais par: un caractère de « start » « : » (0x3A) une chaîne de fin constitué de 2 commandes « CR LF » (0x0D et 0x0A) Start Data parité Stop Forme physique des données 1 bit 7 bits 1 bit 1 bit La detection d ’erreur est assurée par un calcul de type LRC Logitudinal Redundancy Checking

Communication maître esclave Comportement du maître Traitement erreur fini/ Requête envoyée en diffusion / run compteur Taround Idle Taround expiré Requête envoyée / run compteur Time out Traitement réponse Attendre Taround Réponse reçue/ arrêt compteur Tout Erreur dans la trame/ Attente réponse Réponse reçue/ Traitement erreur Time out expiré/

Communication maître esclave Comportement de l ’esclave

Communication maître esclave Evolution temporelle d ’une communication

Interface physique 2 fils logique négative Nouveau système sur RS485 standard 2 fils logique négative 9600 ou 19200 bps (par défaut) connectique RJ45

Interface physique Topologie en bus

Interface physique Câblage 2fils (typique)

Interface Physique 150 W 120 W // 1nF LT: Termination Line, limte les problèmes de réflexion sur la ligne 150 W 120 W // 1nF Pull-Up Pull-Down: polarisation de la ligne, assure un état stable en l’absence de communication sur la ligne

Interface physique RJ45 2 fils

Interface physique Solution 4 fils

Interface Physique Connectique RJ45 en 4 fils

Interface physique Passage de 4 fils à 2fils

MODBUS 3 MODBUS sur TCP/IP

MODBUS TCTIP Permet la communication entre équipements utilisant différents mode de communication

trame MODBUS MODBUS sous TCP/IP Le serveur est sur le PORT : 502 TRAME MODBUS/TCP Une en tête spécifique est utilisée en TCP/IP pour identifier l'APU MODBUS : MBAP MODBUS APPLICATION PROTOCOL HEADER ADU= Application Data Unit PDU= Protocol Data Unit En tête MBAP Code fonction data L'@ esclave MODBUS est remplacée par l'octet Unit Identifier de l'en tête MBAP

trame MODBUS Structure du MBAP champ longueur description Identifiant de transaction 2 octets Identifiant d'une transaction de type MODBUS: Demande/réponse Identifiant de protocol 2 octets Protocole MODBUS = 0 taille 2 octets Nombre d'octets à suivre (UI+DATA) Identifiant D'unité 1 octet Remplace la notion d'@ esclave sur le réseau TCP/IP

Protocole MODBUS Services supportés par MODBUS Voici la liste des codes fonction (tous les équipements ne supportent pas tous les codes fonction) Écriture de n mots internes ou de registres consécutifs ,param1=adresse param2=Nbre mots, param3=Nbre d'octets, params[i]=valeurs 16h Écriture de n bits internes ou de sortie consécutifs ,param1=adresse param2=Nbre bits, param3=Nbre d'octets, params[i]=valeurs 15h Écriture d'un mot registre ou registre ,param1=adresse param2=valeur 06h Écriture d'un bit interne ou de sortie,param1=adresse param2=0000 ('0') ou FF00('1') 05h Lecture de n mots registre d'entrée ,param1=adresse param2=quantité 04h Lecture de n mots internes ,param1=adresse param2=quantité 03h Lecture de n bits d'entrée ,param1=adresse param2=quantité 02h Lecture de n bits de sortie ,param1=adresse param2=quantité 01h Fonction Code