工业以太网和CAN总线在污水处理系统中的应用
3 CAN总线的实现
3.1 CAN总线硬件组成
本系统采用的是微处理器P89C668,外加CAN控制器SJA1000、CAN 收发器TJA1050 以及以太网通信控制器RTL8019AS,组成一个通信协议转换网关模块,功能模块如图3所示。
图3 功能模块图
P89C668是本系统的主要控制部分,实现对网络芯片以及CAN器件的控制,并进行两者之间的协议转换。CAN控制器SJA1000应用BasicCAN工作模式,这种模式支持具有很多新特性的CAN2.0B协议,支持错误分析功能,对CAN收发器进行控制,为微控制器提供了控制CAN总线的简单接口。收发器是CAN协议控制器和物理总线的接口,分别为总线和CAN控制器提供不同的传输和接收能力。在微控制器对CAN控制器进行相应配置后,收发器自动完成相应的CAN总线操作。CAN收发器和CAN控制器是通过光耦实现总线上各CAN节点间的光电隔离,而且光耦电路的两个电源VCC和VDD必须采用小功率电源隔离模块进行电源的完全隔离。以太网通信控制器,给微控制器提供控制以太网的简单接口,使微控制器只需要对其进行相应读写即可完成对以太网的操作。隔离滤波器用于提高网络通信的抗干扰能力。
网关主要完成CAN总线到以太网的协议转换。它由CAN控制器协议转换模块和以太网控制器协议转换模块两部分组成,网关硬件中微处理器起核心作用。CAN控制器协议转换模块硬件电路由三部分组成:微处理器、CAN通信控制器、CAN总线收发器。以太网控制器协议转换模块主要由微处理器、以太网通信控制器和隔离滤波器组成。以太网通信控制器RTL8019AS是一种高集成度的全双工10MbPS以太网控制芯片,实现了基于ETHERNET协议的MAC层的全部功能,完成数据包的接收和发送功能。
3.2 CAN软件实现
在PCC中进行CAN I/O操作,在硬件配置中选择CAN通信接口,在软件配置表中配置CAN I/O属性。定义从站的站号应该与实际连接的硬件站号设置一致。利用CAN进行连网数据通信,用CANopen指令对CAN接口进行初始化。用CANopen在初始化程序中初始化CAN控制器。初始化之前,参数enable置1,设定通信速率为Baud rate,定义CAN接口参数。系统将反馈CAN通信接口的标识号US—ident,此标识号将在CAN函数库中读写数据的功能块上使用。CANwrite功能块将数据写在总线上,在循环任务中调用。这些数据可以通过给定的can—id号往总线上发送。
PCC的CAN帧最多可用8个字节的信息进行读写。这部分通过调用CAN函数库来实现,其中包括CANOPEN,CANWRITE,CANREAD等。CANOPEN函数包括完成对CAN总线的初始化。
需要注意的是CAN总线的初始化必须包含在初始化例程INITsP中。CANOPEN(1,BAND—RATE,COB—ANZ,ADR(ERROR—ADR),0,0,US—IDENT,STATUS)其中BAND—RATE=25,即代表波特功率为250K。US—IDENT是调用CAN初始化得到的反馈到PCC的CAN的ID,在CAN总线的读写过程都将用到该参数。CAN总线的写信息通过在优先级较高的进程中采用CANWRITE函数,其函数参数定义如下:CANWRITE(ENABLE,US—IDENT,CAN— ID,DATA— ADR,DATA— LNG,STATUS),enable=1,US—idenf为在CANopen()初始化中建立的US—idenf。CAN—id为数据目标CAN模块有关的CAN数据桢的ID。DATE—ADR为发送数据模块的首地址。DATA—LNG为发送的数据长度。其最大值为8。如果以CAN—ID为帧地址数据被成功发送则status:0,反之sta.tus=错误代码。
系统的结构框图如图4所示。
图4 CAN总线结构框图
4 系统软件实现和上位组态
4.1 软件编程
下位PCC的网络组态和硬件配置及编程全部在B&R编程工具中完成,它全面支持全集成自动化功能,可将数据管理、通信、编程同时集成在一个环境中去完成。应用这种便利的方法,在完成对三个站点的网络组态和通信连接后,进行编程调试,实现了各个站的控制要求。
贝加莱PCC控制器采用分时多任务操作系统和多样化的应用软件的设计,是基于多任务环境下设计程序,采用大型应用软件的模块化设计思想,应用程序的运行周期则与程序长短无关,而是由操作系统的循环周期决定。其系统软件使用AutomationStudio编程语言,包括:常规PLC使用的指令表语言如梯形图、结构文本、SQF、指令表,而且还支持高级语言如BASIC语言和C语言 ,使开发人员可以很好的选择自己熟悉的编程方法。本系统使用高级语言C进行编程,其运算时间快,而且容易实现模块化编程,可以使控制更加快速和精确,以达到更好的控制目标。
4.2 控制系统上位机设计
上位机软件采用组态王贝加莱专用版Kingview for B&R 1.0,除具有组态王6.53所具备的功能外,还具有以下特点:(1)以驱动的方式支持贝加莱所有的产品;(2)支持冗余服务器、冗余CPU、冗余网络;(3)支持自动上载PCC中的变量;(4)支持结构体和数组变量类型。
为过程控制和现场监控开发的监控系统软件。在组态时充分利用其强大的上下位全集成功能,大大节约了开发时问并增强了系统的透明访问度。在利用上位工具组态王实现主要功能如下,(1)监视功能:全面实时显示各工艺参数值和各设备当前状态,以及故障报警、报表等。(2)调节功能:对各调节阀进行手/自动调节以及对工艺参数的设定等功能。
主控界面的组态由于系统设备较多,需要将系统流程及设备操作界面分别呈现在多张画面内。画面问的切换使用组态王内部按钮的鼠标动作来实现。
5 结束语
该系统针对污水处理自动控制系统,采用工业以太网和CAN纵向集成的技术,主要介绍了CAN总线的实现,总线与工业以太网之间的协议转换。充分利用贝加莱PCC编程灵活,可靠性高与CAN总线充分结合,将以太网进一步延伸到工业现场级,使控制系统结构具有最大的开放性、互操作性和实时性。在完全达到技术要求的基础之上,为以后的扩展和升级留下足够的空间,系统已经应用于兰州某县污水处理厂,功能完善、运行稳定、自动化程度高,完全满足其控制要求,各站运行平稳,各方面性能都得到厂方的好评。
评论