Active X CA
ChannelAccess, CA
EPICS tools use CA for network communication.
Traditionally, the Input/Output controller (IOC), running under the vxWorks real-time OS, interfaces with the plant hardware and has a CA Server.
CA client applications like an operator display run on workstations in the control room to display and modify values on the IOC.
The CA server and client software is available as C/C++ libraries for Win32, Linux, HPUX, Solaris, ...Interfacing to CA on Win32
The CA libraries provide the full CA capability, but require C/C++ programming.
This software was originally developed in order to serve values from within National Instrument's LabVIEW to EPICS via Channel Access (CA).There are several ways for interfacing LabVIEW and CAS:
- LabVIEW Code Interface Nodes:
Specific to LabVIEW only.- DLL calls:
Could be used by LabVIEW and various programming languages- ActiveX:
Can be used by LabVIEW as well as many other Microsoft Windows programs.Using ActiveX to call CA from LabVIEW might not be the fastest option available but was chosen for it's versatility.
The resulting ActiveX CA Server
- provides an easy way to serve a few Process Variables
- can quickly be added to existing LabVIEW applications
- is also callable from MS Visual Basic, MS Excel, Matlab, Delphi, ...
- is automatically shared by all the callers, so the current limit of only one server per machine does not limit the number of users (e.g. several LabVIEW screens).
It should be noted that adding the server to e.g. LabVIEW will not turn that machine into a real-time EPICS IOC, capable of serving thousands of process variables. Performance might, however, be absolutely sufficient for soft-real-time requirements. This approach is also ideal when you have a working LabVIEW system already and would like to integrate it into a bigger EPICS system.
Details
- ActiveX Interface
- Example: MS Visual Basic
- Example: LabVIEW
- Example: MS Excel
- Where to get?
I'll send you the server and example files.
Please specify if you want it zipped via EMail or put on some ftp server or ...- Changes (read 'buglist')
![]()
Requests/comments?
E-Mail: Kay-Uwe Kasemir
Last update: 05/17/2001