We have module solutions which allow integration directly into Modbus RTU as well as the stand alone solutions shown bottom right.
Download our Modbus for Field Technician for free, or purchase this guide for $20 on amazon.com.
Range of Conversion Solutions
Depending on project requirements select from units with varying resources and multi port devices. OEM and embedded solutions too.
|FS20 Series||1x RS232/485||1x Ethernet||1x Lonworks|
|FS25 Series||2x RS232/485||1x Ethernet|
|FS30 Series||2x RS232 and 2x RS485||2x Ethernet||1x Lonworks||FieldBus Support:eg Profibus, DeviceNet etc
Hot Standby Support
|FS40 Series||10x RS232 and 2x RS485||2x Ethernet||1x Lonworks||FieldBus Support: eg DH+, MB+, Profibus, DeviceNet etc
Hot Standby Support
|SlotServer||1x RS232/485||1x Ethernet||1x Lonworks||For Rockwell ControlLogix 5600|
Lonworks and Fieldbus are options not proviced on base models.
FS30 series shown for purposes of illustration. Capability depends on hardware, firmware and configuration.
Supported Modbus Functions
01 Read Discrete Output Status (0xxxx)
02 Read Discrete Input Status (1xxxx)
03 Read Output Registers (4xxxx)
04 Read Input Registers (3xxxx)
05 Force Single Coil (0xxxx)
06 Preset Single Register (4xxxx)
15 Force Multiple Coils (0xxxx)
16 Preset Multiple Registers (4xxxx)
Supported Data Types
16 Bit Integer Signed
16 Bit Integer Unsigned
32 Bit Integer Signed
32 Bit Integer Unsugned
32 Bit Packed Bit
8 Bit Packed Bit
4 byte FLoating Point Numbers
Scaling / Bit Packing
FieldServers can scale data and manipulate values using some binary logic and arithmetic functions. Scaling can be applied to each block of Modbus Data read / served.
- Move to change type : Convert from any FIeldServer Data Type to any other.
- Move to pack/unpack bits and bytes: It’s possible to address each bit in a 8,16 or 32 bit data element by using the packed data types.
- Move to change byte/word order: Handle the endianess of the remote system easily.
- Convert to/from Float, MK10, IEE754, 32 bit, 16 bit, 8 bit numbers
- Move conditionally:
- Perform Arithmetic Operation: + – * div sqrt, sqr ,
- Perform Binary Logic Operation: And, Or, Not, >, >= , <, <=
Most functions can be configured to occur on a configurable period or on update of the data source.
It’s possible to configure selected FiedlServer models to act in Hot Standby Mode. In one flavour of Hot Standby the two units are kept up to date all the time sharing the data from the field. In another mode, one unit is passive until it see’s that the active unit is no longer responding.
Multiple Clients of a Modbus slave
We are frequenty asked how you deal with a situation where you have more than one client for a slave(s). The Modbus spec does not support this but we have a solution.
The essence of the solution if to use a multi-port FieldServer. Connect each client to its own port and the slave(s) to thier own ports. Each client will see a single virtual slave(s) on its network. This not only solves the problem but is extremely efficient. Of course the FieldServer needs to be correctly configured.
In a situation like this we exploit the FieldServer technology known as ‘Port Expansion’
Figure 1: Normally it is not possible to connect two clients to the same slave. There are two primary reasons: 1) If you are using RS232 then there can only be two devices on the cable segment. 2) If you are using RS485 then the 2nd client will not know to process the poll from the 1st client. It will cause errors.
Figure 2: Using a FieldServer with an appropriate configuration solves this problem whether you are using RS232 otr RS485.
Figure 3: Each client is on its own port. Thus each client does not see poll messages from the other client. In this example client#1 sends a poll to the FieldServer. It is directed a specific slave address. When the poll arrives at the FieldServer, the FieldServer checks the address against its configuration. If there is no match then an exception response is sent. If there is a match the FieldServer determines the port that the matching slave is configured on. The poll message is then relayed to the slave port.
Figure 4: The slave responds. The FieldServer relays the response to client#1. The FieldServer also extracts the data from the response and stores in a temporary location (FieldServer calls that a cache block). The duration/expiry of the storage is configurable.
Figure 5: If any client requests the same data (client#1 or #2) and the data hasn’t expired then the FieldServer responds with data from the temporary storage.
Figure 6: If any client requests different data or if the temporary data has expired then the match and relay process is repeated requesting the new data.
Figure 7: The slave responds, the response is relayed to the client doing the polling (Client#2 in this case) and the data is stored temporarily so that it is available to the other client.
Jbus / Modbus ASCII
The ASCII flavour of Modbus RTU uses two bytes for each byte used in Modbus RTU thus halving the bandwidth. It is possible to use 7 data bit connections for Modbus ASCII.
Jbus is the same as Modbus RTU except that you can process address greater than 9999. In the origianl Modbus spec no area could have more than 9999 elements. Hence, for example, the largest 3xxxx register could be 39999. You can guess why the limit was imposed. If there were more elements than 9999 then it would look like the next element was in the holding register area. The limitation was artificial since the the address encoded in the messages is an offset from the 1st element and is stored in a 16 bit number. Thus the protocol could handle up to 65535 items per data area. To resolve this issue a new addressing systrem was created – 6 digit addresses. So before you had 3xxxx and now you have 3xxxxx (30001 vs 300001). The FieldServer Modbus RTU driver does not impose the 999 limitation.
232 / 485
The driver can be used for RS232 or RS485 multidrop applications.
Data Sheets and Manuals
Modbus Web Site: www.modbus.org
Need more info ? Call or email us.
Metasys® as used in this document is a trademark of Johnson Controls, Inc.