摘 要:本文主要介绍变频器在精密定位工作台系统中的应用,它采用Suconet K现场总线下的可编程序控制器、变频器、高速计数器等设备,通过对主动轮(辊)上的旋转编码器输出脉冲的检测,
控制变频器的频率和功率输出,达到对所需的移动距离和旋转角度控制,实现精确定位。 关键字:变频器 Suconet K现场总线 旋转编码器 DE4netK功能块 编程 一、系统简介
精密定位工作台是放置在电子直线加速器和图像采集系统之间,用于承载直径0.5—1.25 m长度最大为7 m的被检测工件的设备,它具有水平移动和旋转两个运动量。水平移动速度为8m/min,旋转速度为0.5—1.5度/sec。它的控制系统系采用德国金钟-默勒(Klockner-Moe11er)公司生产的可编程序控制器、变频器、高速计数器和文本显示器等设备,通过连接的Suconet K现场总线,实现任意长度或固定长度的左右水平移动及圆形工件的任意角度或固定角度的旋转运动,可以在本地控制台及远地控制台上实现手动和自动操作。
工作台车体用两根工字纵梁结构,有四个车轮支承,车轮采用内侧单轮缘形式,在工字钢轨上行走。其中两个车轮直接由伞齿轮减速机和制动电机驱动。通过对主动轮上的旋转编码器输出脉冲的检测,控制变频器的频率和功率输出,达到所需的移动距离。旋转辊组件由主动辊和从动辊及托架组成,主动辊由电机和涡轮涡杆减速机驱动。工件的旋转运动是通过对旋转主动辊的编码器输出脉冲的检测、变频器控制,从而实现对从动工件的旋转角度控制。旋转编码器输出脉冲数为3600/T,行走车轮直径为400mm,由此可计算出每1mm脉冲数为2.866个,根据设定的移动距离可计算出相应距离的脉冲数。旋转的主动辊直径为300mm,编码器输出的脉冲数同为3600/T,可计算出每脉冲弧长0.2616mm。根据设定的工件直径和旋转角度可计算出相应工件角度的脉冲数。脉冲数计算出后,再根据运动方向的要求,启动变频器工作并对编码器输出脉冲数进行计数,变频器根据设定的频率、运行方向等条件工作,当脉冲数计数计到85%时让变频器降低频率运行;脉冲数计数计到后,停止变频器工作,实现精确定位控制。在机械加工精度保证时,控制精度能达到一个脉冲。
图1. 变频器接线图
本文主要介绍变频器在系统中的应用。与一般系统中的变频器应用比较,本系统减少了许多控制线缆和开关,变频器的工作参数设定和控制全部通过Suconet K总线进行,实现起来比较简单方便。变频器频率的调节由外电压通过电位器输入到PLC PS4-201-MM1 的模拟输入口,变成数字量后再通过Suconet K总线传输到变频器,在电机工作或不工作时都可调节频率。工件的水平移动方向和旋转方向选择开关接在PLC的开关量输入口上。略去三相交流电源输入和输出后变频器接线如图1所示。
图1中A、B为Suconet K总线,地址由DE4-NET-K上的拨码开关位置决定;变频器内部供电时端子7与39短接;端子20为+12V,端子28为变频器允许,工作时应接高电平。变频器在系统中的应用非常简单,编程时只需调用一个DE4netK功能块,并对DE4netK功能块相应的操作数进行赋值即可。下面是对该功能块的详细介绍。
图2. DE4netK功能块
二、DE4netK功能块各操作数意义 SendData 发送寄存器的操作数列表 ReadData 接收寄存器的操作数列表 Enable 1:变频器允许0:变频器禁止
Start 1:电机加速到频率设定点0:使用斜率制动电机 Quickstop 1:使用快停斜率制动电机 DCBrake 1:直流制动器有效
TripReset 信号由0到1: 最后的出错复位
ParameterSet 0:参数集1有效 1:参数集2有效 MotorPotUp 1:电机电位器升功能有效 MotorPotDown 1:电机电位器降功能有效
FixedFrequency1 1:寸动频率1有效 如果寸动频率2寸动频率3=0 FixedFrequency2 1:寸动频率2有效 如果寸动频率3=0 FixedFrequency3 1:寸动频率3有效 Reversal 电机反转
FreezeRamp 0:加速斜率允许1:加速斜率禁止 ReferenceFrequency 电机速度的设定频率
Command 执行命令(0:没有命令,1:读参数,2:写参数) Parameternumber 发送的参数号 TransmitValue 发送的参数值
TransmitValueOffset 发送参数值的偏移量(超过655,35时) StatusWord 变频器状态信息
ActualFrequency 变频器当前输出频率
EchoCommand 返回的执行命令状态(0:没有命令,1:读参数,2:写参数) EchoParameternumber 返回的执行命令参数号 Busy 1:命令正在处理 ReceiveValue 接收的参数值
ReceiveValueOffset 接收参数值的偏移量(超过655,35时) ErrorCode 出错信息代码 三、DE4netK功能块操作说明
DE4netK功能块是PLC程序和现场总线模块DE4-NET-K之间的接口,用于DF4 (DE4)系列变频器的控制。在PLC和DF4(DE4)之间的通信一旦建立,数据的处理和交换就会自动和连续进行而不需要明确的编程。其它的DF4(DE4)参数需经Suconet K参数通道改变。为了减少反应时间,每个程序周期调用功能块一次以更新输入和输出。
下面的输入和输出由每次调用的功能块读或写一次(处理数据):
输入:Enable,Start,Quickstop,DCBrake,TripReset,ParameterSet,MotorPotUp,MotorPotDown, FixedFrequency1,FixedFrequency2,FixedFrequency3,Reversal,FreezeRamp,ReferenceFrequency。
输出:StatusWord,ActualFrequency 其它的DF4参数读或写需使用参数通道。
操作数SendData和ReadData必须分别分配给第一个发送和接收字节,下随的11个字节将自动的由矩阵声明。
在Start输入端写入1为电机驱动允许,电机驱动器的输出频率按设置的加速斜率加速到指定的频率点。Start输入端从1到0时电机将按设置的斜率到停止。
ReferenceFrequency指定了频率点,即电机需要的速度,实际输出的频率由设定的最大输出频率限定。正值时为顺时针旋转,负值时为逆时针旋转。500表示输出频率为50.0 Hz,即需要的值必须乘以一个系数10。
请参考相应的变频器用户手册中的可用参数号的信息、参数许可的范围和设备状态字。 在TransmitValue输出端参数值的最后两位数字用小数表示,即223。10 = 22310 (系数 = 100)。换句话说,变频器用户手册中的值在程序中必须乘10。
对于大于655.35 (即65535)的参数值,必须在TransmitValueOffset中指定偏移量,加到TransmitValue之中,TransmitValueOffset的最后两位数字也用小数表示。
状态字返回当前驱动器按位图格式表示的状态信息。
DF4的当前输出频率由ActualFrequency端用Hz表示。正值时为顺时针旋转,为顺时针旋转,负值时为逆时针旋转。500表示输出频率为50.0 Hz。
在ReceiveValue输出端参数值的最后两位数字用小数表示,即223.10 = 22310 (系数 = 100)。 对于大于655.35 (即65535)的参数值大于655.35的剩余部分,需要自动输入到ReceiveValueOffset中,ReceiveValueOffset的最后两位数字也用小数表示。
读参数:在Parameternumber中指定参数号,指定”Command = 1”
“Busy”自动的从”0”变为”1”, 等待”Busy”从”1”变为”0”
如果出错代码是0,接受ReceiveValue(和ReceiveValueOffset(需要时)) 如果出错代码不是0,命令没有执行,检查出错代码 指定”Command = 0” 下一个命令开始。
写参数:在Parameternumber中指定参数号,
在TransmitValue中指定参数值(和TransmitValueOffset(需要时)) 指定”Command = 2”
“Busy”自动的从”0”变为”1”, 等待”Busy”从”1”变为”0” 如果出错代码是0 ,命令已被正确执行
如果出错代码不是0,命令没有执行,检查出错代码 指定”Command = 0” 下一个命令开始。
ErrorCode输出端的发送的参数数据出错代码:
0 无错
1 无效服务 5 无效参数号 6 无效命令参数
10 存取不允许,即对只读参数作写请求 14 许可的范围超出,即值太高 254 超时 如果读/写反应时间大于5s
255 另类错误—命令现在不能被执行
四、功能块DE4netK程序中应用例子
声明为1站1线
VAR
Drive_1 : DE4netK;
RD_S1T1 at %RDB1.1.0.0 : Array[0..11] of BYTE; SD_S1T1 at %SDB1.1.0.0 : Array[0..11] of BYTE; END_VAR
CAL Drive_1 (Enable := , Start := , Quickstop := , DCBrake := , TripReset := , ParameterSet:= , MotorPotUp := , MotorPotDown := , FixedFrequency1 := , FixedFrequency2 := , FixedFrequency3 := , Reversal := , FreezeRamp := ,
ReferenceFrequency := , Command := ,
Parameternumber := , TransmitValue := , TransmitValueOffset := ,
SendData := SD_S1T1, ReadData := RD_S1T1 |
:=StatusWord, :=ActualFrequency, :=EchoCommand,
:=EchoParameternumber, :=Busy,
:=ReceiveValue, :=ReceiveValueOffset, :=ErrorCode)
参考资料
[1] DF4-…Frequency Inverter变频器操作手册 [2] Sucosoft S40 Programming Software
因篇幅问题不能全部显示,请点此查看更多更全内容