1、预缩机原理简述
预缩机是印染行业中织物后整理最后一道工序,它是将织物机械物理预缩(橡胶毯)方法,使其预缩率降低,手感改善。基本配置由四个单元组成:给湿单元、橡胶毯预缩单元、呢毯整理单元和出布单元。给湿单元完成预缩前给湿准备,以使织物拥有一定含湿量,便于织物预缩。其拖动部分为一只糙皮辊。由一个2.2KW电机拖动。橡胶毯预缩单元是本机核心,主橡胶毯挤压以使织物经向产生收缩。挤压由一个φ616mm辊筒和另一个辊筒相对运动完成,拖动由一个15KW电机完成。呢毯整理单元主要烘干织物和改善手感,由一个3KW电机拖动一个φ2000mm大滚筒完成。出布单元由一个1.5KW电机拖动摆布斗完成。其工艺流程如下:
进布单元-橡胶毯预缩单元-呢毯整理单元-落布单元
2、系统配置方案
本方案中,触摸屏采用日本Proface公司生产GP系列,PLC采用西门子公司S7-226系列,变频器采用丹佛斯VLT2900系列,该系列变频器内已经内置了RS485接口且支持modbus协议,故这使该系统性价比非常高。S7-226系列CPU内置了两个通信口,这两个通信口都为RS485接口,均可三种方式下工作,即PPI方式、MPI方式及自由通信口方式。PPI是point-to-point缩写,即点对点方式,是西门子公司专为S7-200系列开发一个通信协议,本案中,我们可把其中一个通信口设置为该方式,连接HMI,进而做人机交换信息用。而第二个通信口我们把它设置成自由口通信方式。自由口通信方式是S7-200系列非常有特色功能。该方式下,依据和他通信其他设备公开通信协议来编程S7-200通信。我们本方案中用它连接变频器以实现它们之间相互通信。相关系统框图如下图所示:(基于本文阐述重点,其它如变频器和电机组成自反馈系统不再画出和赘述。)
3、自由口通信和Modbus协议S7-226和丹佛斯VLT2900系列变频器应用
A. 通讯协议及其PLC和变频器上基本设置
既然双方控制器要建立通信,它们必将共同遵循一定规约,这即称之为协议。本系统中,PLC建立通讯规约将依从于变频器规约,即Modbus协议,这是S7-200支持自由口通信模式。
l 自由口通信模式:
CPU串行通信口可由用户程序控制,这种操作模式称作自由口通信模式。该模式下,用户程序可以使用接受中断、发送中断、发送指令(XMT)和接受指令(RCV)来进行通信操作。利用该模式,PLC可以和任意第三方串口进行通信。SMB30(用于端口0)和SMB130(用于端口1)用于选择波特率、奇偶校验、数据位数和通信协议。
l Modbus通信协议
a.Modbus通信是一种被用于智能设备间建立主从方式通信,它可以如RS232C、RS485等多种传输方式进行传播。它分为两种串行传输方式:ASCII和RTU(Remote Terminal Unit,远程测控中断)。它们定义了数据如何打包、解码不同方式。丹佛斯VLT2900系列支持是RTU方式,其格式是:
其中奇偶校验和停止位可以是0.即可以没有。
Modbus由一个主站(PLC)和最多31个从站(本系统中为4个)组成。主站负责发送指令,从站则是响应指令。某一时刻,只能有一个从站能和主站进行连接。
b.丹佛斯VLT2900系列变频器内置了RS485物理接口,且同时支持Modbus协议。其相关参数如站址、波特率、校验等561#、500#、570#及501#参数组内设置。
B. PLC和变频器通信信号格式
l 丹佛斯VLT2900系列变频器支持标准Modbus-RTU信号,其格式如下:
驱动器址:本文为变频器址。值为0~32.若设定为0,即为广播方式,则从PLC同时向所有变频器传送指令信号,而变频器不反馈响应信号。
功能码:丹佛斯VLT2900系列支持以下几种功能码(16进制)。
数据:存储寄存器址和数据组合构成一组数据。因指令内容不同数据长度不同。
故障检查:RTU方式,一般采用CRC-16方式进行,后面我们将做进一步说明
l 丹佛斯VLT2900系列变频器编址
既然PLC与变频器通信时操作对象是存储器,故变频器内部必须有PLC能识别存储器址相对应。变频器生产厂家不同会导致其编址方法不同。丹佛斯VLT2900系列变频器编址和你其说明书上看到参数号是遵从一等式,即参数址(HEX)=[(参数号×10)-1>(DEC)。
l Modbus信号举例
a) 重写控制字与参考值方式,启动电机并使之运行50%转速下。
指令信号:[01> [0F> [00> [00> [00> [20> [04> [7C> [04> [00> [20> [9D> [01>
该指令中
[01>为驱动器址
[0F>为功能码,是指本命令为写多个位存储器指令;
[00> [00>指出将要写入数据起始址为位存储器首址。
[00> [20>为写入长度,20HX=32DEC位数据。
[04>为要写入位总字节数为4个。
[7C> [04> 047C是启动电机控制字内容,实际传输中为低位前置。
[00> [20>为电机运行参考值,实际传输中低位前置。
[9D> [01>为计算出CRC-16值
正常时其响应信号应为:
[01> [0F> [00> [00> [00> [20> [54> [13>
b) 按频率指令60.0HZ传送到1#变频器(址为01),
指令信号:[01>[06>[04>[0F>[00>[3C>[B8>[E8>
正常时响应信号为: [01>[06>[04>[0F>[00>[3C>[B8>[E8>
C. 信号发送和接受指令:
当信号格式被确定后,我们所要做是从PLC如何把它们发送出去和如何接收变频器响应信号了,自由口模式当中,信号可以用XMT命令发送,用RCV命令接收,另外我们还可以利用SMB2(接收缓冲字节)配合其它如MOV指令等来实现字符接收。S7-200系统中,设计了诸如发送完成、接收完成等中断事件,我们将很方便它们来控制整个程序运行。
4、 PLC程序设计
a) 数学模型:各个单元间是采用线性比例同步,构建其数学模型非常简单,使某单元转速和其相邻上一级单元遵循数学公式V1=k×V2即可。调节两单元之间张力,我们只需调节两单元间比例k即可。这里需提醒注意是:某一单元转速必须以上一级为基础进行比例调节,这样才不至于调节单元速度时,影响其它单元间张力。
b) 程序框图
c) 程序结构
程序结构包括主程序、初始化子程序、停车子程序、开车子程序、比例设定子程序和速度计算子程序。其中与通信有关程序有CRC-16校验程序、发送中断程序、接收中断程序等。下面主要介绍一下CRC-16校验程序。
CRC是 “Cyclical Rendundancy Check” (循环冗余码校验)英文简称。 CRC码为2个字节,16位二进制值。故又叫CRC-16。由发送设备计算CRC值,并把它附到信息中去。接收设备接收信息过程中再次计算CRC值并与CRC实际值进行比较,若二者不一致,亦产生一个错误,校验开始时,把16位寄存器各位都置为“1”,然后把信息中相邻2个8位字节数据放到当前寄存器中处理,每个字符8位数据用于CRC处理。起始位,停止位和校验位不参与CRC计算。 CRC校验时,每个8位数据与该寄存器低位内容进行异或运算,然后向最低有效位(LSB)方向移位,同时用零填入最高有效位(MSB)后,再对LSB检查,若LSB=1,则寄存器与生成多项式(16#A001)异或,若LSB=0,不作异或运算。重复上述处理过程,直至移位8次,最后一次(第8次)移位后,下一个8位字节数据与寄存器当前值异或,再重复上述过程。全部处理完信息中数据字节后,最终到寄存器值为CRC值。 程序编制时,可以使用FOR/NEXT指令,并使用一次嵌套。发送时,CRC值附加到信息时,低位先,高位后。
总结:实践证明,该方案使系统布线变简单,使系统抗干扰性明显增强。为该设备系统升级作出了应有贡献。