文档库 最新最全的文档下载
当前位置:文档库 › 基于嵌入式系统和CAN总线的船舶监控系统设...

基于嵌入式系统和CAN总线的船舶监控系统设...

基于嵌入式系统和CAN总线的船舶监控系统设...
基于嵌入式系统和CAN总线的船舶监控系统设...

第34卷增刊大连海事大学学报Vol.34S 2008年6月Journal of Dalian Maritime University Jun.,2008

文章编号:100627736(2008)S2*******

基于嵌入式系统和CAN总线的船舶监控系统设计X

徐弘升1,林叶锦2

(1.东南大学信息科学与工程学院,南京210096;

2.大连海事大学轮机工程学院,辽宁大连116026)

摘要:根据当前船舶自动化和嵌入式系统的发展趋势,以ARM7处理器和L C/OS-II操作系统设计CAN总线的节点,提出一种基于嵌入式系统和CAN总线的船舶机舱监控系统.进行船舶机舱监控系统的网络结构设计,给出嵌入式CAN总线节点和PC-CAN适配卡的设计方法.设计内容作为模拟机舱监控系统的重要组成部分得到了实际应用.

关键词:嵌入式系统;CAN总线;船舶;监控系统

中图分类号:TP273;U664.821文献标志码:A

Design of a ship monitoring system

based on embeded system and CAN bus

XU Hong2sheng1,LIN Ye2jin2

(1.College of I nf ormation Sc ience and E ngineering,

Southeast Universi ty,Nanjing210096,China;

2.College of Maritim e Engineering,

Dalian Mariti m e Un i versity,Dalian116026,Ch i na)

Abstr act:Considering the development trends of ship automation and embeded system,a ship monitoring system based on embed2 ed system and CAN bus is designed with the utility of ARM7 and L C/OS-I I.Firstly,structure of the ship monitor ing sys2 tem network is pr esented,then the designed method of embeded CAN bus node and PC-CAN adapter card are delivered.The designed system has been proved to be effective in a simulated engine room project.

Key wor ds:Embeded System;CAN Bus;Ship;Monitor ing System

0引言

随着嵌入式系统和现场总线技术的发展,船舶自动化目前正面临一场技术革命.在经历了集散式控制、分布式控制、局域网络控制的船舶机舱监控系统将逐步被现场总线监控系统(FCS,Field Bus Con2 trol System)所取代.现场总线监控系统将传统的分布式监控系统(DCS,Distributed Control System)中的控制功能进一步下放到现场总线网络的各个微机监控单元,由各个现场微机监控单元完成数据采集、数据处理、控制运算、控制输出等功能,而上层微机则完成现场数据的实时显示、报警处理、趋势预测和故障诊断等,上、下层网络的信息交互通过现场总线和适配卡进行.

上层网络一般采用局域网实现数据传输与共享,局域网的工作站一般采用PC机,下层的CAN 总线节点目前还以单片机为主,如MCS-51单片机等.但传统的8位单片机系统的功能简单、无操作系统、程序移植性差.随着嵌入式系统开发成本的降低,32位嵌入式系统的应用已成为船舶自动化发展的重要方向,尤其以基于ARM处理器的嵌入式系统最为普及.此类嵌入式系统具有低功耗、低成本、可运行多种操作系统、程序开发方便、功能强大、可扩展性强等特点,作为现场总线的网络节点,具有极佳的性价比.

本文依据ARM7处理器和L C/OS-II操作系统设计并实现了一种基于嵌入式系统的CAN (Controller Area Network)总线船舶机舱监控系统.

1系统的网络结构设计

本系统采用CAN现场总线和以太网(Ethernet)相结合的网络结构形式,系统的结构组成及其布局如图1所示.其中,CAN总线网络用于机舱现场数据的采集、控制输出及延伸报警,以太网用于各个监控站之间的互联.系统中的主要设备包括:

(1)CAN总线节点.

CAN总线节点是采用模块化设计、具有通信功能的智能化远程I/O单元,如图1中所示的开关量

