1编号:45哈尔滨工业大学(威海)大一年度项目结题报告项目名称: 双足舞蹈机器人的设计 项目负责人: 孙少伟 学号:150220119 联系: 15692150807 电子邮箱:blisssun2010@院系及专业:信息与电气工程学院 测控技术与仪器指导教师: 麻志斌 职称: 高级工程师 联系: 13793390321 电子邮箱: zbm0820@ 院系及专业: 信息与电气工程学院实验中心 哈尔滨工业大学教务处制表填表日期:2016 年 7 月 15 日2一、项目团队成员(包括项目负责人、按顺序)二、指导教师意见签 名:年 月 日三、项目专家组意见组长签名: ( 学部盖章 )年 月 日四、项目成果序号 名称 说明1 元电路设计 主控、显示和舵机模块设计完成2 程序研究 主程序、航机控制部分程序完成3 稳定性研究 基本实现机器人运动中的稳定4 整体运行 实现机器人的直线向前、后退,摆臂姓名 性别 所在院 学号 联系 本人签字孙少伟 男 信息与电气工程学院 150220119 15692150807王泽文 男 信息与电气工程学院 150220123 17863130950程冰雪 女 信息与电气工程学院 150250205 178631369853五、项目研究结题报告双足舞蹈机器人的设计信息与电气工程学院第一作者:孙少伟第二作者:程冰雪、王泽文指导教师:麻志斌职称:高级工程师摘要:本项目旨在设计一个多自由度的双足舞蹈机器人,为实现舞蹈机器人控制的精确、简便,动作表现的优美,对成品双足舞蹈机器人——Robonova-2 Metal Fighter 进行了二次开发。
此舞蹈机器人有 17 自由度,包括头、腿、踝、胯、腰、肩、肘和颈等关节设计一个舞蹈动作须使多个电机协调动作,动作调试是一个非常繁琐的过程,利用已开发的、基于计算机上位机的动态调试软件来编排舞蹈动作,并把相关的动作数据传送给下位机,最大限度地缩减了舞蹈动作的设计和调试过程在查阅大量文献的基础上,掌握了一定的 ZMP 理论应用方法,将 ZMP 稳定性理论应用到双足舞蹈机器人的调试中经过大量的调试,最终实现了双足舞蹈机器人的直行向前与后退,以及摆臂的动作关键词:双足机器人;舞蹈机器人;稳定性;ZMP 理论一 立项背景已有3000 多年历史的机器人,在20 世纪得到迅速的发展并在工业中得到广泛应用 [1]机器人是一个多学科和技术相交叉结合的应用领域它集中了机械、电子、计算机、材料、传感器、控制技术、人工智能、仿生学等多门科学,代表了机电一体化的最高成就,代表着一个国家的高科技发展水平,是目前科技发展最活跃的领域之一娱乐机器人是智能服务机器人的一个分支,具有极强的观赏和趣味性,是一个系统化的工程设计涉及到运动机器人的设计、制作、自动控制和通信拟人机器人是近来娱乐机器人的发展热点研究拟人机器人具有重要的科学意义:拟人机器人的研究模型为控制理论应用及动力学问题的研究提供了广阔的天地。
拟人机器人是一个多变量、强耦合、非线性和变结构的复杂动力学系统,其变姿态结构的稳定性及产生稳定步行所需要解决的动态平衡问题,对于控制理论及动力学问题的研究来说,具有很大的挑战研究拟人机器人的步行运动,揭示了双足步行运动的机理及控制规律可为机器人提供灵活的操作平台,使其能够在恶劣的环境下工作,也为人类假肢的发展提供了有力的理论、技术支持4双足舞蹈机器人在实现人类基本的行走、抬手、转头、鞠躬等动作的基础上,根据音乐给机器人编排不同的动作,使机器人设计不再局限于科学研究,而使其观赏性和艺术性大大提高,也使其具有很大的市场开发价值例如,由日本东京国家信息通讯研究院的Hideki Kozima与美国卡内基-梅隆大学机器人技术研究所的马雷科-麦克洛夫维奇(Marek Michalowski)共同开发的微型机器人——Keepon跳舞机器人,用来帮助儿童孤独症者摆脱这种疾病的困扰本项目研究的是双足舞蹈机器人的设计,旨在以 Robonova-2 Metal Fighter 为研究对象,使用 RoboBasic 语言编写机器人的多组动作,利用已开发的、基于计算机上位机的动态调试软件来编排舞蹈动作,并把相关的动作数据传送给下位机,缩减了舞蹈动作的设计和调试过程,实现双足舞蹈机器人的规定动作组,即舞蹈。
二 课题研究内容与方法1.稳定性的研究双足机器人在行走过程中,机器人与地面的接触面积很小,很容易发生倾倒而稳定的步态是实现其它复杂功能的基础和前提,所以稳定性问题一直是研究的重点,也是双足机器人研究的首要问题伍科布拉托维奇提出的 ZMP 点理论,是研究双足步行机器人稳定性的经典理论伍氏这样来描述稳定区域的概念:双足步行机器人步行运动中,由支撑的脚掌所组成的区域在水平面上的投影在单脚支撑期间,这一区域就是支撑腿的脚掌面;在双脚支撑期间,这一区域为两支撑脚掌与地面的接触点所构成的最大区域静态步行时,机器人的重心的垂直位置始终落在支撑脚的支撑区域内动态步行时,机器人所受的外力的合力点落入支撑脚支撑区域内他用了 ZMP 点来描述双足机器人运动稳定性,ZMP 是这样定义的:将地面对足底沿z 轴方向作用的分布力合成为一个合力,若这个合力作用点处的力矩为零,这一点便是零力矩点,也就是 ZMP 点若 ZMP 点落在上述脚板支撑范围之内,则机器人运动是稳定的 [2]而要想处理好机器人稳定性所涉及的问题,学习模糊控制及模糊处理器的使用同样重要模糊控制,是采用由模糊数学语言描述的控制律(控制规则)来操纵系统工作的控制方式,是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制技术。
按照模糊控制律组成的控制装置称为模糊控制器在双足舞蹈机器人行走时,机器人的实际重心会与期望中心产生误差,该误差通过模糊控制器运算处理可得各个舵机的补偿角,经由对应舵机将补偿角作补偿,可使机器人在站立或步行时能够达到平衡也就是说当二足机器人行走时,利用脚底压力传感器取得压力值,运算及判断二足机器人实际重心是否落在二足机器人支撑多边形范围内,并计算实际重心与期望重心之误差,以模糊控制器将二足机器人重心控制于支撑多边形范围内,这样就能使二足机器人行走时能够更加稳定5图一 ZMP 点理论2.方案论证(1)第一种方案:拟采用咪头声音采集模块,用于采集周围环境的声音,将模拟的电流信号传给作为主控的加强版 51 核心板(STC15F2K60S2)主控输出多路 PWM 信号给舵机组,以实现动作的变化,并以 LCD1602 实时显示多个舵机的状态(包含当前舵机编号与当前所转过的角度)图二 声音采集模块:咪头 图三 银燕 ES3154(2)第二种方案:拟用咪头声音采集模块采集周围环境的声音,将模拟的电流信号传给作为主控的ArduinoMEGA2560主控输出对应的数组,通过 UART 通讯传给伺服控制器(最多可以控制 32 路舵机),再由其输出多路 PWM 信号给舵机组,以实现动作的变化。
这里不再采用LCD1602 实时显示舵机状态的原因是,此类小液晶占用了较多的 IO 口,更适宜于调试过程中使用,且在小机器人上难以安装不再采用主控直接输出 PWM 来控制舵机组的原因是Arduino 系列 AVR 单片机直接输出 PWM 电流信号的频率为 491Hz,不是理想的控制舵机的50Hz 信号,且其调节输出频率需修改 Arduino 的底库文件,能力所限,难以实现 [3]6图四 ArduinoMEGA2560 图五 伺服控制器(3)第三种方案:对 Robonova-2 Metal Fighter 进行二次开发此款双足舞蹈机器人有 17 自由度,包括头、腿、踝、胯、腰、肩、肘和颈等关节利用已开发的、基于计算机上位机的动态调试软件——roboBASIC 来编排舞蹈动作,并把相关的动作数据传送给下位机,方便舞蹈动作的设计和调试伍科布拉托维奇的 ZMP 稳定性理论也被应用到此机器人的调试中经过大量的调试,最终实现了双足舞蹈机器人的直行向前与后退,以及摆臂的动作图六 Robonova-2 Metal Fighter三 研究结果经过近一年的学习,掌握了增强版 51 单片机的各个基本模块的使用,如用定时器中断设定一定时间以输出一定频率一定占空比的 PWM 信号,用异步通讯(UART)模块与上位机进行数据传输,使用 LCD1602 显示模块等。
与此同时,也掌握了 Arduino 系列 AVR 单片机的基本使用,体会到 Arduino 自带的丰富底库文件给单片机学习与应用带来的巨大便利,以及这种高度封装的底库文件修改带来的问题也在最终方案中学习了不同于 51、Arduino编程的另一种语言——roboBasic,参考自带的教程与例程,基本掌握了这种语言的使用,体会到 BASIC 语言简单、易学的基本特性四 创新点这个项目的创新点:(1)学习并掌握了多种单片机的基本编程;(2)练习、使用了多个与单片机相关的常用模块;(3)掌握并使用 roboBasic 语言,调试出符合要求的舞蹈动作7五 结束语通过一年的努力,我们团队的双足舞蹈机器人已经基本实现了预期目标,我们自身也收获颇丰但由于水平有限,论文中难免存在疏漏,还望老师不吝赐教,使论文更加完善,在此表示衷心感谢六 参考文献[1] 董静.你应该知道的机器人发展史[J].机器人产业,2015, (1):108-114.[2] 熊芳.双足舞蹈机器人稳定性研究[D].兰州:兰州理工大学,2012.[3] 黄文恺,伍冯洁,陈虹编著.Arduino 开发实战指南:机器人卷[M] .北京:机械工业出版社,2014.40-44.。