python实现nao机器人手臂动作控制


Posted in Python onApril 29, 2019

本文实例为大家分享了python实现nao机器人手臂动作的具体代码,供大家参考,具体内容如下

这些天依然在看nao公司文档的东西,把读过的代码顺手敲了出来。代码依然很简单,但是为什么我要写博客呢?这其中有很大的原因在于,代码是死的,可是读着读着就感觉代码活了,而且,每次读都会有不同的感受。咱就直接看正题吧。

#-*-encoding:UTF-8-*-
import sys
import motion
import almath
from naoqi import ALProxy
 
def StiffnessOn(proxy):
    #we use the body name to signify the collection of all jionts
    pName="Body"
    pStiffnessLists=1.0
    pTimeLists=1.0
    proxy.stiffnessInterpolation(pName,pStiffnessLists,pTimeLists)
 
def main(robotIP):
    ''' example showing a path of two position
    '''
    try:
      motionProxy=ALProxy("ALMotion",robotIP,9559)
    except Exception ,e:
        print"could not create a proxy to almotion"
        print str(e)
 
    try:
      postureProxy=ALProxy("ALRobotPosture",robotIP,9559)
    except Exception ,e:
        print"could not create a proxy to alRobotPosture"
        print str(e)
    #set the nao stiffness on
    StiffnessOn(motionProxy)
 
    #set the nao to standinit
    postureProxy.goToPosture("StandInit",0.5)
 
    effector="LArm"
    space=motion.FRAME_ROBOT
    # AXIS_MASK_VEL=7
    axisMask=almath.AXIS_MASK_VEL
    isAbsolute=False
    #since we are in relative, the current position is zero
    currentPos=[0.0,0.0,0.0,0.0,0.0,0.0]
    #define the changes in relative to the current position 
    dx=0.03      #translation axis x
    dy=0.03      #translation axis y
    dz=0.00      #translation axis z
    dwx=0.00     #rotation axis x
    dwy=0.00     #rotation axis x
    dwz=0.00     #rotation axis x
 
    targetPos=[dx,dy,dz,dwx,dwy,dwz]
 
    #go to the target and back again
    path=[targetPos,currentPos]
    times=[2.0,4.0]#seconds
    motionProxy.positionInterpolation(effector,space,path,axisMask,times,isAbsolute)
 
if __name__=="__main()__":
    robotIP="127.0.0.1"
    if len(sys.argv)<=1:
      print "use default :127.0.0.1"
    else:
      robotIP=sys.argv[1]       
main(robotIP)

接下来是另一个:

#-*-encoding:UTF-8-*-
''' Cartesian control :arm trajectory example'''
 
import sys
import motion
import almath
from naoqi import ALProxy
def StiffnessOn(proxy):
    pName="Body"
    pStiffnessLists=1.0
    pTimeLists=1.0
    proxy.stiffnessInterpolation(pName,pStiffnessLists,pTimeLists)
 
 
def main(robotIP):
    '''showing a hand ellipoid
    '''
    try:
      motionProxy=ALProxy("ALProxy",robotIP,9559)
    except Exception,e:
      print"could not create a proxy "
      print"error was ",e
 
    try:
      postureProxy=ALProxy("ALRobotProxy",robotIP,9559)
    except Exception ,e:
      print"could not create a proxy"
      print "error was",e
 
    #send nao in stiffness on
    setStiffnessOn(motionProxy)
    #send nao to pose init
    postureProxy.goToPosture("StandInit",0.5)
 
    effector="LArm"
    space=motion.FRAME_ROBOT
    path=[
        [0.0,-0.05,+0.00,0.0,0.0,0.0],    #pose1
        [0.0,+0.00,+0.04,0.0,0.0,0.0],    #pose2
        [0.0,+0.04,+0.00,0.0,0.0,0.0],    #pose3
        [0.0,+0.00,-0.02,0.0,0.0,0.0],    #pose4
        [0.0,-0.05,+0.00,0.0,0.0,0.0],    #pose5
        [0.0,+0.00,+0.00,0.0,0.0,0.0]
        ]                #pose6
    axisMask=7
    times=[0.5,1.0,2.0,3.0,4.0,4.5]       #seconds 
    
    isAbsolute=False
    motionProxy.positionInterpolation(effector,space,path,axisMask,times,isAbsolute)
    
if __name__=="__main__":
    robotIP="127.0.0.1"
    if len(sys.argv)<=1:
        print "usage local ip "
    else:
        robotIP=sys.argv[1]
    main(robotIP)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。       

Python 相关文章推荐
python3图片转换二进制存入mysql
Dec 06 Python
Python深入学习之对象的属性
Aug 31 Python
详解K-means算法在Python中的实现
Dec 05 Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
May 24 Python
想学python 这5本书籍你必看!
Dec 11 Python
python获取点击的坐标画图形的方法
Jul 09 Python
Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析
Nov 07 Python
python 利用已有Ner模型进行数据清洗合并代码
Dec 24 Python
python读取配置文件方式(ini、yaml、xml)
Apr 09 Python
Python如何爬取b站热门视频并导入Excel
Aug 10 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
Sep 02 Python
如何解决python多种版本冲突问题
Oct 13 Python
python机器人运动范围问题的解答
Apr 29 #Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 #Python
Python 实现微信防撤回功能
Apr 29 #Python
python程序控制NAO机器人行走
Apr 29 #Python
Django web框架使用url path name详解
Apr 29 #Python
Python对HTML转义字符进行反转义的实现方法
Apr 28 #Python
Django使用redis缓存服务器的实现代码示例
Apr 28 #Python
You might like
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
2014/01/22 PHP
php和editplus正则表达式去除空白行
2015/04/17 PHP
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
JQuery验证jsp页面属性是否为空(实例代码)
2013/11/08 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
jquery获取checkbox的值并post提交
2015/01/14 Javascript
node.js操作mongodb学习小结
2015/04/25 Javascript
JS功能代码集锦
2016/05/04 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
BootStrap 可编辑表Table格
2016/11/24 Javascript
Canvas 制作动态进度加载水球详解及实例代码
2016/12/09 Javascript
javascript获取图片的top N主色值方法详解
2018/01/26 Javascript
vue-resource请求实现http登录拦截或者路由拦截的方法
2018/07/11 Javascript
微信小程序使用template标签实现五星评分功能
2018/11/03 Javascript
[09:37]DOTA2卡尔工作室 英雄介绍圣堂刺客篇
2013/06/13 DOTA
使用python 爬虫抓站的一些技巧总结
2018/01/10 Python
mac下pycharm设置python版本的图文教程
2018/06/13 Python
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
Python实现统计英文文章词频的方法分析
2019/01/28 Python
Python 导入文件过程图解
2019/10/15 Python
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
Oasis服装官网:时尚女装在线
2020/07/09 全球购物
学习心得体会
2014/01/01 职场文书
公司面试感谢信
2014/02/01 职场文书
安全生产责任书
2014/03/12 职场文书
初中作文评语大全
2014/04/23 职场文书
百日安全活动总结
2014/05/04 职场文书
文明寝室申报材料
2014/05/12 职场文书
2014年图书管理员工作总结
2014/12/01 职场文书
谢师宴答谢词
2015/01/05 职场文书
玄武湖导游词
2015/02/05 职场文书
因工资原因离职的辞职信范文
2015/05/12 职场文书
《我在为谁工作》:工作的质量往往决定生活的质量
2019/12/27 职场文书
pytorch中的numel函数用法说明
2021/05/13 Python
使用JS实现简易计算器
2021/06/14 Javascript