曹鹏彬,胡泰然,陈绪兵
( 武汉工程大学 机电工程学院,湖北 武汉 430205)
近年来,随着计算机技术的发展和成熟,人工智能技术发展越来越快,而机器人作为人工智能的载体,已经渗透到各行各业,被认为是服务人类的工具。机器人作为一种机电一体化设备,具有在人类控制下自动执行工作的能力,美国机器人协会给机器人的定义[1]为:“一种可编程和多功能的操作机;或是为了执行不同的任务而具有可用电脑改变和可编程动作的专门系统[2]。”
进入21世纪以来,随着人们生活水平的日益提高,机器人逐渐从工厂走向千家万户,作为服务型机器人,成为家庭中重要的组成部分[3-4]。
在全世界先后踏进老龄化社会过程中,助老助残机器人占有越来越大的比重。在助老助残机器人中,爬楼的实现是很具有挑战性的。
针对老龄化人群爬楼困难的问题,开发了一套软硬件结合的产品,帮助老人完成爬楼;研究了智能爬楼机器人在爬楼过程中的姿态控制,为爬楼动作的实现奠定基础。
智能爬楼机器人可以分解成硬件电路和软件程序两大部分。其中硬件电路部分为电路本身(包含传感器模块、驱动器模块、步进电机、电源模块等),软件程序为主控制器控制程序。首先由传感器模块将采集的数据传送给主控制器进行运算处理,主控制器根据当前的姿态,将数据输出给驱动器模块来控制电机达到爬楼的效果[5]。爬楼过程中姿态如图1所示。
本文采用STM32F103ZET6作为主控制器,MPU6050为姿态传感器,同时配备超声波传感器KS103、电子罗盘HMC5983以及编码器HKT22等,主控制器的参数如表1所示。
图1 爬楼机器人底盘爬楼姿态图
装置核芯ARM Cortex M3数据总线宽度(bit)32程序Flash(kB)128最大IIC通道数目2RAM (kB)20最大SPI通道数目2工作频率 (MHz)72最大USART通道数目3I/Os100计时器(bit)3×16指令集结构RISC计时器分辨率(bit)16
(1) 电源部分设计。电源部分采用德州仪器LM43603QPWP电源稳压芯片,该芯片是一款同步降压转换器,此转换器能够驱动高达3 A的负载电流,其输入电压范围为3.5 V~36 V(最大绝对值42 V)。同时采用峰值电流模式来实现简单控制环路补偿和逐周期电流限制。
(2) 主控电路设计。主控芯片采用意法半导体STM32F103ZET6。该芯片采用Cortex M3内核,支持2路SPI、2路IIC,其工作稳定,性能强劲。同时支持3路USART串口,方便调试。
(3) 外围电路设计。爬楼过程中的姿态数据获取采用MPU6050六轴加速度计陀螺仪传感器,距离信息采用超声波传感器获取,同时使用编码器采集当前电机转速,为平衡提供条件。调试电路的设计同时还包括Flash存储芯片(W25Q64)模块的电路设计、SD卡模块的电路设计,为参数和地图等信息的存储创造了条件。
根据以上分析,设计原理图并绘制PCB,通过打样焊接最终得到主控板如图2所示。
图2 STM32主控板实物图
软件设计整体方案采用闭环控制,爬楼过程中首先读取MPU6050传感器、超声波等传感器信息,通过电机来调整当前的方向和间距。整体的执行策略如图3所示。
姿态传感器的数据波动非常大,所以对传感器数据的滤波是至关重要的。本文以卡尔曼滤波为基础,采用改进的卡尔曼滤波得到平滑的曲线。滤波效果良好,曲线平滑过冲小。
将模糊控制的理念与传统的PID控制算法相结合,就可以形成模糊PID控制。模糊PID算法结合了传统PID控制和现代控制理论中模糊控制的优点,对非线性的系统有较好的控制效果。本系统采用模糊PID算法,实际调试过程中取得了较好的控制效果。
图3 爬楼机器人软件设计流程图
本文首先系统分析了爬楼机器人设计的总体方案,设计方案包括硬件电路的设计和主控制器算法的设计。硬件电路的设计部分包含主控制器、传感器模块、电机驱动器模块、步进电机等器件的选型,同时对主控制器核心控制电路、传感器接口、电源模块、驱动模块的电路集成设计。主控制器算法部分采用卡尔曼滤波,得到较为准确的传感器数据,再通过模糊PID算法,保证系统安全稳定运行。
参考文献:
[1] 李磊,叶涛,谭民,等.移动机器人技术研究现状与未来[J].机器人,2002,24(5):475-480.
[2] 滕赟,姚辰,王挺,等.变形履带轮椅机器人的张紧力最优估计和越障能力分析[J].机器人,2010,32(5):622-629.
[3] Hector M Becerra,Carlos Sagues,Youcef Mezouar,et al.Visual navigation of wheeled mobile robots using direct feedback of a geometric constraint[J].Autonomous Robots,2014,37(2):137-156.
[4] Fabian J,Young T,Jones J C P,et al.Integrating the microsoft kinect with simulink:real-time object tracking example[J].IEEE/ASME Transactions on Mechatronics,2014,19(1):249-257.
[5] 刘浩蓬,龙长江,万鹏,等.植保四轴飞行器的模糊PID控制[J].农业工程学报,2015(1):71-77.