APP下载

四自由度码垛机器人的控制系统设计

2018-07-04湖南工业大学胡云飞谭会生于雪锋逯真真

电子世界 2018年12期
关键词:码垛伺服电机控制器

湖南工业大学 胡云飞 谭会生 于雪锋 逯真真

1 引言

随着自动化技术的发展,自动化技术在工业生产中的应用也越来越广泛,使得传统的劳动密集型产业逐步被自动化生产所取代,码垛机器人在工业生产中的应用就是其中的一种突出表现。由于码垛机器人具有占地面积小、作业范围广、多生产线作业等特点[1],因此通过采用码垛机器人代替人工作业,不仅可以提高工作效率、节省劳动成本[2],而且提高了物流产业的自动化程度,使得物流产业向着更加高效的方向发展。因此,本文将对码垛机器人的控制系统设计进行研究。

2 机器人的机构类型

本文所研究的码垛机器人的机械类型为圆柱坐标型,其机械结构如图1所示。由图可知,码垛机器人有四个自由度,分别是基座旋转、水平移动、垂直移动和端拾器旋转[3]。机器人在工作时,其工作范围构成一圆柱形空间,在此将基座旋转轴定义为S轴,肘部水平移动轴定义为U轴,肩部垂直移动轴定义为L轴,腕部端拾器旋转轴定义为T轴。故此类型的码垛机器人空间坐标可以用M(r,θ,z,α)形式表示,其中r代表U轴的位移量,θ代表S轴旋转角度,z代表L轴位移量,α代表T轴旋转角度。以上4个关节运动轴全部采用交流伺服电机进行控制,以此达到运动响应快、定位精度高和驱动负载力矩大的要求[4]。腕部可根据作业任务的种类安装有相应的机械手。

图1 圆柱坐标型码垛机器人

3 控制系统硬件设计

由图2可知,码垛机器人的硬件系统采用了分布式控制结构[5],其主要由主控制器、I/O接口板、示教器、伺服电机及其驱动器、控制柜及电源控制电路等组成。其主要任务是对来自人机界面的指令进行处理并与周围的相关设备进行通信,最终实现对四个伺服电机的协同控制。

3.1 主控制器

主控制器采用基于嵌入式ARM平台的S3C2440微处理器,其具有丰富的外围接口以及高达256M内存,并配有SD卡槽。此外,ARM微处理器还具备低成本、低能耗、可靠性高等优势[6-8]。主控制器的功能是将示教盒传输来的示教信号通过RS232总线传输给协处理器FPGA板,使其进行相应的运动学计算和轨迹规划。与此同时,主控制器与四个交流伺服电机通过RS485总线进行通信,对各关节运动轴进行协调控制。在此期间,主控制器不断地接收来自各个编码器的反馈脉冲量,并结合读取到的零位和正反限位检测信号,通过计算实际位姿与期望位姿的偏差产生各关节运动轴的伺服修正控制量,使机器人输出的位姿达到预期状态。

3.2 运动控制器

运动控制器采用Altera公司的FPGA芯片,这是一款基于EP2C5T144C8N芯片设计的高性能处理器,其主要任务是完成机器人的路径规划和产生用于驱动伺服电机的变频脉冲信号,进而实现机器人控制系统的再现功能。

3.3 示教盒

示教盒的主体也是由嵌入式ARM板构成,其任务是对人机界面进行运行管理,将机器人的状态信息呈现给操作者,实现操作者与机器人之间的交互功能。通过外接的LCD触摸屏,可以切换手动示教模式和自动运行模式,示教模式时,通过触控LCD触摸屏与主控制器系统通信来完成示教功能;运行模式时,LCD触摸屏主要用来监控码垛机器人的各个运动轴以及控制器的当前工作状态。

图2 控制系统硬件结构

4 控制系统软件结构设计

码垛机器人控制系统软件采用Linux操作系统和Qt界面,Linux操作系统具有可抢占式的多任务机制,而Qt界面具有优良的高度模块化封装机制,因此,控制系统可采用模块化结构设计[9]。由于各个模块具有相对较高的独立性且相互之间通信简单,使得编写与调试应用程序异常简便,同时也便于系统软件扩展和维护[10]。

码垛机器人控制系统软件模块主要包括两大部分:主控制系统模块和示教系统模块。核心板ARM子系统主要有6个模块:初始化模块、数据采集模块、再现模块、故障检测处理模块和两个通讯模块;FPGA部分主要模块有通信模块、寄存器模块、命令解析模块、轨迹插补模块以及速度和脉冲生成模块;示教系统的主要模块有参数设置模块、示教模块、I/O故障监控模块、精确定时模块和通讯模块。

