当前位置:文档之家› 电镀生产线自动控制系统的设计与实现_

电镀生产线自动控制系统的设计与实现_

速度偏差及偏差变化计算模块 程序中用数据寄存器D50存放读取的从位移传感器读取的值,D54存放前一次读取 的数值,D58存放本次送进值,D62存放前一次的送进值,D66存放本次偏差值,D70上 次偏差值,D74存放偏差变化。 在行走时,如果没有到位(D50不等于位置设定值D52),表示还需要进行继续前进 或后退,这时要进行偏差和偏差变化,通过下式计算
…… D+ K3 D120
%偏差模糊量化值7(a+3);
ANB
D* K7 D120 LPP ….. D+ K3 D124 LD M8000
%偏差变化模糊化值b+3; %7(a+3)+b+3得到模糊控制值的位置;
DMOV D120 D128
ANB
D+ D124 D128 ANB MOVE D128 AC1 MOVE &D300 AC2
4.1.3 行车速度控制程序
电镀速度控制程序是自动运行一部分,是保证系统时间优化的关键所在,由于采用 了智能控制算法,程序控制的设计变的复杂,涉及到和模糊控制的结合应用,每次运行 时的参数设置、数据的采集与处理、智能算法的设计实现以及控制输出等部分。
PLC 的行车工作过程是当行车需要行走时,行车得到目标槽位信息后,就不停通过 光电感应开关采集位置数据,与预置值比较,那么计算误差及误差变化并判断大小,模 糊控制程序对偏差和偏差变化进行模糊化处理,然后计算输出量所在速度并查表,根据 查出的参数进行去模糊化并进行运算,得出输出量,给出一定合理的速度行驶。其程序
bit1 0:输入变化量报警无 1:输入变化量报警有效
b15
8 7 6 5 4 3 2 1 b0
000000110
256 128 64 32 16 8 4 2 1
M150~ M165(24 =16)
00000000001000000
M165
M156
M152 M151 M150
图 4.2 DECO 指令功能
Fig 4.2 Instruction function of DECO
样的,只是其基地址不同,分别为D300,D302,D304。而其处理的程序是相似的,它 们在模糊控制表中的值最后分别存放在了D132,D134和D136中,把这些值乘以各自的 比例因子调整后即可放入PID控制指令的回路表中执行输出。
PID计算模块
48
三菱FX2N的指令内带PID指令。PID指令可同时多次执行(环路数目无限制),但一 定要注意运算使用的软元件号不能重复。为了让PID运算以预想的采样频率工作,PID 指令必须用在定时发生的中断程序中或者用在主程序中,被定时器所控制以一定频率执
43
4.1.2 转速测量程序
图 4.4 行车运动程序 Fig 4.4 Driving moving program
如第二章所述本课题采用数字式转速测量方法,采用PLC测量电机转速可以保证测 量的稳定性和高精度。目前,PLC实现脉冲信号的测量主要是用PLC的高速计数单元来 实现。但是,带有高速计数功能的PLC成本昂贵。为了使用普通PID模块实现高速脉冲的 计数, 采用了专用的软高速计数指令, 利用多周期频率测量方法, 测量N周期的待测信 号的时间间隔, 再用此时间间隔除以N得到周期, 然后求出频率 既保证了测量的精度, 又简化了程序。程序流程如下
数ACT设定,bit1\bit2和bit5均为“0”时,只占有S3开始的20点)
控制用的参数的设定值在PID运算前必须预先通过MOV等指令写入。另外,指定停
电保持区域的数据寄存器时,编程控制器的电源OFF之后设定值仍保持。
S3 采样时间(Ts)
S3+1 动作方向ACT bit0 0:正动作
1:反动作
编程首先定义动作执行条件,首先设置 PLC 内部中间继电器 M151-M158 分别作为行车
进退,上升,下降,延时,完成标志的动作执行条件.,当中间继电器置 1 时,表示该行车
动作被选择,为 0 时不选择。即当寄存器中数字为 1 时,行车执行行走动作;数字为 2
时,行车执行上升动作;数字为 3 时,行车执行下降动作;数字为 4 时,行车执行延时
成行车动作状态表,如图 4.3 所示。
图 4.3 行车动作状态表 Fig 4.3 State chart of driving action
当读取数值时,先比较是否大于 10,如大于 10 就代表行车准备进退动作,将数值 除于 10 后,商为目标槽位,余数为将被 DECO 解码的动作执行条件。而行车运行方向, 即是进还是退,则将目标槽位,与通过计数的槽位进行比较,如果目标槽位大于通过计 数感应的槽位数,M175 置一,则行车前进,反之 M177 置一,行车后退.程序如图 4.4:
47
Uij =D100+D[7(a+3)+b+3]
式中 Uij (I,j=0…6)表示第i行第j列输出控制量的所对应的地址,读出这个地址中的值乘 以规则因子得到解模糊值。
在查询模糊控制表时,由于查询的 ΔKP 、ΔKI 、ΔKD 。的条件都是误差和误差变化,
因而同一个误差和误差变化对应于一个连续的空间,查到了一个值,另外两个就可查到, 然后存入回路表,调用指令就求得了输出控制量。 程序实现的主要部分如下
LDD<> D50 D54
%如果D50不等于D52,则计算偏差和偏差变化;
DMOV D50 D58
……….
ANB D- D62 D66 ANB LPS DMOVE D66 D74
%求得速度偏差; %得到偏差变化;
ANB
D- D70 D74
AENO DMOVE D66 D70 LPP DMOVE D58 D62
在这固定流程,行车是按着程序员所指定的路径行走,流程图见附录 B。 将每一个步骤化为十进制数,并对应一个数据寄存器,每一个步骤执行的动作和所 行走的目标槽位组合成十进制数据事先存入数据寄存器中,形成一个行车运动状态表。 一个步骤结束,下一个步骤开始,从而演变为按顺序读取每一个数据寄存器。先利用变 址寄存器v0作为偏差值,因此利用变址功D1000V0 可以获得用于保存下一个工序即步骤 的对应寄存器地址,利用三菱FX2N指令DECO,将数据译码,从而对应执行其动作。图 4.1为流程图
45
流程图如图 4.6 所示[57] 速度控制程序启动 程序初始化 测速子程序
测速是否
N
完成
Y
计算速度偏差和偏 差变化
偏差和偏差变化模 糊化
查模糊控制表取输 出值
解模糊
跳出本程序
参数存入PID回路表 PID运算
输出控制量U
系统动作
图 4.6 行车速度控制流程图 Fig 4.6 Speed control flow chart of Driving
44
初始化
立即方式读出端口状态
信号上升沿检测
是否有上升沿


