1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 <2015> 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 <2015> 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: Pro's/Con's of LabVIEW/EPICS |
From: | Dirk Zimoch <[email protected]> |
To: | <[email protected]> |
Date: | Fri, 18 Dec 2015 09:18:11 +0100 |
Hello Max,The one point that always annoyed me with LabVIEW/EPICS integrations is the lack of error propagation. While both, LabVIEW and EPICS have their own sophisticated system to propagate errors between records and VIs respectively, usually only the value is passed between the two worlds.
I examined in particular the cRIO implementation of running EPICS and LabView side by side on the same system. Data passing is done with a shared memory region which is accessed by both sides with their own scan rates. Unfortunately there is no synchronization mechanism which would allow to trigger one side when the other one has new values. There is no space for error states, no space for time stamps. Only data. All of this would have been straight forward to implement. All the necessary API functionality is there. It has just not been done.
Looking into the details of the "EPICS-VI" implementation reviles that the VI handles error input, but in an inadequate way: Instead of passing the error, it simply skips to copy new (invalid) data to the shared memory. Thus when a device breaks, EPICS will happily read the last good value. And EPICS will put a current time stamp on the old data. Thus there is no way to see the problem in EPICS.
It has been a few years that I looked at this solution. So it may be that the situation has improved meanwhile. But I was so disappointed that I lost any interest.
Dirk On 17.12.2015 20:50, Wyman, Max D wrote:
Hello,
I’m investigating the pro’s/con’s of a hybrid LabVIEW/EPICS system for
the control and DAQ on PRIME Lab’s accelerator. We’ll be adding a second
ion source (and requisite controllers) so it seems like a good time to
make such a migration if it seems beneficial. Currently we use a suite
of LabVIEW applications for control/DAQ of a dozen NI cRIOs, a handful
of NI GPIB-ethernet controllers, and two NI PXI chassis as our
input/output controllers.
In particular, I’m curious to talk to anybody who’s ever migrated a
system from pure LabVIEW to a LabVIEW/EPICS hybrid or who currently runs
an EPICS system involving controllers similar to ours (the NI cRIOs, PXI
crates, and GPIB-ENET controllers).
Thanks,
Max
-----------------------------------------
Max Wyman
PRIME Lab, Purdue University
[email protected] <mailto:[email protected]>
765-496-6894