Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Asyn/Modbus Delay
From: Robert Emery <duma@u.washington.edu>
To: tech-talk@aps.anl.gov
Date: Tue, 08 Mar 2011 16:01:15 -0800
We are using Modbus/Asyn to talk to a Acromag ES2113 digital I/O device. Since updating our controller software (Linux 2.6.24 to 2.6.32, EPICS 3.14.8.2 to 3.14.12, Asyn 4.8 to 4.15, Modbus 1.1 to 2.1) the Modbus/Asyn communication has slowed down. There is now a .02 sec delay in messages sent out (see below). To illustrate this I ran a simple db with 4 linked longout records writing to the Modbus/Asyn port and looked at the timing with wireshark.

Any ideas why the delay and how I can get around it?

Thanks
Rob Emery
UW Medical Center


Original Timing

Time        Source     Destination           Protocol Info
0.000000    .0.33          .0.31          Modbus/TCP    query
0.002218    .0.31          .0.33          Modbus/TCP response
0.002229    .0.33          .0.31          TCP      53105 > 502 [ACK]
0.002288    .0.33          .0.31          Modbus/TCP    query
0.005003    .0.31          .0.33          Modbus/TCP response
0.005166    .0.33          .0.31          Modbus/TCP    query
0.007680    .0.31          .0.33          Modbus/TCP response
0.008171    .0.33          .0.31          Modbus/TCP    query
0.010342    .0.31          .0.33          Modbus/TCP response


New Timing

Time        Source    Destination           Protocol Info
0.000000   .0.33          .0.31          Modbus/TCP    query
0.002168   .0.31          .0.33          Modbus/TCP response
0.003864 .0.33 .0.31 TCP 59583 > asa-appl-proto [ACK]
0.024044   .0.33          .0.31          Modbus/TCP    query
0.026214   .0.31          .0.33          Modbus/TCP response
0.046431   .0.33          .0.31          Modbus/TCP    query
0.048319   .0.31          .0.33          Modbus/TCP response
0.068693   .0.33          .0.31          Modbus/TCP    query
0.071181   .0.31          .0.33          Modbus/TCP response


Port Configuration

## Create the Asyn IP ports
drvAsynIPPortConfigure("AcromagDO1","192.168.0.31:502",0,0,1)

## Apply The Modbus Configuration to the IP ports
modbusInterposeConfig("AcromagDO1",0,1000)

## Create Test Port
drvModbusAsynConfigure("CCC:ACROMAGDO1:Modbus:Output","AcromagDO1",0,6,59, 6, 0, 0, "Acro Test")


Test db

record(longout, Tuning:Asyn:Timing:Test:LongOut) {
  field(SCAN, "Passive")
  field(DTYP, "asynUInt32Digital")
  field(FLNK, "Tuning:Asyn:Timing:Test:LongOut2")
  field(OUT, "@asynMask(CCC:ACROMAGDO1:Modbus:Output 0 0xFFFF)")
  field(OMSL, "supervisory")
  field(VAL, "101")
}

record(longout, Tuning:Asyn:Timing:Test:LongOut2) {
  field(SCAN, "Passive")
  field(DTYP, "asynUInt32Digital")
  field(FLNK, "Tuning:Asyn:Timing:Test:LongOut3")
  field(OUT, "@asynMask(CCC:ACROMAGDO1:Modbus:Output 1 0xFFFF)")
  field(OMSL, "supervisory")
  field(VAL, "102")
}

record(longout, Tuning:Asyn:Timing:Test:LongOut3) {
  field(SCAN, "Passive")
  field(DTYP, "asynUInt32Digital")
  field(FLNK, "Tuning:Asyn:Timing:Test:LongOut4")
  field(OUT, "@asynMask(CCC:ACROMAGDO1:Modbus:Output 2 0xFFFF)")
  field(OMSL, "supervisory")
  field(VAL, "103")
}

record(longout, Tuning:Asyn:Timing:Test:LongOut4) {
  field(SCAN, "Passive")
  field(DTYP, "asynUInt32Digital")
  field(OUT, "@asynMask(CCC:ACROMAGDO1:Modbus:Output 3 0xFFFF)")
  field(OMSL, "supervisory")
  field(VAL, "104")
}


Replies:
RE: Asyn/Modbus Delay Mark Rivers

Navigate by Date:
Prev: RE: PyEpics segmentation faults Vigder, Mark
Next: RE: Asyn/Modbus Delay Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Re: EDM X/Y Eric Norum
Next: RE: Asyn/Modbus Delay Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·