APP下载

基于Arduino的仿生六足侦察机器人设计

2022-11-24陈力雄郭宛霖张世龙侯一航戴杰林秀芳

电子制作 2022年21期
关键词:控制板舵机步态

陈力雄,郭宛霖,张世龙,侯一航,戴杰,林秀芳

(闽江学院,福建福州,350108)

0 引言

六足机器人相比于传统的机器人,如履带式机器人,具有更灵活的机械结构和移动步态,能够在复杂的环境中平稳地行走,可以代替人类进行设备巡视、工程勘测、排雷排爆、实时跟踪及探测特定情况下无法进入或是会导致人类的生命健康遭遇威胁的工作环境。Arduino是基于单片机的开放源码的电子原型平台,以其易学性和灵活性,可以接收来自各种传感器的输入信号从而检测出运行环境,并通过控制光源,电机以及其他驱动器来影响其周围环境0。基于Arduino开源平台和仿生学原理,仿生六足机器人模仿多足类动物的运动方式,具有灵活性、可靠性、稳定性、自主性的特点,面对复杂环境条件具有强大的适应能力。

1 机械结构设计

■1.1 材料选择与加工

基于对自身重量、电源损耗性和经济性等因素的考虑,选用树脂作为六足机器人外型结构主要材料,树脂材料制品表面光洁度高,且韧性好、耐高温、耐低温、耐腐蚀、抗老化,使用寿命长。运用SLA(光固化技术)进行3D打印,该技术是目前主流3D打印成型技术中精度最高,表面成型质量好,打印精度高,性价比高。

■1.2 外型结构设计

仿生六足机器人的外型结构设计使用SOLIDWORKS软件进行三维建模,如图1所示。六足机器人的整体结构由多个零件构成,主要分为躯干和腿部两个部分。六足机器人的腿部采用仿生结构,仿昆虫关节腿机构。腿部的每个关节均由舵机驱动,通过主控芯片控制驱动相应关节的舵机运动使六足机器人实现仿生运动。系统从结构上保证了该六足机器人可以有效模拟六足昆虫的行走方式,并可在多种复杂环境状况下完成指定动作。

图1 三维模型装配图

■1.3 六足机器人尺寸参数

机器人整体尺寸约为(长×宽×高) 435mm×75mm ×434mm。具体参数如表1所示。

表1 具体尺寸参数

■1.4 关键结构强度校核

由于六足机器人六条腿结构一致且尺寸大小相等,选取其中一条腿进行分析,如图2所示,杆1表示六足机器人的大腿,杆2表示六足机器人的小腿,杆3表示六足机器人的躯干部分。假设各部分质量均匀分布,分析A点以及B点的力和力矩可得以下结果。

图2 力学分析模型

其中CM为大腿关节驱动力矩,BM为小腿关节驱动力矩。

使用SOLIDWORKS软件对关键结构进行有限元分析,得出六足机器人腿部结构的静应力分析图,结果如图3所示。通过对其腿的结构进行有限元分析,发现腿的各个部分结构能够满足设计要求。因此可以得出该结构符合设计要求。

图3 静应力分析图

■1.5 仿生原理

本设计采用三角步态,模仿六足昆虫运动时的步态。六足昆虫行走时,将两侧对称分布的六只足分成两组,以三角形结构交替前进。虫体右侧中足和左侧的前后足为一组,虫体左侧的中足和右侧的前、后足为另一组。当提起其中一组中所有的足时,另一组的足原地不动,支撑身体并以中足为支点,前足关节肌肉收缩,拉动身体向前,后足的关节肌肉收缩,将虫体向前推,同时虫体的重心落在另外一组三角形的三足上,然后重复前一组的动作交替前进。这种行走方式保证重心总是落在三角支架内使运动更加稳定且快速。三角步态示意图如图4所示。

图4 三角步态示意图

2 系统硬件设计

■2.1 六足机器人总体结构

仿生六足机器人系统的组成部分中,根据六足机器人的功能需求,选用Arduino 作为开发平台,以ATmega2560芯片作为系统的主控芯片,添加2.4G无线控制器模块、红外热成像模块、定位模块、电源模块和舵机,共同组成机器人系统。系统的总体结构如图5所示。

图5 总体结构图

■2.2 Arduino控制板

本设计采用MEGA2560 PRO控制板,如图6所示,是基于ATmega2560(16MHz晶振)主控芯片的微控制板,采用CH340(12MHz晶振)芯片作为驱动芯片,内存大小为256kb,同时具有54个数字接口和16个模拟接口,能够在-40℃~85℃的环境下正常工作。相比Arduino Mega 2560,它具有更小的体积和更强大的功能,能够满足该仿生六足机器人系统的控制需求。主控芯片原理图如图7所示。

图6 MEGA2560 PRO实物

图7 主控芯片原理图

■2.3 驱动元件

为满足六足机器人驱动系统的需求,考虑到六足机器人的稳定性,易操作性及耐用性等,本设计的控制方案采用舵机驱动。

舵机是由变速齿轮组、直流电机、可调电位器和控制电路组成的一套自动控制系统,常作为机器人的驱动部件。舵机通过信号线与主控芯片进行连接,在使用过程中对信号线发送指定信号来指定舵机输出轴的旋转角度和速度。该系统选用 MG90s 舵机作为驱动元件,因本设计需要不断控制机器人各关节运行固定的角度来模拟六足机器人的仿生动作。该舵机不但扭力大,精度高,且采用舵机插拔线控制,便于插拔和舵机延长线的选型及更换,适合多自由度机器人的设计。实物如图8所示。

图8 舵机

该舵机输出轴的角度根据时基脉冲来控制,一般需要一个20ms左右的时基脉冲,在0.5~2.5ms 的脉冲控制下,舵机转动相应的角度。该舵机转动角度为180°,那么对应的控制关系如表2所示。

