Modbus AB World v01
Modbus AB World v01
Modbus AB World v01
Cover the Pros and Cons of each Demonstrate Digi One IAPs approach
Con
Locks out RSLinx & RSLogix access Must reboot PLC to re-enable Rockwell protocol access temporarily May cause you to buy-up to a 2-port model to avoid loss of RSLinx support
Cons
High cost due to custom hardware, custom engineering and limited volumes PLC program must change Consumes rack slot and backplane power Requires 2nd Ethernet cable and resource Result is not transparent; Polling a Modbus register tells nothing about AB data it represents
Cons
Network or serial masters can query any mix of network or serial slaves.
Traditional AB Bridging
Ethernet/IP querying AB/DF1 with DOIAP
Ethernet/IP request is received. Bridge examines request details (connection path) to learn which slave this request targets. Bridge extracts the core PCCC request this is the SLC5 or PLC5 style read/write command. Bridge rewraps PCCC as CSPv4 or DF1 request. When response is received, Bridge reverses the process to reconstruct Ethernet/IP response.
Bridge works because both Master & Slave understand the PCCC message structure.
Bridge works because both Master & Slave understand the Modbus ADU structure.
AB reading Modbus
Ethernet/IP querying Modbus/RTU
Ethernet/IP request is received. DOIAP examines request details (connection path) to learn which slave this request targets. DOIAP extracts the core PCCC request this is the SLC5 or PLC5 style read/write command. DOIAP detects slave does NOT understand PCCC. DOIAP examines PCCC; breaks down request
Commands reduced to (example) read twenty words Addresses such as N7:20 or N50:0 are converted by formula to a virtual offset 20 and 4000 respectively
Modbus driver sends Modbus request to Slave When response is received, DOIAP reverses the process:
Convert Modbus response into generic 20 word data response Convert generic 20 word data response to PCCC Returns PCCC to Ethernet/IP master
AB reading Modbus
What did we accomplish?
ControlLogix thinks it is reading 20 elements starting at N50:0 from a SLC5 or MicroLogix Modbus slave thinks it is being polled for 20 registers with Function 3 starting at 4x04001
DOIAP does this conversion mechanically without explicit configuration Any Modbus data can be accessed given the appropriate SLC5/MicroLogix notation
N11:74 accesses register 4x00175 B10:14/6 accesses coil 0x00231 Excel spreadsheet shows correct AB notation, given Modbus
User Documentation
AB N10:0 N10:1 N10:2 N10:3 N10:3/0 N10:3/1 N10:3/2 N10:3/3 N10:3/4 N10:4 N10:5 N10:6 N10:7 N10:8 Modbus 4x0001 4x0002 4x0003 4x0004 Mode Rd Rd Rd/Wr Rd/Wr Desc Drive Horsepower Software version Parameter Lock Run Commands bit 1: Stop / Brake bit 2: Forward Run bit 3: Reverse Run bit 4: Fault Reset bit 5: Coast to Stop Current Frequency Voltage Output Power Speed Values In HP (ie: 15 = 15hp) BCD like 0101 0/disable, 1/enable Only 1 bit may be set per write, or the write is ignored. Read back shows current status. By 0.1A By 0.01 Hz volts Watts RPM
Rd Rd Rd Rd Rd
Modbus reading AB
Modbus/TCP querying DF1 Full-Duplex
Modbus/TCP request is received. DOIAP examines request details (Unit Id) to learn which slave this request targets. DOIAP extracts the Modbus ADU. DOIAP detects slave does NOT understand Modbus ADU. DOIAP examines Modbus; breaks down request
For example: read twenty 16-bit words Addresses such as 4x00175 or 4x04001 are converted by formula to a virtual offset 174 and 4000 respectively
DF1 driver sends DF1 request to Slave When response is received, DOIAP reverses the process:
Convert PCCC response into generic 20 word data response Convert generic 20 word data response to Modbus
Modbus reading AB
What did we accomplish?
Modbus/TCP master thinks it is polling 20 registers with Function 3 starting at 4x12501 Micrologix thinks it is being asked for 20 elements starting at N50:0 from another Rockwell PLC or application
DOIAP does this conversion mechanically without explicit configuration Any PCCC data can be accessed given the appropriate Modbus notation
4x02825 accesses integer N11:74 0x08231 accesses bit B10:14/6 Excel spreadsheet shows correct Modbus notation, given AB
1-bit packed as words - AB to/from Modicon PLC 32-bit long/float AB to/from Modicon PLC Even though Modbus is Big-Endian, Modicon PLC use x86 chips and are native Little-Endian All AB special files (status, counters, etc) are converted to Modbus words as-is users must read AB docs to understand
DOIAP swaps bytes, but not the words
Cons
No ability to rearrange or tweak data No cache behavior every request creates a new transaction
Support Documentation
Support Documentation
Relevant Documentation at www.digi.com 90000643_a.pdf (Acrobat) 90000652_A.xls (Excel)
Calculator; Rockwell Master App Note; Rockwell polling Modbus
Digi One IA
Industrial single-port model 10/100 HD/FD Ethernet 1 serial port RS-232/422/485 10-30vdc Power Supply 2kv isolation between power and serial Div 1 Class II Protocols: Raw or Limited Modbus Bridge (matches Modicon CEV specs) 400-watt TVS diodes (fall2006)