PLC对机械手位置控制的研究

(整期优先)网络出版时间:2017-12-22
/ 2

PLC对机械手位置控制的研究

谢小泉

安费诺东亚电子科技(深圳)有限公司广东深圳518000

摘要:机械手在最近几十年发展迅速,作为一种新技术被广泛用于工程实践中,机械手能模仿人肢体的一些功能,虽然不够灵活,但是能解决很多生产中面对的问题。介绍了如何使用位控向导和MAP库两种编程方法对机械手位置控制的实现。

关键词:机械手;PLC;位置控制

随着工业机械手的广泛应用,其已经成为自动化控制领域的重要技术。在制造业不断发展的今天,机械手一方面可以代替人工进行生产线的作业,另外一方面机械手可以按照实际生产工艺的要求,按照一定的时间和程序设置来完成工作的卸载和传送。机械手的广泛应用可以大大的提高劳动生产率,加快我国制造业的转型与升级。如果机械手采用传统的继电器进行控制,则会直接造成系统原件比较繁杂、稳定性差以及出现故障概率高的特点。随着PLC技术的广泛应用,通过使用PLC来设计机械手的控制系统,可以保证较高的可靠性和较低的故障率,使用起来也相对简单。下面以YL-335B设备的输送单元为模型,研究PLC、伺服电机对机械手位置控制的方法。

一、设备介绍

(一)机械手装置

装置的执行机构由气动手指、双杆气缸、回转气缸、提升气缸组成,能实现夹紧/放松、伸缩、沿垂直轴旋转、升降的四种自由度运动。气缸运动是由多个两位五通的单向/双向电磁阀控制;驱动机构由伺服电动机、同步轮、同步带、直线导轨、滑动溜板、拖链和原点开关、左、右极限开关组成。伺服电动机由伺服驱动器驱动,通过同步轮和同步带带动滑动溜板沿直线导轨做往复直线运动,从而带动固定在滑动溜板上的机械手装置做同样的运动。

(二)伺服电机及驱动器

机械手的工作过程如下。伺服电机驱动机械手从原点出发,运行到指定点抓取工件,再将工件搬运到其他点放下,如此反复进行,完成所有任务后回到原点。因此,程序控制的关键点是PLC对伺服电机位置和速度的控制。为了能够实现快速精准的定位,设备采用的是松下MINAS-A5系列全数字交流永磁同步伺服驱动装置作为机械手运动位置和速度控制的装置。伺服电机编码器为2500p/r的5线增量式编码器。该伺服驱动器有7种控制运行方式,本项目采用的是位置/速度控制模式。

二、PLC控制伺服位置的方法

系统采用的是西门子S7-200系列CPU226CN型PLC,通过PLC的Q0.0和Q0.1输出端将高速脉冲序列和方向信号给伺服驱动器,由伺服驱动器驱动电机精准地控制机械手的移动和定位。由于伺服电机的同步轮地每个齿距为5mm,共12个齿轮即旋转一周机械手移动距离为60mm。为了方便计算,将伺服驱动器参数Pr0.08=6000,即电机每旋转一转需要6000个脉冲。这样可以精确算出一个脉冲使机械手移动0.01mm。以机械手从供料站将工件送往加工站需要移动的距离是430mm为例,可以算出需要发送43000个脉冲。下面将通过“位控向导”和“MAPSERV”指令库两种方法实现上述对机械手位置的控制。

(一)位控编程

通过STEP7-Micro/WIN编程环境中“位控向导”组态提供的移动包络定义界面,定义应用程序所需要的包络。在编程环境的“工具”菜单中单击“位置控制向导”,在第一个画面中选择配置S7-200PLC内置PTO/PWM操作,在第二个界面选择“Q0.0”作为输出脉冲,在第三个界面中选择“线性脉冲输出(PTO)”并勾选使用高速计数器HCS0(模式12)对PTO生成的脉冲自动计数功能,在第四和第五个界面中设定电机速度参数,然后点击“新包络”,在弹出的界面中分别设置每个包络的参数。

