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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Modbus |
From: | Zenon Szalata <[email protected]> |
To: | Mark Rivers <[email protected]>, "[email protected]" <[email protected]> |
Date: | Thu, 16 May 2013 11:38:00 -0700 |
Hi Mark,I am still working on an IOC to control stepper motors with Beckhoff devices (KL2431 and KL2541). I am using your modbus (R2.2) support module. Beckhoff devices are called bus terminals. A bus terminal has two types of registers. One is a small set, typically 2 and in the case of the KL25x1 terminals 3, that one can read from or write to directly. Let's call them visible. The poll thread in modbus does IO to these registers. The other type is what I call "internal" or invisible registers. One can access these registers via the visible registers only. Hence, multiple operations need to be performed on the visible registers to either read from or write to an invisible register. I find that while I am writing to one of the invisible registers, at times the periodic reading from the visible registers in the poll thread, interferes with the writing process.
I assume that I can control the poll timeout using your poll_delay.template record. So, I am thinking that I need to change the poll timeout for the terminal I am trying to write to to "disable" poll reading from the terminal. I use seq records to sequence these read and write operations and I could add at the beginning of the sequence a request to set the timeout, to let's say 10 seconds, and at the end of the sequence restore the original timeout.
Is the thread woken up when a new timeout value is written out to the modbus module? Is there a better way to make sure that the poll reads do not interfere with the reading from and writing to the invisible registers?
Thanks Mark, Zen