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  <20112012  2013  2014  2015  2016  2017  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  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Epics C# Library problems
From: "Bertrand Alain" <[email protected]>
To: "Perrier Pierre" <[email protected]>, <[email protected]>
Date: Thu, 22 Sep 2011 08:54:13 +0200

For a simple get you should do the following:

 

EpicsClient client = new EpicsClient();

client.Config.ServerList.Clear();

client.Config.ServerList.Add("129.129.130.88:5064"); // replace with the broadcast address or with the server / gateway one

EpicsChannel<int[]> record = client.CreateChannel<int[]>("TOTO:INT");

int[] data = "">

for (int i = 0; i < data.Length; i++)

{

    if (i != 0)

        Console.Write(", ");

    Console.Write(i);

}

Console.WriteLine("");

 

 

For a monitor:

 

static void Main(string[] args)

{

    EpicsClient client = new EpicsClient();

    client.Config.ServerList.Clear();

    client.Config.ServerList.Add("129.129.130.88:5064"); // replace with the broadcast address or with the server / gateway one

    EpicsChannel<int[]> record = client.CreateChannel<int[]>("TOTO:INT");

    record.MonitorChanged += new EpicsDelegate<int[]>(record_MonitorChanged);

    Console.ReadKey();

}

 

static void record_MonitorChanged(EpicsChannel<int[]> sender, int[] newValue)

{

    for (int i = 0; i < newValue.Length; i++)

    {

        if (i != 0)

            Console.Write(", ");

        Console.Write(newValue[i]);

    }

    Console.WriteLine("");

}

 

Personally I never use the Get function.

 

Cheers,

 

Alain Bertrand

 

 

 


From: [email protected] [mailto:[email protected]] On Behalf Of Perrier Pierre
Sent: Wednesday, September 21, 2011 4:40 PM
To: [email protected]
Subject: Epics C# Library problems

 

Hello,

 

I’m trying the EPICS C# Library in order to create a client to manage a Camera IOC. Unfortunately, I have some problems with the monitoring of waveforms records.

 

I want to monitor a waveform PV which contains data of a 640x480 gray scale picture (integers from 0 to 255). So it’s a large waveform of 307,200 elements. When  I process the following code, I catch a “Server did not respond in Time to Get Request” exception ( or , in debug mode,  the code doesn’t return).

 

 

EpicsClient m_client = new EpicsClient();

try{

                EpicsChannel<int> m_acquisitionCamera = m_client.CreateChannel<int>(“CameraJAI :Acquisition”) ;

                Int[] l_data = m_acquisitionCamera.Get<int[]>() ; 

} catch (Exception e){

                System.Console.WriteLine(e.Message) ;

                System.Console.WriteLine(e.StackTrace) ;

}

 

Is there a way to fix this problem ? Any advices ? In order to really create a monitor, someone can show me a short sample of an EPICS C# monitor which manages an array record.

 

 

Best Regards,


Pierre PERRIER

Stagiaire - MCO LIL

Sopra group.

Parc Innolin
9 rue du Golf 33700 Merignac
Phone : +33 (0)5 56 12 79 59
[email protected] - www.sopragroup.com

 

Ce message peut contenir des informations confidentielles dont la divulgation est à ce titre rigoureusement interdite en l'absence d'autorisation explicite de l'émetteur. Dans l'hypothèse où vous auriez reçu par erreur ce message, merci de le renvoyer à l’émetteur et de détruire toute copie.

P Pensez à l’environnement avant d’imprimer.

 


Replies:
RE: Epics C# Library problems Perrier Pierre
References:
Epics C# Library problems Perrier Pierre

Navigate by Date:
Prev: Re: BOY Data Browser Issues Craig.Haskins
Next: RE: Epics C# Library problems Perrier Pierre
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Epics C# Library problems Perrier Pierre
Next: RE: Epics C# Library problems Perrier Pierre
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·