你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【转载】基于STM32的小型仿人机器人控制系统设计

[复制链接]
Belight 发布时间:2017-6-6 13:35
人形机器人是具备人类的外形特征和行动能力的智能机器人,可以采用双腿行走,通过手臂和身体的协调完成一些简单的动作,以及通过简单的语言和人类进行交流。与传统的机器人相比,人形机器人具有很大的优势,广泛应用于工业、农业、军事、医疗等领域。随着机构学、控制学、传感技术、人工智能技术的发展,人形机器人技术的发展越来越快,除了具备了人工智能外,还可以根据人类的声音、手势等从事相应动作,并具有基本的记忆和辨识能力。本文采用STM32芯片设计出了一款小型仿人机器人控制系统,应用于自主开发的小型仿人机器人,能够实现机器人的平稳行走,自主避障,开发周期短,成本低。


1 小型仿人机器人的结构简介
小型仿人机器人虚拟样机模型如图1所示。该小型仿人机器人具有10个自由度,每条腿具有3个自由度,每条胳膊具有2个自由度。该小型仿人机器人实物如图2所示,小型仿人机器人高25厘米,重350g,小型仿人机器人的10个舵机分布在机器人的各个关节,控制板安装在机器人的背后,电池装在机器人胸部之内,红外测距传感器安装在机器人的胸部前方,无线模块NRF24L01和姿态传感器随控制板安装在机器人的背后。
11.png
图1 小型仿人机器人虚拟样机

12.png

图2 小型仿人机器人实物结构  

为了给该小型仿人机器人提供足够的动力、有效的控制力矩和一定的续航能力,该小型仿人机器人各个部件选型如1表所示:

表1 小型仿人机器人部件一览表
器件名称
型号
结构材料
3mmABS板
舵机
MG90S
姿态传感器
MPU6050
控制板芯片
STM32F103 RET6
控制板电池
遥控器芯片
3.7V聚合物锂电池
STM32F103C8T6
遥控器电池
3.7V聚合物锂电池
无线模块
NRF24L01

2 小型仿人机器人控制系统设计
小型仿人机器人控制系统的硬件组成如图3所示,包括主控系统和遥控系统两大部分,它们通过遥控器通过NRF24L01发出的2.4GHZ无线信号进行通讯。

总体来说,小型仿人机器人控制系统的硬件部分主要有8个模块,包括主控芯片模块、电源模块、通讯模块、PWM多路输出模块、红外传感器模块、姿态传感器模块、SD卡模块、遥控器等,其硬件系统模块如图3所示。主控芯片模块是机器人的大脑,控制机器人的运动和处理各种数据;姿态传感器用来检测机器人的姿态,以便实现其姿态测量;SD卡模块是记录姿态数据,以便后续处理。

14.png
图3 小型仿人机器人控制系统硬件组成框图

2.1小型仿人机器人控制电路总体设计
控制系统硬件电路采用自顶向下的方式设计,总体设计图如4所示。

15.png
图4 STM32总体电路


2.2主控芯片外围电路设计
STM32作为整个控制系统的核心,具有十分重要的作用,为了保证系统稳定工作,必须设计好STM32外围电路,尽量减少或避免外界干扰[3]。主控芯片采用STM32F103RET6,封装为LQFP64,主频72MHz,具有ADC、DMA、SDIO等功能,其外围电路设计如图5。

16.png
图5主控芯片STM32外围电路


2.3供电电路设计
控制系统由放电倍率大的航模电池供电,输出3.7V电压,一路直接给舵机、红外测距传感器供电,另一路通过降压芯片AMS1117-3.3把电压降到3.3V给STM32芯片、MPU6050、NRF24L01供电。为了保障电池充电方便,本电路板采用TP4056芯片通过USB接口给电池充电,充电时7管脚输出低电平,红灯D2亮,6管脚输出高阻,绿灯D1灭;充满时7管脚输出高阻,红灯灭D2,7管脚输出低电平,绿灯D1亮。控制器的电源部分如图6所示。

17.png
图6供电电路


2.4姿态传感器电路设计
    MPU6050是INVENSENCE公司推出的一款传感器,具有低成本、低能耗和高性能的特点。该芯片首次集成了三轴陀螺仪和三轴加速度计,拥有数字运动处理单元(DMP),可直接融合陀螺仪和加速度计数据。陀螺仪最大能检测±2000°/s,加速度计能最大检测±16g,最大能够承受10000g的外部冲击。MPU6050采用IIC协议与主控芯片STM32进行通讯,电路设计如下图7示。

18.png
图7 MPU6050电路


2.5无线模块NRF24L01电路设计
   本控制系统和遥控器之间采取NRF24L01模块进行通讯,NRF24L01是一款工作在2.4~2.5GHz世界通用ISM频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型SchockBurstTM模式控制器、功率放大器、晶体振荡器、调制器、解调器。输出功率、频道选择和协议的设置可以通过SPI接口进行设置,电路图设计如图8。

