答案家

 找回密码
 立即注册
查看: 408|回复: 0

2018基于RTW的PUMA560关节控制系统设计

[复制链接]

1

主题

1

帖子

41

积分

幼儿园

Rank: 1

积分
41
发表于 2018-8-19 22:49:25 | 显示全部楼层 |阅读模式
  0 引言
  
  PUMA560 机械臂是由原美国Unimation 公司生产的一种工业机器人。它采用LSI-Ⅱ处理器和VAL-Ⅱ编程语言,属于典型的专用计算机、专用机器人语言、专用微处理器的封闭式结构,是一种示教机器人。PUMA560 有六个自由度,包括6 个可以旋转的关节,分别模仿人的腰部、肩部、肘部和手腕的运动,可以以规定的姿态到达工作范围内的任何一个点。PUMA560 机械臂包括:机械臂臂体、控制器和示教器三部分[1]。
  PUMA560 关节控制系统作为机械臂视觉伺服总系统的下位机, 其作用是:MATLAB/RTW 内所设计的关节控制器根据视觉子系统给出的目标位置信息(机械臂各个关节的期望转动角度)计算出各关节控制信号U,U 通过电机驱动电路的伺服放大控制机械臂运动到目标位置。本文提出的关节控制系统是基于MATLAB/RTW 的位置、速率双闭环系统,该系统具有良好的通用性、可拓展性,为学生进行控制算法研究提供了一个很好的实验平台。
  
  1 MATLAB/RTW 简介
  
  本文选择利用计算机内Matlab 环境下的Real-Time Windows Target(RTW)工具箱和研华PCI-1711 数据采集卡来构建PUMA560 机械臂的关节伺服控制系统。Matlab 是Mathworks公司提供的在控制领域应用最广泛的仿真软件,Simulink 是Matlab 中的可视化图形软件包,RTW 工具箱是Simulink 中的实时目标仿真视窗。RTW 具有如下几种功能:
  a) 支持多种目标环境;
  b) 自动从 Simulink 图形模型中生成Ada 语言代码或C 语言代码;
  c) 可用外部模式,实现在Simulink 图形环境下的半实物仿真并在线监测仿真结果以及修改仿真参数;
  针对 Matlab/Simulink 环境下的RTW 工具箱具备半实物仿真及实时控制的功能,我们构建了一个由计算机、驱动电路以及机械臂组成的控制平台,在Matlab/Simulink 中设计控制器,通过RTW 输入输出窗口以及PCI-1711 数据采集卡实现控制信号的输出以及反馈信号的输入。并能通过在线修改控制参数或控制方案来使系统达到最好的控制效果。Matlab 的实时仿真目标视窗(RTW)把离线仿真和实时控制结合起来,既能提高控制系统的设计速度,又能达到高精度的控制效果。
  
  2 PUMA560 关节控制系统设计方案
  
  本课题的主要任务是为PUMA560 机械臂设计一个开放式的控制系统,便于以后做算法试验平台。经过分析研究,PUMA560 机械臂系统是一个冗余的、非线性的、多变量的控制系统,同时又具有复杂的耦合动态特性,因而设计控制系统非常复杂。根据国内外关于机械臂控制系统的研究经验,本文简化了控制系统的设计,如所示,忽略机械臂的动态特性,将多输入、多输出的动态系统简化为多个单输入、单输出的伺服系统,实现对机械臂系统的降阶处理,也即是把原来复杂的控制系统简化为若干个低阶子系统,每个关节进行单独的控制。同多数工业机器人一样,PUMA560 机械臂每个关节采用独立的PID 控制。这种控制方式设计比较简单,但是控制精度和速度也会相应的受到一定限制[2],由于本系统要求的实时性不是很高,这种控制方式完全满足要求。
  本课题设计的关节控制器结构如所示。由图可知整个关节伺服系统的工作原理:检测到的位置和速率信号通过PCI-1711 板卡的AD 端口,进入RTW 中。RTW 中的位置控制器,根据视觉子系统给出的位置信号与当前的位置反馈信号的误差计算出速率控制电压信号,速度控制器根据期望速率与检测速率的误差,计算出伺服电机的控制电压,经过PCI-1711板卡的DA 端口,输出到功率放大板上,功率板根据控制电压的大小,输出相应的PWM 信号,控制关节电机转动,形成各关节的双闭环控制。
  
  3 驱动电路及控制器设计
  
  3.1 功率放大驱动电路设计
  关节控制系统硬件部分主要是设计电机驱动电路,其主要作用根据控制信号输出相应的PWM 信号,并驱动关节电机转动。PWM 控制原理:通过改变关节电机电枢电压接通和断开的时间比来控制电机的转速。当给电机通电时,电机转速提高,当电机断电时,电机转速降低,所以控制通、断电的时间比,即可使电机的达到一个稳定的转速。本文选用PWM 直流调速电路的原因是:视觉机械臂对系统的快速性有较高的要求,而PWM 直流调速电路能很好的满足这些要求[3,4]。驱动电路示意图如,主要由PWM 波形发生电路、方向电路以及H 桥式电路组成。
  
  3.2 关节控制器设计
  PUMA560 机械臂关节控制系统的控制器是在MATLAB/RTW中设计的。由于采用速率、位置双闭环结构,因而每个关节需要设计两个控制器。控制方式为PID 控制。
  PID 控制各校正环节的作用如下:
  a)比例环节:成比例地反映控制系统的偏差信号error(t),偏差一旦产生,控制器立即产生控制作用,以减少偏差。
  b)积分环节:主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分的时间常数T,T 越大,积分作用越弱,反之则越强。
  c)微分环节:反映微分偏差信号的变化趋势(变化速率),并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节的时间[5]。
  串联机器人是通过驱动每个关节使末端达到期望的位置,因而,可以通过控制各关节位置信号来实现末端的位姿控制。
  在设计关节控制器的时候,为了更快更好地选择控制参数,我们首先用测试得到的各关节数学模型来进行仿真,将仿真得到的各关节控制参数作为实际控制方案的选择依据,最后通过系统联调进行半物理仿真,优化各控制参数。PUMA560 机械臂有六个关节,均由带有减速器的有刷直流电机驱动。由于第1、2、3 关节的驱动电机比较大,而且运动范围比较广,运动过程中所受到的干扰力矩也比较大,因此采用位置、速率双闭环结构设计控制器。第4、5、6 关节驱动电机比较小,所受到的干扰力矩也比较小,所以只对其进行位置单闭环控制,因而只需要设计一个位置控制器。
  3.2.1 速率控制器设计
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

CopyRight(c)2016 www.daanjia.com All Rights Reserved. 本站部份资源由网友发布上传提供,如果侵犯了您的版权,请来信告知,我们将在5个工作日内处理。
快速回复 返回顶部 返回列表