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统计文件行数示例分享
Feb 21 Python
Python删除指定目录下过期文件的2个脚本分享
Apr 10 Python
Python访问MySQL封装的常用类实例
Nov 11 Python
Python3解决棋盘覆盖问题的方法示例
Dec 07 Python
情人节快乐! python绘制漂亮玫瑰
Aug 18 Python
Python自定义一个异常类的方法
Jun 27 Python
Python中模块(Module)和包(Package)的区别详解
Aug 07 Python
Python爬取豆瓣视频信息代码实例
Nov 16 Python
Python字典生成式、集合生成式、生成器用法实例分析
Jan 07 Python
python 爬虫爬取京东ps4售卖情况
Dec 18 Python
史上最详细的Python打包成exe文件教程
Jan 17 Python
Python调用SMTP服务自动发送Email的实现步骤
Feb 07 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
第二节--PHP5 的对象模型
2006/11/16 PHP
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
PHP安装BCMath扩展的方法
2019/02/13 PHP
通用JS事件写法实现代码
2009/01/07 Javascript
jquery 注意事项与常用语法小结
2010/06/07 Javascript
EXTjs4.0的store的findRecord的BUG演示代码
2013/06/08 Javascript
Jquery右下角抖动、浮动 实例代码(兼容ie6、FF)
2013/08/15 Javascript
js与jQuery 获取父窗、子窗的iframe
2013/12/20 Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
2014/01/02 Javascript
用console.table()调试javascript
2014/09/04 Javascript
使用CamanJS在Web页面上处理图像的技巧
2015/08/18 Javascript
javascript实现下拉提示选择框
2015/12/29 Javascript
jquery实现简单的banner轮播效果【实例】
2016/03/30 Javascript
jQueryUI中的datepicker使用方法详解
2016/05/25 Javascript
bootstrap导航条实现代码
2016/12/28 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
2018/02/04 Javascript
[28:42]Ti4正赛VG vs NEWBEE1
2014/07/19 DOTA
Python列表(list)、字典(dict)、字符串(string)基本操作小结
2014/11/28 Python
Python中encode()方法的使用简介
2015/05/18 Python
python3 pillow生成简单验证码图片的示例
2017/09/19 Python
python利用paramiko连接远程服务器执行命令的方法
2017/10/16 Python
Django的HttpRequest和HttpResponse对象详解
2018/01/26 Python
pycharm远程linux开发和调试代码的方法
2018/07/17 Python
Python SMTP发送邮件遇到的一些问题及解决办法
2018/10/24 Python
python文档字符串(函数使用说明)使用详解
2019/07/30 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
2020/05/20 Python
如何利用CSS3制作3D效果文字具体实现样式
2013/05/02 HTML / CSS
H5 canvas中width、height和style的宽高区别详解
2018/11/02 HTML / CSS
大学应届毕业生个人求职信
2013/09/23 职场文书
电子商务专员岗位职责
2013/12/11 职场文书
法警的竞聘演讲稿
2014/01/02 职场文书
2014年五一促销活动方案
2014/03/09 职场文书
《美丽的南沙群岛》教学反思
2014/04/27 职场文书
商务英语专业毕业生求职信
2014/07/06 职场文书
初婚初育证明范本
2014/11/24 职场文书