线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
奇怪的机器人的行为
# 1
大家好,
我从3天前就遇到了这个问题,我使用的是我已经使用了一段时间的相同的目标,由于某种原因,我多次得到这个结果(并不总是这样,这是奇怪的事情!)

(图片:zfyu1Tr.png)

由于某种原因,机器人像这样“移动到一个目标”,导致在到达另一个目标的瞬间出现目标到达错误……

我获取目标的方法是在python中使用一个目标和关节()…

一些线索:
  • 如果我按home键或双击另一个目标,它就会解决,但在模拟中随机出现这种错误有点烦人。
  • 如果我在没有解决这个“缺少末端执行器”的情况下再次启动模拟,模拟将永远无法解决它(我必须手动单击另一个目标或其他东西来继续与模拟工作)。
  • 这不是经常发生的事情,有时同一个目标会失败,有时会成功
  • 一开始我以为这是因为我使用了这个“快速模拟”按钮,但显然它在正常速度下也可以工作
  • 作为一个例子,我现在使用的目标的关节是:[3.866689730073942e-15, -34.97000000000012, 49.98000000000021, -180.0, 89.98000000000012, 4.899999999999999]

我发现函数关节()有时给我[0]作为输出,它完全随机…这是末端执行器像这样的时候
为什么会发生这种情况?
有时我甚至看到我在某些点得到随机值…
这些是真正的目标:
[90.06959930874842, -31.357419995960772, 48.86132893169375, -179.98196916229745, 92.50391938001054, 4.933559954336468]
[3.866689730073942e-15, -34.97000000000012, 49.98000000000021, -180.0, 89.98000000000012, 4.899999999999999]
[-90.08322292664911, - 38.629663502214158, 50.599363065999086, -180.02207805910126, 86.96985109152055, 185.06156270680367]

我通过使用“target. joint ().list()”函数获得它们,这3个函数一个接一个
到目前为止,我已经获得了这些值(没有任何改变的代码或robodk文件):

[90.06959930874842, -31.357419995960772, 48.86132893169375, -179.98196916229745, 92.50391938001054, 4.933559954336468]
[-68.44720797516314, -27.107083175689333, -123.57254432675144, -185.66612006158945, 105.22709451881367, 24.28729846069518]
[-44.08620666946378, -16.097001155342777, -139.78721242566786, -169.35049938840405, 103.00130532726904, 144.30815567574052]

[90.06959930874842, -31.357419995960772, 48.86132893169375, -179.98196916229745, 92.50391938001054, 4.933559954336468]
[0]
[0]

[90.06959930874842, -31.357419995960772, 48.86132893169375, -179.98196916229745, 92.50391938001054, 4.933559954336468]
[115.55605522238929, 12.547905540790575, -25.99433021314654, -6.423217595211129, 89.83045092467604, 29.70746207712574]
[-35.635014353035416, -7.102990669218356, -150.65863510476302, -171.19714795076837, 99.83751487292083, 151.7958193960372]

[90.06959930874842, -31.357419995960772, 48.86132893169375, -179.98196916229745, 92.50391938001054, 4.933559954336468]
[-70.03072682216714, -37.59967789889643, -106.84611524593066, -185.45467364787416, 111.30225692231483, 22.250798029091534]
[-47.58264685790497, -21.62606374374492, -132.3805777991316, -168.56651998410103, 105.4506513062006, 141.47198329861536]

我也意识到第一个目标总是正确的,但其他两个是随机的
# 3
看起来就像你试图将机器人移动到无效的位置(机器人关节无法触及或姿势无法触及)。

当这种情况发生时,当你请求机器人关节时,你可能会得到一个空数组[0]。

如果你能提供一个RoboDK文件和一个Python脚本给我们来重现这将是伟大的。如果这是一个我们可以复制的问题或bug,我们可以快速修复它。
# 4
但为什么它不是总是失败,而是只有几次失败呢?这是一个相当“简单”的目标,甚至不接近奇点:/
# 5
请提供一个我们可以复制的例子。你可能会积累计算错误,变成无法达到的目标。




浏览此线程的用户:
1客人(年代)