时间:2021-07-01 10:21:17 帮助过:43人阅读
今天在nao的平台上实现了一个功能,让一个机器人模仿你一个机器人的动作,目前是在python下检测出一个机器的各个关节的值然后 把这些关机的值传给另外的机器人,并且设置成它的关节值,但是这里有一个问题就是,主动的这个机器人在执行各个动作,好比执行站
今天在nao的平台上实现了一个功能,让一个机器人模仿你一个机器人的动作,目前是在python下检测出一个机器的各个关节的值然后
把这些关机的值传给另外的机器人,并且设置成它的关节值,但是这里有一个问题就是,主动的这个机器人在执行各个动作,好比执行站起的动作时,它在内部是有很多的控制的,pid 插值,状态检测等等,所以主体机器人执行的很流畅,但是如果仅仅是把关节值传递给另外一个机器人,它的动作是完成不了的,简单的还勉强可以,但是复杂的就不行,因为它没有把所有的都克隆下来。
由于是第一次把程序下载机器人的系统里,所以还是把具体的步骤写一下:
首先用WinSCP远程连接一个机器人,填写机器人地址192.168.1.146(具体视机器人定),用户名:nao
密码: nao. 点击登陆。打开PuTTY 在session目录下输入机器人ip地址:192.168.1.146 点击open 就打开一个控制终端了,因为在机器人的操作系统上(内核是linux 2.6.2*)安装有python解释器说以可以直接在它的操作系统里面建立python文件,编写程序(已近装有vim编辑器)并运行。
最后的效果就是,你动一下一个机器人,另一个(这里是两个)也会做相同的动作。由于nao机器人平台开放了一些东西,我们现在是
利用它所开放的api来完成的。
平台上能做的东西比较多,今天还看到了可以返回红球位置的一个函数,getPostion()但是不知道为什么
用它所属的代理来调用这个函数总是返回错误,要是能正确的返回那也就可以检测出红球的距离,并且机器人摄像头得距离也有一个函数可以用来获得这个值。这些将在后续的学习中继续。