APP下载

基于STM32单片机的双足竞步机器人设计

2022-06-21邓三星杨蒙蒙刘越奇

物联网技术 2022年6期
关键词:双足舵机调试

邓三星,杨蒙蒙,张 凯,刘越奇,刘 通

(黄河交通学院 河南省智能制造技术与装备工程技术研究中心,河南 焦作 454950)

0 引 言

双足竞步机器人是一种模仿人步态行走的机器人,能够实现双足行走和其他相关动作,其在直立行走过程中,有着良好的自由度,动作灵活、自如、稳定。双足竞步机器人包含丰富的动力学特性,具有广阔的发展前景,经过技术的创新与发展,未来它可以在多种场景中广泛应用,如物品搬运、救灾抢险等。

目前市场上的小型双足竞步机器人大致可分为使用传感器及弹性连接件和不使用传感器及弹性连接件两类。使用摄像头、激光雷达等传感器增加了机器人的功耗和成本。本文使用单片机、双轴舵机等,设计了一种小型双足竞步机器人。此机器人在不使用传感器及弹性连接件的情况下,在6 m的距离内能够稳定、快速地实现直线行走。

1 系统整体设计

此次设计的双足竞步机器人主要由机械结构、驱动模块、传感模块和控制模块等组成。机器人控制系统是机器人的“心脏”,它根据编程指令及传感信号控制机器人完成规定动作。作为机器人的核心,机器人控制系统决定着机器人的性能表现,很大程度上影响着机器人的发展方向。本文设计的机器人系统选用STM32单片机作为双足竞步机器人控制系统。

机器人技术的实现与其优良的机械结构和智能控制系统有关,控制系统要做到工作稳定、精度可靠等,就需要设计高级的控制算法。近年来,国内外相关研究人员提出了多种控制算法,以及实现相关算法的控制器,但目前相关技术还处在实验阶段,一些高级控制方法在实测过程中不够稳定,因此机器人智能控制系统仍是当前的研究热点。本文设计并制作了一种双足竞步机器人,它可以按照设定的动作,通过指令程序的编程控制实现如前、后滚翻,前进、后退等动作,并可以快速、稳定地直线行走。

2 机械结构设计

2.1 机械结构参数

双足竞步机器人的机械结构类似于人形,通过双足结构实现行走。为实现对机器人的步态设计控制,在进行机械结构设计时,通过双轴舵机模拟人类腿部膝关节。机械结构通过舵机控制芯片控制机器人腿部各关节的动作,对每一步的大小、快慢、幅度实现了精确控制。此机器人选用亚克力板材料制作,成品机器人身高约25 cm,长度约20 cm,宽度约11 cm。

2.2 机器人模型建模

通过大量研究人体腿部运动的图片、视频、相关数据,确定了机器人的结构尺寸。并通过大量仿真与实验,最终确定了机器人的原始模型,根据比例缩放后得到最终的机械结构。借助Solidworks三维绘图软件绘制三维模型,如图1所示。

图1 机器人三维模型

2.3 机器人实物制作

制作夹件、卡件和连接件时,依照图纸参数通过3D打印机加工完成。然后进行打孔、螺丝装配等精加工操作,最终完成机器人机械机构的制作和装配。机器人能够独立完成行走或其他任务。设计的双足竞步机器人依靠多关节配合行走,其两条腿的关节通过6个舵机模拟人的行走动作。在进行腿部的框架设计时,充分参考了双轴舵机的尺寸参数,使电机的活动范围尽可能匹配腿部各关节的活动范围。通过采用多关节型结构可以实现平地前、后以及侧面行走,左、右方向的转弯,攀爬台阶、斜坡等功能。机器人实物如图2所示。

图2 机器人实物

3 硬件设计

3.1 控制电路设计

双足竞步机器人控制部分采用的核心处理器为STM32F103RCT6型单片机。图3为单片机工作的最小系统,它主要由STM32F103RCT6单片机、晶振与复位电路组成,其中,晶振为32.768 kHz。

图3 STM32F103RCT6最小系统

舵机控制电路主要由PCA9685PW芯片组成,通过时钟线SCL和数据线SDA与STM32单片机通信。舵机控制电路如图4所示。

图4 舵机控制电路

舵机控制电路的P0~P6口分别与6个舵机的PWM信号线相连,以不断输出PWM波形,控制6个舵机的旋转角度,最终实现双足竞步机器人姿态的控制。舵机控制接口电路如图5所示。

图5 舵机控制接口电路

3.2 电源设计

通常出于安全和续航等因素考虑,机器人的工作电源采用7.4 V锂电池,它可以向控制系统和舵机提供7.4 V工作电压。而控制系统与舵机的电源要分开供电,避免舵机供电电源产生的电压波动对控制系统产生干扰。控制系统将锂电池提供的7.4 V电源经LM2940芯片稳压后输出5 V电源作为工作电源,而舵机可以直接使用锂电池提供的7.4 V电源。电源转换电路如图6所示。

图6 电源转换电路

3.3 舵机的使用及参数

本文设计的双足竞步机器人重量轻、体积小,腿部各关节通过舵机驱动实现精确的步态控制。舵机最早应用于航模运动中,通过调节发动机和各控制舵机以控制飞行器的飞行姿态。

