基于Android控制的智能六足机器人动力学建模及实现
2018-01-05梁美彦薛太林孟坚磊曹康轩杨昊达
梁美彦, 薛太林, 王 昱, 孟坚磊, 曹康轩, 杨昊达
(山西大学 电子信息工程系, 山西 太原 030013)
基于Android控制的智能六足机器人动力学建模及实现
梁美彦, 薛太林, 王 昱, 孟坚磊, 曹康轩, 杨昊达
(山西大学 电子信息工程系, 山西 太原 030013)
本文根据蜘蛛的运动特点, 提出了一种基于Android控制的六足仿生机器人. 通过拉格朗日动力学建模及理论分析, 建立了行走路径与关节角度的定量关系, 提高了运动稳定性和灵活性. 通过理论建模和分析, 实现了六足机器人跨越台阶等动作, 还加入了视频传输和超声测距模块, 使六足机器人实现了视频传输和自动避障的功能, 有效避障距离为30 cm.
智能六足机器人; 视频传输; 自动避障; 无线控制
0 引 言
在星际探测[1-2]、 资源开发、 抗震救灾、 反恐救援等特殊环境下, 现场环境往往未知性强, 崎岖不平, 条件恶劣, 严重时会威胁生命. 因此, 研制一款机器人代替人类探测地形并采集图像、 将采集到的图像或者视频信息快速回传意义重大. 在这些特殊环境条件下, 轮式机器人和履带式机器人的应用受到一定限制, 足式机器人由于其足部离散性强、 腿部结构冗余度和可靠性高、 地形适应性好等特点, 成为国内外的研究热点[3]. 六足步行机器人作为典型的多足机器人, 比两足(或四足)机器人稳定性高, 而且具有多种运动形式、 兼具良好的灵活度和稳定性于一体, 能够广泛适应崎岖地形行走, 特别适用于执行可靠性要求比较高的任务. 因此, 六足机器人及其相关技术的研究具有重要的理论价值和实际意义.
20世纪80年代末, 麻省理工大学人工智能实验室成功研制出仿六足仿昆虫机器人 Genghis, 该机器人通过自我学习来翻越障碍, 并在复杂路面上高效行走[4]. 2000年,美国伊利诺伊大学研制出小型六足仿生机器人Biobot, 来模仿蟑螂爬行, 单腿连杆结构采用1 : 1.1 : 1.5的比例, 可以实现在凸凹不平地面上高速灵活的爬行[5]; 2007年, 德国Magdeburg大学研制了基于FPGA控制的六足机器人ANTON, 该机器人集成了陀螺仪、 力传感器、 以及视觉传感器等多种感知模块, 旨在用于地震灾区、 沟渠以及战壕等地域, 感知周围环境并做出规划[6]; 2006-2014年, 哈尔滨工业大学研制了六足机器人 HITCR-I和HITCR-II, 将用于野外侦查、 崎岖地形监测, 是一种自适应的研究平台[7-8]; 2008年, 美国加州理工喷气实验室研制出了ATHLETE全地形六足地外探测机器人, 机器人采用足轮式相结合的设计, 可以在相对平坦的地面上快速前进, 其载重量为15 t, 该足式机器人将用于月球表面的探测[9-12]; 2010年, 北京航空航天大学研制了六足机器人 NOROS-II, 该机器人也采用足轮混合结构, 将用于月球表面对特殊地形的探测[13]; 2013 年, 由上海交通大学研制的六足机器人Octopus, 其重量为150 kg, 具备全方位快速运动能力和较强的抗干扰能力, 可以在水下环境、 火灾现场或核电站等核辐射环境下进行紧急救灾[14].
综上所述, 六足机器人正朝着实用化、 智能化、 轻量化的方向发展. 虽然六足机器人相关理论研究已取得较多成果, 各种功能的六足机器人也已应用于不同的领域, 但由于其整体协调控制的复杂性以及不同作业环境对其运动性能和智能控制的特殊要求, 相关研究还有待进一步深入. 本文以实现六足机器人在特殊地形稳定灵活行走以及智能控制为目标, 研制了小型六足机器人, 通过拉格朗日动力学数学建模, 建立了行走路径与关节角度的定量关系. 同时, 加入了避障和视频无线传输模块, 实现了六足机器人的无线智能控制.
1 机器人总体设计
本文设计的六足仿生机器人由7个模块组成, 分别为: 舵机控制模块、 蓝牙通信模块、 Android控制模块、 避障模块、 视频WIFI模块、 舵机驱动模块以及电源模块. 控制模块是基于Arduino的单片机控制板, 可以实现对机器人避障模块、 视频模块、 以及舵机的控制, 并与蓝牙模块通信; 蓝牙模块用于接收Android系统控制端发送的信号, 并将信号传给控制板, 控制相应模块执行命令; 避障模块主要用于躲避运动中遇到的大型障碍物, 避障距离约为30 cm; 视频WIFI模块可以将采集到的视频信息通过无线模块传输到Android系统端, 对周围环境进行视频监测; 舵机驱动模块主要是接收控制命令, 驱动舵机执行相应的动作组, 如行走、 舞步、 跨越台阶行走等; 电源模块采用高性能、 续航能力强的锂电池对机器人供电. 图 1 为六足仿生机器人总体设计方案.
设计完成后的实验系统由六足仿生机器人系统和自主研发的Android控制端APP两部分组成, 图 2 为六足机器人, 图 2 中对各个模块的对应的位置进行了说明. 图 2 右下角为Android控制界面, 通过定义Android系统APP的按钮来实现对机器人姿态和行为的控制, 六足机器人在基本动作的基础上, 可以实现舞步、 跨越台阶等复杂动作, 同时, 为了实际应用的需要, 加入了避障和视频传输的功能, 当机器人执行任务时, 可以绕开大型障碍物, 将机器人采集到的视频信号无线发送到Android系统端进行显示.
图 1 六足仿生机器人总体设计方案 Fig.1 Schematic design of hexapod bionic robot system
图 2 六足仿生蜘蛛机器人Fig.2 Hexapod bionic spider robot
2 欧拉-拉格朗日运动方程的动力学建模
图 3 机器人单腿的动力学模型Fig.3 The dynamic model of walking robot
为了实现机器人各个动作姿态的精确控制和整体运动分析, 本文采用欧拉-拉格朗日运动方程对六足机器人腿部进行受力分析并建立动力学模型. 六足仿生机器人腿部采用开链式结构, 每条腿由3个关节组成, 每个关节对应一个自由度, 因此, 该机器人系统共有18个自由度, 为了便于定量分析, 建立如图 3 所示的空间三维坐标系.
在图 3 中, 坐标y方向为机器人的前进方向, 即运动方向,x方向与机器人运动方向垂直,z方向为机器人高度方向, 机器人平台高度为H. 机器人单腿连杆质量分别为m1,m2,m3, 对应的长度(转动惯量)分别为L1,L2和L3, 通过质量和长度两个物理量, 可以计算出对应连杆结构的转动惯量分别为I1,I2和I3, 腿部执行相关动作时, 其转动的角位移分别为θ1,θ2和θ3.
首先, 计算机器人模型系统各杆件运动部分的动能K和各部件的势能P.
然后, 计算系统总体的拉格朗日函数
L=K-P.
最后, 由拉格朗日函数求导, 可得变形腿部各关节电机的转矩
本研究根据六足机器人的运动轨迹, 利用所建立的动力学模型, 计算机器人行进中相应各个关节的角度, 从而可以实现动作的精确控制和分析.
3 控制模块的设计
六足机器人的控制模块采用基于Arduino的舵机控制板对机器人各个动作和行为进行控制, 其中, 控制板上的舵机驱动与Arduino主控芯片通过串口进行通信, 主控芯片接收到控制信号之后, 发送给舵机控制器, 舵机执行相应的操作, 同时单片机还可以与外部其他模块进行通信, 总体控制框图如图 4 所示.
图 4 系统控制框图Fig.4 Block diagram of the control system
4 机器人平台模块
高度智能化、 可以对特殊环境进行监测的六足仿生机器人, 需要具有远距离无线控制, 灵活躲避大型障碍物, 跨越台阶和沟壑, 并视频传输所采集画面等功能.
4.1 无线控制
蓝牙通信具有抗信号衰落好、 抑制同频干扰、 保证可靠传输、 随机噪声影响小等特点, 因此, 足式机器人的无线控制功能通过蓝牙通信模块来实现, 该通信模块速率为1MHz, 以时分方式进行全双工通信, 图 5 为机器人的蓝牙模块, Android控制端发送无线信号, 通过蓝牙模块接收以后, 转换成相应的控制命令, 机器人收到命令后执行相应的动作.
图 5 蓝牙模块Fig.5 The bluetooth module
4.2 自动避障模块
图 6 超声波模块Fig.6 Ultrasonic module
六足智能机器人加入了超声波测距模块(见图 6), 该模块距离向测距精度为0.3 cm, 角度向感应精度<15°, 最大可探测距离为4.5 m. 实验中, 超声波模块一帧发送8个40 kHz 的方波信号, 并自动检测回波, 如有回波则输出高电平, 通过高电平的持续时间来计算机器人到障碍物的距离. 六足机器人设定的安全距离为30 cm, 即机器人与障碍物距离小于30 cm时, 驱动舵机的PWM信号自减, 驱动电机减速, 机器人减速前进, 从而实现自动避障.
4.3 机械模块
六足机器人对运动的灵活性要求高, 因此, 机器人腿部采用SR-1501MG型数字舵机(见图 7)来对机器人动作姿态进行精确控制. 该舵机采用PWM脉宽信号控制, 其周期为20 ms, 电平占空比较高, 0.5~2.5 ms 的脉宽信号控制0~180°的转角范围, 且线性度好. 机器人腿部的运动通过舵机转角来实现, 机器人凭借每条机械腿上的3个舵机(3个关节), 来实现机器人向各个方向运动的自由度.
4.4 视频模块
视频模块位于机器人头部(如图 8 所示), 机器人在步行过程中, 视频模块将采集到的视频画面通过无线模块传输到Android界面, 利用这个功能可以实现对周围环境监测的任务.
图 7 舵机Fig.7 Steering gear
图 8 视频采集模块Fig.8 Video collection module
5 舵机控制环境
六足机器人的主控板选用基于Arduino的32通道机器人控制器, 对18个舵机进行控制和动作组的编程. 如图 9 所示. 其中, 1种颜色代表1条机械腿, 相同的颜色代表同一条机械腿上的3个舵机. S2, S3, S4 3个舵机组成机器人的一条机械腿, 命名为足1, 同理S6, S7, S8为足2, S10, S11, S12为足3, S18, S19, S20为足4, S30, S31, S32为足5, S26, S27, S28为足6, S1和S9代表两个待拓展的两个舵机. 对机器人各个腿上的舵机设定之后, 初始化所有舵机的状态, 编辑每个舵机的动作, 并记录相关数据, 最后形成一套动作组(如: 舞步、 爬楼梯等), 将动作组下载到芯片内部, 就可以使机器人执行相应的动作. 在舵机调试界面中, 可以通过设置舵机相应的参数, 调整动作的速度和运动次数.
图 9 舵机调试界面Fig.9 Debug interface of steering machine
实验采用的SR-1501MG型数字舵机, 具有精度高、 扭矩大、 反映灵敏, 运行平稳而且线性度高的特点. 调试界面中每个舵机有两个参数, 以S1舵机为例(图 9 中椭圆线标出的位置), 左侧数值表示PWM信号脉宽, 右侧数值表示舵机对应的度数, 在对舵机进行调整时, 舵机的转动时间要设置合理, 转动时间越短, 舵机转动速度越快, 为了防止转动速度太快而导致的舵机滞后效应, 转动时间一般不小于60 ms.
6 实验结果
本研究设计的六足智能仿生机器人通过自主研发的Android端APP(如图 10 所示), 调用蓝牙模块进行远程无线控制, 在实现基本行走功能的基础上, 还实现了复杂动作组, 如舞步、 跨越台阶行走, 同时还具有避障和视频输等功能.
图 10 Android无线控制界面Fig.10 Android wireless control interface
图 11 为六足智能机器人的舞步姿态, 图 12 为机器人在特殊路面行走的示意图, 目前, 研制的六足智能机器人已经实现了跨越小型台阶行走的功能.
图 11 舞步姿态Fig.11 Dancing
图 12 机器人跨越台阶Fig.12 Crossing the steps
为了使机器人能够在各种复杂环境下执行任务, 系统加入了避障模块和视频传输模块, 避障模块可以使机器人在与大型障碍物的距离小于30 cm的时候, 自动避开障碍物, 图 13 为避障示意图; 在实验中, 为了保证机器人的安全, 写入了一个附加功能, 当障碍物与机器人距离小于2 cm时, 机器人停止工作. 视频传输模块可以将行径中采集到的视频画面无线传输到Android控制端, 图 14 为机器人传回的视频画面, 这对于特殊地形的监测有重要意义.
图 13 机器人与障碍物距离<30 cm时, 机器人后退Fig.13 The robot turn back when the distance less than 30 cm
图 14 Android视频传输界面Fig.14 Android video transport interface
7 结 论
仿生机器人是一门交叉学科, 它涉及到电子学、 通信工程、 力学、 机械学、 仿生学、 系统工程、 计算机、 人工智能等相关领域. 本本研究基于Android系统控制的六足智能仿生机器人, 通过拉格朗日建模、 采用机器人单腿模型, 对机器人的关节转角进行了定量分析, 从而实现了动作姿态和行为的精确控制. 在基本步行等功能实现的基础上, 还实现了舞步、 跨越台阶行走等复杂动作姿态的控制. 为了实际应用的需要, 六足机器人加入了超声波避障模块和视频传输模块, 超声波模块可以使机器人与大型障碍物距离小于30 cm时, 自动避障, 这个功能使得机器人在执行任务中可以进行自身保护; 无线视频传输模块可以回传机器人采集到的视频画面, 为机器人用于矿山探险、 抗震救灾等提供了研究基础.
该足式机器人系统基本功能已经基本实现, 但是还存在一些功能需要完善: ① 视频传输的画面不够清晰, 这主要是由于选用的视频采集设备分辨率低造成的, 可以选用高分辨率的视频采集设备, 同时, 画面质量要与无线传输速率匹配, 否则就会出现卡顿、 跳帧等, 或者尝试使用H.264编码方式对视频进行压缩后传输; ② 目前该系统只能观看回传的视频画面, 并没有视频记忆存储功能. 在以后的工作中, 可以增加视频存储模块, 供Android系统端随时点播观看; ③ 当机器人参与执行任务时, 只有视频传输功能是不够的, 还需要增加音频数据的采集与传输. 但由于机器人运动时, 本身噪声较大, 要保证准确收集外界环境的声音, 则需要进行深入的研究.
[1] Bares J, Hebert M, Kanade T, et al. Ambler: An autonomous rover for planetary exploration [J]. Computer, 1989, 22(6): 18-26.
[2] Oblak J, Cikajlo I, Matjacic Z. Universal haptic drive: A robot for arm and wrist rehabilitation[J]. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 2010, 18(3): 293-302.
[3] 谭民, 王硕. 机器人技术研究进展[J]. 自动化学报, 2013, 39(7): 963-972.
Tan Min, Wang Shuo, Research progress on robotics[J].Acta Automatica Sinica, 2013, 39(7): 963-972. (in Chinese)
[4] Brooks R A. A robot that walks; emergent behaviors from a carefully evolved network[J]. Neural computation, 1989, 1(2): 253-262.
[5] Delcomyn F, Nelson M E. Architectures for a biomimetic hexapod robot[J]. Robotics and Autonomous Systems, 2000, 30(1): 5-15.
[6] Dzhantimirov S, Palis F, Schmucker U, et al. HIL/SIL by development of six-legged robot SLAIR2[M]. Advances In Climbing And Walking Robots, 2007.
[7] 陈甫.六足仿生机器人的研制及其运动规划研究[D].哈尔滨: 哈尔滨工业大学, 2009.
[8] Zhang H, Liu Y B, Zhao J, et al. Development of a bionichexapod robot for walking on unstructured terrain[J]. Journal of Bionic Engineering, 2014(11): 176-187.
[9] Wilcox B H. ATHLETE: A cargo and habitat transporter for the moon[C]. Aerospace conference, Big Sky, MT, USA: IEEE, 2009: 1-7.
[10] Wilcox B H. ATHLETE: Lunar cargo unloading from a high deck[C]. Aerospace Conference, Big Sky, MT, USA: IEEE, 2010: 1-9.
[11] Wilcox B H. ATHLETE: A cargo-handling vehicle for solar system exploration[C]. Aerospace Conference, Big Sky, MT, USA: IEEE, 2011: 1-8.
[12] Wilcox B H. ATHLETE: A limbed vehicle for solar system exploration[C]. Aerospace Conference, Big Sky, MT, USA: IEEE, 2012: 1-9.
[13] 丁希仑, 王志英. 六边形对称分布六腿机器人的典型步态及其运动性能分析[J]. 机器人, 2010, 32(6): 759-765.
Ding Xilun, Wang Zhiying. Typical gaits and motion analysis of a hexagonal symmetrical hexapod robot[J]. Robot, 2010, 32(6): 759-765. (in Chinese)
[14] 潘阳, 高峰. 一种行走操作一体化的六足步行机器人[C].中国机构与机器科学国际会议论文集, 2012.
DynamicModellingandImplementationofIntelligentHexapodBionicRobotBasedonAndroidSystem
LIANG Meiyan, XUE Tailin, WANG Yu, MENG Jianlei, CAO Kangxuan, YANG Haoda
(Dept. of Electronics and Information Engineering, Shanxi University, Taiyuan 030013, China)
According to simulating the characteristics of spider movement, a hexapod bionic robot based on Android control is proposed in this paper. The quantitative relationship of walking paths and joint angel is established according to the Lagrangian dynamics modeling and theoretical analyzation, and the motion stability and flexibility are improved. By theoretical modeling and analyzation, series of movement pattern are realized including spanning the barrier. In addition, the video transmission and ultrasonic distance measuring module are added to the robot system in order to implement the function of video transmission and automatic obstacle avoidance. The obstacle avoidance distance is about to 30 cm using ultrasonic distance measuring module.
intelligent hexapod robot; video transmission; auto-obstacle avoidance; wireless control
1671-7449(2017)06-0498-07
2016-12-26
梁美彦(1984-), 女, 讲师, 博士, 主要从事机器人, 雷达, 宽带通信等研究.
TP242
A
10.3969/j.issn.1671-7449.2017.06.006