EPICS Controls 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  2020  2021  2022  2023  2024  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  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Asyn/Modbus Delay
From: Robert Emery <[email protected]>
To: [email protected]
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  2020  2021  2022  2023  2024 
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  2020  2021  2022  2023  2024 
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 ·