线程评级:
Item.posewrt()没有像机器人预期的那样工作
# 1
当在两个参考帧之间调用PoseWrt()时,如果一个帧附加到机器人,则抛出targe背叛错误。

附加的.py和.rdk文件能够可靠地重现这个问题。

注意:我认为即使没有目标到达错误发生,当调用Item嵌套在机器人下面时,PoseWrt()也不会返回预期的坐标。当我发现targe叛逆错误问题时,我实际上正在调查这个问题。


更新:我找到了一个变通办法(如下)。现在这工作得很好,但我想在将来重新使用这个API。
代码:
Def pose_wrt(子,父):
childPose = child.PoseAbs()
parentPose = parent.PoseAbs()
返回parentPose.inv() * childPose .inv


附加文件
.rdk poseWrtBug.rdk(大小:2.18 MB /下载:9)
. py bugReport.py(大小:274字节/下载:8)
你完全正确!

对于目标到达误差,我认为机器人是同步的,但还没有移动,因为线轴的关节值在0mm,而下范围限制为5mm(即使菜单中显示为5)。
将线性轴移到10,然后移回5,然后运行脚本,删除异常。

然而,这是真实的,PoseWrt与同步轴是不能正常工作。实际上,它应该抛出一个输入错误。
PoseWrt增加了将工具pose wrt添加到树中任何位置的另一项的能力,这是您的代码不允许的。
尝试pose_wrt(robot, frame2)或pose_wrt(tool, frame2),而活动帧是frame1。
这是因为robot. pose()将姿态(包括工具)wrt返回到ACTIVE参考系,而不是机器人基础!

由于只有机器人和工具对. pose()和. poseabs()有奇怪的行为,所以我修改了代码,使两帧跳过整个过程,并在使用两帧时毫无问题地返回姿势(就像你的代码一样)。

至于PoseWrt与同步轴,行为改变了一点,当你有一个转盘和一个线性轨道同步,一般的解决方案不再适用。目前,如果你使用机器人或工具物品,它仍然会抛出。

下面是测试代码:

代码:
从robodk导入*
从robodk。Robolink导入*

RDK = robolink.Robolink()
frame1 = RDK。Item('Frame 1', ITEM_TYPE_FRAME)
frame2 = RDK。Item('Frame 2', ITEM_TYPE_FRAME)
机器人= RDK。(“机器人”,ITEM_TYPE_ROBOT)项

pose = robot.Pose()
pose_abs = robot.PoseAbs()
而真正的:
print (str (Pose_2_KUKA (frame2.PoseWrt(第一帧))))
print (str (Pose_2_KUKA (frame1.PoseWrt (frame2))))

#下面将抛出,除非你取消同步ext. axis
#它也会抛出,因为线性轨道的当前轴值低于下限(0 vs 5)。将它移回5,它会工作。
打印(str (Pose_2_KUKA (robot.PoseWrt (RDK.ActiveStation ()))))
print (str (Pose_2_KUKA (robot.PoseWrt(第一帧))))
print (str (Pose_2_KUKA (robot.PoseWrt (frame2))))

您可以通过下面的链接检索最新版本的robolinkutils,或者等待下一次更新。
https://github.com/RoboDK/RoboDK-API/blo...ls.py#L161
有关RoboDK及其功能的有用信息,请访问我们的爱游戏ayx高尔夫球在线文档通过观看我们的教程YouTube频道
# 3
你好,杰里米,谢谢你照顾这个!

似乎在召唤PoseAbs ()从一个工具是可能的,但行为不同于其他对象返回法兰的位置,即使它是从一个工具调用。我想很多(大多数?)用户都希望如此PoseAbs ()从工具调用将返回TCP。

我建议在文档中添加一个说明PoseAbs ()(也许还有PoseWrt ())来防止其他人成为我们讨论过的行为的受害者。//www.x7093.com/doc/en/PythonAPI/robo...em.PoseAbs
# 4
事实上,应该更好地记录它。事实上,我添加了PoseWrt,以确保我们有一个简单的方法来检索姿势,而不需要考虑这些条件。

顺便说一下,我是Sam:)
有关RoboDK及其功能的有用信息,请访问我们的爱游戏ayx高尔夫球在线文档通过观看我们的教程YouTube频道
# 5
对不起,我刚才在和杰里米说话!

谢谢,山姆。




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