西门子许昌PLC授权总代理商
S7-300启动时的组织块OB100在CPU启动中只执行一次的特性,对增塑剂伺服电机的控制方式依据机组不同的启动状态采取了不同响应曲线下的控制方法。具体来说,在CPU启动时(此时增塑剂存储量必定为零),通过启动组织块OB100中送出高速运转命令至增塑剂伺服电机,使控制曲线成为欠阻尼响应状态以实现对存储器中增塑剂的快速积累。而在非CPU启动状态,控制增塑剂伺服电机的FC功能块将送出普通速度命令,使控制曲线成为比较接近临界阻尼的过阻尼响应状态。
新的设计*避免了CPU重启时带来的增塑剂积累过慢的问题、减少了废品数量,因此这样的设计不会影响正常生产状况时增塑剂含量的稳定性。
(2) 对滤棒剔除支数的计算策略
在纤维滤棒成型机的生产中,为保证滤棒质量,每当速度低于一定的设定值时,机组就会剔除此时的滤棒。此时机组的速度是不断变化的,按通常方式无法计算出具体的剔除支数。这对统计生产效率带来了相当的困难。
笔者可以得到动态的车速反馈,但这条反馈曲线是不断波动和变化的非线性曲线。对于非线性曲线,数学上只能够采用面积积分求解的计算方法。对于此项目就是要求给出一定时间内主电机的圆周行程,即机组一段时间内所生产的滤棒长度。
从这一角度出发,笔者考虑采用了对车速进行模拟积分的计算方法,即从积分的基本定义出发,求出剔除时间内的滤棒生产长度L=Σ(Δv*Δt),再除以单个滤棒长度得剔除支数的计算方法。
按照积分的定义要求,积分求解是在一定条件下才能够成立。这个条件就是Δt要足够的小即Δt→0。在实际过程中,近似认为Δt=20ms时可以满足条件。此时,计算得出的滤棒支数与实际滤棒支数的误差在±3支以内。在精度上,以高生产速度3300支/分钟计(此时滤棒长度为120mm),±3支的精度是*可以满足精度要求。所以笔者认为只要将Δt控制在20ms时就可以满足积分求解的条件。
原系统的PLC扫描一周的时间高达几十毫秒,显然不满足要求。而此项目采用的S7-315-2DP,其单指令扫描周期为10μs级、整个扫描周期被缩短为7~8ms,这样就满足了积分计算的要求。
(3) 对拼接纸圈的控制策略
改造之前,纤维滤棒成型机执行的是降低运行速度再进行纸圈拼接。这种降速接纸方式对实际生产是不利的:每次降速都会造成车速的大幅度变化,影响了滤棒的质量。为这种影响,笔者采用了不降速拼接的方法。
不降速拼接和降速拼接并没有本质的区别:两者采用的接纸动作一样,两者只是在机械结构和电气控制元件上有区别。接纸速度的提高势必使纸圈的静摩擦力同等上升。如果转速斜坡率过高会产生很大的静摩擦力,该力会撕裂纸圈。如果转速斜坡率过低,拼接时的纸圈浪费将增加。
为避免烦琐,该项目放弃变频器对接纸电机转速的分段控制。为求出静摩擦力和纸圈长度两者之间的优控制,笔者对接纸电机上升时间采取优筛选法。通过优筛选法得到的电机上升时间大约为3.4s。考虑到生产情况及电磁阀等器件的时滞效应,将这一时间进一步放宽为3.5s。
3 程序设计
程序设计采用了结构化设计,将所需实现的各主要功能编制成为S7-300中的用户功能块(FC块),在主程序循环模块(组织块OB1)中调用这些已经编制好的子程序。
程序设计分成硬件设计和软件设计两方面。在硬件方面针对系统要求进行设计,在软件方面则按需要编制了速度计算模块、报警和故障模块、伺服电机执行模块、增塑剂执行模块、生产统计计算模块等FC块和预设、保持系统及生产数据的数据块DB块。
(1) 硬件设计与组态
本系统在S7-300的硬件方面采用了1块PS307 5A电源模块,1块CPU-315-2DP,4块24V/0V SM321数字量输入模块,3块24V/0.5A SM322数字量输出模块,1块FM352-2高速计数模块,2块SM331模拟量输入模块,1块SM332模拟量输出模块以及用于DP总线通讯的IM153-1通讯模块1块。
S7-300外围设备为5个伺服电机的DP通讯端。
对上述硬件按要求进行组态,分别占据Profibus-DP通讯端的2、3~7和9号站,具体硬件组态如图3所示。
(2) 软件设计
由于编制的用户功能模块很多,限于篇幅,在这里不能一一作出介绍。以下介绍几个比较重要的用户功能模块。
6ES7211-1BE40-0XB0 | CPU 1211C AC/DC/Rly,6输入/4输出,集成2AI |
6ES7211-1AE40-0XB0 | CPU 1211C DC/DC/DC,6输入/4输出,集成2AI |
6ES7211-1HE40-0XB0 | CPU 1211C DC/DC/Rly,6输入/4输出,集成2AI |
6ES7212-1BE40-0XB0 | CPU 1212C AC/DC/Rly,8输入/6输出,集成2AI |
6ES7212-1AE40-0XB0 | CPU 1212C DC/DC/DC,8输入/6输出,集成2AI |
6ES7212-1HE40-0XB0 | CPU 1212C DC/DC/Rly,8输入/6输出,集成2AI |
6ES7214-1BG40-0XB0 | CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI |
6ES7214-1AG40-0XB0 | CPU 1214C DC/DC/DC,14输入/10输出,集成2AI |
6ES7214-1HG40-0XB0 | CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI |
6ES7215-1BG40-0XB0 | CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO |
6ES7215-1AG40-0XB0 | CPU 1215C DC/DC/DC,14输入/10输出,集成2AI/2AO |
6ES7215-1HG40-0XB0 | CPU 1215C DC/DC/Rly,14输入/10输出,集成2AI/2AO |
6ES72171AG400XB0 | CPU 1217C DC/DC/DC,14输入/10输出,集成2AI/2AO |