Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Modbus — Wikipédia
Modbus — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.

Modbus est un protocole de communication non-propriétaire, créé en 1979 par Modicon (absorbée en 1996 par Schneider Electric), de la couche ISO applicatif. Il permet à des composants électroniques industriels de communiquer entre eux, souvent dans le cadre d'un SCADA. Il peut être utilisé dans le cas d'échange via des communications séries ou via un réseau TCP/IP.

Description du protocole

[modifier | modifier le code]

Le protocole MODBUS est un protocole de type client/serveur[1]. Par exemple, une Interface Humain-Machine SCADA est connectée à une unité terminale distante (ou RTU) et communique par Modbus. Dans ce cas, la IHM est cliente et le RTU est serveur.

Il existe trois types de transmission Modbus :

  • Modbus RTU (Remote Time Unit), utilisant des liaisons séries
  • Modbus ASCII, utilisant des liaisons séries
  • Modbus TCP/IP, utilisant des liaisons Ethernet. Le port TCP utilisé est le port 502[2]

Ces trois types de transmission sont incompatibles les uns avec les autres.

Le protocole MODBUS définit un « protocol data unit » (PDU) qui est indépendant de toute couche protocolaire sous-jacente. Le PDU est composé d’un code de fonction, permettant d’indiquer quel type d’actions le client cherche à réaliser, et de données[3]. Pour associer le protocole au bon élément, le protocole définit un « Application Data Unit », qui est composé d’une adresse (pour le protocole par défaut) ou une entête « MBAP » (pour Modbus/TCP), d’un PDU et de code de vérification d'intégrité. L’ADU est formé par le client qui initie la communication.

En résumé :

PDU =Code de fonction + Données

Pour Modbus générique :

ADU = Adresses + PDU + code d’erreur

Pour Modbus/TCP :

ADU = En-tête MBAP + PDU + code d’erreur

où l'entête MBAP est composée de :

  1. Identifiant de transaction ("transaction identifier") : identifie la transaction requête/réponse
  2. Identifiant de protocole ("Protocol identifier"): toujours égal à 0
  3. Longueur ("length"): Nombre de bits suivants (à partir de l'identifiant d'unité)
  4. Identifiant de l'unité ("Unit Identifier") : identifie le serveur


Modbus définit 3 types de PDU (Protocol Data Unit) disctincts[4]:

  • Modbus request : Le client initie la requête auprès du server avec un PDU
  • Modbus response : Le serveur arrive à réaliser l'action demandée par le client. Le serveur envoie au client le code de fonction défini par le client et des données de réponses
  • Modbus Exception Response : Le serveur n'arrive pas à réaliser l'action demandée par le client et, dans ce cas, le serveur renvoie un code d'erreur permettant de donner des informations au client

Modèles de données

[modifier | modifier le code]

Le procotole MODBUS définit 4 types de données :

Modèles Type d’objet Type
Discretes input Un bit Lecture uniquement
Coils Un bit Lecture-Ecriture
Input registers Mots de 16-bits Lecture uniquement
Holding registers Mots de 16-bits Lecture-Ecriture

Codes de fonctions

[modifier | modifier le code]

Les codes de fonction permettent au client de dire au serveur quels types d’actions réaliser. Il en existe trois types :

  • Public
  • Défini par les utilisateurs
  • Réservé : utilisé pour des raisons de systèmes hérités

Par exemple, le code "01" signifie que le client demande à lire un registre "Coils" à une adresse donnée.

Function type Function name Function code Subcode Comment
Data Access Bit access Physical Discrete Inputs Read Discrete Inputs 2
Internal Bits or Physical Coils Read Coils 1
Write Single Coil 5
Write Multiple Coils 15
16-bit access Physical Input Registers Read Input Registers 4
Internal Registers or Physical Output Registers Read Multiple Holding Registers 3
Write Single Holding Register 6
Write Multiple Holding Registers 16
Read/Write Multiple Registers 23
Mask Write Register 22
Read FIFO Queue 24
File Record Access Read File Record 20
Write File Record 21
Diagnostics Read Exception Status 7 serial only
Diagnostic 8 00-18, 20 serial only
Get Com Event Counter 11 serial only
Get Com Event Log 12 serial only
Report Server ID 17 serial only
Read Device Identification 43 14
Other Encapsulated Interface Transport 43 13, 14
CANopen general Reference 43 13

Couche physique

[modifier | modifier le code]

