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: Is there any chance that I can change SCAN parameter dynamically? |
From: | Maren Purves <[email protected]> |
To: | Zhichu Chen <[email protected]> |
Cc: | [email protected] |
Date: | Wed, 31 Oct 2007 09:09:09 -1000 |
Chen -
Yes, you can change the SCAN value dynamically. Options would include:
- Place a menu widget on your EDM screen assigned to the <fanoutRecord>.SCAN field and have the user interactively set it to the optimum value
if you use a mbbo connected to the .SCAN field - and then use the mbbo in your EDM screen - you can set it so that it only allows 'legal' values for the SCAN period.
- Add a calcout record in your IOC database that calculates the optimum value (based on your description) and write this value to <fanoutRecord>.SCAN.
Have fun -
Ned
On Oct 31, 2007, at 8:50 AM, Zhichu Chen wrote:
Hi all,
It's an interesting story. I've written an EPICS program and gotten it run on an oscilloscope partly successfully and used EDM to get waveforms and set parameters through CA.
What I mean by "partly" is, I used a fanout record to get waveforms from four channels and set it scan periodically, say "1 second," and it works fine unless the time scale is bigger than 0.02---0.02 is fine and 0.05 will make the oscilloscope stun until I set the time scale back to less than 0.05.
Finally, I figure out and set the SCAN field of the fanout record to "5 second" and it works again. So I guess, since time scale is 1/10 of the whole waveform---whose unit is "second"---and there're four waveforms I registered. So it will take 40*timescale to get all I want because I've told that my product---DPO7054---used only one probe for all four channels. Before I get the waveform, the buffer is locked and will never refresh in my case.
I know I can set SCAN to a very big number but, when the time scale is small, I think it's not efficient then. I'm just wondering whether I could use another record to control it, or something alternative.