datasheet

CAN总线数据采集系统

2012-10-15来源: 21ic 关键字:CAN总线  数据采集系统  CAN节点

引 言
    在工业控制中,为了保证系统的可靠运行,需要检测周围的环境变量(如温度、气压、湿度等)。通常的做法是将分布在各处的传感器采集到的信号通过各自的线路连接到监控中心,这种方式在有效地完成检测任务的同时也造成了线路资源的极大浪费。因此,提出了简化线路布局的要求。CAN(控制器局域网)是串行通信协议,能有效支持高安全等级的分布实时控制,同时在理论上,CAN总线网络内的节点近乎没有限制。基于此,本设计将一种基于数字信号控制器的CAN总线数据采集系统作为一个CAN节点,每一个需要监控的区域放置一个CAN节点,各个节点通过CAN总线与监控中心实施通信。系统总体框图如图1所示。

1 硬件构成
    该数据采集系统由两部分构成:控制部分,包括前端信号的抗混叠滤波器和用于信号采集的12位模数转换器;CAN总线接口电路部分,由MCP2515 CAN协议控制器和MCP2551高速CAN收发器构成。系统接3路信号,TEM、PRE、RH分别为温度、气压、相对湿度。
1.1 控制部分
    dsPIC30F3013是Microchip公司生产的传感器系列数字信号控制器。该控制器采用16位(数据)改良的哈佛结构,并带有增强型指令集,包含对DSP的有力支持。工作速度最高可达30MIPS,内部集成10通道12位模数转换器,最大转换速度为200 ksps。
    工控系统中,由于各类噪声的存在,需要在信号采集端加上抗混叠滤波电路,如图2所示。

    抗混叠使用Sallen Key二阶低通滤波器。由于环境变量均为缓变量,滤波器带宽设置为30 Hz。电路中R1、R2、C1、C2的值确定了抗混叠滤波器的特征频率f0,同时也保证了在10 ksps模数转换速率下12位的分辨率。为了使在整个通带范围内信号均能很好地通过,需要调整Sallen Key滤波器的品质因数Q。Q值由式(1)决定:

 

    Sallen Key滤波器的幅频特性显示,当品质因数在0.7~0.9之间时,频率特性达到最佳。本Q值选定为0.8。
    使用dsPIC30F3013的12位ADC模块进行数据采集。对3路环境信号进行循环扫描,每完成12个采样/转换过程产生一个中断。中断过程中完成4次平均值数字滤波及相应参数的格式调整,然后,通过SPI接口传送到CAN协议控制器。
1.2 CAN总线接口电路部分
    CAN总线接口电路如图3所示。

 

    CAN协议控制器采用Microchip公司生产的MCP2515。MCP2515是带有SPI接口的独立CAN控制器,它完全支持CAN V2.0B技术规范,通信速率为1 Mb/s,包括2个接收缓冲器、6个29位验收滤波寄存器、2个29位验收屏蔽寄存器、3个具有优先级设定及发送中止的发送缓冲器、高速SPI接口(10 MHz)。
    MCP2515与MCU的接口可以灵活配置。可通过引脚(如TXORTS)与MCU的数字I/O脚直接相连,利用数字I/O的读写功能控制MCP2515 的状态;也可以直接使用MCP2515的SPI指令集来实现所有的功能。用于控制MCP2515的SPI指令集如表1所列。

    dsPIC30F3013通过SPI接口与MCP2515进行通信,dsPIC30F3013的SPI模块工作在主控模式,MCP2515工作在从动模式。dsPIC30F3013通过调用SPI指令来访问MCP2515的内部寄存器。
    MCP2551是一个可容错的高速CAN收发器,它完全符合ISO-11898标准,包括能满足24 V电压要求。它的工作速率可高达1 Mb/s。

