1 引言
目前,大多数PLC都提供位置控制功能。在小型PLC中,对于简单的点位控制,都内置了这种定位功能。硬件上提供2~3个高速脉冲输出口,软件上则提供了相应的定位指令。对于较为复杂的定位控制功能,小型PLC提供扩展定位模块。不管是内置的定位功能,还是扩展定位模块,PLC输出的定位信号都是脉冲信号,下位的伺服驱动单元必须提供脉冲输入接口来接收来自PLC的定位脉冲信号,从而完成定位驱动。
在小型PLC中,并不提供模拟量接口的伺服驱动控制功能。但是在工厂自动化应用实践中,常常需要模拟量接口的伺服驱动控制。如液压油缸的位置控制中,伺服阀的速度信号是正负10 V的模拟电压信号,小型PLC在这种应用场合就遇到了困难。再如,如果需要实现全闭环的位置伺服控制,小型PLC也缺少相应的控制对策。针对这一问题本文所讨论的是如何利用小型PLC已有的内置功能和扩展模块,用各类小型PLC通用的方式,以低的成本、简洁的硬件配置、简单的软件编制,大程度地开发小型PLC的潜力,使小型PLC在这一控制场合发挥作用,实现模拟量接口的位置伺服控制。下面以三菱FX3U小型PLC为例进行讨论。
2 控制方案
2.1位置伺服经典控制方式
图1是传统的位置伺服控制原理结构框图。来自插补器的指令脉冲与来自实际位置测量回路的反馈脉冲进行比较,得到位置跟踪误差厶。该误差值反映了指令位置与实际位置之间的差值大小及方向(即可正可负)。由于后续的位置调节器是一个模拟元件构成的调节器(例如由运放构成的模拟Pl调节器),所以作为位置调节器的输入信号,该误差值需要通过D/A转换成直流模拟信号。位置调节器的直流输出电压U。,是速度单元(即驱动单元)的输入信号。速度单元驱动运动部件前进后退,其速度由电压U。确定。在这个传统的位置伺服控制框图中,其核心是位置调节器,关键的控制过程就是位置调节器对位置跟踪误差进行调节控制,使运动部件的运动位置量尽可能接近指令位置值。
2.2小型PLC所构成的伺服控制模型
上述传统的位置伺服控制原理对于我们有很大的启发意义。上述控制原理框图中的一些控制单元在大多数小型PLC中都有对应资源或器件,我们可以根据位置伺服控制原理和小型PLC现成的资源来构建一个低成本、有实用价值的伺服控制系统。
图2为PLC位置伺服原理框图。与传统的位置伺服控制结构框图相比,位置调节器和D/A转换单元的位置换了一个位。这是因为在PLC中位置调节控制不可能是模拟式的,而一定是数字式的,是用PLC指令来实现的。所以位置调节器必定接受数字萤信号。在图2中,虚线部分是在PLC中实现的。PLC发出的指令脉冲与来自位置测量元件的位置反馈脉冲比较,其差值输入到位置调节器,调节器的输出信号经D/A模块输出到外部的伺服驱动单元。
3 PLC位置伺服系统硬件配置
图3是根据小型PLC现有的硬件和软件资源构建的一个具体的硬件配置。小型PLC一般都提供2~3组2相高速计数器接口,频率一般在50 kHz以下。该接口可作为位置反馈接口。测量元件采用脉冲编码器或光栅等,其输出的位置信号为脉冲,电路接口为开路集电极输出,以与PLC的高速计数器接口配合。经PLC内部位置调节器处理的速度控制量通过D/A转换模块输出到伺服驱动器。在上述硬件配置中,高速计数器接口是PLC内置的,D/A转换模块也是常用模块。
4软件编制
根据上述分析,我们确定了控制模型和硬件配置。软件编制的任务是通过指令构建所确定的控制模型,并与相关的硬件相结合,终完成控制任务。
4.1指令脉冲的产生
在小型PLC中一般内置定位指令。以三菱FX3U系列PLC为例,提供两条定位指令:位置定位指令DDRVA和相对定位指令DDRVI。在指令DDRVA D10 D12 Y0 Y4或DDRVI D10D12 Y0 Y4中,DIO为目标位置(单位:脉冲),D12为发出脉冲的频率,Y0为脉冲输出的端口,Y4是方向信号。在特殊数据寄存器D8348和D8349中设置频率上升和下降时间,D8340(双字)中存储当前位置值(单位:脉冲)。正常的使用方式中,Y0和Y1作为位置脉冲和方向信号输出到伺服驱动器中(这时伺服驱动器处于位置工作方式)。我们不使用Y0和Y1的信号,而是使用D8340中当前值,该值就是我们构建的伺服控制模型中需要的位置脉冲指令。
4.2 比较环节与位置跟踪误差
小型PLC内置高速计数器,三菱FX3U系列PLC中支持2组2相硬件高速计数器,编号为C251和C253。位置跟踪误差厶一指令脉冲一实际反馈脉冲一D8340一C251。所以比较环节可用一条双字减法指令来构成:DSUB D8340 C251D21。双字D21即为位置跟踪误差厶的当前值。
4.3位置调节器
前已叙述,位置调节器的主要任务是对位置跟踪误差进行调节控制,目标使实际反馈脉冲尽量接近指令脉冲,使位置跟踪误差趋于0。在小型PLC中,一般都内置PID指令。在这里,我们可利用这条指令来构建位置调节器。在三菱PLC中,PID指令的格式如下:PlD S1 S2 S3 D其中S1为目标调节值,S2为当前实际反馈值,S3为PID设置参数,D为经PID调节运算得到的调节输出值。S1~S3,D如用具体的数据寄存器来表示,则可表示为:PID D20 D21 D30 D60。当我们用该指令构建位置调节器时,D20为位置跟踪误差的调节目标,D20=0;D21为当前实际的位置跟踪误差,D21一As=D8340~C251。D30~D54为PID设置参数。D60为输出值。
在D30--一D54 PID参数中,D30为采样周期,D31设置动作方向等,D32为实际值输入滤波时间,D33为比例增益K。,D34为积分时间Ti,D35为微分增益K。,D36为微分时间L。D53为输出下限设置值,D54为输出上限设置值。输出量D60是D/A转换模块的输入信号,在三菱D/A模块的D/A转换数字范围是一2 000~+2 000之间,所以D53,D54应分别设置为一2 000和+2 000。对应输出电压为一10 V和+10 V。
4.4 D/A转换
D/A转换可利用小型PLC输出正负电压的D/A转换模块,在三菱FX系列PLC中,使用FX2N一4DA转换模块。用一条指令来完成这个转换:TO K0 K1 D60 K1,即将D60中的数据写入第1个扩展模块的第1个D/A通道中。
4.5范例程序
图4是以三菱FX3U系列PLC为平台编制的范例程序,比较简单,但能实现基本的位置控制。如果要实际使用,还需要增加一些辅助程序。限于篇幅,在此不作详细介绍。
在上面的程序中,我们把比较环节、位置调节器和D/A转换部分都放在10 ms定时器中断程序中,原因后面介绍。
5位置环参数及其它参数调整
在完成了硬件配置和软件编制后,要使系统正常工作,必须正确合理地设置D30~D35之间的PID参数及其它相关参数,如采样周期、输入滤波时间、比例增益K。、积分时间Ti、微分增益Ka、微分时间L、加速度等。作为一个建立在小型PLC基础上的位置伺服系统,对于包括位置超调、位置跟踪误差、响应速度、振荡等一系列位置调节特性,一方面需要研究PID参数与调节特性的关系,更重要的是通过实验来验证和摸索其控制规律和参数配合。实验平台如下:FX3U一32MT主机、FX2N一4DA模块、伺服驱动器MR—J2S及伺服电机。位置反馈脉冲采用伺服驱动器输出的脉冲,每转1 ooo脉冲,电机高转速为3 000r/min。由于其脉冲输出电路为RS422型,所以用了一个转换电路将其转换成集电极开路输出的电路以与PLC高速计数器输入接口匹配。
5.1采样周期L
采样周期T。应远小于系统阶跃响应的纯滞后时间或上升时间,为使在每次采样中及时反映位置跟踪误差的变化情况,应使采样周期尽量小。但是在小型PLC中,一般PLC的扫描周期在几十ms之问。所以如果将位置调节器程序块编制在主程序中,则采样周期不可能设置为小于PLC扫描周期的值。为了解决这个问题,可将位置调节器程序块编制定时器中断子程序中。所以在前面的范例程序中,我们使用了10 ms的定时器中断,并将位置调节器的相关指令编制在1610中断子程序中。在这里采样周期L取10 ms。在实验中,10 ms的采样周期是完全能满足控制要求的,试验效果相当好。
5.2比例增益Kp
比例部分的值为&×K。,在时间上与位置误差没有滞后,所以能即时产生调节作用,具有调节及时的特点。K,越大,调节作用越强。但是在实验中将K,值增大到400%时,系统发生振荡,不能稳定工作。当取K。一300%时,系统工作稳定。
5.3 积分时间T1
积分的作用是消除误差。积分时间较小时,调节时间较小,有利于快速消除误差,提高控制精度。但是会引起定位结束时位置超调量增加。反之积分时间增大时,则位置超调量减小,但位置跟踪误差会增加。
5.4微分增益Kd和微分时间死
在本案中,没有使用微分功能。
5.5位置跟踪误差和位置超调
在实验中,当比例增益K。一300%时,积分时间取5 ms时,位置跟踪误差极小,在5个脉冲左右。定位完成时,跟踪误差接近0。但存在两个问题:在定位启动时,位置跟踪误差较大;定位完成时超调量较大,约有15个脉冲。为解决这两个问题,适当增加脉冲指令的脉冲频率上升时间和下降时间。上升下降时间增加后,频率上升段的跟踪误差及定位结束时的位置超调量明显减小。
6 应用场合
通过上述理论分析和实验验证,基于小型PLC的模拟量接口位置伺服控制方案是可行的。这种控制方案,从工厂自动化使用环境而言,有下列2个实际应用场合。
6.1 液压驱动设备双油缸同步驱动控制
在锅炉制造设备中,有些设备有2个油缸需要在两端同时驱动,要求保证两油缸运动的同步性。油缸的控制采用电液伺服阀,接口信号为O~±10V模拟电压。该电压信号可控制油缸运动速度。位置测量元件为光栅,与油缸平行安装,构成全闭环位置控制系统。图5是其控制系统框图。PLC的两路2相高速计数器作为2根轴的实际位置反馈检测,在PLC内按照前面介绍的方式建立2个数字式位置调节器。为了实现两轴同步控制,二轴指令脉冲必须具有相同的目标位置、相同的频率、相同的频率上升和下降时间。由于指令脉冲基本是同步的,所以只需保证二油缸在运动过程中其位置跟踪误差在一定范围内,那么二油缸的同步运动是可以保证的。
6.2构建半闭环或全闭环位置伺服系统
在PLC给出定位脉冲+伺服驱动器(工作在位置方式)的控制模式中,当运动部件在运动时,控制器并不知道运动部件当前的实际位置,所以对于控制器而言,是一个开环位置控制系统。我们可以将这种控制方式改成本文前面所讨论的控制方式,将运动部件的当前位置反馈输入PLC。
当使用脉冲编码器作为位置测量反馈元件时,构成半闭环位置系统;当使用光栅作为位置测量反馈元件时,则可构成全闭环位置系统。
7 结束语
本文充分利用小型PLC的内置功能和现成的功能模块,构建了一个基于小型PLC的模拟量接口位置伺服系统。这为模拟量接口的伺服驱动单元与小型PLC配合提供了一种思路和方法。但以这种方式构建伺服控制系统,与中大型PLC专用模块相比,其控制性能相对差一些。比如,在位置调节器采用PI调节时,在定位结束时存在一定位置超调量;而当位置调节器采用P调节时,则位置跟踪误差较大。所以这种控制方式仅适用于一些定位精度和性能要求不高的控制场合。
4.3. 设置PTP的接口参数
4.3.1 选择协议并设置起始地址(其地址默认即可)

图4 协议选择
4.3.2 设置该PTP接口的波特率,数据位,停止位和奇偶校验位
西门子PLC,西门子CPU,西门子代理商,西门子授权代理商,西门子一级代理商