LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

EPICS callBack and Array of Strings

Solved!
Go to solution

Hi guys,

   I am delving into LabVIEW's EPICS server for the first time and have a couple of questions.

Does LabVIEW 2013 with the DSC module support EPICS callBack? the only reference I can find is a paper from 2005 where it wasn't supported.

EPICS also supports a waveform of strings is this available in LabVIEW?

Thanks for any help

0 Kudos
Message 1 of 6
(2,795 Views)

Somehow this is a duplicate post. I will respond to the other one:

http://forums.ni.com/t5/LabVIEW/EPICS-callBack-and-Array-of-Strings/m-p/2570677

Joey S.
Senior Product Manager, Software
National Instruments
0 Kudos
Message 2 of 6
(2,763 Views)

Ah, I see the other post no longer exists. Now I will answer your question here!

 

First, your best resource for getting started is this community example:

Interactively Configuring an EPICS Client & Server Using LabVIEW DSC Module

 

Second, no, for the EPICs I/O client we do not have an array of strings as a supported data type:

EPICSIOClient.PNG

While an array of strings is a supported data type for a shared variable, this is not an option in the current LabVIEW DSC implementation.

 

Can you please clarify what you mean by a "callback"? Are you referring to an asynchronous read on the part of a client that is initiated by the server when a value is updated? Please clarify so that I can give you an accurate answer.

Joey S.
Senior Product Manager, Software
National Instruments
0 Kudos
Message 3 of 6
(2,754 Views)

Joey,

  Thanks for getting back to me. I am using the Interactively Configuring an EPICS Client & Server Using LabVIEW DSC Module example, I was hoping I was missing somethig with the "Array of Strings" as EPICS does support this variable type, this is something I can work around however. I haven't worked with EPICS before so I will quote for Lawrence Berkeley National Lab.  

 

"CA also uses a technique called `notify by exception' or callback (also called `publish and subscribe'). Once a client has expressed an interest in certain data to a server, the server notifies the client only when the data changes. This not only minimizes traffic, but signals both the health of the server and the freshness of the data."  from http://csg.lbl.gov/EPICS/OverView.html

 

So I believe I am looking for a "asynchronous read on the part of a client that is initiated by the server when a value is updated"

Thanks for the help,

0 Kudos
Message 4 of 6
(2,748 Views)
Solution
Accepted by Rocfire

Hi Rocfire,

 

This "asynchronous read" or callback method of updating the client is the default read method for the EPICS I/O server.

 

As we see when monitoring the shared variables in Distributed System Manager, the Client Values ("Freq" and "Amp") automatically update from the server, without a VI polling the values.

 

I posted a Jing video showing this here:

http://screencast.com/t/SAQIVBq4Yj

Joey S.
Senior Product Manager, Software
National Instruments
0 Kudos
Message 5 of 6
(2,731 Views)

Joey,

Thanks for this. The APS EPICS documents had me confused. I was misunderstanding callBack on the sever side and the callBack*** stuff on the client side.

0 Kudos
Message 6 of 6
(2,684 Views)