2 软件设计
    dsPIC30F3013作为控制核心,它承担着数据采集处理和CAN通信的任务。数据采集部分的工作流程如图4所示。

    dsPIC30F3013的12位ADC模块包含一块ADCBUFO至ADCBUFF的16字双口只读缓冲区,对ADC转换结果进行缓冲。本应用采样3路信号,并用扫描输入,经过12次ADC转换后,每次转换的数据依次写入ADCBUF0至ADCBUFB。即代号为0、3、6、9的AD-CBUF中存放的是同一个信号的不同时间的采样值,将这4个缓冲器的结果相加,然后再右移2位,即可实现该信号的4次平均值数字滤波。其他两个信号存放在与之相关的 ADCBUF中,处理方法与此相同。

 

    MCP2515的SPI接口支持0,0和1,1运行模式。外部数据和命令通过SI引脚传送到器件中,且数据在SCK时钟信号的上升沿传送进去,在SCK的下降沿通过SO引脚传送出去。CS片选引脚设置为低电平后,MCP2515希望收到的第一个字节是指令/命令字节,这就要求在调用一个命令时,要先把CS 引脚拉升为高电平然后再降低为低电平。使用装载TX缓冲器指令,取消了一般写命令所需的8位地址,只需选择地址指针设置的6个地址之一,便可快速地将数据写入发送缓冲器。 [page]

    下面以MCP2515的装载TX缓冲器为例来说明数据的发送过程。装载TX缓冲器的时序如图5所示。本应用有3路信号,每一路信号都要求精确到小数点后2 位,所以经过处理后的数据格式使用浮点型。一个浮点数需要占用4字节,为了使监控中心易于管理,用包含4字节数据长度的标准数据帧来发送数据。现以装载 TX缓冲器0为例说明一次数据发送操作,如图6所示。

 

    dsPIC30F3013的SPI模块在数据发送和接收时有8位和16位两种工作模式可选。MCP2515的SPI指令、内部寄存器地址及数据都是8位的,所以在初始化SPI模块时,清零MODE16(SPI1CON<10>),将通信数据配置为8位宽度。

结 语
    本文介绍了一种以Microchip公司dsPIC30F3013为控制核心,以MCP2515为CAN控制器和以MCP2551作为CAN收发器的数据采集系统。该系统与传感器组成一个CAN节点,有效地改善了工控系统中监控部分线路布局范围广、布线凌乱、抗干扰能力差的现状,同时,使整个监控系统更易于扩展。实践证明,这种设计是可靠的、高性能的。只是系统工作在多雷电地区时,可能会发生雷击事故,在后续设计中会使用高速光电耦合器在CAN控制器与 CAN收发器之间做隔离。

关键字:CAN总线  数据采集系统  CAN节点

编辑:什么鱼 引用地址:http://news.eeworld.com.cn/qrs/2012/1015/article_12308.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:CAN现场总线在电动汽车控制系统中的应用
下一篇:基于P87C591的CAN总线超声测距系统设计方案

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

CAN总线的拓扑如何设计最安全?

距离。然而这种拓扑方式的缺点也很明显,例如:网络拓扑复杂,施工人员无法进行阻抗匹配;须增加集线器或者中继器进行网络拓扑分割。图4   树状拓扑应用如图4所示,就是一个树状拓扑的应用模型,由于总体传输距离过长,所以每隔五公里左右就要加一个中继器,保证信号的传输质量,在各个子网节点通过CANbridge连接,子网中的各节点数据通过CANbridge进行收发与过滤,这样就完成了整体网络的组网。四、环形拓扑图5   环形拓扑环形拓扑是将CAN总线首尾相接,形成环状,保证线缆任意位置断开,依然可以保证通讯。如图5所以,可以看到由于是环状结构,所以在终端电阻匹配方面采用分布式匹配方法,保证总体阻抗为60欧姆
发表于 2019-06-28
CAN总线的拓扑如何设计最安全?

庖丁解车:关于总线技术之应用与特点讲解(三)

