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  2016  2017  <20182019  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  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: asynPortDriver and read/write access to record fields
From: "Arnold, Ned D." <[email protected]>
To: Dr. Bastian Löher <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Thu, 20 Sep 2018 13:50:32 +0000

Hi -


Something I've done in the past to get medm to properly plot "dynamic array sizes" was to define the x & y arrays as the longest required, and then if the actual array contents is smaller, fill the the remaining portion of the array with the last valid value.  Auto-scale then works for both X and Y.  I implemented the "fill-array" in a sequence program running in the IOC ... which has access to all the necessary info. 


  Ned




From: [email protected] <[email protected]> on behalf of Dr. Bastian Löher <[email protected]>
Sent: Thursday, September 20, 2018 02:25 AM
To: Johnson, Andrew N.
Cc: [email protected]
Subject: Re: asynPortDriver and read/write access to record fields
 
Dear Andrew,

the thing is I'm plotting one waveform vs. another (amplitude vs. time).
The 'count' field, therefore, is of no use, if you meant that one.

Bastian

On 180919-1847, Johnson, Andrew N. wrote:
> I may be confusing this with something else, but I thought that recent
> versions of MEDM allowed you to provide a PV name for the length of a
> plot which you would point to the NORD field of the waveform (or with
> older versions of Base that didn't post monitors on NORD you might need
> to use an additional longin record to make the NORD value available).
>
> - Andrew
>
>
> On 09/19/2018 01:40 PM, Mark Rivers wrote:
> > Another option is to load your waveform record with NELM being as large as you would ever want.  You can then set HOPR to be the last channel actually used in that sweep.  You do need to replot the display if HOPR changes, but that can be done with a single medm button.
> >
> > You could also use medm for control and a simple Python or other language GUI just for the trace plot.
> >
> > Mark
> >
> >
> >
> > -----Original Message-----
> > From: Loeher, Bastian Dr. <[email protected]>
> > Sent: Wednesday, September 19, 2018 1:33 PM
> > To: Mark Rivers <[email protected]>
> > Cc: [email protected]
> > Subject: Re: asynPortDriver and read/write access to record fields
> >
> > Dear Mark,
> >
> > thanks for the quick response.
> >
> > Looks like I have two options:
> >
> > a) Fixed axes & number of samples to display (so interpolation / downsampling needed).
> >
> > b) Look into using a more modern DM.
> >
> > Option a) I can try out, because for simple standalone systems MEDM still is a very suitable tool.
> >
> > For option b) I'm currently looking into using phoebus.
> >
> > Bastian
> >
> > On 180919-0104, Mark Rivers wrote:
> >>> When using MEDM to display the waveform using the Cartesian plot, one must (so I understand) adjust the 'LOPR', 'HOPR', and 'NELM' fields of the record for the time X axis.
> >>
> >> I believe that NELM cannot be changed after iocInit.  It would need to be large enough for the largest waveform you will display.
> >>
> >> You can change HOPR and LOPR for the X and Y waveform records to change the displayed range in medm.  However, medm does not automatically rescale the plot when you change HOPR and LOPR, so you must close and re-open the plot when you change those.
> >>
> >> Mark
> >>
> >>
> >> -----Original Message-----
> >> From: [email protected] <[email protected]> On
> >> Behalf Of Dr. Bastian Löher
> >> Sent: Tuesday, September 18, 2018 2:44 PM
> >> To: [email protected]
> >> Subject: asynPortDriver and read/write access to record fields
> >>
> >> Hi,
> >>
> >> I'm in the process of implementing an asynPortDriver based driver for a USB scope (Picotech 2000 series). The driver is based on the testAsynPortDriver example.
> >>
> >> Since a real device is connected the driver produces waveforms, where the length and axis ranges depend on the user settings (i.e. capture time, sampling frequency and so on).
> >>
> >> ---
> >>
> >> When using MEDM to display the waveform using the Cartesian plot, one must (so I understand) adjust the 'LOPR', 'HOPR', and 'NELM' fields of the record for the time X axis.
> >>
> >> When taking the axis range in MEDM from the channel, then the waveform will be clipped (when NELM is too small), or it will only occupy part of the display (when NELM is too large).
> >>
> >> I also tested auto-scale of the axis, but in that case also the axis labels are never changed.
> >>
> >> ---
> >>
> >> What is the standard procedure here? Should I use something else than MEDM? Or is it possible to get to work by changing my code/record database?
> >>
> >> ---
> >>
> >> I've seen an old post using intermediate 'longout' records, but they didn't seem to work as intended.
> >> (https://epics.anl.gov/tech-talk/2015/msg00289.php)
> >>
> >>
> >> Thanks
> >>
> >> Bastian
> >>
> >
> > --
> > Dr. Bastian Löher
> >
> > Data acquisition
> > Experiment controls
> > Detector development
> >
> > R3B - Relativistic reactions with radioactive beams Gamma spectroscopy
> >
> >
> > -- TU Darmstadt ---------------------------------------------------------------
> >
> > Room / Raum: S2|14 420
> > Phone / Telefon: +49 6151 75373
> > Mobile / Mobil: +49 162 5467038
> > E-Mail: [email protected]
> >
> > Institut für Kernphysik
> > Technische Universität Darmstadt
> > Schlossgartenstrasse 9, 64289 Darmstadt
> > http://www.ikp.tu-darmstadt.de
> >
> >
> > -- GSI ------------------------------------------------------------------------
> >
> > Room / Raum: SB3 3.199, KBW 5.15, SH4 2.007 Phone / Telefon: +49 6159 71 2739, 1803, 3272
> > Fax: +49 6159 71 3007
> > Mobile / Mobil: +49 162 5467038
> > E-Mail: [email protected]
> >
> > GSI Helmholtzzentrum für Schwerionenforschung GmbH Planckstraße 1, 64291 Darmstadt, Germany, www.gsi.de
> >
> > Commercial Register / Handelsregister: Amtsgericht Darmstadt, HRB 1528 Managing Directors / Geschäftsführung:
> > Professor Dr. Paolo Giubellino, Ursula Weyrich, Jörg Blaurock Chairman of the Supervisory Board / Vorsitzender des GSI-Aufsichtsrats:
> > State Secretary / Staatssekretär Dr. Georg Schütte
> >
>
> --
> Arguing for surveillance because you have nothing to hide is no
> different than making the claim, "I don't care about freedom of
> speech because I have nothing to say." -- Edward Snowdon

--
Dr. Bastian Löher

Data acquisition
Experiment controls
Detector development

R3B - Relativistic reactions with radioactive beams
Gamma spectroscopy


-- TU Darmstadt ---------------------------------------------------------------

Room / Raum: S2|14 420
Phone / Telefon: +49 6151 75373
Mobile / Mobil: +49 162 5467038
E-Mail: [email protected]

Institut für Kernphysik
Technische Universität Darmstadt
Schlossgartenstrasse 9, 64289 Darmstadt
http://www.ikp.tu-darmstadt.de


-- GSI ------------------------------------------------------------------------

Room / Raum: SB3 3.199, KBW 5.15, SH4 2.007
Phone / Telefon: +49 6159 71 2739, 1803, 3272
Fax: +49 6159 71 3007
Mobile / Mobil: +49 162 5467038
E-Mail: [email protected]

GSI Helmholtzzentrum für Schwerionenforschung GmbH
Planckstraße 1, 64291 Darmstadt, Germany, www.gsi.de

Commercial Register / Handelsregister: Amtsgericht Darmstadt, HRB 1528
Managing Directors / Geschäftsführung:
Professor Dr. Paolo Giubellino, Ursula Weyrich, Jörg Blaurock
Chairman of the Supervisory Board / Vorsitzender des GSI-Aufsichtsrats:
State Secretary / Staatssekretär Dr. Georg Schütte

References:
asynPortDriver and read/write access to record fields Dr. Bastian Löher
RE: asynPortDriver and read/write access to record fields Mark Rivers
Re: asynPortDriver and read/write access to record fields Loeher, Bastian Dr.
RE: asynPortDriver and read/write access to record fields Mark Rivers
Re: asynPortDriver and read/write access to record fields Johnson, Andrew N.
Re: asynPortDriver and read/write access to record fields Dr. Bastian Löher

Navigate by Date:
Prev: RE: areaDetector driver for webcams? Heesterman, Peter J
Next: RE: time series circular buffer Hinko Kocevar
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: asynPortDriver and read/write access to record fields Dr. Bastian Löher
Next: Re: asynPortDriver and read/write access to record fields Loeher, Bastian Dr.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 20 Sep 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·