[LinuxCNC/linuxcnc Issue#656] When switching from joint mode to axis mode, linuxcnc warns outside limits when on boundary

未分类 bolang 6个月前 (10-15) 36次浏览

Issue #656 | 状态: 进行中 | 作者: ftkalcevic | 创建时间: 2019-10-24


If when switching from joint mode to axis mode, and the axis is on the boundary, a warning is logged that you are starting outside limits, when you really aren’t.

This is a bug in emc/motion/control.c updateteleopwith_check().
There are two comparisons….


if ( (axis->extoffsettp.currpos + axis->teleoptp.curr_pos)
>= axis->maxposlimit) {
// positive error, restore savecurrpos
`

and

`
if ( (axis->extoffsettp.currpos + axis->teleoptp.curr_pos)
<= axis->minposlimit) {
// negative error, restore savecurrpos

which should use > and <, not >= and <= (Sorry - my github fork is broken, otherwise I would have submitted a pull request)


评论 (4)

#1 – rene-dev 于 2019-10-29

I have noticed this as well, but why was this not an issue before?


#2 – ftkalcevic 于 2019-10-29

> I have noticed this as well, but why was this not an issue before?

It’s only a warning, so I’m guessing it was just ignored.


#3 – rene-dev 于 2019-10-29

no, Im running master on all my machines, and suddenly I noticed getting those messages.


#4 – andypugh 于 2019-11-13

Is anyone looking at this? Perhaps a git bisect would help see what changed? Or maybe just make the suggested fix?


原始Issue: https://github.com/LinuxCNC/linuxcnc/issues/656

喜欢 (0)