Skip to content

epics-extensions/CALab

Repository files navigation

CA Lab - LabVIEW (Realtime) + EPICS
Download

Overview

What is CA Lab?
It is a

  • user-friendly,
  • lightweight and
  • high performance
    interface between LabVIEW™ and EPICS.

This interface uses

  • proven EPICS BASE libraries (V7),
  • a CA Lab interface library
  • and polymorphic VIs
    to access EPICS variables.

Creating, reading and writing EPICS variables is very simple now. Also, user events for EPICS variables can be implemented easily.
EPICS time stamp, status, severity, and optional PV fields (properties) are bound into a resulting data cluster. You avoid inconsistent data sets.
It's easy to create an executable of your VI.

CA Lab works with Windows®, Linux and Realtime Linux.
This interface requires only LabVIEW™.

To use this interface, it's not necessary to create any LabVIEW™ project nor to use external services. CA Lab can be used directly.

CA Lab is open source and works with all LabVIEW™ versions from 2019 up to the current version.
It has been tested under Windows 7®, Windows 10/11® , Linux (RHEL 8.5, Ubuntu 20.04/22.04) and NI Linux RT (2022).

schema of CA Lab interface
schema of CA Lab interface

Any VI can use caLabGet.vi to read or caLabPut.vi to write EPICS variables.
Use caLabEvent.vi to create user events for any EPICS variables.
Call CaLabInfo.vi to get context information of the CA Lab library.
You can use CaLabSoftIOC.vi to create new EPICS variables and start them.

These CA Lab VIs call the interface library 'caLab', which uses EPICS base libraries 'ca' and 'Com' to provide Channel Access functions.

CA Lab library builds an internal PV cache and monitors PVs to improve the read and write access and reduce network traffic. Optional, you can disable caching.

CA Lab includes a EPICS Base package (caget, caput, camonitor, softIOC and more).

🔗download Windows® setups and source code releases
🔗more info and examples