CAN总线网络即控制器局域网络(Controller Area Network,CAN),是由德国BOSCH公司在20世纪80年代为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,可实现点对点、一点对多点及全网广播3种方式的发送和接收数据。传输的数据采用CRC校验,能够有效地降低误码率。CAN总线的通信介质可以是双绞线、同轴电缆或者光导纤维,通信速率可达1 MB/s。由于具有通信速度快、可靠性高、价格便宜等特点,使CAN总线成为应用广泛的现场总线之一。
当前,市面上已有多种CAN总线的分析测试工具,如广州周立功公司的CANalyst,德国Vector公司的CANoe等。这些软件工具具有较强的功能,但对于一些小型CAN网络开发组件来说,其附加费用较大。基于此考虑,本文提出了一种功能完善、操作简洁的CAN网络监控系统设计方案,可达到对CAN总线运行情况监测分析的目的。
1 设计需求
通过对一些通用CAN总线监控软件的分析,并结合设计提出的实现一个较为通用的CAN总线监控软件的要求,可以将此软件的设计需求总结如下:
(1)具有适应CAN控制器各种工作模式的功能,用户只用稍加配置,便可以将此软件用于具体的CAN总线网络的监控中。
(2)具有用户自定义数据帧格式及其解析方式的功能,以使此软件可以满足不同环境下的使用要求,对用户所需要的数据内容进行解析。
(3)具有数据可视化显示功能,如数据表展示数据,图形绘制数据曲线等方式。使用户可以较为直观地对网络数据和状态进行监控。
(4)具有将通信中的数据信息进行分类的功能,方便用户对数据的分析。
(5)具有查看历史数据的功能,将历史数据记录下来,并提供一种方式实现对历史网络状态的重现,方便用户调试。
2 方案设计
2.1 功能
CAN总线监控软件需具备的功能包括:CAN总线通信(数据接收与发送)、数据处理(数据解析与存储)和数据应用(将数据展示为图表,数据回放等)。功能结构如图1所示。
2.2 功能模块关系
CAN总线的监控过程即是对通信数据的处理过程。软件首先通过与CAN总线上的节点通信来接收和发送数据,然后将这些数据记录在文件中,同时对数据进行分析处理,软件根据由用户所设定的数据格式对数据解析,最后是对数据信息的应用,根据用户的设定,可以对数据进行表展示,曲线绘制或者历史回放。各功能模块关系如图2所示。
2.2.1 通信
通信是监控软件获取数据信息的方式,也是软件的基础。它的主要功能是接收和发送CAN总线中节点的数据,是数据解析和应用的来源。监控节点需要连接到CAN总线网络中,如图3所示。
2.2.2 数据记录
数据记录模块是将接收或者发送的数据以一定的形式记录在文件中,用以对数据进行后期分析,或者通过回放功能复现CAN总线状态。为能达到复现的目的,此记录文件需记录的信息包括原始数据包和收发时间,时间信息具体内容为通信数据的时间间隔,基于此回放功能更加真实模拟网络中的状态。记录内容如图4所示。
2.2.3 数据分析
数据分析模块是整个监控软件的核心,它负责按照用户设定的解析模式将收发数据报解析为可以理解的信息值。每一帧数据的解析过程可以分为以下3步:(1)定位。通过数据帧格式来定位每个信息在数据包中的起始位置,将数据包分组。(2)截取。通过起始位置和数据长度,可以截取到所需的数据。(3)转换。由于截取所得到的数据为原始数据,所以需要将其转换为可以理解的信息。数据的分析过程如图5所示。
2.2.4 数据应用
数据应用是指软件对用户所提供的数据服务。本软件实现了以下几个功能来应用数据:(1)数据表。用于向用户提供所需要的信息,展示总线数据。(2)绘图。根据用户需要对某些需要显示数据变化的内容进行曲线绘制。(3)回放。将存储于文件中的历史数据按照收发时间顺序重新播放,以重现网络状态,它为用户提供了一种调试网络的简单方式。
2.3 关键技术
2.3.1 数据解析
鉴于CAN总线的应用广泛,从汽车到工业现场的应用,所需要监测的信息不同,故软件对数据的解析方式也不相同。数据的解析过程需要用到用户所定义的数据格式,这里使用XML文件来描述数据帧的内容。如图6所示,帧ID为0x01的数据内容包:一个16位数据表示的温度值,信息类型为整数;一个16位数据表示的压力值,信息类型为正整数。
2.3.2 数据回放
回放功能是将历史数据及当时的网络状态按照原过程如实演示,使用的数据源是从历史记录文件中获取的。记录文件由记录模块将总线数据按照时间顺序写入文件中生成,使用回放功能是将所记录数据按顺序读入,按照记录时间模拟当时的顺序实现回放功能,用户可通过应用功能再次使用数据表、绘图来呈现数据。
3 测试
在实际应用中,将监控节点接入CAN总线网络中,完成软件设定后,便可开启对总线的监控。使用数据表显示所测得信息的正确性,并验证通信是否正常。所生成的数据表如图7所示,显示信息来自节点1和节点3,以及发自它们的温度和压力值。使用绘图功能将此温度变化绘制为曲线图形,如图8所示。
4 结束语
本文提出了一个CAN总线网络监控软件的方案,并描述了此软件的设计方法和所使用到的关键技术。依据此方案,实现了一个较为通用的CAN总线监控软件,它可通过分析由用户设定传输数据格式的方式,自动对数据进行解析,可满足大多数CAN总线的监控需求。在应用中,它可帮助用户调试和测试网络,有效提高工作效率。通过实际测试,验证了此方案的可行性。
但是,本文提出的设计方案也有局限性和进一步提升的空间。在后续研究和设计中,可以将数据融合技术逐步加入到软件对数据的分析中,并可将此工具演化为一种通用的软件中间件,以便进行更多的应用。
关键字:CAN总线 监控软件 数据分析
引用地址:
CAN总线网络监控软件设计
推荐阅读最新更新时间:2024-05-02 22:47
CAN总线在分布式变电所自动化系统中应用
CAN总线在分布式变电所自动化系统中应用 随着微机和电子技术的飞速发展,越来越多的智能装置在变电所中得到应用,极大地提高了变电所测量和控制系统的自动化水平。变电所强电磁干扰的工作场所,对自动化设备尤其是对其中涉及到的通信网络的抗干扰能力提出了很高的要求。根据变电所中开关设备和互感器的安装方式、环境以及对系统自动化程度的不同要求,整座变电所的测量控制系统一般采用集中与分散结合的方式构成,控制既可以做到集中控制(在主控制室中的集中控制台或屏上进行),也可对各开关进行分散控制(由安装在开关设备跟前的控制箱完成)。 变电所自动化系统主要由各种开关的智能控制单元、电气参数测量单元和继电保护装置构成,在这些智能化设备之间存在着信息交
[模拟电子]
CAN总线在家庭智能化控制系统中的应用研究
O 引言 家庭智能控制系统的主要功能集中在家庭安全报警、电话或电脑远程控制、红外遥控、自动抄表控制、灯光和湿度控制等方面。根据智能终端设备传输数据和功能的不同可以把它分成两类子网,一类是传输数据以数据量小、速率低的家庭自动化控制设备;另一类是传输多媒体信息、(视频、音频信号),信号量大、速率快,如视频会议、音频点播等。家庭智能终端设备可以采用总线结构组建成有线子网和无线子网,因各设备分布在家中不同的地方,对于组建成有线子网布线比较复杂,但是如果采用PLC与CAN总线构建成网络,将降低成本。 CAN(Controller Area Network,控制器局域网)是德国Bosch公司在20世纪80年代初为汽车检测控制而开发
[工业控制]
CAN总线在流光放电等离子体烟气脱硫监控系统的应用
随着我国经济的发展,能源消费带来的环境污染也越来越严重。燃煤烟气中排放的二氧化硫和氮氧化物占全国总排放量的90% ,是造成大气污染、酸雨和温室效应的主要根源。目前世界上比较先进的烟气脱硫(Flue Gas Desulphurization,FGD)技术中比较典型的方法有湿式石灰-石膏/氨催化还原法、电子束/氨法、电晕放电/氨法,而流光放电等离子体烟气脱硫技术是电晕放电法中具有强大市场潜力和应用前景的烟气脱硫新工艺。本文针对这种技术,应用CAN总线设计了一套微机监控系统,使整个烟气脱硫过程经济、高效、安全可靠。
1、流光放电等离子体烟气脱硫监控系统介绍
流光放电等离子体烟气脱硫的原理是利用高频高压
[嵌入式]
CAN总线在专用设备中的应用
0 引言
CAN总线技术在汽车行业、工程机械等领域都已经普遍应用,由于其高性能、高可靠性及独特的设计,越来越受到人们的重视,国际上一些著名的公司都在自己的产品上广泛采用CAN总线技术。CAN已经形成国际标准(IS011898),并已成为工业数据通信的主流技术之一。近年来国内很多汽车行业、专用设备、通信、工程工业、医疗器械等行业也运用这一技术,这样大大提高了设备整机的可靠性、可检测和可维修性,同时提高了智能化水平。本文主要讲述CAN总线在专用设备一高空作业平台控制系统中的应用。
1 设备CAN总线系统网络结构
高空作业平台控制系统采用的是美国SAUER DANFOSS的MC050控制器。此控制器是行走机械专用控制
[嵌入式]
stm32的can总线理解及应用——程序对应stm32f103系列
CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。 它的通信速度较快,通信距离远,最高1Mbps(距离小于40米),最远可达10千里(速率低于5Kbps)。在总线空闲时,所有单元都可以发送消息(多主控制),而两个以上的单元同时开始发送消息时,根据标识符(Identifier 以下称为 ID)决定优先级。ID 并不是表示发送的目的地址,而是表示访问总线的消息的优先级。两个以上的单元同时开始发送消息时,对各消息ID 的每个位进行逐个仲裁比较。仲裁获胜(被判定为优先级最高)的单元可继续发送消息,仲裁失利的单元则立刻停止发送而进行接收工作。 CAN协议经过ISO标准化
[单片机]
用PIC18F458的CAN模块实现CAN总线通讯
CAN(Controller Area Network)即 控制器 区域网,是一种主要用于各种 设备 监测及控制的网络。CAN 具有独特的设计思想, 良好的功能特征和极高的可靠性,现场抗干扰能力强。其在国内外工业控制领域已经被广泛应用, 成为最有发展前途的现场总线之一。 美国微芯公司的PIC18F458 单片机集成了CAN 通信接口,执行Bosch 公司的CAN2.0A/B 协议。它能支持CAN1.2、CAN2.0A、CAN2.0B 协议的旧版本和CAN2.0B现行版本。使用PIC18F458 单片机的嵌入式系统, 可以很方便的利用CAN 总线与外界进行数据交换。它的优点是电路接口比较简单,只需很少的外围电路就可实现CA
[单片机]
基于MSP430系列单片机的CAN总线接口转换卡设计
MSP430系列单片机是一种超低功耗的混合信号控制器,具有丰富的片内外设,有极其广阔的应用范围。介绍基于MSP430系列单片机的RS232/RS485 CAN总线通信转换接口的设计与实现,重点讨论其硬件配置和软件功能,给出电气原理和软件流程。 关键词:MSP430;CAN总线;接口;转换卡;设计 1 引言 控制器局域网(Controller Area Network,简称CAN)是德国奔驰公司20世纪80年代为解决汽车众多控制设备与仪器仪表之间的数据交换开发的一种串行通信协议。它作为现场总线的一种广泛应用于各种工业现场,根据不同的需要或以主从方式、或以多主方式工作。CAN总线使用的通信介质为双绞线或其他电缆,传输速率可达lM
[单片机]
基于CAN总线汽车车身视觉检测站的研究
摘要: 研究CAN总线和多主机控制在汽车白车身视觉监测站中的应用;提出以采用摩托罗拉MC68HC05X16和微机为主机的多主机分布式控制系统;介绍控制网络的物理层接口及有关硬件,并对通信部分进行较为详细的研究。
关键词: 视觉检测 三维测量 分布式控制 控制器局域网 数据通信
前言
汽车车身视觉检测站是用于测量车身关键点的三维空间坐标的大型的专用检测系统。它由机械及定位系统、三维视觉传感器系统、测量控制与接口系统、标定系统以及计算机软件五大部分组成。主要方法采用结构光传感器,经标定系统标定后,通过控制系统选取被测点,采集图像,结合视觉检测算法,求出被测点坐标参数。为进行测量,必须把计算机与
[应用]