在包络定义完成后,向导会自动生成四个子程序,分别为PTOx_CTRL子程序(控制)、PTOx_RUN子程序(运行包络)、PTOx_MAN子程序(手动模式)和PTOx_LDPOS子程序(装载位置)。用户在主程序中调用PTOx_CTRL子程序启用和初始化PTO的输出,如图3所示。该子程序在用户程序中只能调用一次,并且确定在每次扫描时都被执行;其次,调用PTOx_LDPOS子程序设置参考位置,最后,通过PTOx_RUN子程序调用不同的包络,实现对机械手运动位置的控制。

(二)使用MAP指令库编程

西门子200系列PLC本体PTO提供了应用库MAPSERVQ0.0和MAPSERVQ0.1,分别用于Q0.0和Q0.1的脉冲串输出。两个库的功能相同,在编程环境中添加指令库后即可直接调用。每个MAPSERVQ0.x指令库均有9个功能块。在直线控制过程中,需要在运动轨道上添加3个限位开关。一个参考点接近开关Home,用于定义绝对位置C_Pos的零点;一个正向限位开关Fwd_Limit;一个反向限位开关Rev_Limit;当机械手碰到正向或反向限位开关时,减速停止。为了避免机械手滑出轨道,限位开关安装位置应留出一定裕量。

如果采用Q0.0作为脉冲输出点,根据MAP库对输入输出点进行定义原点开关接I0.0,左限位开关接I0.1,右限位开光接I0.2,伺服方向输出信号接Q0.2,所用的高数计数器是HC0。使用MAP库编程时,需要关闭伺服驱动器的CNX5_37(ALM)伺服报警Pr5.04=1,否则系统无法正常运行。在参考点搜索完毕后,可以通过程序实现限位保护。

程序设计主要包括三个部分:主程序、回原点子程序和运行控制子程序。编程思路:主程序通过在每个扫描周期调用块Q0_0_CTRL,设定电机的最小频率、最大频率、最大加减速时间、正反向限位开关和当前绝对位置。需要注意的是,最大加减速时间范围是0.02~32s,最好不少于0.5s,回原点子程序在上电时和初始运行时调用块Q0_0_Home,用于搜索和记录原点开关位置信息。在搜索原点的过程中,可能会因为机械手起始位置、起始方向和终止方向的不同出现很多种情况,但系统会反复寻找直到符合要求为止。搜索到原点开关的位置后,调用块Q0_0_MoveAbsolute寻找供料站工作位置,再调用块Q0_0_LoadPos将供料站工作位置设置为工作原点。运行控制子程序是控制搬运机械手移动的距离,主要调用块Q0_x_MoveAbsolute来完成。例如,从供料站到加工站需要移动的距离430mm,需要发送43000个脉冲,即可实现对机械手到目标位置的精准控制。

以YL-335B设备的输送单元为模型,分别采用位控编程和MAP库编程实现了PLC对伺服装置位置的控制。位控编程操作简单方便,是相对位置控制,适用于比较简单的位置控制系统,在复杂的位置控制系统中容易丢失包络。MAP指令库编程是绝对位置控制,编程相对复杂,但定位精确,运行稳定,尤其是在复杂的位置控制系统中。这两种控制方法在工业生产中均有很好的应用前景。

参考文献

[1]田奎,孙涛,孙风玲,张岳.铸造机械手自动浇注控制系统[A].山东省科学技术协会.战略性新兴产业与科技支撑——2012年山东省科协学术年会论文集[C].山东省科学技术协会:,2012:3

[2]高晨辉,朱华炳.双臂式搬运机械手结构设计[A].安徽省机械工程学会.安徽省机械工程学会成立50周年论文集[C].安徽省机械工程学会:,2014:4

[3]郭剑晖.机械手PLC控制系统设计[D].南昌大学,2012

[4]陈宝江,葛田子,王建治.一种包装机械手及其控制的研究[J].包装工程,2014,3507