计时是否超过时
间窗
是 计算转速
脉冲计数器清零时 间窗定时器重启
否 脉冲计数器加 1
图 4.5 测量速度流程图 Fig 4.5 speed measure flow chart
首先使用立即刷新方式读出端口状态, 立即刷新方式可以在执行这条语句的同时, 将外部端口当时的状态读入到PLC内部相应的I/O变量。上升沿检测, 即将此次端口状态 与上一次此端口状态相比较, 如果上一次为0 这一次为1, 则认为在此端口产生了一次 上升沿。判断计时是否超过时间窗, 是将时间窗定时器与时间窗的进行比较。时间窗定 时器一旦启动便开始对PLC 内部标准1mS 的时钟进行计数来实现计时, 一旦启动后定 时器的计时不依赖于程序的执行。脉冲计数器就是在PLC内存中用于存储待测信号脉冲 个数的变量。每次检测到待测信号上升沿到来时, 将此变量加1。每次计时超过时间窗 时, 计算完转速后将此变量清零。
行采样时间必须设置输入到PID运算中。
每个PID回路有两个输入量,给定值SV和过程变量PV。给定值通常是一个固定的值,
给定值和过程变量都可能是现实世界的值,它们的大小、范围和工程单位都可能不一样。
PID指令在对这些量进行运算以前,必须把他们转换成标准的浮点型实数。转换的第一
步是把16位整数值转成浮点型实数值,下面的指令序列提供了实现这种转换的方法:用于
电编码器的分辨率,对输入量e模糊化处理,量化为7个等级;同理偏差变化的量化也是
如此,将其也量化为7个等级;输出控制量为 ΔKP 、 ΔKI 、 ΔKD 根据其各自的基本论域
已经量化在模糊控制表中。 这里需要首先确定模糊控制表在中的存贮格式,为了便于查询查找,模糊控制表必
须按顺序存储,由模糊控制表的特点来看,整个模糊控制查询表可以看成的矩阵,如果 求得了误差的模糊量化值为a(a=-3,…,3),误差变化的模糊量化值为b(b=-3,…,3),并 且假定整个模糊控制表的矩阵开始地址为D100,那么输出控制量的地址我们就可以用下 式表示:
%相对地址送指针AC1; %基地址D300送指针AC2;
LD M8000
I+ AC1 AC2
ANB DMOVE *AC2 D132 …… DMOVE *AC2 D134 …… DMOVE *AC2 D136
%绝对地址中的值送D132 %绝对地址中的值送D134 %绝对地址中的值送D136
Hale Waihona Puke …….在上边的程序中,由于 ΔKP 、 ΔKI 、 ΔKD 的存放是连续的,因而其相对地址是一
本系统是采用三菱 FX2N 型号,因此 PLC 程序使用 GX DEVELOP8 专业软件进行 编程。触摸屏是三菱 GOT 系列,其编程软件为 GT DESGIN V2.
4.1 电镀控制系统程序的设计
4.1.1 行车运行流程编程
在直线式电镀自动生产线中,行车的基本动作有:前进、后退、钩上升、钩下降等 四种;除此之外还有延时上升、延时下降、延时前进等延时动作,总计有十余种。
相关主题