基于STM32的六自由度机械臂蓝牙控制
2019-04-27应宇恒徐云捷姚雪亮王威
应宇恒 徐云捷 姚雪亮 王威
摘要:科技不断进步,机械臂的发展非常迅速,鉴于我国机械仿生臂技术以及控制方法较西方国家落后,目前自主研发的机械臂在使用方便性以及精确度上都不尽人意。所以对于仿人型机械臂及其控制系统的研发还是有深远意义的。文章介绍了机械臂的设计方案及应用前景,本设计使用了数字式六轴螺旋仪协同作业;上位机控制使用stm32f103,实现蓝牙通讯,远程控制其动作,使其按照生产工艺的要求,遵循时间,空间的顺序来完成工作的传送和装卸。以期为我国的机械臂设计提供借鉴。
关键词:STM32单片机;六自由度;机械臂;蓝牙控制
1引言
机械臂是机器人的一个种类,是具有模仿人类手臂功能的自动控制设备,这种机器人系统有多关节连结并节允许在平面或三度空间进行运动或使用线性位移移动。构造上由手臂部分、舵机、抓取夹组成。机器人的运作由电动机驱动移动一只手臂,张开或关闭一个夹子的动作,并精确的回馈至可编程逻辑的控制器。STM32主要为高性能、低功耗的嵌入式设计的ARM,其本质为单片机。其作用就是控制机械臂完成我们所需要的控制。本项目便是围绕六自由度机械臂展开的。
2项目应用及前景
目前无线操作在很多领域中都有着广泛的应用。一般为无线局域网(WLAN)控制与蓝牙控制。无线局域网比较适合客户端设置以及高速传输,而蓝牙的点对点链接会比无线局域网要容易一些。无线可移动机械臂在流水线生产中,易于跟随流水线一起移动。与固定机械臂流水线相比较,能够节省成本、提高工作效率与生产量,给企业带来可观的利益;在农业中可将机械臂与图像识别技术结合做到自动采摘,节省大量的人力。而且例如在山间作业时能够更好地适应环境,减少容易发生的人员伤害。
3总体设计方案
本课题研究的机械臂控制系统采用单CPU集中控制方式,系统框图如下:
计算机用于完成整个系统的管理、发送指令、运动轨迹规划等。计算机通过下载器将程序下载至STM32微处理器,之后通过上位机和蓝牙等通讯方式与STM32通信,STM32再向关节控制系统发出位置指令,STM32根据指令输出PWM波,从而使机械臂的各个关节转过指定的角度,进而使其按照预定的轨迹完成搬运任务。
4系统硬件结构
4.1 ARMstm32f103单片机
STM32F103R8T6是ST旗下的一款常用的增强型系列微控制器,常用于手持设备与应用控制。
它的降压模块属于大功率稳压模块,输入电池7.4V锂电池,控制板通过可调稳压电路,一方面通过电位器旋钮调节输出电压到6V左右给舵机供电,另一方面通过AMS117-5.0和一片3.3V稳压芯片给主控芯片以及其它模块供电。
4.2 CC2540蓝牙模块
HC-02的CC2540蓝牙模块完成机械臂的蓝牙控制。该模块可配合低功耗,可以实现长期广播数据,并由多个主机接受数据。
选用HC-02 CC2540蓝牙模块使因为其体积小重量轻,能够达到80米的广播范围。并且支持安卓以及ios设备的蓝牙4.0的连接,便于移动端的二次开发。
4.3 数字舵机
LDX-218舵机和MG1501舵机都是数字舵机。MG1501舵机主要用于机械臂的底部,控制整个手臂的转向,类比于人体可以想象成胳膊大臂处关节。该舵机可以实现180°转动,拥有15kg的扭力,并且改舵机上方采用金属轴承,能够最大限度的减少手臂与底座之间的摩擦力。
4.4 PS2手柄
使用蓝牙控制机械臂只需要控制端具有收发蓝牙的功能即可,市面上常见的有2种方式进行蓝牙控制。
(1)使用移动设备自带的蓝牙功能APP控制。
(2)使用市面上常见的手柄控制。
基于劳动量的考虑,本项目采用第二种方式控制机械臂。
5系统软件设计
5.1 软件开发环境
本项目使用KElL作为开发软件。KEIL提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等内的完整开发方案,通过集成开发环境(u Vision)将这些部分组合在-起。
5.2 算法设计
软件部分影响着整个机械臂控制系统的流畅运行,对于如何使系统的运行,更加的顺利以及实现更多的功能,本项目程序设计采用的是分层化结构设计,其中含有系统时钟与Systick定时器模块,串口采集模块,串口发送模块,定时器模块,计算器模块。基本的程序有程序初始化:使模块都处于可以被使用的状态;自动运行:各模块按照程序进行运作;手动操作:根据无线模块获取的信息进行处理后发送至舵机。
5.3 上位机设计
本系统设计了基于MFC的上位机软件。规定以回车换行结尾的字符数组为数据帧格式,串口的接收采用中断方式。显示部分包括机械臂的实时运动角度信息、实时角度误差信息、机械臂角度误差曲线和角度误差曲线。
6 设计创新
该设计采用的STMFCT微控制器,成本方面价位便宜,运行速度快,I/O资源丰富可用于更多方面的拓展,开源能力强。
本项目通过上位机设计,对电机舵机的控制十分精准,对PWN的控制上对其严格调试。总体上,采用新的控制方案,添加一些新的技术和应用模块用于机械臂的设计中,如:蓝牙手柄,智能車底座等。
7结语
本文详细介绍了六自由度机械臂的蓝牙控制的方法与使用器材。通过PS2手柄及蓝牙接收器、MG1501数舵机、LDX-218数字舵机、CC2540蓝牙模块、STM32f103单片机以及铝合金机械臂等硬件实现机械臂的蓝牙控制抓取功能,结合蓝牙模块实现了蓝牙手柄对于机械臂的控制。能够在工业生产和精细工作的情况下,以该项目理念为基础提供了用机械臂代替人类自动工作的解决方案。如使用电池供电,该项目也可与其他可移动设备组合实现快递分拣水果采摘等简单重复劳动。
参考文献
[1] 张涛,王炎. 基于单片机和Arduino 平台的六自由度可控机械手臂 [J]. 电气自动化,2016(6):97-99,107.
[4]刘金国,王越超,李斌,等.灾难救援机器人研究现状、关键性能及展望 [J]. 机械工程学报,2006(12):1-12.
[5] 姬江涛,郑治华,杜蒙蒙,等 . 农业机器人的发展现状及趋势 [J]. 农机化研究,2014(2):1-4,9.
(作者单位:江苏大学电气信息工程学院)