修水县是江西省的蚕桑大县,蚕丝产量是该县的经济支柱,且关系到千家万户农民的切身利益,为了提高蚕种的产量和质量,促进蚕桑经济的发展,该县蚕桑局委托我们开发蚕种孵化过程的温湿度实时

  修水县蚕桑局蚕种孵化楼共三层,每层有6个孵化室,根据技术要求和孵化室的地理位置,我们采用了按层控制的方案,即每一层的6个孵化室为一个独立的控制系统,使用一个PLC对其温度和湿度进行控制,各PLC通过双绞屏蔽线与工控机互联,整个系统为二级计算机监控,系统结构如图1所示。图中温湿度变送器采用北京昆仑海岸传感技术中心的JWSF-3AC-E型温湿度变送器,该变送器为三线制电流远传,输出为标准的4~20mA电流信号(两路);巡检仪也采用北京昆仑海岸传感技术中心的XSL/A16BS3巡回检测报警仪,具有16通道4~20mA电流输入(实际只用了12通道,其中6个温度通道6个湿度通道),输出为数字信号,共19位,其中D18~D14为通道编码,D13为极性,D12~D0为温湿度数值,各通道数据分时巡回输出,通过设置各通道的量程上、下限还可巡回显示各通道的温湿度数值;PLC采用西门子S7-200系列CPU226(增加扩展模块EM223),由于西门子PLC提供的是RS485串行接口,而工控机只提供了RS232串行接口,所以在PLC和工控机之间必须使用RS485/232电平转换器。

  控制方案为:安装在各孵化室的温湿度变送器将孵化室的温湿度信号转换成4~20mA的电流信号并送至巡检仪,巡检仪根据事先设置的量程上、下限将电流信号转换成温湿度数据并巡回显示,同时还以二进制形式巡回输出这些数据至PLC,PLC以开关量的形式采集这些二进制数据,并按照规定的格式将这些二进制数据转换成各孵化室的温湿度数据,然后与按工艺要求设定的温湿度数据进行分段比较、判别,发出控制信号,控制信号经控制板功率放大,驱动相关执行器(空调、加热器和补湿器)实施孵化室的分段温湿度控制。采用上述控制方案既保证了在工控机或通信发生故障时,可根据巡检仪显示的数据,采用人工调节的方式对孵化室的温湿度进行控制,又避免了在PLC中增加A/D转换模块,从而确保了系统的可靠性,降低了成本。

  根据控制方案及用户要求,工控机主要完成下列功能:工艺流程的设置,控制参数的修改,实时数据的显示、报警及保存,蚕种销售的管理等。我们选用Delphi作为前台程序设计语言,设计各种人机界面和工控机部分的通信程序,Microsoft Access作为后台数据库系统,用于保存各孵化室的分段温湿度设定值、整点实际值、报警记录及蚕种销售记录等,修改控制参数的人机界面如图2所示。

  由于工控机既要完成人机界面操作,同时又要与PLC进行串行数据通信,为了保证人机界面的操作不影响数据通信的正常进行,而数据通信的进行也不会造成人机界面的停滞或反应不及时,我们在程序中引入了多线程的机制,将程序处理的任务分为两个线程:响应用户操作线程和数据通信线程,并且把响应用户操作线程作为主线程,该线程具有最高优先级,以保证系统能够快速响应操作员的各种操作,而数据通信线程的优先级设为较低。

  PLC部分的程序主要完成各孵化室温湿度的实时采集,并与设定值进行比较、判别,发出控制信号,控制空调、加热器、补湿器及电机的启停,确保空调、加热器及补湿器两次启动的最短间隔时间满足系统设置的要求,还确保了空调(用于制冷)和加热器不会同时开启。PLC的另一个任务是与工控机进行串行通信。

  西门子S7-200系列PLC的通信口主要有两种工作方式:PPI方式和自由口方式,PPI方式专门用于西门子PLC与其编程器或人机接口产品之间的通信,不对外公开,而自由口方式完全对用户开放,采用自由口方式,S7-200系列PLC可以与任意具有串口的设备进行通信。

  自由口通信采用主从方式,工控机为主站,PLC为从站,PLC始终处于被动状态,随时准备接收计算机的通信请求帧,只有在PLC接收到工控机发送来的请求帧后,才能回送相应的帧。工控机发送请求帧采用周期性通信,周期为10秒。本系统采用半双工方式通信,物理层采用RS485协议,波特率为9600bps,数据长度8位,停止位1位,采用奇校验。

  工控机部分的通信程序由Delphi实现,利用Delphi实现串行通信的方法有多种(如使用控件、调用API函数、嵌入汇编、调用动态链接库等),我们采用了SPComm控件实现串行通信,其主要属性有:CommName、BauRate、ParityCheck、ByteSize、StopBits等,分别用来设制串口名、波特率、是否校验、采用奇还是偶校验、数据长度、停止位数等,主要方法有StartComm、StopComm,分别用来打开和关闭串口。

  本系统中工控机与PLC之间传输的信息有两种:工控机发送的组态数据(温湿度的设定值,空调、加热器、补湿器两次启动之间的最短间隔时间等)和PLC发送的现场数据(主要是各孵化室的温湿度数据和空调、加热器、补湿器及电机的状态),因此,我们定义了如下通信协议(其中XX为从站号)。

  每当PLC接收到工控机发出的信息后即触发中断服务程序,中断服务程序根据事先定义的帧格式(即通信协议)识别其内容,作出相应的响应。在工控机发送组态数据时,若出现无应答、应答错误或累计和错误,工控机延时10秒后再发R命令,若连续6次出现上述情况,则发出通讯错误报警。在工控机接收现场数据时,若出现无应答、应答错误,上位机延时10秒后重发T命令,若连续6次出现上述情况,也发出通讯错误报警。

  本系统投入运行一年来,据用户反映可靠性高、效果好。由于控制精度高,工艺正确,孵化出来的蚁蚕强健、好养,成茧茧层厚、茧丝长、净度优,社会经济效益十分明显。