X收稿日期:2008205208.

作者简介:徐弘升(1987-),男,江苏南京人.

图1监控系统的网络结构框图

输入/输出单元、模拟量输入/输出单元、发电机控制单元和延伸报警单元等.它们分布在机舱各处,一方面作为传感器和执行器的I/O接口,通过传感器采集数据或向执行器输出控制命令;另一方面通过CAN总线与上层以太网相连,实现上层网络对机舱设备的监视和控制.CAN总线采用双冗余结构,即图1中的CAN总线1和CAN总线2,互为热备份,当主用网络出现故障时,备用网络自动切入工作,充分保证系统工作的可靠性.CAN总线节点的数量可根据数据采集点数和控制任务的多少加以确定.

(2)监控站

监控站由PC机、操作键盘、鼠标、显示屏和打印机等组成,PC机采用Windows NT操作系统.监控站可设置在集控室、驾驶室和甲板舱室等处所.常见的配置是集控室2台,驾驶室和轮机长房间各1台,其他舱室是否设置可根据需要而定.其中,集控室的2台是必备的,其他场所为可选安装.各个监控站均配置双网卡,形成双冗余的以太网络,在图-1中分别标识为以太网1和以太网2.

集控室的2台监控站还兼有系统网关SGW (System Gate Way)的功能,使得局域网中的各个监控站能够通过系统网关SGW与CAN总线相连.通过SGW和CAN总线,监控站一方面可以接受各个CAN节点送出的机舱现场信息,另一方面还能向CAN节点发送操作指令、控制参数和程序包.

(3)延伸报警器

按照无人机舱的基本设计原则,系统在驾驶室、轮机员舱室及公共场所设有延伸报警装置.各个延伸报警器与监控站之间通过CAN总线连接,在图1中标识为CAN总线3.延伸报警装置还同时具有值班呼叫功能.

此外,系统中还应包括打印机、不间断电源和以太网集线器等辅助设备.2嵌入式CAN节点设计

基于嵌入式系统的CAN总线节点硬件结构如图2所示.节点电路主要由电源和输入/输出、数据处理、CAN总线通信、人机接口和辅助通信等4大模块组成

.

图2CAN总线船舶监测系统硬件结构示意图

电源和和输入/输出模块是与船舶机舱设备接口的部件,一方面对来自现场的各种数据进行采集输入,另一方面也要对控制信号进行输出.为保证在强干扰情况下电源的稳定和信号的正确,在硬件设计和软件设计方面均进行了抗干扰处理.

数据处理模块主要由处理器和一些存储器构成,该部分对信号进行处理,包括数据的计算、存储和转发.

CAN总线通信模块主要由CAN接口电路和数据收发电路组成,用于实现CAN节点之间以及和上层以太网之间的互联.

人机接口和辅助通信模块实现键盘操作、数据显示、状态显示和必要的辅助通信功能.键盘操作和数据显示功能使得能在现场对节点的工作状态进行查询和设置;状态显示通过指示灯指示节点的当前主要状态;辅助通讯功能包括RS485通讯接口和USB接口.

2.1存储器设计

为满足国标GB/T19056-2003要求,系统使用一片64KB的铁电存储器FM31256和一片1Mx16的FlashSST39LF160做记录仪的数据存储介质.为了有足够的数据存储及堆栈空间,配置了SRAM(IS61LV25616AL)来满足系统的需要.其中FLASH和SRAM采用了数据总线方式读写,铁电存储器采用了I2C方式读写.由于LPC2294是8位访问,在与外部地址线连接的时候,将LPC2294的A1引脚连接到Flash和SRAM的A0引脚.

I2C总线是同步通信的一种特殊形式,具有接口连线少、控制方式简单、器件封装形式小、通信速率较高等优点.在主从通信中,可以有多个I2C器件同

102大连海事大学学报第34卷

