Modbus/USS
3.6 Pilote esclave Modbus
3.6.9
Code de fonction 04 – Read Input Registers
Fonction et structure
Le code de fonction 04 – Read Input Registers est caractérisé comme suit :
Fonction
Télégramme de requête
Télégramme de réponse
LEN en octets
start_address
L'adresse de registre Modbus "start_register" est interprétée comme suit par le pilote :
Figure 3-12
Pour poursuivre la génération d'adresses, le FB81 (S_MODB) utilise le numéro de DB de
base (du DB xxxxx) spécifié dans le DB de conversion pour FC 04.
Le calcul des adresses pour l'accès (conversion des adresses) s'effectue alors en deux
étapes :
Accès à SIMATIC
DB du bloc de données (DB résultant)
Mot de données DBW
Formule de calcul pour start_register
Lorsque le DB résultant à lire est connu, l'adresse Modbus start_register requises dans le
système maître peut être calculée à l'aide de la formule suivante :
start_register = ((DB résultant – Numéro de DB de base) * 512)+(mot de données_DBW /2)
Cette formule est fondée exclusivement sur des numéros de mots de données pairs.
200
Cette fonction permet au système maître Modbus de lire des
mots de données dans un bloc de données.
ADDR
ADDR
6
Interprétation du numéro de registre Modbus
FUNC start_register register_number
FUNC Byte_count n n/2-Register DATA
Formule de conversion
xxxxx
=(numéro DB de base
N°_DB_décalage)
=(start_register N°_mot *2)
Instructions de service, 03/2009, A5E00124882-05
CRC
CRC
(High, Low)
+start_register
Modules d'interface série