这一期小编主要介绍什么是现场总线,以及现场总线的主要类型CAN总线和LIN总线。众所周知,现场总线应当是应用在生产最底层的一种总线型拓扑的网络。直白一点来讲,这种总线是作用于现场的控制系统、直接与所有控制(设备)节点串行相连接的通信网络。汽车电子控制的现场范围可以从车窗升降器驱动机构到仪表显示装置,也可以从汽车悬架系统到发动机电子点火系统,安全气囊系统。汽车上受控制设备以及网络所处的环境很特殊,对信号的干扰有很多方面,而不同的部分要求控制的实时性也是有所区别的。这就决定了汽车上的现场总线既有区别于一般网络的特点又有一般工业自动化控制现场总线的特点。20世纪八十年代现场总线技术才开始形成和发展,这要与微型计算机,特别是嵌入式系统的
发表于 2019-06-27
庖丁解车:关于总线技术之应用与特点讲解(三)

CAN总线如何设计拓扑才最安全?

随着CAN总线的应用越来越广泛,工程师在面对各种不同工况下,如何选择合适的网络拓扑方式就变成了一个让人头疼的问题。这里介绍主流的几种总线拓扑方式,可以帮您完成快速了解进行选择。 一、直线型拓扑 图1   直线型拓扑 直线型拓扑也叫总线型拓扑,如图1所示,所有的节点都接到同一总线上,总线上任意节点发送信息,其他节点都能正常接收。 它的优势包括:  布线施工简单;  阻抗匹配固定规则(首尾各1个120欧电阻匹配);  接线操作简单方便;  由于这些优势,在很多领域里都获得了广泛应用,可以满足大多数领域的应用要求,但是随着行业应用
发表于 2019-06-27
CAN总线如何设计拓扑才最安全?

教你设计出安全的CAN总线拓扑

摘要:随着CAN总线的应用越来越广泛,工程师在面对各种不同工况下,如何选择合适的网络拓扑方式就变成了一个让人头疼的问题。这里介绍主流的几种总线拓扑方式,可以帮您完成快速了解进行选择。一、直线型拓扑 图1   直线型拓扑直线型拓扑也叫总线型拓扑,如图1所示,所有的节点都接到同一总线上,总线上任意节点发送信息,其他节点都能正常接收。它的优势包括:●  布线施工简单;●  阻抗匹配固定规则(首尾各1个120欧电阻匹配);●  接线操作简单方便; ● 由于这些优势,在很多领域里都获得了广泛应用,可以满足大多数领域的应用要求,但是随着行业应用的扩展
发表于 2019-06-27
教你设计出安全的CAN总线拓扑

你知道吗—为什么CAN总线支线长度不能太长

概要:CAN总线网络在应用时,工程师常常会建议总线支线不要太长,那么为什么CAN总线支线不能太长,如果某些环境下必须使用长支线又该怎么办呢? 一、CAN网络的拓扑种类 控制器局域网CAN(Controller Area Network),是国际上应用最广泛的现场总线之一,最初是由德国Bosch公司设计的,为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发一种串行通信协议。CAN网络的拓扑结构主要有线形拓扑、星形拓扑、树形拓扑和环形拓扑等。 线形结构如下图所示,其特点是一条主干总线,在总线上分出支线到各个节点,其优点在于布线施工简单,阻抗匹配规则固定,接线比较方便,缺点是拓扑不够灵活,在一定
发表于 2019-06-13
你知道吗—为什么CAN总线支线长度不能太长

详解CAN总线支线长度为何不能太长

CAN总线网络在应用时,工程师常常会建议总线支线不要太长,那么为什么CAN总线支线不能太长,如果某些环境下必须使用长支线又该怎么办呢? 一、CAN网络的拓扑种类控制器局域网CAN(Controller Area Network),是国际上应用最广泛的现场总线之一,最初是由德国Bosch公司设计的,为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发一种串行通信协议。CAN网络的拓扑结构主要有线形拓扑、星形拓扑、树形拓扑和环形拓扑等。 线形结构如下图所示,其特点是一条主干总线,在总线上分出支线到各个节点,其优点在于布线施工简单,阻抗匹配规则固定,接线比较方便,缺点是拓扑不够灵活,在一定程度上影响通讯距离
发表于 2019-06-13
详解CAN总线支线长度为何不能太长

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved