机器人抓取平台搭建记录(三):KINOVA Gen2 七自由度机械臂零点设置

阴差阳错调机器人的时候,用到了零点设置。不想看前因后果的话,直接到最后看红色加粗部分。

祝顺利


我用的这台机械臂是我们实验室很早之前购置的,最初是用来做示教的。

在我拿它来用之前,我对其可以说是一无所知。

学了点基本操作,然后控制它到home position(能够开始工作的位置)之后,我发现它应该是有点问题。如图所示,我感觉它的方向反了。 

可能这样也是能够正常工作的,但是略微的强迫症让我有些不舒服。于是开始了踩坑之旅。


因为确实不是很了解这个机械臂,只能试探着来。

能够方便控制它的工具有两个,一个是手柄,一个是官方SDK。

我的想法是,利用官方的SDK重新设置其home position。

一顿摸索之后,我觉得可能能够这样操作【实际操作下来,是可以的,但是存在个人尚无法解决的问题。所以,不要直接按我说的操作,可以只先看看流程】:

1. 打开SDK,之后点击General settings。

2. 在General settings页面的右边,有Advanced HOME/RETRACTED这一栏。这里就是我们能够设置的地方。

这里的设置逻辑就是增加新的机械臂位置,只增加到1个没有用,而增加到2个后,就会把第1个作为retracted position,第2个作为home position。

继续增加的话,第一个始终是retracted position,最后一个始终是home,中间的就是retracted到home运动的中间点。【通过ADD增加的关节位置会放到最后一个,也即会不断更新home】

3. 在实际操作的时候,需要利用Virtual Joystick来控制机械臂到不同的位置(我觉得Angular控制方便一点。)即先控制机械臂到一个你觉得合适的retracted position,然后点ADD。之后再慢慢控制机械臂到home position,到达后再点ADD。当然中间过程也可以ADD一些值。

4. 增加好了之后。很重要的,是要点Activate。当然可以在最开始的时候就点。然后左边下方有个save 点击一下。【针对home position这个的设置,save是不是必须点的我不确定,但是点一下又不吃亏】

5. 关闭SDK,重启机械臂,然后就可以用手柄控制其到设置的home position了。

但是,前面说了有问题。有什么问题呢?

1. 用手柄只能控制机械臂到home position,却回不了retracted position了。(设置之前是可以的,设置之后,再想让它回retracted,它会在home位置抖动。我不确定是不是都会这样,但我确实遇到了这个问题)

2. SDK中的Virtual Joystick控制中的笛卡尔模式,也有一个home键,但是设置好了之后按下它,机械臂并不会到我设置的位置,而还是之前的位置。而且,SDK控制完,再用手柄控制其回home时,去的位置就是一个完全新的位置。乱了,全乱了。

可见,上述方法是不行的(别打我)。不过确实也有一些作用,给需要的人一点点参考。


那要怎么才行呢?

看看这篇文章的标题:零点设置

一切都在阴差阳错之间。

在操作的过程中,我有一次在一个我认为不错的位置重置了机械臂所有轴的零点。【无知且瞎搞,后果很严重】后果就是,SDK中控制机械臂的home键按下后,机械臂会去一个神奇的位置。而且可能是我零点设置的太多奇葩,机械臂只能允许Angular控制,不允许笛卡尔空间控制了,查阅资料说是因为有奇点。

虽然当时我有点紧张,但是我还是判断出应该就是零点的问题。于是就转向零点设置。

但是关节处于什么位置才能设置零点,着实没有头绪。

试图在网上找找资料和教程,但是没有找到。有点束手无策。

好在天无绝人之路,我瞎翻官方的用户手册,在Advanced Configuration中找到了相关的内容。

 就是图中所示的。当然按照表格中的推荐也是没问题的。

果然,将机械臂运动到图示那个位置,重置零点后,一切都正常了。

【重置零点,在Advanced settings中,Apply to all。重置后同样需要关闭重启。(重置后,当前位置的关节值会在180左右)不过有一个关节值重置后值不太对,我重复了几次操作,才将其成功重置零点】 

一切都正常是指:

1. 手柄和SDK都能正常控制机械臂(笛卡尔模式或者Angular模式);

2. home position和retracted position都是正常的位置,方向也是对的;

3. SDK中的home和手柄控制到达的home是同一个home。

也即我们基本达成了我们最初的目的。下面两图分别是home和retracted的位置。

         

不过还是没有实现手动设置我们想要home position的目的,这个还没研究清楚,不过我觉得真真不影响使用了。


小知识点总结:

1. SDK中的home是预设的一组关节值,不会变化。所以零点位置会影响home位置。

2. 零点不能随便设,按照官方建议来。

3. SDK中的home / retracted position设置功能,针对手柄还是有效果的。不过具体还是存在一些问题(个人能力、精力有限,暂不深究解决)


经此一役,机械臂想必一定准备好投入下一阶段的战斗了。冲!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值