




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
让机器人双足运动项目1CONTENT目录项目导入01项目任务02学习目标03知识链接04项目准备05任务实施06任务评价07任务拓展08项目小结09项目导入01项目导入1上一个任务已经有了基础,学习了用程序控制机器人挥动双臂。那么如何更精确的控制机器人双腿呢?4CONTENT目录项目导入01项目任务02学习目标03知识链接04项目准备05任务实施06任务评价07任务拓展08项目小结09项目任务02项目任务171.通过本课程我们将学习步态算法的基础概念、ZMP力矩零点、步态规划和倒立摆模型原理等。2.通过这些知识的学习,我们逐渐开始认识一个双足机器人要想稳定的走路所必须具备的基本条件和控制方法。3.最后我们会通过简单的步态控制案例来体验步态算法对于双足机器人的重要作用。CONTENT目录项目导入01项目任务02学习目标03知识链接04项目准备05任务实施06任务评价07任务拓展08项目小结09学习目标03知识目标职业素养目标技能目标1.了解零力矩点2.了解质心和力矩3.了解机器人步态规划4.掌握双足步态规划流程知识目标:知识目标、技能目标、职业素养目标10学习目标31.掌握用程序初始化舵机2.掌握用程序初始化步态3.掌握用程序完成三点坐标值规划步态4.掌握用程序控制机器人逆运动5.掌握用程序控制机器人完成双足步行技能目标:1.培养质量意识2.培养精益求精的探究精神3.培养工匠精神职业素养目标:CONTENT目录项目导入01项目任务02学习目标03知识链接04项目准备05任务实施06任务评价07任务拓展08项目小结09知识链接04零力矩点零力矩点在仿人机器人领域的应用运动物体质心Yanshee步态规划基本原理质心和力矩双足机器人的步态规划法零力矩点(ZMP,ZeroMomentPoint),1968年南斯拉夫学者M.Vukobratovic在其步行机器人动态平衡理论中定义了这一概念,到了80年代早稻田的加藤一郎实验室(IchiroKato'slaboratoryatWasedaUniversity)制作了一系列的WL机器人,这些双足机器人是最早将此概念实际应用到动态平衡的双足步行机器人。知识链接零力矩点413知识链接零力矩点在仿人机器人领域的应用414双足机器人研究都是基于ZMP的方法。但是利用的方式各有巧妙不同。传统的方法,建立双足机器人的数学模型,并根据ZMP必须落在稳定区域(脚掌范围)去推导控制法则建立双足机器人的数学模型,用计算机模拟和验证。质心是组成该物体所有质量的平均位置,对于规则物体,质心就是几何中心。对于不规则物体,偏向质量偏多的一边。知识链接质心和力矩415当物体运动时,例如抛出的球棒的运动很复杂,但是其质心会依然沿着平滑的抛物线运动。知识链接运动物体质心416基本概念具体定义步态仿人机器人的步态规划类似于机械臂的轨迹规划,但是机械臂轨迹规划一般仅仅涉及到机械臂关节空间或者笛卡尔空间的轨迹的规划问题,且二者之间是可以通过机器人的正向运动学和逆向运动学相互转化的。但是仿人机器人的步态规划则不同,机器人的没有固定的基座,因而不存在特定的关节空间和笛卡尔空间的转化关系,因为二者之间的转换需要涉及到机器人漂浮基座的状态。因而仿人机器人的步态可以认为是质心轨迹以及各个关节轨迹的综合。静态步行仿人机器人步行过程中,机器人相对于支撑脚始终处于静力学平衡状态,即机器人的质心在地面上的投影始终不超过支撑多边fangrenbn形的范围。动态步行仿人机器人步行过程中,机器人相对于支撑脚始终处于动力学平衡状态,即机器人的质心在地面上的投影可以在某些时刻超过支撑多边fangrenbn形的范围。单腿支撑机器人仅仅有一只脚与地面接触,此时机器人呈倒立摆状态双腿支撑机器人双腿支撑某种程度上是一种过度阶段,根据人类的行走状态,双腿支撑期只占一个步行周期的8%-25%。机器人在撑场行走过程中是处于单腿支撑和双腿支撑的结合和切换。但是当机器人处于奔跑状态时候,则是单腿支撑与腾空状态的结合。单步机器人从一侧腿着地到另一侧腿着地构成一个步长,它包含一个双腿支撑期和单腿支撑期。两个单步会构成一个复步。复步在步行运动中,从机器人一侧脚着地开始到该脚再次着地构成一个复步。期间两只腿各相继向前迈步一次。它包括两个双脚支撑期和两个单脚支撑期。跨高摆动腿在摆动过程中脚底离地面的最大距离,常用于衡量机器人跨越小障碍物和在不平地面行走的能力。知识链接Yanshee步态规划基本原理417双足机器人的步行可以分为静态步行和动态步行两种。静态步行是重心移动少、速度慢的步行方式,动态步行则是自身破坏平衡,向前倾倒地行走,人的行走以动态步行为主。倒立摆的移动就属于这种典型的动态步行。关节类型主要作用髋关节用于摆动腿,实现迈步并使上躯体前倾或者后仰,使之在步行过程中起辅助平衡作用膝关节调整重心的高度,并用来调整摆动腿的着地高度,使之与地形相适应踝关节用来和髋关节相配合实现支撑腿和上躯体的移动,而且还可以调整脚掌与地面的接触状态。知识链接双足机器人的步态规划法418CONTENT目录项目导入01项目任务02知识链接04项目准备05学习目标03任务评价07任务拓展08项目小结09任务实施06项目准备05项目准备521ROS环境Yanshee机器人一台Gazebo机器人模拟环境010203CONTENT目录项目导入01项目任务02知识链接04任务实施06学习目标03任务评价07任务拓展08项目小结09项目准备05任务实施06初始化步态初始化舵机角度完成三点坐标值规划步态机器人逆运动使用ROS消息控制机器人动作//定义步态枚举的状态,分别为左脚抬起,扭左跨,右脚抬起,扭右跨enumgait_status{LEFT_UP=0,WAIST_TO_LEFT=1,RIGHT_UP=2,WAIST_TO_RIGHT=3,};gait_statusgait_current_status;boolfirst_step=true;intmain(intargc,char**argv){ros::init(argc,argv,"ik_test_node");ros::NodeHandlen;ros::Publisherjoint_pub=n.advertise<ubt_msgs::angles_set>("hal_angles_set",1);ubt_msgs::angles_setjoint_angle_;joint_angle_.angles.resize(17);gait::Kinematicskinematic;ros::Rateloop_rate(50);ros::Timetime_program_hold=ros::Time::now();任务实施初始化步态624//初始化关节角度,因为YANSHEE共17个舵机,因此设置17个角度值(initjoint_angle)joint_angle_.angles[0]=int((90+0)*2048/180);joint_angle_.angles[1]=int((130+0)*2048/180);joint_angle_.angles[2]=int((179+0)*2048/180);joint_angle_.angles[3]=int((90+0)*2048/180);joint_angle_.angles[4]=int((40+0)*2048/180);joint_angle_.angles[5]=int((15+0)*2048/180);joint_angle_.angles[6]=int((90+0)*2048/180);joint_angle_.angles[7]=int((60+0)*2048/180);joint_angle_.angles[8]=int((76-0)*2048/180);joint_angle_.angles[9]=int((110-0)*2048/180);joint_angle_.angles[10]=int((90+0)*2048/180);joint_angle_.angles[11]=int((90+0)*2048/180);joint_angle_.angles[12]=int((120-0)*2048/180);joint_angle_.angles[13]=int((104+0)*2048/180);joint_angle_.angles[14]=int((70+0)*2048/180);joint_angle_.angles[15]=int((90+0)*2048/180);joint_angle_.angles[16]=int((90+0)*2048/180);joint_angle_.time=25;。任务实施初始化舵机角度625//抬左脚caseLEFT_UP:foot_pos_l[2]=15*(waist[1]-LEG_UP_CONDITION);foot_pos_l[0]+=(first_step?(SPEED/2):SPEED);left_arm[0]=30000*(waist[1]-LEG_UP_CONDITION);right_arm[0]=left_arm[0];break;//重心移到左脚caseWAIST_TO_LEFT:foot_pos_l[2]=0;foot_pos_r[2]=0;break;任务实施完成三点坐标值规划步态626//通过封装的逆运动学函数,来推到出各个舵机的相应的弧度数值(IK代表IndirectKinematics逆运动学)kinematic.IK_leg(l_foot,waist,r_foot,l_joint,r_joint);任务实施机器人逆运动627/手臂的舵机数值joint_angle_.angles[0]=int((90+left_arm[0])*2048/180);joint_angle_.angles[3]=int((90+right_arm[0])*2048/180);//左脚的舵机数值joint_angle_.angles[6]=int((90+1*l_joint[1]*Rad2Deg)*2048/180);joint_angle_.angles[7]=int((98+1*l_joint[2]*Rad2Deg)*2048/180);joint_angle_.angles[8]=int((128-1*l_joint[3]*Rad2Deg)*2048/180);joint_angle_.angles[9]=int((94-1*l_joint[4]*Rad2Deg)*2048/180);joint_angle_.angles[10]=int((90+1*l_joint[5]*Rad2Deg)*2048/180);//右脚的舵机数值joint_angle_.angles[11]=int((90+1*r_joint[1]*Rad2Deg)*2048/180);joint_angle_.angles[12]=int((82-1*r_joint[2]*Rad2Deg)*2048/180);joint_angle_.angles[13]=int((52+1*r_joint[3]*Rad2Deg)*2048/180);joint_angle_.angles[14]=int((86+1*r_joint[4]*Rad2Deg)*2048/180);joint_angle_.angles[15]=int((90+1*r_joint[5]*Rad2Deg)*2048/180);joint_angle_.time=20;//把获得的17个舵机数值,通过ROS发送给角度控制节点,来执行机器人运行joint_pub.publish(joint_angle_);/shaoyiwork/Yanshee_Gait任务实施使用ROS消息控制机器人动作628CONTENT目录项目导入01项目任务02学习目标03任务评价07项目准备05任务实施06知识链接04任务拓展08项目小结09任务评价07自我评价小组评价任务评价自我评价小组评价731CONTENT目录项目导入01项目任务
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国电视剧行业市场发展分析及前景预测与战略规划报告
- 2025至2030中国电动自行车灯行业产业运行态势及投资规划深度研究报告
- 2025至2030中国甲氧基乙酸甲酯行业产业运行态势及投资规划深度研究报告
- 2025至2030中国玉米种子市场投资风险与需求多样化趋势报告
- 2025至2030中国特氟龙膨胀密封胶行业发展趋势分析与未来投资战略咨询研究报告
- 教育心理学与商业培训的有机结合
- 药库培训课件图片模板
- 目标选才培训课件
- 母婴护理能力培训课件
- 教育技术政策的决策支持系统研究
- 危险化学品应急处置卡
- 金属材料生物相容性研究
- 幕墙工程施工的重点难点分析及针对措施
- 新版人教版七年级全册英语单词表(含音标)可打印
- 2024-2026胡润财富报告
- 呼叫中心投标技术方案样本
- 人教版六年级数学下册全册分层作业设计含答案
- 中国舞蹈家协会《中国舞蹈考级》第四版教材教学内容
- 自动驾驶卡车的应用与发展详述
- 备考2024四川省安全员之C2证(土建安全员)通关提分题库(考点梳理)
- 高标准农田建设项目工程建设进度计划与措施
评论
0/150
提交评论