微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 工业以太网和CAN总线在污水处理系统中的应用

工业以太网和CAN总线在污水处理系统中的应用

时间:12-21 来源:互联网 点击:

本系统下位机采用三台贝加莱X20高性能X20CP1485控制器,该控制器自带以太网和CAN总线通信接口,其处理频率达到Celeron 400MHz,达到400μs任务执行时间。通过编制控制程序,对污水处理现场控制站I/O模块的温度、流量、液位、PH值等数据进行采集、分析、运算并相应输出结果对电磁阀的启停进行控制。自带以太网接口实现与监控中心数据通信,采用容易扩展的X20系列的I/O单元,采集远程设备数据信号 。

基于TCP/IP的工业以太网是一种标准开放式的网络,易于实现将控制现场的设备与上位管理系统实现互联,进而实现数据、信息与系统资源的共享;数据的传输距离长、传输速率高,易与Internet连接,易组网,与计算机、服务器的接口十分方便,并受到广泛的技术支持。但无法保证数据传输的实时性要求,是一种非确定性的网络系统。CAN现场总线的数据通信具有突出的可靠性、实时性和灵活性。CAN总线的节点分成不同的优先级;采用非破坏仲裁技术;报文采用短帧结构,数据出错率极低;节点在错误严重的情况下可自动关闭输出。CAN现场总线作为一种面向工业底层控制的通信网络,但是它不能与Intemet互连,不能实现远程信息共享。所以选择将工业以太网与现场总线相结合应用于该污水处理项目中。在工业以太网和CAN现场总线通过网关进行网络互连。这是一种低成本、高可靠性、快捷的CAN现场总线与工业以太网互连方案。这样可以在利用现有网络的基础上,充分发挥工业以太网和CAN现场总线的优势,实现整个工业控制系统的网络连接。系统网络结构如图2所示。

图2 系统网络图

在PCC现场控制站上,配置了带TCP/IP接口的通讯模块,以便和中央控制站通讯。另外利用CAN总线实现与现场设备的连接,将现场的设备全部挂到CAN总线上,通过CAN总线实现与以太网的连接。PCC现场控制站监视和控制污水处理的整个生产过程,并通过通讯网络与监控计算机及其它现场控制设备进行通讯。中控室能够观察到一些重要的运行状态和工艺参数,对现场设备进行操作及控制参数的设置和修改。

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函数包括完成对CA

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top