自学内容网 自学内容网

openpnp - 执行M400命令后,超时错误的解决方法

openpnp - 执行M400命令后,超时错误的解决方法

概述

在X轴齿隙校正时,出现M400的命令超时错误。能重现。
查了资料,有人遇到过。看了github上的一个帖子(2017年)有讨论。
问题原因:

  1. openpnp无法确定一个命令执行完,到底要花费多长时间,只有控制器知道,所有只能设置命令超时值的参数来取这个参数。
  2. openpnp软件有bug,用了命令超时这个参数后,并没有结合轴的速度来估算机械动作停止的时间。
    应该在预估机械动作停止后,再看看是否命令超时,否则会导致这个超时参数不准。
    因为根据轴的运动速度的不同,动作需要的时间也不同。应该先根据轴的速度,来预估动作结束时间,然后在机械动作预估结束后,再用命令超时时间来看是否命令回包超时。这可以说是一个bug, 也可以说不是一个bug.

现在已经过了6年,官方没改这块。应该觉得这不是一个bug.

那个帖子提出的解决方法:将命令超时,设置为一个特别大的值(e.g. 100秒)。
试了一下好使。

笔记

在这里插入图片描述
我先改的命令等待时间,由默认的50ms改为了150ms, 对M400命令超时无帮助。
然后改的命令超时时间,有默认的5秒改为了60秒,这时就不会出现M400命令的超时错误了。

备注

M400命令超时,不局限于齿隙校正,移动等命令。
只要需要花时间来完成的命令都可能会遇到M400命令超时的情况。
在官方头铁的情况下,作为用户,只能是将命令超时值改的大一些(根据自己设备情况)。

END


原文地址:https://blog.csdn.net/LostSpeed/article/details/142682278

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!