Le protocole Modbus peut être implémenté :

  • sur une liaison série asynchrone de type RS-232, RS-422 ou RS-485 ou TTY (boucle de courant), avec des débits et sur des distances variables ; on parle alors de Modbus over Serial Line;
  • via TCP/IP sur Ethernet ; on parle alors de Modbus over TCP/IP ; le port logiciel 502 est destiné à ce protocole
  • via Modbus Plus. Modbus Plus est un réseau à passage de jetons à 1 Mb/s, pouvant transporter les trames Modbus et d'autres services propres à ce réseau.

Sécurité

[modifier | modifier le code]

Modbus n'est pas sécurisé par défaut[5]. Cependant, Modbus Organization a spécifié une version sécurisée de Modbus/TCP, qui se base sur de l'encapsulation TLS : Modbus/TCP Security. Le protocole utilise par défaut le port TCP 802[6].

Le serveur et le client Modbus s'authentifient mutuellement par TLS. Les autorisations du client sont définis par rôle. Le rôle est écrit dans une extension « RoleOID » du certificat X.509 du client, qui permet au serveur de vérifier si le client est autorisée à réaliser l'action demandée sur la ressource. La base de données associant rôle et droit est spécifique au vendeur et peut-être hébergée localement sur le serveur ou bien sur un serveur distant.

Références

[modifier | modifier le code]
  1. ↑ (en) « MODBUS APPLICATION PROTOCOL SPECIFICATION » Accès libre [PDF], sur Modbus.org (consulté le 8 janvier 2025)
  2. ↑ (en) « MODBUS MESSAGING ON TCP/IP IMPLEMENTATION GUIDE » [PDF], sur Modbus.org (consulté le 8 janvier 2025)
  3. ↑ « Principe maître-esclave Modbus », sur https://product-help.schneider-electric.com/ (consulté le 8 janvier 2025)
  4. ↑ (en) « MODBUS over Serial Line. Specification and Implementation Guide » Accès libre [PDF], sur Modbus.org (consulté le 8 janvier 2025)
  5. ↑ (en) Arnaud Soullié, « DEF CON 25 - ICS Village - Arnaud Soullié - fun with Modbus 0x5a - Nothing New. Still Relevant. » [vidéo], sur DEF CON 25 (consulté le 8 janvier 2025)
  6. ↑ (en) « MODBUS/TCP Security » Accès libre [PDF], sur Modbus.org (consulté le 8 janvier 2024)

Voir aussi

[modifier | modifier le code]

Articles connexes

[modifier | modifier le code]
  • Jbus
  • Ethernet Global Data
  • Système de contrôle et d'acquisition de données

Liens externes

[modifier | modifier le code]
  • (en) modbus.org
v · m
Couches du modèle OSI
7. Application
  • AMQP
  • BGP
  • DHCP
  • DNS
  • FTP
  • FTPS
  • SFTP
  • FXP
  • Gemini
  • Gopher
  • H.323
  • HTTP
  • HTTPS
  • IMAP
  • IPP
  • IRC
  • LDAP
  • LMTP
  • MODBUS
  • MQTT
  • NFS
  • NNTP
  • POP
  • RDP
  • RTSP
  • SILC
  • SIMPLE
  • SIP
  • SMB-CIFS
  • SMTP
  • SNMP
  • SOAP
  • SSH
  • TCAP
  • Telnet
  • TFTP
  • VoIP
  • WebDAV
  • XMPP
6. Présentation
  • AFP
  • ASCII
  • ASN.1
  • HTML
  • MIME
  • NCP
  • TDI
  • TLS
  • TLV
  • Unicode
  • UUCP
  • Vidéotex
  • XDR
  • XML
5. Session
  • AppleTalk
  • DTLS
  • NetBIOS
  • RPC
  • RSerPool
  • SOCKS
4. Transport
  • DCCP
  • QUIC
  • RSVP
  • RTP
  • SCTP
  • SPX
  • TCP
  • UDP
3. Réseau
  • ARP
  • Babel
  • BOOTP
  • CLNP
  • ICMP
  • IGMP
  • IPv4
  • IPv6
  • IPX
  • IS-IS
  • NetBEUI
  • NDP
  • RIP
  • EIGRP
  • OSPF
  • RARP
  • X.25
