开源改变世界!!

hal 引脚在启动时未正确更新 #139

推推 grbl 2年前 (2023-01-29) 254次浏览
打开
gmoccapy 打开了这个问题 2016 年 8 月 14 日 · 7条评论
打开

hal 引脚在启动时未正确更新#139

gmoccapy 打开了这个问题 2016 年 8 月 14 日 · 7条评论

注释

hal 引脚在启动时未正确更新 #139
合作者
gmoccapy 评论了 2016 年 8 月 14 日  

我有一个外部 estop 和一个瞬时开关来打开我的机器。
这是 hal 文件的相关部分:

###############################################
#  Estop circuit and machine enable signals   #
#            connect them to pins             #
#           (c) Norbert Schechner             #
###############################################

# if the whatchdog has bit, we must enable estop
# that is why we include watchdog in our estop circuit
loadrt not          names=watchdog
addf   watchdog     servo-thread
net    dog_sig_in   watchdog.in                   <=   hm2_7i76e.0.watchdog.has_bit
net    dog_sig_out  watchdog.out                  =>   hm2_7i76e.0.7i76.0.0.output-08

# ESTOP Switch is between output-08 and input-20 to signal LinuxCNC estop is OK
# you may have to connect additional hardware to ensure security, like termal sensor switches, etc

# if OK we set an output to signal we are ready to enable the machine
# use output to enable the external allowing to enable the machine
net    estop_ext    iocontrol.0.emc-enable-in     <=   hm2_7i76e.0.7i76.0.0.input-20
net    estop_out    iocontrol.0.user-enable-out   =>   hm2_7i76e.0.7i76.0.0.output-09

# Enable button is connected between output-09 and input-21

# machine enable signals
# enable the servo amplifieres or stepper drivers with this output
net    ena-machine  hm2_7i76e.0.7i76.0.0.input-21 =>   halui.machine.on
net    enabled      motion.motion-enabled         =>   hm2_7i76e.0.7i76.0.0.output-10

Whatchdog.has_bit 连接到 not.in
not.out 到 output-08
output-08 到 estop-switch
estop-switch 到 input-20
input-20 到 iocontrol.0.emc-enable-in
iocontrol.0.emc-enable -out 到 output-09
output-09 到 momentary-switch
momentary-switch 到 input-21
input-21 到 halui.machine.on

如果我按下 estop(急停电路开路/断开)启动机器
并退出急停,关闭电路,输出 09 变为真,我可以使用瞬时开关启用我的机器。

如果我在 ESTOP 电路正常的情况下启动我的机器,则输出 09 不会变高,输出 08 变高。我需要按下 estop,再次释放它以更新 hal 引脚状态。

恕我直言,这种行为是不对的。

诺伯特

hal 引脚在启动时未正确更新 #139
成员

@gmoccapy你说哪个组件有问题?该组件以您认为不正确的方式处理哪些输入或输入转换?

顺便说一句,我修复了你的标记。在代码块前后使用仅包含“~~~~”的一行,记住你可以在提交前“预览”,我相信你也可以在提交后编辑文本

hal 引脚在启动时未正确更新 #139
合作者作者

你好耶普勒,

恕我直言,hm2_eth 驱动程序不正常,因为它没有正确更新 hal 引脚,它只更新更改时的输出,但启动时不会发生这种情况。

诺伯特

hal 引脚在启动时未正确更新 #139
合作者

您真的不能以这种方式使用 FPGA I/O 看门狗。如果你有看门狗事件,它基本上是
致命的,你必须重新启动 LinuxCNC(你当然不能打开输出 8,因为在看门狗咬后
所有 I/O 将被禁用并处于关闭状态

hal 引脚在启动时未正确更新 #139
合作者作者

@pcw-mesa,

好的,我明白了,但是如果我将配置更改为

setp hm2_7i76e.0.7i76.0.0.output-08 1

我有相同的行为,如果我从关闭的 estop 电路开始并通过 iocontrol.0.user…,它应该将输入 20 设置为 True,它应该将输出 09 设置为 TRUE,但这并没有发生!

诺伯特

hal 引脚在启动时未正确更新 #139
合作者

我无法复制这个
I/O 的任何初始状态都被正确复制到输出我有一个测试设置,7I76E 输出通过电线 (0 到 0、1 到 1 等)
环回到 7I76E 输入,任一起始条件都按预期工作:

setp hm2_7i76e.0.7i76.0.0.output-00 false
net io0 hm2_7i76e.0.7i76.0.0.input-00-not hm2_7i76e.0.7i76.0.0.output-01
net io1 hm2_7i76e.0.7i76.0.0.input-01-not hm2_7i76e.0.7i76.0.0.output-02
net io2 hm2_7i76e.0.7i76.0.0.input-02-不是 hm2_7i76e.0.7i76.0.0.output-03
net io3 hm2_7i76e.0.7i76.0.0.input-03-不是 hm2_7i76e。 0.7i76.0.0.output-04

setp
hm2_7i76e.0.7i76.0.0.output-00 true
net io0 hm2_7i76e.0.7i76.0.0.input-00-not hm2_7i76e.0.7i76.0.0.output-01
net io1 hm2_7i76e 一样工作.0.7i76.0.0.input-01-not hm2_7i76e.0.7i76.0.0.output-02
net io2 hm2_7i76e.0.7i76.0.0.input-02-not hm2_7i76e.0.7i76.0.0.output-03
net io3 hm2_7i76e.0.7 i76.0.0.input-03-不是 hm2_7i76e.0.7i76.0.0.output-04

您是否检查在您的失败案例中是否实际设置了输出 9?

hal 引脚在启动时未正确更新 #139
合作者作者

我会做更多的测试,然后再回到那个问题上。

诺伯特

hal 引脚在启动时未正确更新 #139
合作者作者

你好,

我详细地跟踪了这些信号,发现问题出在 iocontrol 上。

按照第一篇文章中的描述连接!

如果我在启用 ESTOP(开路)
的情况下启动机器,信号运行良好,直到 iocontrol.0.emc-enable-in

所以这里一切正常,现在我关闭 ESTOP 电路(重置 estop)并且信号通过 iocontrol 到达 output-09,这样就可以了!

如果我在复位模式下使用 ESTOP 启动 linuxcnc(电路闭合),我确实希望信号也能到达 output-09,但它只会到达 iocontrol.0.emc-enable-in。

iocontrol.0.emc-enable-out 没有变高!

打开和关闭 ESTOP 电路解决了问题,但恕我直言,如果输入高,输出也应该高。

bug还是种族冲突?

诺伯特

hal 引脚在启动时未正确更新 #139 jepler 改了标题 hal 引脚在启动时未正确更新 hal 引脚在启动时未正确更新 2017 年 6 月 9 日

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

3人参加
hal 引脚在启动时未正确更新 #139hal 引脚在启动时未正确更新 #139hal 引脚在启动时未正确更新 #139

喜欢 (0)