EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Native NI LabVIEW/EPICS integration
From: Mark Rivers <[email protected]>
To: Luca Cavalli <[email protected]>, "[email protected]" <[email protected]>
Date: Thu, 10 Nov 2016 14:56:49 +0000
Hi Luca,

Here is a database idiom that can be used for that:

For write you write to the FileNumber PV.  It does the actual I/O through FileNumber_write.

When LabView updates the value FileNumber_RBV is changed.  That will update FileNumber without processing FileNumber_write again.

************************************************
record(longout, "$(P)$(R)FileNumber")
{
    field(PINI, "YES")
    field(OUT, "$(P)$(R)FileNumber_write PP")
    field(VAL, "1")
}

record(longout, "$(P)$(R)FileNumber_write")
{
    field(SDIS, "$(P)$(R)FileNumber_Sync.PACT")
    field(DISV, "1")
    field(DTYP, "asynInt32")
    field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))FILE_NUMBER")
}

record(longin, "$(P)$(R)FileNumber_RBV")
{
    field(DTYP, "asynInt32")
    field(INP,  "@asyn($(PORT),$(ADDR),$(TIMEOUT))FILE_NUMBER")
    field(SCAN, "I/O Intr")
    field(FLNK, "$(P)$(R)FileNumber_Sync")
}

record(longout, "$(P)$(R)FileNumber_Sync")
{
    field(DOL,  "$(P)$(R)FileNumber_RBV NPP")
    field(OMSL, "closed_loop")
    field(OUT,  "$(P)$(R)FileNumber PP")
}
************************************************

Mark



________________________________________
From: [email protected] [[email protected]] on behalf of Luca Cavalli [[email protected]]
Sent: Thursday, November 10, 2016 8:38 AM
To: [email protected]
Subject: Native NI LabVIEW/EPICS integration

Dear all,

I have to control a NI PXI device.
The software is written in LabVIEW using native NI LabVIEW/EPICS
interface,unfortunately it seems to only support a subset of PV properties (no
EGU, limits etc.).

My idea is to write a tiny IOC that maps the "raw" LabView variable (e.g.
PV_NAME_RAW) to a complete EPICS PV (e.g. PV_NAME) with precision, EGU, alarms
and limits.

[My IOC] <--PV_NAME--> [LV Mapper IOC] <--PV_NAME_RAW--> [NI PXI]

The problem is that my PV must be both readable and writable at the same time.
I.e. when I write the PV_NAME variable I want also the PV_NAME_RAW variable to
be updated, and when LabVIEW modifies PV_NAME_RAW value I want PV_NAME to
reflect the change.
How can I define my db in LV Mapper IOC? I'm a bit lost, shall I use an input
record or output record?

So far I only achieved single direction control (either input or output, not
both at the same time).

Thanks for your help.

Luca


________________________________

<< Le informazioni contenute in questo messaggio di posta elettronica e relativi allegati sono riservate e confidenziali e ne è vietata la diffusione in qualunque modo eseguita. Qualora Lei non fosse la persona a cui il presente messaggio è destinato, La invitiamo ad eliminarlo e a darcene gentile comunicazione. Quanto precede ai fini del rispetto delle Legge 675/96 e del Decreto Legislativo 30/06/2003 n.196, sulla tutela dei dati personali >>

<< This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify us immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person: to do so could be a breach of confidence. Thank you for your co-operation. Please contact our IT Helpdesk on +3902380481 or email [email protected] if you need assistance >>




Replies:
Re: Native NI LabVIEW/EPICS integration Luca Cavalli
References:
Native NI LabVIEW/EPICS integration Luca Cavalli

Navigate by Date:
Prev: Native NI LabVIEW/EPICS integration Luca Cavalli
Next: Re: Opinion on timing system for synchrotron beamlines Márcio Paduan Donadio
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Native NI LabVIEW/EPICS integration Luca Cavalli
Next: Re: Native NI LabVIEW/EPICS integration Luca Cavalli
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Nov 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·