西门子6ES7232-0HD22-0XA0使用选型
在棉纺织企业广泛使用喷气织机的情况下,空压站建设是一项重要的辅助工程。在天津纺织园区所有空压站配备的主要设备为离心式空气压缩机、冷冻式空气干燥器,通过储气罐、连接管道和阀门等组成压缩空气供气系统,并配套冷却系统、仪表空气系统,计算机检测系统,以实现空压站为生产一线保证不同压力、不同负荷的用气需求。在此前提下确保合格的供气品质,满足稳定的气源压力,自动调节供气流量等是空压站自动控制的基本任务。随着自动化水平的不断提高,关于建设无人值守空压站的讨论,是一个发展过程中的必然的课题。
空气系统自动控制的必要性
应用在天纺投资控股有限公司棉纺一工厂的空压站,安装有4台70M3/min 4台,53M3/min 4台,48M3/min2台,43M3/min4台离心式空压机和1台42.5M3/min螺杆式空压机,配有相应处理量的冷冻式干燥器。空压机设备自身带有的CMC控制器,能够自动控制和保护主机的运转,自动提示工作信息,具有故障报警和保护停机功能,能自动根据用气量的大小加载或卸载,并配有LCD显示屏供现场观察各工艺参数和设备状态,具有RS422/485通讯接口,可以实现与现场控制室计算机监控系统的完整连接。
图:分级控制网络实施方案图
目前,空压站的自控系统通过西门子S7-300可编程控制器,将部分空压机的实时运行数据通过RS422/485通讯接口采集进PLC控制系统,并将数据传送到现场控制室计算机上进行显示,以代替传统仪表。没有对空压机进行控制。
空压机设备自带的CMC控制器已经能很好的控制单台空压机,不具备对空压系统的整体调控能力。在空压系统中,相对单台空压机的调整,空压系统的整体自动调控具有更重要的意义:
■ 单台空压机无法保证空压系统整体供气压力的稳定,而空压系统的整体自控可以有效保持系统内空气压力稳定。
■ 整体的负载平衡,减少排气放空,可以节约更多的能源,节省人力成本。
■ 可以实现无人操作,根据实际需要自动开机或加载空压机以保持系统压力。
■ 可以定时间断地记录空压机运行数据和报警,如跳车、喘振、通讯故障、压力等。
在已有的PLC系统中,没有实现空压系统的整体调控功能。由于空压机自带的CMC控制器提供了RS422/485通讯接口,所有的数据采集和控制功能都通过通讯接口来实现,对比原有的控制系统,不需要增加硬件设备的投资,只需要改进和增加控制软件即可实现空压系统的整体控制。
除空压机设备外,还可以将与空压机配套的冷冻式干燥器集成到RS422/485网络中来,实现空压供气设备的全面自控。
空压站其他系统的自动控制
除空压供气系统外,空压站的其他系统也需要进行自动控制,如水循环冷却系统等。这些系统的控制方法与空压供气系统不同,主要是采用传统控制模式。使用仪表采集需要的运行参数,进行数据处理和分析运算后,输出控制信号给执行机构就可以实现系统的自动控制。
自动控制具有以下优点:
■ 操作简单,可以实现无人值守;
■ 良好的实时调节,防止了人为因素滞后;
■ 具有高可靠性;
■ 减轻工作人员负担;
■ 节省人力成本。
需要控制的参数和可能的控制方式
空压站需要的控制需求;⑴高、低压供气压力控制(机组自动开停控制); ⑵系统自动排水控制; ⑶循环水液位控制和自动加药控制;⑷所需压缩空气温度、循环水温度等参数控制等等。
空压系统的整体自动调控一般可以使用以下2种方法之一来实现:
⑴采用PLC系统进行通讯和控制。
⑵可以采用英格索兰公司或自己编制的控制软件。
种方法可靠性高,适用于工业控制系统。当监控计算机出现故障时,PLC还可以按照设定的程序进行自动控制。
第二种方法是通过控制系统的计算机进行单独的分析运算进行控制,它具有较好的灵活性,但缺点是如果出现如计算机死机等故障时,有可能影响系统的正常运行。好在计算机的一般恢复往往不需要太多的时间。
除空压供气系统自控外,空压站可与制冷站、热力站系统一起建立设备控制网络,实现集中控制,或与工厂控制中心联网,由控制中心的控制器实时远程监控,实现真正的无人值守。
系统构成
对于以上讨论,如果需要实现空压站的整体自控,又许多成熟PLC自控系统可以选用,现以ZH公司的PLC自控系统为例。
该自控系统选用西门子S7-300系列可编程控制器,带有RS422/485网络接口,支持MODBUS等相关网络通讯协议。该系统可以采用专用工业通讯网络技术实施远程联网。空压站自控设备可根据生产实际情况和各设备的特点,以及可能存在的问题,综合各方面因素后确立分级控制网络的实施方案,如图1所示。
■ 硬件配置
现场仪表,受控设备、执行器、带有串行通讯接口的设备(如空压机,冷干机等),PLC和监控计算机。
■ 软件功能
选用专用的工业组态软件(如WINCC或iFIX)用来监视和操作整个生产过程,为控制系统提供通讯、显示及报表管理等功能,各设备控制器自成一子系统,其应用程序功能包括:信息采集,设备控制,故障报警,连锁保护,以及数据处理和通信传输。
在系统实施过程中,还可引入故障检测和故障诊断的处理程序,能够提高系统的智能化程度,有利于改善自控系统的有效性和可靠性,通过优化调度策略,软件连锁保护等自动控制功能模式的应用,有望将自动化水平提升到更高层次,可以为确定空压机设备状态检修点提供依据,并由此获得更大的效益。
结论
总之通过自动化控制可以克服由于人为因素造成的调节滞后等不利因素,减少运行参数的波动,达到减少用工和节约能源的目的。对于提升天纺控股有限公司的整体技术水平是相当重要的。
0引言
随着工业企业自动化技术的发展,PLC (Programmable LogicController,又称可编程控器),以其可靠性、灵活性、优良的性能价格比、使用方便等特点在工业控制领域迅猛发,得到了越来越广泛的应用。
石油焦是铝电解用碳素阳极生产的主要原料。石油焦转运系统,是把贮存在仓库中的石油焦,经过破碎筛分处理成满足煅烧需要的原料,输送到煅前料仓。由于该系统逻辑控制点多、自动化程度高、上下游设备间关联度大,选用PLC进行自动控制,并设立上位机进行全系统监控。本文着重讨论PLC在系统中控制功能的实现和上位机监控界面的开发。
1 工艺介绍
石油焦转运站系统主要由天车抓料系、破碎筛分系、提升系、分料输送系、收尘系组成。用来满足煅烧窑系统煅前日用料仓物料供给。主要抓料天车、调速皮带、破碎机、筛分机、输送皮带、斗式提升机、分料挡板等设备组成。其中破碎筛分系、提升系是两套系统,破碎筛分系统可以一备一用,也可以工作;提升系实现设备一备一用。工艺流程简图见下图1.
图1石油焦转运站工艺流程简图
2 控制系统设计及实现
2.1 SLC500的特点
SLC500模块化可编程控制器及输入输出模块由罗克韦尔自动化公司生产,产品目录号为1746和1747系列。该系列产品采用框架式结构,为在不同的工业现场使用提供了同样稳定可靠的平台。SLC500系统构成处理器、输入输出模块和相关外部设备。处理器功能强大、使用灵活,并有各种内置通讯方式和不同容量的内存供用户按需选择。根据用户的实际需要,输入输出模块可以非常方便的扩展。罗克韦尔自动化提供了便捷的内置通讯接口、种类丰富的第三方专用模块、简单方便的基于bbbbbbs平台的编程软件。SLC500成为当前市场上为流行的中小型PLC之一。
2.2 硬件配置
基于SLC的上述特点,本系统采用了美国罗克韦尔自动化公司的SLC505PLC。系统所需的输入/输出配置是:开关量输入100点;开关量输出50点;模拟量输入5点;模拟量输出2点;在适当考虑余量的基础上,实际的硬件配置如下:
⑴ CPU选用1747-L551;
⑵8块开关量输入,共16×8=128点;4块开关量输出,共16×4=64点;1块模拟量输入,共8×1=8点;1块模拟量输出,共4×1=4点;
⑶ 两个机架,分别是10槽和7槽;
⑷ 交换机一台
⑸ 上位监控操作员站一个
⑹ 工程师站一个
2.3 系统网络拓扑
上位机通过RSLINX软件,建立与PLC的联系,可以通过RS232和以太网任意一种通讯方式通讯。本控制系统中,上位机监控操作员站通过以太网借助交换机与PLC进行通讯,设置工程师调试接口,交换机预留和其他系统进行数据交换和通讯的端口。网络拓扑图见下图2.
监控软件RSview-SE安装在上位监控计算机,开发出工艺流程界面,通过以太网一方面把设备的状态点取上来,在流程界面上显示;另一方面把操作员发出的操作命令送到PLC,进而通过PLC的输出驱动相应的设备做出动作响应。
图2 石油焦转运站系统网络拓扑图
2.4 控制系统设计
通过PLC程序完成石油焦转运自动控制系统,结合上位监控操作员站,在主控室实现对现场各个设备、工艺参数的监视、控制、操作、调整。 在程序设计中,考虑上、下游设备之间的关联性,设计了相关的连锁保护,下游设备不运行,上游设备无法启动;代表电机电流大小的4~20mA信号通过模拟量输入模块采集进PLC,送给监控界面显示,控制调速皮带速度的控制信号从监控软件写到PLC,再转换成4~20mA的标准模拟信号控制皮带调速。
在这个系统中有以下几个需要注意、影响整个系统平稳运行的关键问题点:
2.4.1 实现系统设备在线切换控制
根据工艺设计要求,两套筛分系统、两个分料挡板和两台斗式提升机必须可以在线切换控制,即如果其中一套(台)设备出现故障,操作人员可以在不停料的情况下,立即把一套(台)设备加入流程控制,出故障的设备退出流程检修。
设计的程序中考虑了在切换系统时,系统上、下游流程继续运行,新进入流程的和即将退出流程的设备有一个时间段是运行,具体的参数需要根据实际情况进行整定。这样能确保退出流程的设备里的物料能够完全排出,新进入流程的设备不会造成堵料。
2.4.2 自动停车保护
从安全角度考虑,在输送皮带两侧安装了拉绳开关。在斗式提升机的入口和出口处,安装了堵料报警开关。在设计程序时,编制了如下的保护。
如果有人不小心摔到皮带上或者违犯规定穿越(跨、钻)正在运行的皮带碰到拉绳开关,系统会立即停车,并发出声光报警,提示操作人员前往检查、处理。处理完毕后,按压复位按钮清除故障,系统方可重新启动。
一旦斗式提升机的入口或者出口出现堵料,堵料开关动作,系统会立即停车,并发出声光报警,提示操作人员前往检查、处理。处理完毕后,按压复位按钮清除故障,系统方可重新启动。
在设计PLC程序时,把两个煅前日用料仓的高限报警信号引到PLC程序,一旦煅前日用料仓料位超过高限报警,操作人员没有发现,程序会自动保护性的停止系统。
2.4.3 收尘器的脉冲振打控制
石油焦转运系统中有三个收尘器,为了延长脉冲阀的使用寿命,在咨询厂家技术参数的基础上,设计了收尘器收尘布袋脉冲振打控制的PLC程序。根据生产厂家提供的数据,在设计的PLC程序中采用定时器和计数器,jingque地控制收尘器收尘布袋的脉冲振打时间和振打间隔时间,让脉冲阀按照固定的顺序依次振打。
. 引言
在现代工业控制系统中,PLC以其高可靠性、适应工业过程现场、强大的联网功能等特点,被广泛应用。可实现顺序控制、PID回路调节、高速数据采集分析、计算机上位管理,是实现机电一体化的重要手段和发展方向。但PLC无法单独构成完整的控制系统,无法进行复杂的运算和显示各种实时控制图表和曲线,无良好的用户界面,不便于监控。将个人计算机(PC)与PLC结合起来使用,可以使二者优势互补,充分利用个人计算机强大的人机接口功能、丰富的应用软件和低廉的价格优势,组成高性能价格比的控制系统。
1. 系统构成
系统设备组成,如图1所示。
图1 系统组成示意图
推进系统中,PC机选用工控计算机。它是整个控制系统的核心,是上位机。其主要利用良好的图形用户界面,显示从PLC接收的开关量和控制手柄的位置,进行一些较复杂的数据运算,并且向PLC发出控制指令。
PLC是该系统的下位机,负责现场高速数据采集(控制手柄的位置),实现逻辑、定时、计数、PID调节等功能,通过串行通讯口向PC机传送PLC工作状态及有关数据,从PC机接受指令,向蜂鸣器、指示灯、滑油泵、控制手柄的位置等发出命令,实现PC机对控制系统的管理,提高了PLC的控制能力和控制范围,使整个系统成为集散控制系统。
2. 通讯协议
计算机与PLC之间的通信是建立在以RS232标准为基础的异步双向通信上的,FX系列PLC有其特定的通信格式,整个通信系统采用上位机主动的通信方式,PLC内部不需要编写专门的通信程序,只要把数据存放在相应的数据寄存器中即可,每个数据寄存器都有相应的物理通信地址,通信时计算机直接对物理通信地址进行操作。通信过程中,传输字符和命令字以ASCⅡ码为准,常用的字符及其ASCⅡ码对应关系如表1所示。
表 1
计算机与PLC进行通讯时,计算机与PLC之间是以帧为单位进行信息交换的,其中控制字符ENQ、ACK、NAK,可以构成单字符帧发送和接受,其余的信息帧发送和接受时都是由字符STX、命令字、数据、字符ETX以及和校验5部分组成,如图2所示。
图2信息帧的组成
在图2中,CMD是通信命令字,其意义如表2所示。
表 2
校验和在信息帧的尾部用来判断传输的正确与否,和校验码的计算方法是将命令码到ETX之间的所有字符的ASCⅡ码(十六进制数)相加,取所得和的低2位数,在后面的通信程序设计里面还会提到。进行差错检验的方法很多,常用的有奇偶校验码,水平垂直冗余校验LRC,目前广泛使用的是CRC校验码,它能查处99%以上18位或更长的突出错误,而在计算机与PLC点对点的短距离通讯时,出错的几率较小,采用校验和法,基本能满足要求。
3.多线程技术及在VC++串口通信程序中的实现
在bbbbbbs的一个进程内,包含一个或多个线程,每个线程共享所有的进程资源,包括打开的文件、信号标识及动态分配的内存等等。一个进程内的所有线程使用同一个32位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行和什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完任务后再执行。在多处理器的机器上,调度程序可以把多个线程放到不同的处理器上运行,这样可以使处理器的任务平衡,也提高系统的运行效率。
bbbbbbs内部的抢先调度程序在活动的线程之间分配CPU时间,bbbbbbs区分两种不同类型的线程,一种是用户界面线程(UserInterface Thread),它包含消息循环或消息泵,用于处理接收到的消息;另一种是工作线程(WorkThread)它没有消息循环,用于执行后台任务、监视串口事件的线程即为工作线程。
本系统采用MFC编程方法,MFC是把串口作为文件设备来处理的,它用CreateFile()打开串口,并获得一个串口句柄,用SetCommState()进行端口配置,包括缓冲区设置,超时设置和数据格式等。调用函数ReadFile() 和WriteFile()进行数据的读写,用WaitForSinglebbbbbb() 监视通信事件。在用ReadFile() 和WriteFile()读写串口时,一般采用重叠方式。因为同步I/O方式是当程序执行完毕才返回,这样会阻塞其他线程,降低程序执行效率。而重叠方式能使调用的函数立即返回,I/O操作在后台进行,这样线程就可以处理其他事务,也实现了线程在同一串口句柄上实现读写操作。
使用重叠I/O方式时,线程要创建OVERLAPPED结构供读写函数使用,该结构重要的成员是hEvent事件句柄。它将作为线程的同步对象使用,读写函数完成时hEvent处于有信号状态,表示可进行读写操作;读写函数未完成时,hEvent被置为无信号。
利用bbbbbbs的多线程技术,在辅助线程中监视串口,有数据到达时依靠事件驱动,读入数据并向主线程报告;并且,依靠重叠读写操作,让串口读写操作在后台运行。
4.上位计算机通信程序设计
以读取PLC输出线圈Y0为首的2个字节的数据为例,编写一个通信程序。查PLC软元件地址表可知,输出线圈Y0的首地址为00A0H,2个字节的数据即为Y0-Y7和Y10-Y17,根据返回的数据,就可以知道PLC此时的状态,以实现对PLC的监控。在每一次读操作之前,先要进行握手联络。对PLC发请求讯号ENQ,读PLC的响应讯号。如果读到的响应讯号为ACK,则表示PLC已准备就绪,等待接收通讯数据。
BOOL CPlcComDlg::ReadFromPLC(char *Read_char, char *Read_address,int Read_bytes)
{ CSerial Serial;//用于串行通讯的类
if(Serial.Open(1))//初始化串行通讯口COM1
{Serial.SendData(&ENQ_request,1);//发送联络讯号
Sleep(20);//等待20ms秒
Serial.ReadData(&read_BUFFER,1);//读取PLC响应讯号
if(read_BUFFER==ACK){
… …
Serial.SendData(&STX_start,1);//向PLC发送“开始”标志代码
Serial.SendData(&CMD0_read,1);//发送“读”命令代码
datasum_check+=CMD0_read;
for(i=0;i<4;i++){
Serial.SendData(&Read_address[i],1);//发送起始元件地址的ASCⅡ代码
… …
Serial.SendData(&ETX_end,1);//发送结束标志代码
Change_to_ASCII(senddatasum_CHECK,datasum_check);//将“和”转化成ASCⅡ代码
Sleep(40);//等待PLC的反应
… …
Serial.ReadData(&Read_char[i],1);//读Read_bytes个字节
if(*readdatasum_CHECK==*readdatasum_check)//“和”效验
{ AfxMessageBox("数据读取成功!");
return TRUE;}
else{AfxMessageBox("校验错误!");
return FALSE;}}
}
5. 结束语
本文作者创新点:笔者提出了一种基于多线程的PC机与PLC的通讯,该通讯程序采用VC比用VB具有更好的实时性;并采用MFC编程方法用重叠结构读写串口,使串口读写在后台进行。该通讯程序可靠、可移植性好。
本通讯程序作为该系统的一个重要组成部分,经现场调试证明,既简单又实用,具有很好的实用价值。该系统具有直观的人机界面和方便的操作方式,具有广阔的应用前景。