What exactly are the limitations on how fast EPICS can communicate with a device?
I have a device I can communicate with around 200Hz if I send it commands with a python program that uses the telnetlib module. I was wondering if it would be possible for the device to communicate with EPICS close to this rate.
I tried modify EPICS database definition files to make records process faster. To test this, I made a PV that does no device communication, but counts up when it was processed. When I added a line in the dbd file to add a scan option of
.01 second, and set the SCAN field to .01, this record increases by 100 every second when I run the IOC, which is expected behavior.
However, when I tried having this record send commands to the device, it was much slower, around once per second. In general, when I process PVs that communicate with a device, it seems to take a while to get a response, whereas when I
send commands directly through telnet I get the result back almost instantaneously. Is there a limit to how fast EPICS can communicate with a device, apart from the SCAN field options?
Alex