引言
随着人们对啤酒品质的要求越来越高,传统的生产 *** 作或控制方式已不再适应当今的生产规模和生产要求,发酵过程作为啤酒生产过程中至关重要的一环,其控制系统则尤其重要。CAN总线具有结构简单、通信方式灵活、错误检验处理等特点尤其基于优先权的无破坏性总线仲裁技术,特别适合工业过程监控设备的互联。因此,针对当前啤酒企业的设备现状和生产需要,本文将介绍一种采用CAN总线技术进行通信的啤酒发酵分布式控制系统。
控制系统总体结构
基于CAN总线的啤酒发酵分布式控制系统由现场智能节点、监控计算机和CAN控制网络3部分构成。
现场智能节点是直接面向生产过程的,主要功能是采集现场发酵罐的各处温度和压力值,按照一定的控制算法对温度和压力控制回路中的执行器进行控制 *** 作,将现场发酵罐的运行状态信息通过CAN总线通信网络送至监控机,并实时处理监控机下传的各种命令等。
监控计算机由一台PC机构成,另外还有一台PC机作为热备份机,一旦某台发生故障,另一台能立即启动,保证控制系统的可靠性。监控计算机的主要功能是:对各现场智能节点的运行参数进行设置;通过现场总线网络实时获取现场智能节点的数据;监测系统异常,并根据故障信息立即发出相应的声光报警信号;以友好的图形界面直观指示当前各发酵罐的运行状况及参数信息;实现数据库管理,分类管理保存各发酵罐的运行数据,为优化工艺提供数据资料等。
CAN控制网络部分主要由智能CAN-PC总线适配器、通信介质、接口电路及相应的通信软件组成。该系统的CAN-PC总线适配器为智能通信适配器USB-CAN,它能方便的实现监控计算机与CAN总线之间的连接,高速地完成用户复杂的通信任务。通信介质为双绞线,负载连接在CAN-H和CAN-L之间,为了抑制信号反射,终端接有阻抗值约120?的匹配阻抗。
现场智能节点设计
本系统中CAN总线接口电路主要在现场智能节点部分实现,为了深入说明CAN总线在啤酒发酵过程控制中的应用,下面介绍现场智能节点的总体设计,并给出实现CAN通信的硬件电路和软件流程图。
现场智能节点总体结构
如前所述,啤酒发酵过程控制系统中现场智能节点完成现场数据采集和处理、罐体上各执行器的控制、智能节点与监控计算机之间的通信等主要工作,监控计算机只是完成状态监测、报警、智能节点运行参数修改等工作,因此现场智能节点的设计是整个系统的关键部分。每个现场智能节点控制一圆柱锥底形发酵罐,其结构框图如图1所示。
现场智能节点CAN接口电路设计
现场智能节点的设计中,CAN总线网络接口部分使用了Philips公司的CAN控制器芯片SJA1000和CAN总线收发器PCA82C250芯片。为了增强现场智能节点的抗干扰能力,总线收发器与控制器之间用高速光耦6N137隔离,接口电路如图2所示。
为了保证SJA1000与AT89C52之间时钟同步,本设计采用CLKOUT时钟信号作为AT89C52的时钟输入;SJA1000的接AT89C52的端,通过中断方式与CPU通信;PCA82C250的RS脚上接有一斜率电阻,电阻大小(16~140K?)可根据总线通信速率适当调整,本设计中取值47K?;PC82C250的两输出引脚与CAN总线之间各接一个5?的电阻,起一定的限流作用,从而保护PCA82C250免受过流的冲击;为了滤除总线上的高频干扰并具有一定的防电磁辐射的能力,CAN-H和CAN-L与地之间并联了两个30pF的电容。
现场智能节点CAN通信软件设计
现场智能节点的CAN通信软件设计由三大部分组成:SJA1000初始化、数据接收和发送。节点的主程序完成对SJA1000的初始化,开放SJA1000的中断,控制整个发酵过程,并主动向监控计算机传送发酵罐的状态信息。
对SJA1000的初始化主要是设置CAN的通信参数,如设置模式寄存储器等。本设计中数据发送是主动的,因而对发送的处理比较简单,主程序采用查询SJA1000的状态标识符的方法,只须把被发送的信息帧送到CAN的发送缓冲区,并启动发送命令即可。为了保证系统的实时性,数据接收是通过SJA1000的中断控制来实现的,在ISR中从接收缓冲区读取要接收的信息,同时还要对出错和数据溢出中断作相应判断处理。发送接收流程图如图3所示。
系统中为了实现上位监控PC机与下位现场智能节点间通信,必须要有一通信适配器来实现CAN总线与PC总线之间的通信协议转换功能。传统的网络适配器设计中与PC机的通信接口多为ISA总线、RS-232等,虽然它们实现较简单,可由于带宽的限制,不能满足高速传输的需要;而对于流行的PCI总线虽功能强大,可协议复杂,开发周期较长,不支持热插拔且价格昂贵。USB总线具有安装方便、高带宽、可靠性高等特点,因此本系统采用了自主开发的智能通信适配器USB-CAN来实现本系统CAN网络与PC机间的通信。
智能适配器USB-CAN硬件电路设计
适配器硬件电路由三部分组成:CAN总线接口部分、USB总线接口部分、CPU及电源管理部分。CAN总线接口部分的设计与智能节点CAN接口几乎相同。CPU采用Philips公司的增强型MCS-51兼容单片机P89C51RD2,内置看门狗,时钟输出可编程,在6时钟模式下工作速度为标准C51单片机的两倍。USB总线接口部分采用Philips公司的PDIUSBD12芯片,其符合USB1.1版本规范,可与任何外部微控制器/微处理器实现高速并行接口。硬件电路如图4所示。
为了保证P89C51RD2、PDIUSBD12和SJA1000三者间时钟同步,外接12MHz晶振的CPU运行于6时钟模式下,P1.0引脚通过编程输出6MHz方波作为PDIUSBD12的输入时钟,再通过PDIUSBD12的设置模式寄存器编程使CLKOUT引脚产生24MHz的输出时钟来提供给SJA1000。PDIUSBD12的INT-N接CPU的端,通过中断方式与CPU通信; SUSPEND引脚接CPU的P1.4端,用以向CPU指示器件是否挂起;D+引脚信号通过软连接接1.5K?的内部上拉电阻,向主机表示为高速设备;为确定USB电缆是否与主机连接,采用EOT-N引脚检测USB接口的VBUS电压来实现;由于采用多路地址/数据总线配置,故A0接高平;此外,D+和D-两引脚各接18?电阻,起到一定的限流作用,以保护PDIUSBD12免受过流的冲击。
智能适配器USB-CAN软件设计
智能通信适配器USB-CAN的软件即USB固件主要完成两方面任务:响应来自主机的配置请求,完成对USB外设的列举 *** 作;负责接收主机的命令并发送给CAN总线上的节点,以及接收各节点的数据并经USB总线传送给PC。
USB固件包括主程序、外部中断0子程序和外部中断1子程序。在主程序中主要完成SJA1000和PDIUSBD12的初始化 *** 作并开放中断;外部中断0子程序处理CAN总线上事件,与智能节点对CAN总线的处理情况类似;外部中断1子程序处理USB总线上的事件。
从整个监控系统角度来看,软件设计还包括USB设备的驱动程序和应用程序等,限于篇幅,在此不作阐述。
结语
具有独特的设计思想、卓越的性能和极高的可靠性的CAN总线被公认为是最有前途的现场总线之一。基于CAN总线的啤酒发酵监控系统具有可维护性好、易于扩充、可靠性高和成本低等特点,非常适合当今啤酒企业生产发展现况。
责任编辑:gt
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)