1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 <2018> 2019 2020 2021 2022 2023 2024 2025 | 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 <2018> 2019 2020 2021 2022 2023 2024 2025 |
<== 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 |