舵机分为单轴舵机和双轴舵机,型号分别为DS3115MG和RDS3115MG。单轴舵机在智能小车、机械臂等设备上使用较为广泛,而双轴舵机与单轴舵机的不同之处在于它有一个虚轴,因此常用于人形机器人,如双足竞步机器人。双轴舵机外观如图7(a)所示,单轴外观如图7(b)所示。

图7 舵机实物

舵机各参数是决定机器人性能的重要指标。本次设计使用的舵机的额定工作电压为6 V,额定扭矩为15 N·m。它提供180°内可控制正反转、270°内可控制正反转、360°内可定圈连续旋转及正反转、360°内定时连续旋转及正反转等8种角度工作模式,用户可自由切换。舵机采用单总线通信,其波特率为115 200,通过总线串联各舵机。本设计中的6个舵机有专属ID号,舵机默认ID为0,可通过命令改变舵机ID,255代表广播地址。可回读角度参数,读取舵机当前实时位置。

4 软件设计

4.1 机器人系统控制原理

上位机编程软件和STM32舵机控制器之间进行实时双向通信传输,STM32舵机控制器发送控制指令给串行总线舵机并实现舵机姿态的角度回读。STM32单片机也可将编写好的程序下载到芯片中脱机运行。机器人控制流程如图8所示。

图8 机器人控制流程

4.2 串行总线舵机通信原理

本文设计的机器人控制系统采用单总线通信方式,这种方式的优点是舵机之间可串联,最多可级联255个舵机。同时它可以进行角度回读,并进行多角度模式切换。舵机内部只带有一块主控芯片,且其内部已完成PWM控制,因此用户只需编写一条简单命令即可实现舵机的控制,操作简单、快捷。串行总线舵机通信流程如图9所示。

图9 舵机通信流程

4.3 STM32舵机控制器控制算法

双足竞步机器人STM32舵机控制器的控制算法,可实现LED灯亮灭及闪烁功能,实现蜂鸣器鸣叫与多个舵机联动控制,并做一些组合动作。如下所示为启动代码,用于完成时钟配置。

5 系统调试

5.1 双足竞步机器人自由度的确定

设计双足竞步机器人最重要的工作是确定自由度的合理配置。首先,结构重心右移,此时右腿支撑地面,左腿轻微抬起,然后左腿平稳放下,重心转移到双腿中间,接着结构重心左移,此时左腿支撑地面,右腿轻微抬起,然后右腿平稳放下,最后重心再次转移到双腿间。机器人每条腿获得3个自由度,故2条腿共有6个自由度。髋关节、膝关节和踝关节的俯仰自由度协作配合,使机器人在前进方向上实现直线行走;髋关节的转体自由度可控制机器人转弯功能的实现;髋关节和踝关节的偏转自由度协作配合,可实现在横向平面内的重心转移。

5.2 控制板简介

舵机控制模块采用STM32舵机控制板,其主要由STM32F103RCT6单片机芯片、舵机控制电路、USB调试接口、蓝牙接口、无线串口、电源接口、蜂鸣器、舵机接口组成。STM32舵机控制板如图10所示。

图10 STM32舵机控制板

5.3 调试界面

控制板使用上位机软件控制,可直接使用USB接口,蓝牙模块和无线串口进行调试或下载编程。系统既可实现机器人开机状态的设置,直接使用在线运行模式控制机器人的运动,也可以将程序烧录到STM32单片机中实现脱机运行。通过重启控制器可以清除控制器中烧录的程序,实现机器人复位。在调试过程中还可以实现多个机器人协同运行,做出统一动作。调试界面如图11所示。

图11 调试界面

5.4 调试结果

先将控制程序烧录到STM32控制器中,机器人通过自动脱机运行程序,逐步完成设计动作。经过硬件调试,本文设计的双足竞步机器人可以实现前后方向走步、前后方向翻跟斗、向左及向右转动等功能。如图12所示,机器人正在跑道上进行翻滚动作,此时机器人头部朝下,脚部朝上。

图12 调试结果

6 结 语

本文采用STM32F103RCT6单片机作为控制器,开发设计了双足竞步机器人系统。首先确定了系统总体结构和组成,然后对双足竞步机器人的机械结构、舵机控制系统和上位机编程软件进行了设计与测试。在不使用弹性连接件、传感器的情况下,经过调试,机器人能够满足前行、后退、转弯、翻跟斗等基本动作要求。该机器人结构稳定,可靠性高,动作转变协调性好,运行效果良好。

猜你喜欢

双足舵机调试
Anti-N-methyl-D-aspartate-receptor antibody encephalitis combined with syphilis:A case report
含齿隙弹载舵机的全局反步模糊自适应控制
基于航拍无人机的设计与调试
基于dsPIC单片机的飞艇舵机控制实现
FOCAS功能在机床调试中的开发与应用
基于高速同步485总线通信的多通道舵机控制器设计
无线通信中频线路窄带临界调试法及其应用
冰冻的梦
调压柜的调试与试运行探讨
基于云模型的舵机同步控制