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: Reading data with StreamDevice - order of input records processing for scalcout not respected |
From: | Andrea Celentano via Tech-talk <tech-talk at aps.anl.gov> |
To: | Zimoch Dirk <dirk.zimoch at psi.ch> |
Cc: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Thu, 27 Feb 2025 22:31:08 +0100 |
Hi Dirk, thanks for your reply. I fully agree on the difficulty of using input links with PP together with asynchronous device support, as in StreamDevice. That’s why I used FLNK in my design, and this works properly: when I process the record "$(P):C1:BurstWord”, the processing sequence is "$(P):C1:BurstWord” —> "$(P):C1:Burst” —> "$(P):C1:BurstCalc” —> "$(P):C1:BurstCalcDouble” and $(P):C1:BurstString”. What I do not understand is why, for the following two records: record(scalcout, "$(P):C1:BurstStatus") { field(CALC, "BB") field(INAA, "$(P):C1:BurstStatusS PP") field(INBB, "$(P):C1:BurstCalcString") field(SCAN, "Passive") } record(stringout, "$(P):C1:BurstStatusS") { field(FLNK, "$(P):C1:BurstWord") field(OMSL, "closed_loop") field(OUT, "$(P):C1:BurstWord") field(VAL, "STATE") } when I process the first record, the order of the inputs is not respected. In particular, INBB retrieves immediately its value from "$(P):C1:BurstCalcString”, without waiting for the sequence triggered by INAA="$(P):C1:BurstStatusS PP” to be completed. According to manual (https://docs.epics-controls.org/en/latest/process-database/EPICS_Process_Database_Concepts.html#closing-an-analog-control-loop, description of Fig. 3), the CALC record, “it fetches the inputs for the calc record in order”. But here this does not seem to be the case.. Thanks, Andrea
|