19.png
图8 无线模块NRF24L01


2.6 SD卡模块电路设计
    为了便于准确分析实验数据,我们设计了机器人控制系统的存储单元,主控单元可以将采集的姿态信息、遥控信息直接存储在SD卡中。SD卡的电路设计如图9所示,采用SDIO的通讯协议,速度高达10M/S。

20.png
图9 SD卡模块电路


2.7 PCB电路设计
    完成原理图设计后,进行了双层PCB电路板的设计,实物控制器的PCB板如下图10所示。整体PCB控制板尺寸为50mm×70mm,利用四个铜柱将控制器竖直安装在小型仿人机器人的背部,PCB实物如图10。

21.png
图10 PCB板实物

2.8遥控器设计
本文设计的仿人机器人有两种运行模式,自动模式与手动模式。在自动模式下,机器人由编写的程序控制直接完成一连串预设的动作。而在手动模式下,可以通过遥控器实时控制机器人动作。因此为了实现远程操控机器人完成动作,同时设计了基于STM32F103C8T6芯片的遥控器手柄,原理图如图11。

22.png
图11 遥控器原理图

    该遥控器手柄通过NRF24L01无线模块与主控芯片进行通信,两个摇杆均可向前后左右下5个方向按动,可实现仿人机器人的前进、转弯、鞠躬和起立等动作。


3 小型仿人机器人控制软件设计
3.1 整体设计流程
小型仿人机器人通电后,各个舵机进行初始化,让机器人保持站立。通过姿态传感器MPU6050读取机器人的姿态,若姿态偏移则进行校正,使之保持站立姿势,然后机器人通过接受指令工作,软件流程框图如图12。
23.png      
图12 软件流程框图


3.2舵机控制的插补法
仿人机器人的控制算法主要包含两种,一种是速度控制算法,另一种是多个关节的联动控制算法[4-6]。本系统采用“插补法”速度控制算法控制机器人舵机运动。
舵机本身是不能进行速度控制的,我们必须要通过软件实现,想要实现速度控制,必须要给定舵机的初始位置和终点位置,然后给定从初始位置到终点位置的时间,把时间和角度分别细化,并一一对应。这样就可以从宏观上对舵机实现速度控制。时间细分的越密集,舵机的转动也越流畅,但是受舵机自身条件的限制,不可能无限的细分下去[7]。插补法过程如下。
采用定时器中断来实现时间的细化,一个周期为 T 的时间里,定时器中断 N 次,这样时间的细化单位如式(1)所示。
24.png
“差补法”的软件设计如图13所示。

25.png

图13 差补法速度调节流程图


4 小型仿人机器人试验
完成小型仿人机器人的编程后,对机器人进行了蹲下起立、摆臂、鞠躬、摆腿、步行前进、倒地后起立、避障等试验,结果如下。

4.1 蹲下起立
    通过踝关节和膝关节舵机的协调,再配合上肩部动作,机器人做出了上下起伏的蹲下起立动作。
26.png

图14 蹲下起立图


4.2 摆腿
    将机器人头朝下放倒后,分别做出前后摆腿和左右摆腿的动作。

27.png
图15 前后摆腿图(上)和左右摆腿图(下)

4.3步行前进
    通过髋关节与膝关节舵机的协调配合,机器人以小碎步的形式稳步前进,肩关节舵机的摆动则为机器人提供平衡作用。

28.png
图16 步行前进图

4.4倒地后起立
    机器人在倒立的初始状态下,通过肩关节、肘关节、髋关节和膝关节舵机的联动,实现自行起立。

29.png
图17 倒地后起立图


4.5 红外传感器智能避障
    机器人通过红外测距传感器检测到前方有障碍物时,通过腿部舵机的配合,自动向左转绕开障碍物。

30.png
图18 智能避障图

5 结论
本文基于STM32F103芯片设计了一款通用的小型仿人机器人控制系统,该系统能够控制10自由度(最多18自由度)的小型仿人机器人。经过试验,10自由度小型仿人机器人在该控制系统的控制下,能够实现稳定行走和自主避障,能够完成各种预期动作,并能通过姿态传感器MPU6050实现机器人的姿态测量。本文还重点研究了多路舵机的联合控制方法,实现了机器人各关节协调运动。本人研究的控制系统具有很强的通用性,为后续研究提供参考与借鉴。

收藏 评论4 发布时间:2017-6-6 13:35

举报

4个回答
me浩 回答时间:2017-6-6 16:35:07
很强的动手能力和理论基础棒棒
黑皮男 回答时间:2017-6-7 08:56:21
很赞啊
asmhai 回答时间:2017-6-27 17:27:04
非常好的设计方案。
epochal 回答时间:2017-6-27 18:37:13
不错,谢谢分享!

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版