5 闭环控制算法

在码垛机器人的交流伺服系统中,一般情况下,每个关节都采用闭环控制[11],因此,在本设计中,每个运动轴也都是采用完整的三环控制模式,从内到外依次为电流环、速度环和位置环。

在本设计中,机器人的四个伺服电机驱动器均处在速度控制模式,每个驱动器接收来自运动控制器发送来的模拟电压信号。由于伺服驱动器本身已经固化了用于计算电流环和速度环的参数自整定闭环PID控制算法,所以伺服系统对输入速度信号的跟随已经相当精确,因此,只需要对位置环的控制算法进行设计,就可以达到很精确的控制效果。

由于运动控制器是发送的信号是离散的数字信号,因此必须采用数字式PID控制器。而数字式PID控制器分为两种,分别是位置式数字PID和增量式数字PID控制器。

位置式数字PID控制器的计算公式为:

其中,PK为比例系数,TI为积分时间常数,TD为微分时间常数,TS为采样时间,e(k)为输入偏差量,u(k)为输出控制量。

由于位置式数字PID存在累计误差,所以如果编码器出现问题就会造成电机偏离预计运行位置,引发安全事故。而增量式数字PID控制器只计算相邻的两个u(k)之差,并不存在误差累计问题,即使编码器出现故障,也不会对电机的运行位置造成影响。因此,本设计选用增量式数字PID控制器。

增量式PID需要首先计算出u(k-1),其计算公式如式(2)所示:

增量式PID计算公式为:

本文设计了有针对伺服电机系统的前馈+PID位置环控制器,其软件框图如图3所示。在每个伺服周期内,闭环控制器会首先得到下一个电机位置Pdemand,并通过分析相对编码器的脉冲计数得到当前电机位置Pnow,两者之差便是PID控制器的输入偏差e(k)。PID控制器输出量与下一个插补点的速度与速度系数的乘积以及加速度与加速度系数的乘积之和,便是整个闭环控制器的输出u(k),由于u(k)是一个数字电压量,而伺服电机驱动器需要接收的是模拟信号,因此需要经过D/A转换器将其转换为模拟电压值。本设计对于同样的运动控制任务,闭环算法的执行周期都比位置环伺服大大缩短,使得码垛机器人的四轴电机联动具备实时性。

图3 位置环控制器框图

6 结束语

本文在嵌入式平台上完成了码垛机器人控制系统的设计,系统采用ARM +FPGA的核心控制架构,采用了模块化设计,便于系统的扩展与维护,并采用针对伺服电机系统的带有前馈的PID位置环控制算法,使得机器人的电机联动控制较精确。

[1]何明超.基于STM32F4的码垛机器人运动控制器研究[D].上海交通大学,2015.

[2]孙志良.码垛机器人控制系统的设计及实现[D].河北工业大学,2015.

[3]郭亚奎,陈富林,汤永俊.码垛机器人控制系统的设计与实现[J].机电一体化,2014,20(01):55-58+77.

[4]周霏,陈富林,杨杏,沈金龙.四自由度关节机器人控制系统的设计[J].机电一体化,2014,20(07):60-65.

[5]王彦.码垛机器人示教盒系统软硬件设计[D].上海:上海交通大学,2010.

[6]马义德,刘映杰,张新国.嵌入式系统的现状及发展前景[J].信息技术,2001(12):57-59.

[7]Jack Ganssle.Changes in embedded design mathodology[J].Embedded System Programming,1999,9:35-40.

[8]孙安青.ARM Cortex-M3嵌入式开发实例详解:基于NXP LPC1768[M].北京:北京航空航天大学出版社,2012.

[9]李成伟,朱秀丽,贠超.码垛机器人机构设计与控制系统研究[J].机器人技术,2008,25(12):9-27.

[10]蓝培钦.码垛机器人控制系统软件的设计和研究[D].上海上海交通大学,2010.

[11]Sciavicco L,Siciliano B.Modelling and control of robot manipulators[M].Springer,2000.

猜你喜欢

码垛伺服电机控制器
专利名称:一种适应压铸环境的伺服电机
可控机构式码垛机器人的运动学误差分析
移动式码垛机器人移动臂的优化设计
GSK工业机器人码垛程序编写技巧
生产线中的伺服电机定位控制
伺服电机控制技术的应用及发展趋向分析
浅说伺服电机位置控制下的定位问题
模糊PID控制器设计及MATLAB仿真
MOXA RTU控制器ioPAC 5542系列
倍福 CX8091嵌入式控制器