2. Liaison
  • Anneau à jeton (token ring)
  • Anneau à jeton adressé (Token Bus)
  • ARINC 429
  • AFDX
  • ATM
  • Bitnet
  • CAN
  • Ethernet
  • FDDI
  • Frame Relay
  • HDLC
  • I²C
  • IEEE 802.3ad (LACP)
  • IEEE 802.1aq (SPB)
  • LLC
  • LocalTalk
  • MIL-STD-1553
  • PPP
  • STP
  • Wi-Fi
  • X.21
1. Physique
  • 4B5B
  • ADSL
  • BHDn
  • Bluetooth
  • Câble coaxial
  • Codage bipolaire
  • CSMA/CA
  • CSMA/CD
  • DSSS
  • E-carrier
  • EIA-232
  • EIA-422
  • EIA-449
  • EIA-485
  • FHSS
  • HomeRF
  • IEEE 1394 (FireWire)
  • IrDA
  • ISDN
  • Manchester
  • Manchester différentiel
  • Miller
  • MLT-3
  • NRZ
  • NRZI
  • NRZM
  • Paire torsadée
  • PDH
  • SDH
  • SDSL
  • SONET
  • SPI
  • T-carrier
  • USB
  • VDSL
  • VDSL2
  • V.21-V.23
  • V.42-V.90
  • Wireless USB
  • 10BASE-T
  • 10BASE2
  • 10BASE5
  • 100BASE-TX
  • 1000BASE-T
Articles connexes :
  • Pile de protocoles
  • Modèle Internet
  • Couche 8
v · m
Protocoles de communication
Processus d'automation
  • AS-i
  • Bristol Standard Asynchronous Protocol (en)
  • CC-Link Industrial Networks (en)
  • Common Industrial Protocol (en)
  • Bus de données CAN
    • CANopen
    • DeviceNet
  • ControlNet
  • DF-1 Protocol (en)
  • DirectNET Protocol (en)
  • EtherCAT
  • Ethernet Global Data
  • POWERLINK
  • EtherNet/IP
  • Factory Instrumentation Protocol
  • FINS (en)
  • FOUNDATION fieldbus (en)
    • Foundation Fieldbus H1 (en)
    • HSE
  • Service Request Transport Protocol (en)
  • HART Protocol
  • SDS Protocol (en)
  • HostLink Protocol (en)
  • InterBus
  • MECHATROLINK (en)
  • MelsecNet (en)
  • Modbus
  • Optomux (en)
  • PieP (en)
  • Profibus
  • PROFINET IO
  • Serial Real-Time Communications System
  • SERCOS III
  • Sinec H1 (en)
  • SynqNet (en)
  • TTEthernet (en)
  • RAPIEnet (en)
  • Very Simple Control Protocol (VSCP)
Supervision
  • Open Platform Communications
  • MTConnect (en)
  • SNMP
Immotique
  • 1-Wire
  • BACnet
  • C-Bus (protocol) (en)
  • DALI
  • Digital Signal Interface (en)
  • Factory Instrumentation Protocol
  • EIB
  • KNX
  • LonTalk
  • Modbus
  • oBIX (en)
  • Very Simple Control Protocol
  • X10
  • XAP Home Automation protocol (en)
  • xPL
  • ZigBee
Power system automation (en)
  • IEC 60870 (en)
  • IEC 60870-5 (en)
  • IEC 60870-6 (en)
  • DNP3
  • Factory Instrumentation Protocol
  • IEC 61850 (en)
  • IEC 62351 (en)
  • Jbus
  • Modbus
  • Profibus
Automatic meter reading (en)
  • Compteur communicant
  • IEC 62056 (en)
  • Meter-Bus (en)
  • Modbus
  • ZigBee
Automobile / Vehicle bus (en)
  • AFDX
  • ARINC 429
  • Bus de données CAN
    • ARINC 825 (de)
    • SAE J1939
    • NMEA 2000
    • Fleet Management System (en)
  • Factory Instrumentation Protocol
  • FlexRay
  • IEBus (en)
  • J1587 (en)
  • J1708 (en)
  • Keyword Protocol 2000 (en)
  • Unified Diagnostic Services (en)
  • LIN
  • MOST
  • Vehicle Area Network (en)
  • icône décorative Portail des télécommunications
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=Modbus&oldid=229111748 ».
Catégories :
  • Protocole de communication
  • Protocole réseau
Catégories cachées :
  • Article contenant un appel à traduction en anglais
  • Article contenant un appel à traduction en allemand
  • Portail:Télécommunications/Articles liés
  • Portail:Technologies/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id