表2 脉冲角度对应表

■2.4 无线遥控模块

为了方便远程控制六足机器人,本设计使用了遥控模块。无线遥控模块采用基于2.4G无线传输技术,2.4G技术具有保密性好、省电、双向双工工作、传输距离远、传输带宽较大等优点,可以对仿生六足机器人进行远距离控制。模块分为接收器和控制器两部分。接收器可实现远距离接收,因其具有强大的频率接收能力。该模块不仅频率高而且控制时信号好,抗干扰能力强,适合应用于复杂的环境中,满足该系统在复杂环境下的远距离控制需求。

■2.5 红外热成像模块

采用AMG8833红外热成像传感器,如图9所示,是一个8×8的红外热传感器阵列。它将通过I2C返回一组64个单独的红外温度读数。该传感器可以准确测量温度范围为 0℃~80℃的温度,它可以在7m的距离内检测到人。结构紧凑而简单,体积小,便于集成。因此采用该传感器作为红外热成像模块。

图9 AMG8833

■2.6 图像传输模块

该六足机器人在运动到控制者视野之外时,能够拍摄周围影像,并将画面实时传输给操控者,因此需要图像传输模块来实现该功能。本设计采用FPV高清摄像头,如图所示,清晰度达1000TVL,图像清晰。它具有体积小,质量轻,且功耗小等优点。工作电压为7.4V。

图像传输功能由600mW发射器和接收器来实现,工作频率为5.8G,发射距离可以达到1km,体积和质量都很小,适合需要远距离操作的六足机器人使用。

■2.7 电源模块

考虑到六足机器人的负载能力及各模块所需的电力,选择锂电池作为机器人的能源。锂电池具有高能量密度、高功率、使用寿命长等特点。锂电池有优良的高低温放电性能,可以在-20℃~+60℃工作,高温放电性能高于其他各类电池。常应用于汽车及工业电力行业,非常合适作为六足机器人的能源。

根据控制板和摄像头的电压需求,需引一路电压为7.4V的电路接入Arduino 控制板和高清摄像头进行供电。根据舵机工作电压的需求,另引一路经过降压稳压模块将电压稳定至5V后接入舵机进行供电。因此本设计采用7.4V 15C的锂电池,符合机器人系统供电需求。

3 系统软件设计

■3.1 程序流程

本文所搭建的仿生六足侦察机器人利用ATMEGA 2560芯片对18个舵机进行控制,从而实现对仿生六足侦察机器人的运动的控制。针 对不同的使用场景与复杂地形,仿生六足机器人在行进过程中,需要具有前进、后退、转向、克服障碍物等多项功能,对于运动的速度、运动的平稳性等参数具有不同要求。从而为了应付不同的环境,仿生六足侦察机器人设有不同步态,共四种:三角步态、波纹步态、四足步态、波浪步态。并且Arduino控制板通过2.4G无线接收器连接PS2控制器对四种步态进行选择,实现对仿生六足机器人进行远距离无线操作。

同时,本文所搭建的仿生六足侦察机器人还搭载了红外传感器和FPV相机,将其所侦查的复杂地形数据传回控制器进行反馈与响应。传感器所传回的反馈使得控制系统形成了一个闭环控制系统,增强了仿生六足机器人抵抗干扰的能力,改善了系统的响应的稳定性。主程序流程图如图10所示。

图10 主程序流程图

■3.2 软件功能设计

采用了19段的代码来对机器人进行控制。首先进行参数定义,例如手柄端口定义,伺服端口定义以及LED端口定义等。再进行变量声明,手柄变量中的手柄类型、手柄震动,逆运动学变量,抬腿模式变量,定位和行走变量等等。之后便是对象声明18个伺服系统。再编写一个启动程序。进入到主程序,检查手柄类型、设置帧时间、读取输入、将腿复位、使用IK计算定位腿部-除非将全部设置为90度模式、电池监视器和LED输出、打印调试数据、处理模式,如果需要,重新设置抬腿首过标志。接着开始各个子程序的编写:有处理手柄控制器输入、腿部IK例行程序(反向运动学(IK)系统)、波纹步态、四足步态、三脚步态、波浪步态、计算行走步幅、带控制器的实体平移(xyz轴)、身体随控制器旋转(xyz轴)、单腿提升模式、设置所有的伺服为90度、电池监视器例行程序、LED条形图程序、打印调试数据,共14个子程序。

三脚架步态功能程序如下所示,从控制器中读取命令,三条机械足为一组,一组向前移动时,另外一组提供支撑。

计算行走步幅调整运动模式程序如下所示,传感器将检测到的数据传输至控制器,通过分别计算步幅和旋转三角的值,设置正常行走模式和慢速行走模式的持续时间。

4 结语

本文设计了一种基于Arduino的仿生六足机器人。Arduino主控制器驱动舵机,安装在机器人上的传感器将采集到的环境数据传输回控制端,依据反馈数据和影像实现环境侦察工作,并控制舵机的输出轴的旋转角度和速度,调整运动模式,维持六足机器人的运动姿态,适应所在环境。此外,增加了遥控模块,基于2.4G无线传输技术,实现了远程机器操控,大大增加了泛用性。

猜你喜欢

控制板舵机步态
基于步态参数分析的老年跌倒人群步态特征研究
特别策划《步态分析研究综述》
直升机某型舵机自动测试系统设计分析
轨道交通AFC导向标识控制板设计
步态识人
基于dsPIC单片机的飞艇舵机控制实现
一种集成脚本控制单元的设计与实现
一种全隔离的无刷直流电机的反馈制动控制板的研究
超音速舵机保护器
菜鸟看模型