一种仿生口腔机器人的结构模型及其控制系统设计
2022-07-18付艳玲张庆王宏伟吕庆王婉
付艳玲,张庆,王宏伟,吕庆,王婉
(中国检验检疫科学研究院,北京,100176)
0 引言
仿生口腔机器人是根据仿生学原理,模拟人体口腔运动功能的仿生机器人。此类机器人是基于综合仿生学,结合空间机构设计、智能控制技术、电机驱动技术等多种学科模拟人体口腔机构特点、行为方式和运动功能的装置【1】。然而,由于人体口腔特殊的不规则构造和复杂的运动模式,导致此类机器人对控制系统有着更高的要求【2】。
早期的机器人设计中通常采用AVR系列微控制器[3]、DSP数字信号控制器[4]等对功能简单的机器人系统进行控制,此类控制系统集成度低、实时性差,一定程度上降低了机器人的自动化程度。基于此,本文以实验室自行研制的仿生口腔机械装置为对象,采用stm32系列嵌入式微处理器及μC/OS-II实时多任务操作系统构成控制系统的核心,执行单元的驱动模块采用通用器件搭建,设计了一套集成度高、体积小、功耗小、实时性好的硬件控制系统平台,并基于此平台进行了相关功能的软件设计及实验验证。
1 仿生口腔机器人机械结构
在控制系统设计之前,本文通过人体口腔的构造以及运动功能分析,搭建了仿生口腔机器人的机械本体结构。仿生口腔机器人在结构设计时遵循了“行态仿生,突出功能”的原则,利用Solidworks设计了仿生部件、机械零部件和组件等,并对各仿生部件及组件进行组合,形成一个完整的装配体【5】,其总体结构图如图1所示。
图1 仿生口腔机器人建模结构图
仿生口腔机器人的机械结构自下而上分成底座、仿生脖颈和仿生口腔三个部分,具有如图2所示的4个自由度,分别负责仿生口腔腔体水平旋转、上下旋转、倾斜翻转和颌面开合运动控制。仿生口腔机器人的机械结构本体,能够满足机器人的仿生机械部分的机构及性能要求,是控制系统设计的母板和基础。
图2 仿生口腔机器人关节自由度示意图
2 控制系统方案设计
仿生口腔机器人的运动状态是一个非常复杂的过程,以现有的技术手段对其进行运动解析基本无法实现,本文对口腔机器人的仿生关节的运动功能进行简化处理,为整体的设计实现带来了可能。
基于仿生口腔机器人的机械结构和运动需求,其控制系统要同时控制4个关节驱动器工作,并进行大量计算协调多关节的运动,还要具备良好的扩展性,因此控制系统的主控制器决定采用高性能、低成本、低功耗,具有多路PWM输出功能和丰富I/O端口的STM32系列微控制器。关节驱动器采用直流舵机,即一种位置(角度)伺服驱动器。控制系统的控制原理如图3所示。
图3 控制系统控制原理图
控制系统具备很好的单机性能,用于人机交互的液晶触摸显示屏用来完成机器人的动作规划,确定机器人的运动状态;主控制器接收液晶屏输入的用户指令,并将指令解析成对应的运动模式,然后转换为对关节驱动器的操作指令,发送给各个关节驱动器,完成多关节的协调运动;关节驱动器处于控制系统的终端,接收主控制器的指令信息,完成对关节的驱动控制。
3 控制系统硬件设计
控制系统的硬件电路由核心控制单元及其外围接口电路,舵机驱动电路、人机交互模块、存储器模块、蓝牙模块、电源管理模块等组成【6】。系统硬件结构图如图4所示。控制系统实现操控功能的关键模块为主控部分、电源部分和人机交互部分。电源部分负责给控制系统的各个模块供电。主控部分响应人机界面输入的控制指令,对仿生口腔机器人的机械结构进行集中控制,负责机械结构各关节的舵机驱动。人机交互部分是操作者与主控制器的数据交互,主要用于实现信息显示、状态显示、信息输入、状态输出等信息交互功能。
图4 控制系统硬件结构图
主控部分采用基于Cortex-M3内核的STM32F103ZET6作为主控制器。该控制器集成了多路PWM控制单元和丰富的外围I/O资源、具有运行处理速度快,低功耗以及多任务等特点。这款控制器的高性能、高性价比、简单易用的开发方式,能充分满足本项目的设计需求。
关节驱动器采用30kg单轴金属数字伺服舵机DS3230,工作电压为4.8V-6.8V,可控角度为360度,脉宽范围为500us-2500us,控制精度为3us,工作频率为50-330Hz,驱动方式为PWM驱动输出。DS3230数字伺服舵机内部采用MCU控制,单次PWM脉宽控制信号可锁定舵机输出角度,因此在性能上具有控制精度高、线性度好、与控制协议严格一致的特点,既能达到位置控制又能实现闭环反馈。DS3230数字伺服舵机外部采用金属外壳和金属齿轮设计,因此此款舵机具有良好的散热性和较长的使用寿命。关节驱动器模块结构图如图5所示。
图5 关节驱动模块结构图
电源管理模块采用便携式电源管理模式,配备单节18650锂电池的可边充边放的电源方案。电源管理模块增加有UPS功能,并具备锂电池过充保护、过放保护、限流保护、过温保护和输出短路保护等功能。电源管理模块的供电输出为直流5V,充电电流为500mA。由于伺服舵机会产生噪音,而且伺服舵机在重负载时也会拉低放大器的电压,为了提高控制系统的稳定性,电源管理模块为舵机驱动和控制电路分开供电,实现相互间的电源隔离,并进行比例必须合理电源供应。电源管理模块设计原理如下图6所示。
图6 电源模块设计原理图
人机交互部分通过接入LCD触摸显示屏给用户提供一个可视化的人机交互接口。系统中采用的是分辨率为4.3寸的电容触摸屏模块ATK-4.3TFTLCD。该模块屏幕分辨率为800*480电容触摸屏,16位真彩显示,采用自带GRAM的NT35510驱动,无需外加驱动器,支持5点同时触摸,具有非常好的操控效果。
4 控制系统软件设计
在控制系统中,根据仿生口腔机器人的运动需求生成相应PWM信号,经控制线传送到各关节舵机,该PWM信号的时基脉冲为20ms,脉宽为0.5-2.5ms,脉冲的宽度决定了舵机的转动角度,因此舵机的转动角度由可变宽度的脉冲来进行控制。一般来说,不同舵机的最大转动角度可能不相同,但是其中间位置的脉冲宽度是一定的,那就是1.5ms,从这个位置到最大转动角度与最小转动角度的量完全一样【7】。当控制系统发出指令,控制信号经由控制线进入舵机内部的信号调制模块,获得直流偏执电压。将获得的直流偏执电压和内部电位器的电压比较,得到电压差输出,电压差的正负决定电机的正反转。直流电机主轴驱动旋转电位器旋转,当电位器输出的电压信号与输入控制信号转换出的直流偏执电压之间的电压差为零时电机停止转动,此时电机保持在所需角度,当接收到下一个不同的脉冲控制信号,舵机会按这个原理转动到新的角度【8】。
Stm32f103zet6产生PWM信号要用到定时器,其内部的定时器资源非常丰富,在软件设计中,Stm32f103zet6使用2个通用定时器,每个定时器产生2路PWM波。确定PWM信号发生通道后要进行时钟、GPIO口以及定时器配置,然后根据指令读取关节角度,并转换成对应占空比的PWM信号,最后输出周期为20ms的PWM脉冲控制信号。软件的设计与开发工具采用Keil uVision5集成开发环境,程序设计语言为C语言,在软件开发和调试过程中,在功能实现的基础上,还应具有完整的注释、精良的架构、良好的扩展性、完备的保护系统、运行前的模拟系统等特点。软件控制流程如图7所示。
图7 软件控制流程图
5 调试及实验
设计实现的仿生口腔机器人由控制电路板、水平相驱动器、垂直相驱动器以及机械部分组成,实现支撑体带动口腔腔体的4个自由度复合运动。实验将对自下而上4个自由度的舵机驱动控制进行测试。舵机的控制信号是一个20ms左右的时基脉冲,其高电平部分为0.5ms-2.5ms范围内的角度控制脉冲部分。以00-1800为角度范围,对应的控制关系如表1所示。
表1 角度脉宽换算
关节1、关节2和关节3主要实现对仿生腔体的支撑和联动的作用,完成腔体水平旋转、上下旋转和倾斜翻转功能。其运动设计参数、PWM控制信号、实测数据如下表2所示。
表2 测试记录
关节4主要负责仿生口腔的颌面开合运动,运动状态为垂直开合运动,其运动设计参数、PWM控制信号、实测数据如下表3所示。
表3 测试记录
6 结束语
通过人体口腔的构造以及运动功能分析,搭建了一种简单、可靠的仿生口腔机械架构,并以stm32f103zet6为核心控制器和PWM脉冲波为控制信号设计了控制系统,完成了仿生口腔机器人的设计与实现。该机器人机械结构仿真度高,控制系统对机器人各关节的控制准确,整体系统运行稳定可靠,自动化程度高,符合设计要求。