时接到I 2C 总线上,通过地址来识别通信对象.当I 2C 总线通过SD A (串行数据线)和SCL(串行时钟线)连接设备时,保证连接到总线上的任何一个器件都应有唯一的地址,这两根线必须设置上拉电阻,并且总线的速率与电阻值成反比,100Kbps 总线速率通常采用5.1k 8的上拉电阻.

2.2 CAN 总线接口电路结构

CAN 总线接口电路参考了文献[1]给出的方法,其中采用SJA1000,收发芯片采用82C250,如图3(a)所示.图3(b)给出了CAN 总线的网络连接,在逻辑上可分为应用层、数据链路层和物理层

.

图3 CAN 总线接口及网络连接

最上层为微控制器,主要负责上层应用以及系统控制,包括CAN 协议的应用层协议的实现,协调各系统设备的工作.

中间层为CAN 控制器,CAN 控制器负责处理数据帧,完成数据的打包、解包,错误界定,并提供报文缓冲和传输滤波.

最底层为CAN 收发器,主要是接口电平的转换,接口电气特性的处理.CAN 总线收发器采用一对漏极开路器件来生成CAN -H 对CAN -L 的差分信号.当受到驱动时,发送器产生显性信号,表示逻辑0.发送器没被驱动时,产生隐性信号,表示逻辑1.

2.3 CAN 通信软件设计

为了保证网络通信的实时性,CAN 通信采用中断方式,选用优先级最高的外部中断.图4为CAN 网络通信程序的结构框图.由于发送中断是在发送完成后产生,所以必须通过一种外界诱导手段进入发送例程,在此采用定时中断发送一诱导帧进行发送诱导,发送过程采用一个计数器计数,数据发送完成后,最后一个发送中断应清除,以免进入发送死循环,中断无法退出.由于诱导帧也占用总线时间,为了争取宝贵的总线时间,可以在诱导帧内加入一些

故障检测信息,以完成网络的自检功能.

图4 CAN 网络通信程序结构框图

3 PC-CAN 适配卡的设计

监控站采用的是标准PC 机,监控站与CAN 网络的数据通讯通过插在PC 扩展插槽上的CAN 总

线接口适配卡实现.适配卡主要由微处理器、数据缓冲存储器、双口RAM 、程序存储器、适配卡配置参数存储器、CAN 总线控制器、收发器以及必要的控制逻辑电路等组成.

微处理器一方面通过CAN 控制器和收发器与CAN 总线进行数据接受和发送,另一方面通过双口RAM 与PC 机进行数据交换.适配卡的工作相对比CAN 节点简单,因此采用了一片80C31作为微处理器.由于80C31的内部RAM 很少,并且没有程序存储器,因此外扩了32K 的外部RAM 和8K 的程序存储器,分别用于存储缓冲数据和系统程序.双口RAM 采用CYPRESS 公司生产的CY7C132芯片,其存储空间为2KB,它是适配卡上的CPU 与PC 机交换数据的共享存储器.适配卡配置参数存储器用于存储用户设定的配置参数,包括节点数目、地址信息、各节点数据缓冲区的地址分配以及波特率和总线定时等相关信息.配置参数存储器采用X25045芯片,它是一个具有512B 空间的串口E2PROM,此外它还兼具看门口功能和电压监视功能.CAN 控制器芯片和收发器分别采用SJA1000和82C250芯片,与CAN 节点相同.参考文献(References):

[1]邬宽明.CAN 总线原理和应用系统设计[M ].北京:航空航天大学出版社,1996.

[2]黄忠秀.船舶运输控制系统[M].北京:人民交通出版社,2000.

[3]江忠明,杜军,丁颖华.基于CAN 现场总线的船舶电站监控系统[J].机电设备,2002(1).

[4]周航慈,吴光文.基于嵌入式实时操作系统的程序设计技术[M].北京:北京航空航天大学出版社,2006.

[5]周立功.ARM 嵌入式系统实验教程[M].北京:北京航天航空出版社,2004.

103增刊 徐弘升,等:基于嵌入式系统和CAN 总线的船舶监控系统设计

相关文档