can总线技术在船舶监控系统的应用.docx

上传人:牧羊曲112 文档编号:4883399 上传时间:2023-05-21 格式:DOCX 页数:8 大小:108.67KB
返回 下载 相关 举报
can总线技术在船舶监控系统的应用.docx_第1页
第1页 / 共8页
can总线技术在船舶监控系统的应用.docx_第2页
第2页 / 共8页
can总线技术在船舶监控系统的应用.docx_第3页
第3页 / 共8页
can总线技术在船舶监控系统的应用.docx_第4页
第4页 / 共8页
can总线技术在船舶监控系统的应用.docx_第5页
第5页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《can总线技术在船舶监控系统的应用.docx》由会员分享,可在线阅读,更多相关《can总线技术在船舶监控系统的应用.docx(8页珍藏版)》请在三一办公上搜索。

1、CAN总线技术及其在船舶监控系统的应用摘 要:在CAN总线通信网络的建设中,CAN总线控制器实现了CAN总线协议的大 部分内容。首先介绍了 CAN总线的概况,简单介绍了 CAN总协议的内容,详细介绍了 有限状态自动机的组成特点以及利用有限状态自动机实现CAN总线协议的方法, 论述智能测控单元CAN通讯接口设计、CAN控制器外围硬件电路和CAN通信软 件的实现。关键词:CAN总线;CAN总线协议;控制局域网;船舶监控系统;Application of CAN bus technology in ship monitoringSystemAbstract: In the construction

2、of CAN bus communication network, CAN bus controller implements most of the contents of the CAN bus protocol. First introduced the CAN bus, introduces the general agreement of CAN content, introduces the method of characteristics of finite state automata and the use of finite state automata implemen

3、tation of CAN bus protocol, discusses the design, implementation intelligent measurement and control unit of CAN communication interface in CAN controller hardware circuit and CAN communication software.Keywords: CAN bus; CAN bus protocol; controller area network; monitoring system for ships;1前言1.1选

4、题目的及意义CAN即控制器局域网,是世界上得到广泛应用的现场总线之一。由于CAN的基 本设计规范要求有高的位速率、高抗电磁干扰性、而且能够检测出产生的任何错 误,使得它在汽车工业、航空工业、船舶工业等其他领域也得到了广泛应用。CAN 总线规范已被IS O国际标准组织制订为国际标准,CAN总线协议也是建立在国际标 准组织的开放系统互连参考模型基础上的,主要工作在数据链路层和物理层。实 际的CAN总线网络建设中,CAN总线协议一般都固化在CAN总线控中,SJA10001。 文中主要讨论在CAN总线控制器设计中CAN总线协议的实现问题。2 CAN总线协议介绍CAN总线协议主要描述设备之间的信息传递方

5、式,并为任意2个CAN仪器之间 建立兼容性,如电气特性和数据转换等方面。2.1 CAN总线的层结构CAN总线中各个层的定义与开放系统互连模型(OSI)相一致。如图1所示,CAN 被分为应用层、数据链路层和物理层3层2-3。其中数据链路层又被分为逻辑链 路控制子层(LLC)和媒体访问控制子层(MAC),各层之间相互独立且透明。每一层 只与另一设备上相同的那一层通讯,而实际的通讯则发生在每一个设备上的相邻 的2层,而各个设备之间则只通过物理层的通信介质连接在一起。CAN的规范定义了模型的最下面2层:数据链路层和物理层。应用层协议可以 由CAN用户定义成适合特别工业领域的任何方案,如已在工业控制和制

6、造业领域 得到广泛应用的标准DeviceNe,t在汽车工业中,许多制造商都拥有他们自己的应 用层标准。2.2 CAN总线协议的主要内容CAN总线协议主要定义了数据链路层的MAC子层和LLC子层,其内容主要包括:1) 报文竞争总线时的仲裁方式,定义了当2个或2个以上的节点同时开始发送 报文时总线访问权获得的问题;2) 报文传输规则,定义帧格式、帧类型、接收器与发送器之间的应答、报文 校验等;3) 错误处理,定义错误的种类、错误的处理方式等;4) 故障界定,定义节点的错误状态及错误状态间的转换关系;5) 位定时,定义物理层位传输时间片断划分、同步方式以及重新同步方式等。3 CAN总线在船舶的应用C

7、AN在船舶中的应用始于20世纪90年代初。1994年德国MTU公司成功 地研制了基于CAN的MCS-51监控系统,开创了 CAN网络船舶系统应用的新纪 元。此后,CAN网络被广泛地用于船舶的远程控制、巡回检测、电站监控以及火 灾报警系统中CAN网络在船舶控制系统中的成功应用为解决船舶设备级(传感 器、执行器、控制模块)的互联网络通信问题提供了新的数据传输协议,并由CAN 控制器硬件完成协议的功能和服务。在CAN网络中,通过一根可同时传输电源 和数据信号的总线可将所有满足CAN协议的设备挂接,并提供点对点、一点对 多点和广播式三种通信方式。针对CAN在船舶中的日益广泛应用,美国国家 海洋电子协会

