Experimental Physics and
| |||||||||||||||||
|
Hi Mark,
Thank you for correcting me! Do you know how I can make I/O Intr work with CA Links?
Best, Jalal From: Mark Rivers <rivers at cars.uchicago.edu>
Sent: Monday, November 2, 2020 3:21:04 PM To: Mostafa, Jalal (IPE) Cc: tech-talk at aps.anl.gov Subject: Re: LabView-EPICS Integration using SoftIoc Hi Jalal,
I don't know anything about EPICS/LabView interfaces, so I cannot comment on that. However, this statement in your message is incorrect: > I/O Intr are not available on a softIoc, so the developer has to use periodic SCAN. That is not true at all. I/O Intr scanning is not limited to hardware interrupts, it can be used with low-level driver polling. Many of the EPICS modules use this: modbus, areaDetector, quadEM, etc. The asyn driver can poll the device and then do callbacks to device support for I/O Intr scanned records. This can be done at kHz rates, and you don't need to change the SCAN periods. Often the driver will only do the callback when the value changes, but it can do the callbacks on every poll if desired. Mark ________________________________ From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Mostafa, Jalal (IPE) via Tech-talk <tech-talk at aps.anl.gov> Sent: Monday, November 2, 2020 7:44 AM To: tech-talk at aps.anl.gov Subject: LabView-EPICS Integration using SoftIoc Hi all! We have many systems from NI that we would like to integrate with EPICS for the KATRIN experiment (katrin.kit.edu) The old control system was written in LabView but we would like to replace it with EPICS without rewriting the code again. Therefore, we are looking for a nice LabView-EPICS integration. We have seen two options for LabView: - CALAB which does not work with realtime devices - Official NI EPICS module. It is good but I can list several problems: huge loss of EPICS features (it is only an implementation of CA plus alarming, the other metadata and configuration fields are not available) - not very developer-friendly (adding/removing PVs relies on shared variables so it is time consuming) Another two solutions we thought of: 1. Using AsynDriver and communicate with the realtime device using a TCP protocol 2. Running an EPICS server on the realtime device using NI EPICS module then shadowing it with a SoftIoc using CA links. (a softIoc server running with input and output records to read and write to the original LabView EPICS server) I have several concerns here: - Am I missing any other way to integrate LabView with EPICS? I would like to hear from your experiences. - Although solution (1) is time consuming, I am in favor of it but let's check if we can do it more easily with solution (2). Anyway, can the experts comment on its feasibility? - Solution (2): What do you think about performance? Alarms? I/O Intr are not available on a softIoc, so the developer has to use periodic SCAN. How can I add custom SCAN periods? Thanks for your help. Best, Jalal
| ||||||||||||||||
ANJ, 02 Nov 2020 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |