Arduino UNO关于GRBL限位开关接线方式说明

这篇博客介绍了GRBL v1.1h版本的默认管脚配置,包括13号管脚的主轴方向、12号的Z轴限位、11号的主轴使能、10号的Y轴限位和9号的X轴限位。同时,讨论了NC和NO限位开关的接线方式,强调了NC开关在安全性上的优势。针对限位开关动作时可能出现的电平抖动问题,提出了硬件低通滤波和软件防抖两种解决方案,其中硬件防抖通过RC滤波器实现,软件防抖则利用Grbl的看门狗定时器。
摘要由CSDN通过智能技术生成

说明:本次采用的是v1.1h版的GRBL,默认开启模拟主轴功能,默认管脚定义如下

13

Spindle direction

12

Z limit

11

Spindle EN

10

Y limit

9

X limit

关于上拉电阻和下拉电阻的说明_zhigedali的博客-CSDN博客

采用内部上拉电阻功能,针对NC和NO开关,接线方式如下:

说明:

对于NC开关,开关串联,常态下管脚为低电平,如果碰到一个开关,则电平就会被拉高,且一旦线路有断开的情况,立马就能检测到,更安全。

对于NO开关,开关并联,常态下管脚为高电平,如果碰到一个开关,则电平就会被拉低,该接线方式虽然简单,但是却无法检测线路是否有断开状态。

如何解决限位开关瞬间动作时的高低压电平抖动问题

参考链接

由于限位开关的机械特性,它并不是简单地开关,在波形上看,开关瞬间有剧烈的抖动,高低电平可能会出现好多次,这会导致机器做出错误响应,对此有两种解决办法:

硬件防抖:可以在开关信号输入到Arduino前进行低通滤波,因为开关抖动频率相对开关方波频率高得多,所以加入低通滤波会使波形变得平缓。可以用最简单的RC滤波来实现。如外接一个4.7K的电阻到5v,再接一个100nF的电容到GND,额外的上拉电阻和电容有明显的抑制噪声的作用。

软件防抖:可以在第一次收到开关变化的信号时,添加一个短暂延时(几十毫秒),观察这段时间的累积结果。Grbl是用看门狗定时器来完成这部分工作的,这一部分功能是在limits.c中实现。部分代码注释如下

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值