北方民族大学 宁春雷 刘凡齐 孙在尚
基于STM32的多自由度机械臂设计
北方民族大学 宁春雷 刘凡齐 孙在尚
随着科技的不断进步,机械臂特别是仿人型机械臂的发展非常迅速。其在人们的日常生活、生产中扮演着不可或缺的角色。鉴于我国机械仿生臂技术以及控制方法较西方国家落后,目前自主研发的机械臂在使用方便性以及精度上都不尽如人意。在市场上很难占有一席之地。为了打破西方国家在这一领域,特别是高端领域的垄断,许多国人开始关注自主研发的机械臂。对于仿人型机械臂及其控制系统的研究还是有深远的意义的。为了能高效稳定地控制机械臂,本设计使用了数字式六轴陀螺仪协同作业;上位控制系统使用ARM微处理器——STM32F103芯片,用以实现机械臂的基本动作的控制封装,包括定位算法以及运动控制等;它能按照生产工艺的要求,遵循一定的程序、时间和位置来完成工作的传送和装卸。
陀螺仪;STM32单片机;舵机;多自由度;自动化控制
机械臂主要由驱动模块、姿态采集模块、控制模块和执行模块组成。
1.1 驱动模块的精确控制
控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms-2.5ms范围内的角度控制脉冲部分,总间隔为2ms。以180度角度伺服为例,那么对应的控制关系是这样的:
1.2 陀螺仪的控制
陀螺仪的原理就是,一个旋转物体的旋转轴所指的方向在不受外力影响时,是不会改变的。根据原理,用它来保持方向,制造出来的东西就叫陀螺仪。陀螺仪在工作时要给它一个力,使它快速旋转起来,一般能达到每分钟几十万转,可以工作很长时间。然后用多种方法读取轴所指示的方向,并自动将数据信号传给控制系统。
对于高速旋转的物体的旋转轴,对于改变其方向的外力作用有趋向于铅直方向的倾向。而且物体在横向倾斜时,重力会向增加倾斜的方向作用,而轴则向垂直方向运动,就产生了当陀螺仪经纬仪的陀螺轴以水平轴旋转时,由于地球的旋转而受到铅直方向旋转力,陀螺仪的旋转体向水平面内的子午线方向产生岁差运动。当轴平行于子午线而静止时可以加以利用MPU6050内部整合了3轴陀螺仪和3轴加速度传感器,并且含有一个第二 IIC 接口,可用于连接外部磁力传感器, 并利用自带的数字运动处理器;硬件加速引擎,通过主IIC接口,向应用端输出完整的9轴融合演算数据。有了 DMP,我们可以使用InvenSense 公司提供的运动处理资料库,非常方便的实现姿态解算,降低了运动处理运算对操作系统的负荷,同时大大降低了开发难度。
MPU6050传感器的检测轴如图所示:
图 PU6050检测轴及其方向
1.3 控制模块的控制
STM32-F10x的优点:最高1MB的闪存、128kB RAM、6个UART(7.5Mbps)、3 SPI接口 (30Mbps)、支持IEE1588 PTP V2的以太网媒体访问控制器(MAC)、4kB备用RAM、512字节的一次性可编程存储器(OTP)。
1.4 执行模块的控制
为了使机械手的通用性更强,把机械手的手部结构设置成可更换结构,当工件是棒型原料时,使用夹持式手部,当工件是板料时,使用气流负压式吸盘。
以单片机为控制核心,设计出一套基于STM32的多自由度机械臂设计。使用了数字式六轴陀螺仪传感器协同作业,陀螺仪会以一定的频率不断的采集当前的空间位置信息,并把位置信息通过SPI通信协议发送到STM32单片机上位机,上位控制系统使用ARM微处理器——STM32F103芯片,用以实现机械臂的基本动作的控制封装,包括定位算法以及运动控制等;单片机进行处理,控制PWM波,从而控制舵机来控制触手到达指定的空间位置,以实现精确、自动化控制。应用的更为广泛为了能高效稳定地控制机械臂,实现了多自由度,空间立体式旋转。
机械手的迅速发展是由于它的积极作用正日益为人们所认识;其一、它能代替人工操作;其二、它能按照生产工艺的要求,遵循一定的程序、时间和位置来完成工作的传送和装卸;其三、它能操作必要的机具进行焊接和装配。从而大大的改善工人的劳动条件,显著的提高劳动生产率,加快实现工业生产机械化和自动化的步伐。尤其是在高温、高压、粉尘、噪音以及带有放射性的污染的场合,应用的更为广泛为了能高效稳定地控制机械臂,本设计使用了数字式六轴陀螺仪协同作业,充分实现机械臂的灵活性以及自主性。
[1]刘火良,张森编著.STM32库实战开发指南[M].2013.5机械工业出版社.
[2]徐方.工业机器人产业现状与发展[J].机器人技术与应用,2007(05).