张 辉 张 浩 同济大学CIMS中心 上海,200092
0 引 言
联华集团生鲜食品配送中心综合工程包括温控系统、畜禽加工中心、食品包装间、污水处理系统、数据库等项目。是投资几个亿的大型项目,是上海市重要的菜篮子工程之一。本人参与了温控系统的设计,承担了PLC程序的设计,包括下位机的软件编制和上位机的软件编制。
1 系统描述
本温度控制系统需要对26间大小各异的房间进行各种温度控制。它们的温度主要可分为三大类:-18℃的冷冻间、0~5℃的保鲜间和10~15℃以下的加工处理间。 按照房间的大小分布有34个测温探头,其中,大多数房间每间安装一个探头,另外,有一间房间装有四个探头、两间为三个和一间为两个探头。 系统对温度的控制是制冷控制,根据实际情况,把制冷控制分为两个系统:一个是冷风机系统,主要是冷风机电动机的控制;另一个是冷却液系统,主要为冷却液阀门和泵的控制(两者都为开关量)。有四台冷却液泵向所有的房间提供冷却液。
2 控制要求
(1)温度控制要求 对于0~5℃和10~15℃房间的温度控制要求: 当某一测温点的温度高于设定值2℃时,打开对应的一组冷风机和冷却液阀门,并通过显示屏幕形式通知泵房,由人工决定打开冷却液泵。其中,开冷却液阀门顺序为:先开“出”阀门,经5秒延时后再开“进”阀门。当某一测温点的温度低于设定值2℃时,关闭对应的一组冷风机和冷却液阀门。关冷却液阀门顺序为:先关“进”阀门,经5秒延时后再关“出”阀门。当相应冷却液泵的所有冷风机和冷却液阀门都关闭和冷却液泵还在开启状态时,由计算机关闭其冷却液泵。4台冷却液泵分成两组,每组两台。一组控制10~15℃房间,另一组控制0~5℃房 间。 对-18℃房间的温度控制要求: 这些房间只需要测温和开冷风机。当温度升高时,视情况由人工开启冷却液泵和阀门,然后通过“开”按钮通知PLC计算机开启该房间的冷风机。同样,当人工关闭冷却液泵和阀门时,用“关”按钮让PLC计算机把该房间的冷风机关闭。 (2)故障检测 硬件系统有两套故障检测系统:一套是对每一组冷风机和阀门的各自中间继电器状况进行检测,另一套为对每组冷风机的过电流和过热继电器进行检测。 (3)除霜功能 系统除霜功能是,当上位机输入该房间为除霜状态信号时,阻止该房间的所有冷风机打开,同时打开该房间的所有冷却液阀门,直至撤消除霜状态为止。 (4)上位机监控 人机监控界面采用西门子公司的组态软件WINCC编制。它分两幅屏幕,一幅屏幕监测底楼的各种状况;另一幅屏幕监测二、三和四楼的相应状况。在各屏幕内对每一传感器有一个显示窗和一个下拉子窗口;在各房间的显示窗内显示的参数有当前温度、报警提示、除霜状态以及冷风机和阀门的开关状态。在各房间的下拉窗内专门操作人员可设置房间温度、设置和撤消除霜状态,系统对设置温度操作设有密码,防止非操作人员进行非法设置。同时还有温度趋势图、报警记录和打印报表等功能。
3 硬件配置
下位机PLC采用的是SIEMENS公司的SIMATIC S7-300可编程控制器,其硬件组态如图1所示。
上位机采用SIMENS公司的SIMATIC WINCCV5.0,用于监控和操作温度控制系统。与下位机的通讯采用点对点的方式。
4 温控系统的软件编程
(1)下位机编程采用SIMATICS7梯形图编程语言进行编制。通常STEP7有三种设计方法:线形编程、分部编程和结构化编程。考虑到26间房间只有0~5℃、10~15℃和-18℃的温度控制要求,排除几个特殊要求的房间需要进行单独编程外,完全可以通过结构化方法把类似的相同控制要求的房间的编程模块化,通过FC模块封装0~5℃房间、10~15℃房间和-18℃房间的控制功能。在这里我编写FC10完成了0~5℃房间的温度控制。这样各个房间只要调用对应的控制模块即可。下面将阐述在开发中需要注意的几个问题和技术处理。 a)温度采集和处理 从传感器上通过PLC的模拟量输入模块中得到的数据必须通过量程转换才能变成实际的温度 值,通过编写单独的模块FC100,完成从WORD到实数的转换。考虑到传感器测到的温度可能由于干扰信号在极短的时间内出现阶跃,按照控制要求当温度高于设计温度2℃时就要打开冷风机和冷却液阀。为避免干扰,采用在10秒内采集5个温度,平均这5个温度,假如温度还是高于设计温度2℃才进行制冷和相关反应,从而有效的避免了干扰。 b)温度控制模块的设计 温度控制模块包括FC10、FC20、FC30和其它的特殊房间的控制模块。FC10和FC20也就是0~5℃房间和10~15℃房间主要完成:当温度高于设计温度2℃时打开对应的冷风机和冷却液阀门,当温度低于设计温度2℃时关闭对应的冷风机和冷却液阀门。当然打开或关闭冷风机和阀门的连锁条件中加了与上位机通讯的、继电器故障等状态位,这里不一一展开。图2简略地表示0~5℃和10~15℃房间温控模块的程序流程图(省略了一些功能实现)。
c)故障模块的设计 通过DO输出模块中冷风机和冷却液阀门的当前状态和DI输入模块中反馈过来的中间继电器的状态进行异或,0表示继电器正常,1表示继电器故障。当继电器故障时,冷风机将停止运行。 d)与上位机通讯的DB块的设计 在本系统中,上位机与下位机的联系主要通过读取和改变下位机的DB块来实现的。总共有DB1、DB2、DB3、DB4、DB5、DB6、DB7、DB8八个DB块。其中DB1表示实际的温度信息数据块,DB2表示设计的温度信息数据块,DB3表示冷风机中间继电器报警的信息数据块,DB4表示冷风机热继电器报警的信息数据块,DB5表示冷风机开提示信号的数据块、DB6表示阀门开提示信号的数据块,DB7表示阀门中间继电器报警的数据块,DB8表示设置除霜信号的数据块。上述数据块的变量全是二进制变量。 (2)上位机的编程平台采用SIEMENS公司的SIMATICWINCCV5.0。通过读取下位机的DB块, 在上位机上显示对应的状况,如显示实际温度、冷风机开闭状态等。通过改变下位机对应的DB块,如在上位机上设计一个房间的设计温度,则改变了下位机DB2块对应房间的数据,从而达到控制下位机的要求。下面阐述上位机实现的功能及设计。 a)主屏的功能及实现 主屏分为两屏,一屏显示一楼的信息,二屏显示二、三、四楼的信息。主要显示各个房间的信息,如显示各个房间的当前的温度、显示设计温度、冷风机的开闭状态等。主要通过图形编辑器和相应的标签管理来实现。 b)归档和温度趋势图的设计与实现 通过WINCC可以很方便的把时间取样数据和事件记录在SQL数据库里。温度趋势图主要显示各个房间的历史温度和当前温度,通过趋势曲线和表格两种形式来反映温度记录。因为WINCC的产品使用基于MFC的VISUALC++编的,方便的实现了多文档多视图的功能。 c)报警图的设计与实现 除了在主屏上形象的用小灯的闪烁来表示各种故障报警外,WICC提供了强大的故障报警功能的实现,通过WINCC中的报警记录用文本的方式方便显示了各种故障到来、故障确认、故障离开的信息,并用不同的文本颜色来表示。 d)报表与打印的设计与实现 通过WINCC中的报表编辑器实现定期的打印温度的历史数据。 e)用户密码的确认 通过WINCC中的用户管理器,对设计温度和降霜设置加密。
5 结束语
由PLC控制的联华集团温度控制系统已经投放使用,运行稳定、可靠。与老的温度控制系统相比,具有温度控制更加精确、能在上位机上实时地反映PLC工作情况和一系列报警及打印报表,使用更加方便、故障的处理更加及时。
参考文献
1 STEP7 V5.0编程手册.SIEMENS公司,1999 2 SIMATICWinCCV5手册.SIEMENS公司,1999 3 魏志精.可编程序控制器应用技术.北京:电子工业出版社,1995.7
|