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: | Question Regarding HLS/LLS Settings and DIR Values |
From: | Zhibang Shen via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Mon, 20 Jan 2025 21:09:03 +0800 (GMT+08:00) |
Hi,
I am using motor-R7-1.
In the motor submodule developed by myself, I check the status of the hard limit switch and directly set motorStatusHighLimit_ and motorStatusLowLimit_.
// Read the limit status
//
status = pC_->readReg16(axisNo_+1, LIMIT, &read_val, DEFAULT_CONTROLLER_TIMEOUT);
//low limit
limit = (read_val & 0x2);
setIntegerParam(pC_->motorStatusLowLimit_, limit);
//high limit
limit = (read_val & 0x1);
setIntegerParam(pC_->motorStatusHighLimit_, limit);
And I find something interesting that when the motor hits the high limit switch, and the DIR is set to Positive, the HLS will be illuminated. And if I switch the DIR to Neg, without moving the motor, the LLS will become 1 and the HLS will be 0.
Is the logic intentionally designed this way, or is it because my code is not good enough?
Zhibang Shen
Institute of High Energy Physics, Chinese Academy of Sciences
19B Yuquan Road, Shijingshan District, Beijing, China
100049