python程序控制NAO机器人行走


Posted in Python onApril 29, 2019

最近重新学习nao的官方文档,写点简单的程序回顾一下。主要是用python调用api,写下来保存着。

'''Walk:small example to make nao walk'''
import sys
import motion
import time
from naoqi import ALProxy
def StiffnessOn(proxy):
 #we use the 'body' to signify the collection of all joints
 pName="Body"
 pStiffnessLists=1.0
 pTimeLists=1.0
 proxy.stiffnessInterpolation(pName,pStiffnessLists,pTimeLists)
 
 def main(robotIP):
  #init proxies
  try:
   motionProxy=ALProxy("ALMotion",robotIP,9559)
  except Exception,e:
   print "could not create proxy to ALMotion"
   print"error was",e
 
  try:
   postureProxy=ALProxy("ALRobotPosture",robotIP,9559)
  except Exception,e:
   print"could not create proxy to ALRobotPosture"
   print "error is ",e
 
   #set nao in stiffness on
   StiffnessOn(motionProxy)
 
   #send nao to pose init
   postureProxy.goToPosture("StandInit",0.5);
 
   #eable arms control by walk algorithm
   motionProxy.setWalkArmsEable(True,True)
   #foot contact protection
   motionProxy.setMotionConfig([["ENABLE_FOOT_CONTACT_PROTECTION",True]])
 
   #target velocity
   X=-0.5 #backward
   Y=0.0
   Theta=0.0
   Frequency=0.0#low speed
   motionProxy.setWalkTargetVelocity(X,Y.Theta,Frequency)
   time.sleep(4.0)
 
   #target velocity
   X=0.9
   Y=0.0
   Theta=0.0
   Frenqency=1.0#max speed
   motionProxy.setWalkTargetVelocity(X,Y,Theta,Frenquency)
   time.sleep(2.0)
 
   #arms user motion
   #arms motion from user have alwalys priority than walk arms motion
   JoinNames=["LShouderPitch","LShouderRoll","LElbowYaw","LElbowRoll"]
   Arm1=[-40,25,0,-40]
   Arm1=[x*motion.TO_RAD for x in Aram1]
   
   Arm2=[-40,50,0,-80]
   Arm2=[x*motion.TO_RAD for x in Aram2]
 
   pFractionMaxSpeed=0.6
 
   motionProxy.angleInterpolationWithSpeed(JoinNames,Arms1,pFractionMaxSpeed)
   motionProxy.angleInterpolationWithSpeed(JoinNames,Arms2,pFractionMaxSpeed)
   motionProxy.angleInterpolationWithSpeed(JoinNames,Arms1,pFractionMaxSpeed)
 
   #end walk
   X=0.0
   Y=0.0
   Theta=0.0
   motionProxy.setWalkTargetVelocity(X,Y,Theta,Frequency)
 
if __name__=="__main__":
 robotIP="192.168.1.155"
 if len(sys.argv)<=1:
  print "useage pyhton motion_walk.py robotIP,default is 127.0.0.1"
 else:
   robotIp=sys.argv[1]
 main(robotIP)

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

Python 相关文章推荐
python求列表交集的方法汇总
Nov 10 Python
python正则实现提取电话功能
Feb 24 Python
python之验证码生成(gvcode与captcha)
Jan 02 Python
Python2与Python3的区别实例分析
Apr 11 Python
使用 python pyautogui实现鼠标键盘控制功能
Aug 04 Python
python-OpenCV 实现将数组转换成灰度图和彩图
Jan 09 Python
Python 开发工具PyCharm安装教程图文详解(新手必看)
Feb 28 Python
使用Pyhton 分析酒店针孔摄像头
Mar 04 Python
pandas中read_csv、rolling、expanding用法详解
Apr 21 Python
Python Celery异步任务队列使用方法解析
Aug 10 Python
基于python实现简单C/S模式代码实例
Sep 14 Python
Python合并pdf文件的工具
Jul 01 Python
Django web框架使用url path name详解
Apr 29 #Python
Python对HTML转义字符进行反转义的实现方法
Apr 28 #Python
Django使用redis缓存服务器的实现代码示例
Apr 28 #Python
django的settings中设置中文支持的实现
Apr 28 #Python
Django数据库类库MySQLdb使用详解
Apr 28 #Python
Django中如何防范CSRF跨站点请求伪造攻击的实现
Apr 28 #Python
​如何愉快地迁移到 Python 3
Apr 28 #Python
You might like
一个简洁的多级别论坛
2006/10/09 PHP
php根据年月获取季度的方法
2014/03/31 PHP
PHP base64编码后解码乱码的解决办法
2014/06/19 PHP
php jsonp单引号转义
2014/11/23 PHP
PHP进阶学习之Geo的地图定位算法详解
2019/06/19 PHP
一个简单的js鼠标划过切换效果
2010/06/30 Javascript
jqgrid 简单学习笔记
2011/05/03 Javascript
JQuery 图片的展开和伸缩实例讲解
2013/04/18 Javascript
jquery操作select详解(取值,设置选中)
2014/02/07 Javascript
为什么Node.js会这么火呢?Node.js流行的原因
2014/12/01 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
jQuery webuploader分片上传大文件
2016/11/07 Javascript
JS多物体实现缓冲运动效果示例
2016/12/20 Javascript
很棒的一组js图片轮播特效
2017/01/12 Javascript
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
jQuery在header中设置请求信息的方法
2017/03/06 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
vue 之 .sync 修饰符示例详解
2018/04/21 Javascript
JavaScript执行环境及作用域链实例分析
2018/08/01 Javascript
JavaScript基础之this和箭头函数详析
2019/09/05 Javascript
[00:02]DOTA2新版本使用PA至宝后暴击展示
2014/11/19 DOTA
python实现简单遗传算法
2018/03/19 Python
python简单操作excle的方法
2018/09/12 Python
TensorFlow实现保存训练模型为pd文件并恢复
2020/02/06 Python
Matplotlib.pyplot 三维绘图的实现示例
2020/07/28 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
2021/03/04 Python
CSS3中引入多种自定义字体font-face
2020/06/12 HTML / CSS
MCAKE蛋糕官方网站:一直都是巴黎的味道
2018/02/06 全球购物
大学毕业自我鉴定范文
2014/02/03 职场文书
“六查”、“三学”、“三干”查摆问题整改措施
2014/09/27 职场文书
投标邀请书范本
2015/02/02 职场文书
国王的演讲观后感
2015/06/03 职场文书
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang
Python趣味挑战之用pygame实现简单的金币旋转效果
2021/05/31 Python
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android
CentOS下安装Jenkins的完整步骤
2022/04/07 Servers