So most of the time the addresses being used are output type. When an address is not tied to physical link, it’s treated as memory variable. Input Coil and Input Register are strictly tied to device’s physical wire connection, on the other hand, Output Coil and Output Register can be tied or not tied to device’s physical wire connection. Similarly both Input Register & Output Register are also 16 bit Integer but further split into input and output category. Both Output Coil (aka status) & Input Coil (aka status) are also boolean but further split into input and output type. Output Coil (0x), Input Coil (1x), Holding Register (4x) & Input Register (3x). Data Type They are only four fundamental data types in Modbus, i.e. The address arrangement is completely depends on the device manufacturer and must refer to its documentation. And the addresses are not necessary need to be put into one range, they can be scattered around like 1000~20~10000. There’s no fixed pattern on how’s the addresses will be arranged. The starting address for any data type is not fixed, for instance it can be 1, 1000, 4000 or any other value. Address Arrangement The address arrangement is flexible in Modbus devices. Offset value of +1 or -1 need to be entered. Data Address indexing may be different from one vendor to another, in another word, address 1000 for one vendor might be 1001 or 999 for another vendor. Data Address also being called as Register or simply as Address. Data Address Every data must has its own address. Some devices may even contain several Node Addresses (within one physical hardware), which being called virtual device or virtual node address. Note that ‘Node ID’ also being called Device ID, Slave ID, Device Address, Slave Address or even Modbus Address. And every Modbus device must be assigned with an ID for identification, even if there’s only one device is being connected. Node ID Modbus device can be connected in multi-drop (series) network. Multidrop network topology only available for RS485 & RS422 network configuration, standard physical layer of RS232 do not support multidrop network. Modbus over TCP/IP network could support multiple Masters and of course multiple Slaves. Note that single master restriction only applicable to Serial Communication like RS232/422/485. This is totally opposite of computer network whereby normally one server will serves many other clients, despite it’s similar that the client will initiate all the transactions. The Master will initiate all data polling or writing sequence and the Slave being called will then respond accordingly. Normally the Master is a PC or PLC and the slave(s) could be some measuring devices or sensors. Modbus network in serial communication can only have one Master with one, or many other Slaves where it’s called “Multidrop” network. Master/Slave(s) The relationship of Master and Slave in Modbus context is like Client and Server in computer network. It’s also important to note that the data byte size for COM Port setting is 8 for RTU and 7 for ASCII. They cannot be mixed and used concurrently in one network. On the other hand ASCII mode is rarely being used and will only be chosen when the communication speed (baud rate) can’t go too fast due to distance or communication device (e.g. RTU is mostly used as compare to ASCII since it’s transmitted in binary and hence faster. RTU/ASCII Mode Modbus can be used in RTU or ASCII communication mode. Below are 10 areas that you need to check to narrow down your scope of troubleshooting: 1. This document used the most precise and non-ambiguous term, but other vendor terms will also be mentioned. Several terminologies have been used in industry to refer to the same thing which created more confusion. If the system allow, user should start by trying 1 or 2 tags/data with basic data type like Holding Register (int16) or Output Coil (bool), and slowly adding more tags before advancing to more complicated data type like real32 or long32. Too many aspects need to be of concern hence plug and play is almost impossible for two applications from different vendors for the first time. Modbus is a very old protocol that has too many interpretations and implementations by various vendors, making it one of the widely used but complicated protocol to establish at the beginning. This perspective will be more relevant for System Integrator Engineer. Unlike other documentation for Modbus, this document focus on the knowledge needed for establishing the communication rather than implementing it. On top of basic communication port setting, it’s necessary to understand basic Modbus protocol before trying to establish a Modbus link.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |