Experimental Physics and
| |||||||||||||||||||||||
|
Dear Mark, Thank you. pasynManager->registerPort? Are you using asynPortDriver base class? pasynManager->registerPort(pDrvPvt->portName, ASYN_MULTIDEVICE , 1, /* autoconnect */ 0, /* medium priority */ 0); /* default stacksize */ I am not using asynPortDriver but using asynDriver. What do you mean by that? How have you measured it? >>> field(OUTA, "TEST:OUT0-O PP") field(OUTB, "TEST:OUT1-O PP") field(OUTC, "TEST:OUT2-O PP") in the above dfanout record, what would be the time difference between processing OUTA, "TEST:OUT0-O PP" and OUTB, "TEST:OUT1-O PP". Thanks & regards From: Mark Rivers <[email protected]> Sent: Fri, 14 Feb 2014 22:22:53 To: "'[email protected]'" <[email protected]> Cc: "techtalk " <[email protected]> Subject: Re: record processing time > The recored TEST:OUT0-O is connected to hardware all output records are not synchronous. Are you sure they are not synchronous? What flags did you use in your asyn driver when calling pasynManager->registerPort? Are you using asynPortDriver base class? > Hardware also having no delay. What do you mean by that? How have you measured it? > is dfanout record execute each link one by one or all simultaneously? It processes one link at a time. How could it do them simultaneously? Mark From: [email protected] [mailto:[email protected]]
The recored TEST:OUT0-O is connected to hardware all output records are not synchronous. I am using asynDriver. and all these records have same asyn intereface as they are similar. Hardware also having no delay. is dfanout record execute each link one by one or all simultaneously? Thank you Vishnu
Hi Vishnu, Please tell us about your output records, TEST:OUT0-O, etc. Are they connected to hardware? If so, is the device support synchronous or asynchronous, and what driver are you using? If they are connected to hardware and the device support
is synchronous, then 50 microseconds may just be the time it takes the driver to do the I/O. If the records are not connected to hardware then how did you measure the 50 microseconds? Mark From:
[email protected] [mailto:[email protected]]
Hi, In my application i am putting value on 4 output port lines simultaneously with dfanout record. record (dfanout,"TEST:EVENT1-FOUT") { field(DESC, "stop all event simaltanously") field(DOL, "TEST:WAIT-EVENT") field(HOPR, "1") field(LOPR, "0") field(OMSL, "closed_loop") field(OUTA, "TEST:OUT0-O PP") field(OUTB, "TEST:OUT1-O PP") field(OUTC, "TEST:OUT2-O PP") field(OUTD, "TEST:OUT3-O PP") } "TEST:OUT0-O, TEST:OUT1-O, TEST:OUT2-O, and TEST:OUT3-O are 4 output record putting the values on output port lines. The TEST:WAIT-EVENT is the taking value from User interface. 0 or 1. I observed the delay between each output is approximately 50 micro second. so total delay from first to last PV is ~200 micro second. The OS running the IOC is RHEL. I would like to know this delay time is normal in EPICS or i can even get better with some mechanism. Thank you
| ||||||||||||||||||||||
ANJ, 17 Dec 2015 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |