• 收藏
  • 加入书签
添加成功
收藏成功
分享

基于树莓派4B开发板六足仿生机器人的设计与制作

中国电子企业
塔里木大学机械电气化工程学院,新疆 843300


打开文本图片集

< a rel="example_group" title="Custom title" href="http://img.resource.qikan.cn/qkimages/dzqy/dzqy202228/dzqy20222888-2-l.jpg">

摘要:六足机器人是一种多足机器人,是在我们的理想架构中,借鉴自然界六足纲昆虫的外形特点与运动方式进行设计。文中设计了一款以蜘蛛为原型,有18个关节自由度的智能视觉六足机器人,主控基于树莓派4B,通过舵机驱动执行六足的移动,搭载的摄像头可将采集的画面传输至树莓派配合OpenCV库对目标进行识别,通过超声模块可实现一定程度的自主避障、巡线运动及简单的障碍地形通过。六足机器人可以代替人在恶劣环境中完成具有危险性、复杂性的工作,减轻了人的劳动强度、提高了人身安全。本项目设计的基于机器视觉的六机器人,可用于公共场所的检测、侦察等工作,充当安检员的角色。

关键词:树莓派4B;六足机器人;仿生;机器视觉

1.机械部分设计

1.1总体设计

根据设计目标六足机器人要完成以下功能:机器人的6条腿共18个舵机,可做出类似蜘蛛的爬行与转弯动作,能在凹凸不平的地面或复杂环境运动。搭载的摄像头及感知模块可将采集的信息传输至树莓派主控。机器人腿部传动方面采用连杆与舵机结合的设计为传动结构,连接方面为改善受力采用螺丝与舵盘连接。电路方面主要基于树莓派4b,重新设计的树莓派扩展板集成了5V3A稳压与6轴速度传感器带6路舵机接口。

1.2机械结构方案设计

1.2.1机身

为方便加工制造和安装主控、舵机等设备,经过查阅文献资料,多足仿生机器人的机体在保证性能和仿真的情况下,通常采用长方形或菱形的箱型刚体结构。文中选择长方形作为机器人机体,在长方形结构上进行优化分别在四角和长边中点位置增加舵机安装打孔,该结构保证了机器人本体结构的稳定性,同时增大了六足腿部活动空间,减少了各个零部件之间相互摩擦碰撞,进一步提高机器人使用寿命更加适应外部环境需求。

1.2.2腿部

研究类蛛形纲节肢动物蜘蛛的运动特点和生理结构发现,蜘蛛腿部分为基节、股节、胫节,它们绕根关节、髋关节与膝关节做单自由度旋转运动。在运动中,蜘蛛的质量由各条腿交替支撑。

六足机器人可以看成一个机身连带着六组连杆构成,每组连杆间通过关节相互连接,每一个关节就是一个自由度,参照生物蜘蛛腿部的三个关节,六足机器人腿部可设计为三自由度,各关节分别由舵机用来驱动。这样的设计兼顾机器人动作灵活性和承载能力,从结构上保证了该六足机器人可有效模拟六脚昆虫的行走方式[1],可以实现类似蜘蛛的爬行与转弯动作。

1.2.3材料选择

基于机器人自身特性与实用方面,采用亚克力作为主体材料,亚克力又称PMMA或有机玻璃,是重要的可塑性高分子材料,亚克力板的耐磨性靠近铝材,具有良好的稳定性,可以经受多种化学品腐蚀,在拉伸、弯曲、压缩等力学性能更高一些,并且拥有良好的加工性能。

1.2.4整体机械结构

综合上述设计,确定六足机器人外观、腿部构型和电控元件安装方法。根据外观再确定机器人整体结构、装饰结构,腿部安装方法和机体空间大小。最后确定技术细节,整体机械结构设计细节、腿部细节、电控安装位置。选取机器人身体作为控制器安装位置,并在头部安装摄像头、超声波传感器,所有肢体通过连接件相连,通过组装拼接从而得到机器人。六足机器人长约400mm,宽约400mm,高约170mm,重约2.4 kg,采用11.1V 2500mAh 10C锂电池。整体由亚克力板和金属连接件组成。主体机械结构零件包括足体6个、机身1个、120°广角摄像头1个,执行器方面采用18个20kg大扭矩防烧舵机。总体设计如图2所示。

2.控制系统组成

2.1硬件选择

1、高压舵机

本文选用LX-224HV舵机,11.1V的高压舵机可以减少60%以上的电流,使机器人的续航时间大大提升,受力大的齿轮采用金属材料制成,20kg.cm的扭矩能够支撑六足机器人身体及锂电池等的载荷,能够真实掌握舵机的信息。

2、核心主控(树莓派4B)

主控主要是通过传感器反馈回来的信息,进而向舵机扩展板发出信息,驱动舵机运行至预定位置。本文中使用的核心主控为树莓派4B,树莓派4B搭载博通BCM2711SoC,最高频率1.5Ghz,更适合于人工智能发展应用,拥有大量的开发资料以及器件驱动库。在树莓派上有多个GPIO接口,可以拓展丰富的功能[2]。除了12个电源类外其余28个都是可编程的GPIO,可以用来驱动各种外设和集成的扩展板。

3、树莓派舵机扩展板

树莓派舵机控制板,顾名思义,是一个控制电路板,可以控制多个舵机,由于机器人需要18个舵机协同控制,所以另外设计了树莓派舵机扩展板,有2路PWM舵机接口、6路总线舵机接口、6轴传感器IC,为保证供电稳定集成了5V4A稳压与7.4V20A保护板带充电,增加树莓派供电模块和锂电池保护功能。

4、数据感知模块的选择

数据感知模块主要包括120°高清晰广角摄像头、HC-04超声波测距传感器、MPU6050惯性传感器,其中超声波测距传感器用于协助六足机器人躲避前方的障碍,而MPU6050传感器则主要用于六足机器人的运动感知,利用采集到数据再经过处理,就可以得到其在空间的位置信息,并以此提供数据上的支持,在运动过程中纠正其位置偏差。

2.2系统软件的设计

六足机器人舵机校准和运动控制分别用WIFI和蓝牙的方式进行实现,用到了WIFI和蓝牙在树莓派上的编程方法,舵机校准时需要将树莓派与担任上位机的PC端连接到同一WIFI,在PC端登录浏览器访问树莓派的IP地址,通过可视化的方法校准舵机角度,在界面上拖动滑杆即可控制机器人舵机的转动。上位机完成调试动作后要保存到控制板中,机器人下次上电运行程序时会自动读取上一次的校准结果,控制端就可配置控制指令。机器人的运动控制需要连接树莓派的蓝牙,通过点击界面上的方向按钮控制机器人的前进、后退、转向平移动作。在进行颜色识别功能时,界面上会显示出摄像头实时检测的画面,检测到RGB也就是红、绿、蓝三原色会有相对应颜色的方框将画面中颜色出现的位置框出,并且会自动显示出颜色相近的百分比。人脸识别时,界面上会同样显示出摄像头实时检测的画面,同时将检测到人脸的位置用方框标出。系统操作界面如图2。

3.功能实现

3.1总体功能目标

为实现六足机器人多功能的全方位运动,需要设计的仿生六足机器人可根据实际需要调整步态,在起伏的路上利用“足”移动,在相比平坦的路上收缩关节利用舵机移动、快速转向。该六足仿生机器人可实现自动避障、自动循迹运动、在设定的范围内自主移动。还可进行颜色识别、人脸识别及目标的实时检测。可实现机器人-环境交互,机器人可自主根据环境做出运动改变力求精准,同时检测到环境变化数据。

3.2运动功能

以前进状态为例:在前进状态的逻辑中,AED足先向前踏出一大步,AED对足落下后,BFC对足跟随着向前踏出一大步,但和地面之间仍保持一定距离,仅有AED对足与地面有支撑受力,然后AED对足贴地往后运动一步,由于AED对足和地面产生的摩擦,让六足机器人身体向前移动一大步,BFC对足落地。其后是循环过程执行,AED对足向前踏出保持悬空,BFC对足贴着地面向后一步,AED对足落下,BFC对足向前踏出一步,保证悬空,AED对足贴地面往后,BFC对足落下,然后按顺序循环。其它的基本控制逻辑大同小异。通过调整延时的时间来调整速度,但是延时不可以太小,否则舵机响应不及时将会造成损坏。样机足部位置如图4。

3.3数据感知通信

数据通信包括红外通讯、串口通讯和蓝牙通讯三方面。其中,红外通讯利用NEC的编码方式将信息进行编码或解码,利用红外线进行遥控指令的传送;串口通讯则是主控和舵机扩展板之间,主控可以发出指令,操控舵机转动到预定的位置;最终的蓝牙通讯能够在PC端的软件与舵机扩展板之间建立连接,用于测试与调试六足机器人的动作。

避障模块所使用的超声波传感器,只在机器人前方装了一个,所以避障功能只能在前进状态下进行,前方30cm内检测到有障碍,会强制左转,直到前方30cm内无障碍,会再返回前进运动。接收反射面积比较小,所以在不均匀平面物体前会不那么理想。使用的MPU6050六轴速度传感器可以在不平稳的地面实现相对稳定,并且是开环运行。

3.4图像处理与识别

机器人头部的高清摄像头进行环境图像采集,OpenCV进行图像处理分析,OpenCV它是一套关于计算机视觉的开放源代码的API函数库。使用OpenCV进行图像处理需要对图像进行灰度处理、图像二值化、边缘检测等,灰度化处理就是将一幅色彩图像转化为灰度图像的过程,二值化核心思想,是设阈值,大于阈值的为0(黑色)或255(白色),使图像称为黑白图。边缘检测的目的是在保留原有图像属性的情况下,显著减少图像的数据规模。

本文机器人颜色识别的基本原理是采用在OpenCV中BGR->HSV的颜色空间转换方法。人脸检测方式是使用“Haar 级联分类器” 同时OpenCV 也具备训练器和检测器。自动循迹需要首先经过OpenCV坐标系获取图像,透视变换把车身前的区域变换成俯视图然后放大到整个画面区域,经过二值化图像后获取黑线的边线并绘制线条,随后根据实际的中线和图像的中线的差值计算偏移,从而控制机器人完成循迹运动。

4.结语

随着科技的发展,万物智能化的趋势日益突出。本文给出了一种仿蜘蛛六足机器人的设计方案,包括了机械结构、控制系统、功能实现方面进行设计,最后通过实验对机器人运动性能、数据感知等进行了验证。由于使用的树莓派还有很多闲置的处理能力,也可以添加其他传感器以实现更多的功能。接下来,将进一步研究机器人如何在目标地形下有更多的步态动作以提高适应性。

参考文献:

[1]王康南,王利霞.基于Arduino平台的六足仿生机器人控制系统设计[J].物联网技术,2018,8(01):58-61.DOI:10.16667/j.issn.2095-1302.2018.01.016.

[2]于欣龙. 六足仿蜘蛛机器人样机研制及步行机理研究[D].哈尔滨工程大学,2013.

[3]谢志浩,柯文德.仿生蜘蛛型机器人体系结构研究[J].广东石油化工学院学报,2015,25(01):56-59.

[4]王康南,王利霞.基于Arduino平台的六足仿生机器人控制系统设计[J].物联网技术,2018,8(01):58-61.DOI:10.16667/j.issn.2095-1302.2018.01.016.

基金项目:大学生创新创业训练项目六足仿生视觉机器人(202210757035)

*本文暂不支持打印功能

monitor