8、(NMEA,national marine electronsassciation)扩展 了 原有的NMEA0813协议,形成了新的NMEA2000协议,为CAN网络在 船舶中应用制定了统一的标准和接口协议。4监控系统的基本结构在一个监控系统中,测量、控制和执行单元是必不可少的。同时,在一个 基本的通信网络中,网络硬件和协议控制器也是必需的。典型的基于CAN的监 控系统结构设计如图1所示在图1中,基于CAN的监控系统包括以下几个部分:(1)上位PC机收集总线上传输的所有信息,对系统的运行状态进行监控, 检测所有设备的运行参数的调整及越限时的声光报警等功能。并通过CAN接口 卡接入网络之中。(2

9、)智能测控单元(下位机系统)包括智能传感器、智能执行器和智能控制 器等,它们被安装在测控现场,用于直接获取现场设备的参数或者执行相应操作 和功能。智能测控单元和传统设备相比,区别在于它们本身带有支持CAN总线 通信协议的CAN控制器模块。因而,单元3不仅可与上位机系统通信,同时也 可根据系统设计需要从单元1接收数据或者向单元;2发送数据,实现现场底 层设备之间的通信,这点对于某些系统来说是非常重要的。4.1智能测控单元CAN通讯接口设计智能测控单元主要以Cygnal公司出品的C8051F040单片机为核心构成。该单片机是完全集成的混合信号系统级芯片(SOC),具有与MCS-51完全兼容的 指令

10、内核。内部采用流水线结构,机器周期由标准的12个系统周期将为1个 系统周期,峰值性能达到25MIPS。此外,C8051F040的内能还集成有CAN控制 器、高速A/D转换器等,可以简化系统设计C8051F040集成的是CAN控制器, 要使CAN总线得以运行,还需在单片机上接CAN收发器,进行电气转换,将逻 辑信号转换为平衡差分码。常用的CAN收发器为PHILIPS公司出品的 PCA82C250、高速TJA1050等。这里选用的是PCA82C250,它可以提供对总线的 差动发送和接收功能,与ISO11898标准完全兼容,有三种不同的工作方式,即 高速(最高可达1Mbps)、斜率控制和待机,可根据

11、实际情况选择。C8051F040中的CAN的工作位速率可达1Mbps,实际速率可能受CAN总 线上所选择的传输数据的物理层的限制。CAN处理器有32个消息对象,可以被 配置为发送或接收数据。输入数据、消息对象及其标识掩码存储在CAN消息RAM 中。所有数据发送和接收过滤的协议处理全部由CAN控制器完成,不需要CIP-51干预,这就使得用于CAN通信对CPU干涉最小。该CAN控制器是可实现的Bosch全功能CAN模块,完全符合CAN规范 2.0A和2.0B。CAN控制器的原理框图如图2所示。CAN核提供移位输出和输 入(CANTX和CANRX)、消息的串/并转换及其它协议相关的任务(如数据发送和

12、接 收过滤)。消息RAM可存储32个可以在CAN网络上接收发送的消息对象。CAN 寄存器和消息处理器为CAN寄存器和消息处理器为CAN控制器和CIP-51之 间的数据传送和状态通知提供接口。CIP-51可以通过特殊寄存器直接或间接访问CAN控制器中的CAN控制器 寄存器(CAN0CN)、CAN测试寄存器(CAN0TST)和CAN状态寄存器(CAN0STA)。其 它寄存器必须通过间接索引法访问。4.1.1CAN控制器外围硬件电路实现为了进一步提高系统的抗干扰能力,在CAN控制器引脚CANTX、CANRX和收 发器PCA82C250之间并不是直接相连,而是通过高速光耦6N173构成的隔离电 路后再

13、与PCA82C250相连,这样就可以很好的实现总线上各节点的电气隔离。此通信物理层电路图如图3所示。在PCA82C250与CAN总线接口部分也采用了一些安全和抗干扰措施。PCA82C250的CANH和CANL引脚各自通过一个5。的电阻与CAN总线连接, 电阻可以起到一定的限流作用,从而保护PCA82C250免受过流的冲击。在CANH 和CANL与地之间各自接一个30pF的小电容,可以起到滤除总线上的高频干扰 和防电磁辐射的能力。另外,在CANH和CANL之间并联一个15V的瞬态电压抑 制二极管(TVS),可以保护PCA82C250在瞬间高电压情况下而不受损坏。PCA82C250的RS引脚上接有

14、一个下拉电阻,电阻的大小可根据总线速率适当的 调整,其值一般在16k。-140KQ之间,图3中选用47K。C8051F040工作电压为2.7V 3.6V,其所有I/O 口允许5V(极限值5.8V) 输入,但是I/O 口输出电平为VDD,而PCA82C250为5V系统,为了能够驱动 其工作,在CANTX引脚上接一上拉电阻,其值为4.7KQ。4.1.2CAN通信软件实现下位机CAN通信部分主要完成的任务是:将检测到的数据传送给上位机或 其它下位机节点。同时,上位机可以对下位机的相关参数进行设置。由以上可知,CAN节点通信主要包括系统初始化、发送程序、接收程序等。 在本例中,系统软件采用结构化程序设

15、计方案,使其具有较好的模块性和可移植 性.4.1.3系统初始化系统初始化初始化程序主要完成对所有报文对象的初始化(一般将所有值 置零),对CAN控制器寄存器(CAN0CN)、位定时寄存器(BITREG)进行设置,还 要对发送报文对象和接收报文对象分别进行初始化。其中,位定时寄存器的设置 较为复杂,这里使用外部晶振为11.0592MHz,CAN通信速率为1Mbps。(1)初始化CAN控制器的一般步骤为:将SFRPAGE寄存器设置为 CAN0_PAGE;将CAN0CN寄存器中的INIT和CCE位设置为1;设置位定时寄存 器和BRP扩展寄存器中的时序参数;初始化每个消息对象或将其MsgVal为设置

16、为0(无效);将INIT清零。(2)初始化发送对象的过程包括设置发送消息对象的命令屏蔽寄存器;设 置仲裁寄存器;消息发送方向;指明消息长度和帧类型;选择发送消息号。部分 代码如下:void init_msg_object_TX (char MsgNum)(SFRPAGE=CAN0_PAGE;CAN0ADR=IF1CMDMSK; /指向命令掩码寄存器1CAN0DAT=0x00B2; /设为写,除了标识掩码和数据位CAN0ADR=IF1ARB1; /指向仲裁寄存器CAN0DAT=0x0000; /将仲裁ID设为最高优先级CAN0DAT=0xA000; /设置消息有效位,没有扩展ID,方向为写CAN

17、0DAT=0x0088; /数据长度为8,数据帧CAN0ADR=IF1CMDRQST; /指向命令请求寄存器CAN0DAT=MsgNum; /写消息对象号,即对哪个消息对象进行操作/ 36个CAN时钟周期后,IF寄存器中的内容将被移到CAN存储器的消 息对象中初始化接收对象与发送对象类似,只需要将消息发送方向改为接收即可。(3) CAN启动主要包括设置位定时寄存器;设置消息对象的命令屏蔽寄存 器;设置CAN允许Init位;开中断即可。代码如下:void start_CAN (void)(SFRPAGE=CAN0_PAGE;CAN0CN |=0x41; / 使能 CCE 和 INIT 位CAN0

18、ADR=BITREG; /指向位定时寄存器CAN0DAT=0x2640; /指向命令掩码寄存器1CAN0ADR=IF1CMDMSK;/设置CAN RAM为写,写数据字节,置位TXrqst/NewDat,Clr IntPndCAN0DAT=0x0087;CAN0ADR=IF2CMDMSK; /指向命令掩码寄存器2CAN0DATL=0x1F;/设置接收:读CAN RAM,读数据字节CAN0CN |=0x06; / 全局初始化 IE 和 SIECAN0CN &=0x41; / 清除 CCE 和 INIT 位(4) 数据发送和接收。配置好以上信息,C8051F040就可以接收到CAN总 线上的数据帧,

19、执行相应命令或进行相应的数据处理,将反馈信息送入CAN数据 寄存器,告知CAN发送消息号就可以将反馈数据传送到上位机处理。发送程序的 部分代码如下:void CAN_transmit (char MsgNum) ( SFRPAGE=CAN0_PAGE;CAN0ADR=IF1DATA1;CAN0DAT=Txbuffer;CAN0ADR=IF1CMDRQST;CAN0DATL=MsgNum;5结束语随着科学技术的不断进步,船舶自动化进一步向数字化方面发展,以开放性、 分散性和数字通信为特征的现场总线体系结构,能充分适应船舶控制系统的要 求。基于CAN总线的船舶监控系统具有很好的实时性,CAN现场总

20、线技术的控 制系统必将在更多的船舶上得到广泛的应用。6参考文献1饶运涛,邹继军等.现场总线CAN原理与应用技术M.第二版.北京航空航天 大学出版社,2007.张培仁,孙力.基于C语言C8051F系列微控制器原理与应用M.北京:清华 大学出版社,2006.3 李巍等.现场总线技术在机舱自动化系统中的应用J.船舶工程,2002,(2).4 蔡华锋等.C8051F040中CAN控制器的应用J.应用天地,2005,(1).5 何燕平等.基于C8051F040的CAN总线智能节点设计J.嵌入式网络应用.6 张秀萍,朱齐丹,蔡成涛.基于单片机和CAN总线的信号测量和数据传输J.应 用科技,2005, 32(9): 25-27.7 BOSCH. CAN SPECIFICATION (Version 2. 0 ) Z.BOSCH,USA, 1991.8 王少锋.面向对象技术UML教程M.北京:清华大学出版社,2004.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号