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中的ceil()方法使用教程
May 14 Python
使用Nginx+uWsgi实现Python的Django框架站点动静分离
Mar 21 Python
浅谈python import引入不同路径下的模块
Jul 11 Python
代码分析Python地图坐标转换
Feb 08 Python
解决python3 json数据包含中文的读写问题
May 10 Python
利用Python模拟登录pastebin.com的实现方法
Jul 12 Python
python cv2读取rtsp实时码流按时生成连续视频文件方式
Dec 25 Python
Python实现银行账户资金交易管理系统
Jan 03 Python
使用Puppeteer爬取微信文章的实现
Feb 11 Python
解决阿里云邮件发送不能使用25端口问题
Aug 07 Python
Python爬虫简单运用爬取代理IP的实现
Dec 01 Python
利用Opencv实现图片的油画特效实例
Feb 28 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
ThinkPHP php 框架学习笔记
2009/10/30 PHP
PHP中基本HTTP认证技巧分析
2015/03/16 PHP
PHP中trim()函数简单使用指南
2015/04/16 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
js中cookie的使用详细分析
2008/05/28 Javascript
Javascript 模式实例 观察者模式
2009/10/24 Javascript
邮箱下拉自动填充选择示例代码附图
2014/04/03 Javascript
JavaScript中对象property的删除方法介绍
2014/12/30 Javascript
javascript从定义到执行 你不知道的那些事
2016/01/04 Javascript
JavaScript暂停和继续定时器的实现方法
2016/07/18 Javascript
Google 地图获取API Key详细教程
2016/08/06 Javascript
微信小程序 框架详解及实例应用
2016/09/26 Javascript
Angular实现的table表格排序功能完整示例
2017/12/22 Javascript
12条写出高质量JS代码的方法
2018/01/07 Javascript
vue项目从node8.x升级到12.x后的问题解决
2019/10/25 Javascript
《javascript设计模式》学习笔记四:Javascript面向对象程序设计链式调用实例分析
2020/04/07 Javascript
基于JavaScript获取url参数2种方法
2020/04/17 Javascript
[52:37]完美世界DOTA2联赛循环赛 Forest vs DM BO2第一场 10.29
2020/10/29 DOTA
python实现多线程采集的2个代码例子
2014/07/07 Python
Python数据可视化正态分布简单分析及实现代码
2017/12/04 Python
python实现手机通讯录搜索功能
2018/02/22 Python
Python回文字符串及回文数字判定功能示例
2018/03/20 Python
pandas 缺失值与空值处理的实现方法
2019/10/12 Python
python实现五子棋游戏(pygame版)
2020/01/19 Python
python读取当前目录下的CSV文件数据
2020/03/11 Python
jupyter notebook 参数传递给shell命令行实例
2020/04/10 Python
西班牙汉普顿小姐:购买帆布鞋和太阳镜
2016/10/23 全球购物
Otel.com:折扣酒店预订
2017/08/24 全球购物
Luxplus丹麦:香水和个人护理折扣
2018/04/23 全球购物
给水排水工程专业毕业生推荐信
2013/10/28 职场文书
校班主任推荐信范文
2013/12/03 职场文书
解除劳动合同协议书范本2014
2014/09/25 职场文书
实习指导老师意见
2015/06/04 职场文书
2016先进集体事迹材料范文
2016/02/25 职场文书
TensorFlow中tf.batch_matmul()的用法
2021/06/02 Python
我的收音机情缘
2022/04/05 无线电