基于CAN总线智能节点设计

合集下载

基于CAN总线的智能节点设计

基于CAN总线的智能节点设计

基于CAN 总线的智能节点设计朱悦涵,林立,邵明(福建工程学院福建福州350108)摘要:应用51单片机为控制核心结合其他的器件设计了一种能连接于CAN 总线上的智能节点。

通过单片机控制CAN 总线控制器SJA1000,并进一步通过CAN 总线收发器PCA82C250,实现该智能节点与CAN 总线的通信。

此外通过对MCS-51单片机的I/O 进行相应的扩展,使该智能节点具有了8输入和8输出的控制端口。

最终完成该智能节点并通过实际测试,验证了其实用性。

关键词:CAN 总线;智能节点;MCS-51;SJA1000中图分类号:TP336文献标识码:A文章编号:1674-6236(2012)24-0090-03Design of intelligent node based on CAN busZHU Yue -han ,LIN li ,SHAO Ming(Fujian University of Technology ,Fuzhou 350108,China )Abstract:The thesis introduces a design of a kind of an intelligent node ,which is used to communicate with CAN bus.Single -chip microcomputer MCS -51is applied as a central controller ,of which other devices operate under control.Applying the Single -chip microcomputer to control CAN bus controller SJA1000realizes the communication with CAN bus ,through the CAN bus transceiver PCA82C250.Through I/O extension of MCS -51MCU ,the intelligent node has the control port of eight inputs and eight outputs.At last the practicability of the intelligent node has been verified by the practical tests.Key words:CAN bus ;intelligent node ;MCS-51;SJA1000收稿日期:2012-10-09稿件编号:201210026作者简介:朱悦涵(1981—),男,福建福州人,硕士,助教。

手把手教你设计CAN总线系列讲座(2)

手把手教你设计CAN总线系列讲座(2)

手把手教你设计CAN总线系列讲座(2)—CAN总线智能节点的设计在远程测控系统中,都要通过传感器或其他测量装置获取环境或相关的输入参数,传送到处理器,经过一定的算法,做出相应的控制决策,启动执行机构对系统进行控制,基于CAN总线的测控系统将单个测控设备变成网络节点,将控制系统中所需的基本控制、运行参数修改、报警、显示和监控等功能分散到各个远程节点中。

因此总线上的节点应该具有总线通信功能和测控功能,这必然离不开微处理器。

我们把具有这类功能的节点叫智能节点。

1 CAN网络节点结构和SJA1000的应用结构图一般把每个CAN模块分成不同的功能块。

这里以分布式恒温控制节点构成的CAN图1 CAN总线控制网络结构图控制网络为例(如图1所示),分析一下基于CAN总线的分布式网络节点的结构。

CAN节点由微处理器、CAN控制器SJA1000、光耦6N137模块和CAN驱动器82C50构成。

CAN控制器SJA1000执行在CAN规范里规定的完整的CAN协议,用于报文的缓冲和验收过滤,负责与微控制器进行状态、控制和命令等信息交换;在SJA1000下层是CAN收发器PCA82C50,它为CAN控制器和总线接口,它控制从CAN控制器到总线物理层或相反的逻辑电平信号,提供对总线的差动发送和对CAN控制器的差动接收功能。

光耦6N137起隔离作用。

图2 SJA1000的结构图所有这些CAN模块都由微处理器控制,它负责执行应用的功能,负责控制执行器(比如加热设备)、读传感器(比如温度)和处理人机接口。

如图2是SJA1000的应用结构图。

在CAN规范里,CAN核心模块控制CAN帧的发送和接收。

接口管理逻辑负责连接外部微处理器,该控制器可以是单片机、DSP或其他器件。

经过SJA1000复用的地址/数据总线访问寄存器和控制读写选通信号。

SJA1000的发送缓冲器能够存储一个完整的报文(扩展的或标准的)。

当微处理器初始化发送接口管理逻辑,CAN核心模块就会从发送缓冲器读CAN报文。

基于C8051F550的CAN总线智能节点的设计

基于C8051F550的CAN总线智能节点的设计

f 计 数 器模 块 1等 。本 文 重 点 就 模 拟 量 输 入 模 块 如
和 开 关 量 输 入 模 块 的设 计 。采 用 具 有 C N接 口的 A
2 智 能 节 点 硬 件 设 计
传统 的从节 点设 计 是将 C U AN P 与C 总线 控 制器
C 0 1 5 0 片机 作为 系 统设 计 的从 节 点 ,用 来 采 85 F 5 单 集模 拟量 和 开 关 量 。实 现 与 上 位 机 中央 控 制 器 的
通信
1 C N总 线通 信 网络 系统 A
如 图l 所示 ,本设 计 中通 过 带有 终端 器 (2 欧 10
B se C N全 功能 的C N 块 实 现 .符 合 C N . ohh A A 模 A 20 B
电 阻)的 通信 介 质 ( 绞 线)将 上 位 机 和底 层 模 块 双
连接 起 来 。 实 验 中 ,终 端 电 阻 和 双 绞 线 阻 抗 的 匹
协议 。工作 位 速率 可 达 1 b 。控 制 器包 含 有 一个 Mp s C N内核 ,消息 缓 冲 区 ,报文 处理 状态 机 和C N A A 控 制 寄 存 器 。通 信 控 制 器 有3 个 消 息对 象 ,可 以配 2
达 250 0 V的 直 流 电 压 。输 入 级 兼 容 33 . V和 5 V的
C M1 5 收发器 T 00
+ +
千 +
+ +
c O 15O 8 5 F 5 单片机 ‘ 8 5F 5 单片机 P C 0 5 0 1 CA8 C 5 收发器 2 20
行业 扩展 到 过 程 工 业 ,机 械 工 业 ,机 器 人 和 楼 宇
G 5 7 ,使P 机 直接 通 过U B 口就可 连人 C N YB 0 ) C S接 A

基于SJA1000的CAN节点设计v1.0

基于SJA1000的CAN节点设计v1.0

基于SJA1000的CAN节点设计文件信息类别内容关键词SJA1000,CTM系列隔离CAN收发器基于SJA1000的CAN节点设计摘要修订历史版本日期原因Rev X1 2006-12-13 内部制定初稿Rev 1.0 2006-12-15 第一次发布目录1. 基于SJA1000的CAN节点设计 (3)1.1 硬件设计电路 (3)1.1.1收发器隔离电路设计 (3)1.1.2 CAN总线接口设计 (4)1.2 软件设计 (5)程序清单1.1 定义片选地址 (5)程序清单1.2 初始化SJA1000 (5)程序清单1.3 发送报文 (6)2. 应用实例 (7)3. 声明 (1)1.基于SJA1000的CAN节点设计1.1 硬件设计电路CAN总线是一种最有前途的现场总线,因其优异性能而在工业控制、汽车电子、安防等方面得到广泛应用。

设计CAN-bus通讯接口是很重要的一个环节,设备的正确运行与其密切相关。

如图 1.1给出了一个实际的CAN-bus通讯单元电路图,电路结构为:MCU(P89C52)+CAN控制器(SJA1000)+隔离CAN收发器(CTM Module)。

图 1.1 CAN-bus通讯单元原理图如图 1.1所示,整个系统电源采用+5V电源输入,上电复位芯片(CAT810L)可保证上电时正确的启动系统。

微处理器采用PHILIPS的P89C52单片机,该系列单片机是80C51微控制器的派生器件,采用先进的CMOS工艺制造,指令系统与80C51完全相同。

CAN控制器采用PHILIPS的SJA1000,SJA1000是一款独立的控制器,用于汽车和一般工业环境中的控制器局域网络。

它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品。

而且,它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN 2.0B 协议,是目前市面上用的最广的一款CAN控制器。

基于单片机的智能传感器CAN总线接口硬件设计

基于单片机的智能传感器CAN总线接口硬件设计

基于单片机的智能传感器CAN总线接口硬件设计随着智能化技术的不断发展,人们越来越关注智能系统的搭建,传感器技术的应用也越来越广泛,单片机技术更是在这个背景下广受关注。

在实现智能传感器的联网和信息处理方面,CAN总线作为一种主要网络协议,已经被广泛应用。

在这种情况下,智能传感器必须具有相应的CAN总线接口设计。

本文将介绍基于单片机的智能传感器CAN总线接口硬件设计。

1、 CAN总线介绍CAN(Controller Area Network)总线是一种串行通信协议,主要用于多个控制节点之间的实时数据传输。

CAN总线的通讯速度高,误码率低,具有自适应性等特点。

CAN总线的应用包括工业控制系统、汽车电子控制系统等。

2、硬件设计原理基于单片机的智能传感器CAN总线接口硬件设计需要根据自己的实际需求进行选择。

以STM32单片机为例,STM32单片机的CAN总线接口包括CAN1和CAN2,这两个接口在硬件电路上都有Rx和Tx引脚和节点电阻。

3、硬件设计流程(1)选择STM32单片机在选取单片机的时候,需要根据实际应用场景来选择。

STM32单片机有许多系列,每个系列又有不同的型号,不同型号的单片机内置了不同的外设,需要根据实际需求进行选择。

同时,要根据芯片性价比、性能、功耗等因素进行考虑。

(2)CAN总线选择在硬件设计中,需要选择CAN总线芯片,这个芯片需要支持CAN2.0A和CAN2.0B协议,并且需要支持高速通讯。

同时,要注意芯片的封装和额定工作温度等特性。

(3) CAN总线硬件连接在硬件连接中,需要将CAN总线芯片的Rx和Tx引脚和单片机的CAN1或CAN2接口相连,同时还需添加适当的电流限制电阻和终端电阻。

(4) CAN总线软件调试最后,需要对硬件电路进行软件调试,包括使用标准的CAN总线协议进行通信、CAN总线的数据传输、接收和发送数据、调试CAN中断等。

4、总结基于单片机的智能传感器CAN总线接口硬件设计需要根据实际需求进行选择,在硬件设计中需要选择合适的单片机、CAN总线芯片,并进行正确的硬件连接。

基于AT90CAN128的CAN总线数据采集节点设计

基于AT90CAN128的CAN总线数据采集节点设计

45 真 空中高压 电极的单次脉冲沿面 闪络耐压 .
程焰林 向 伟 雷杨俊
氧化铝陶瓷以其优 良的机 电性能在特种电真空器件中被广泛应用,起着高压绝缘、真空密封以及支撑 固定的作用。随着脉冲功率技术和 电真空器件技术的迅速发展,对氧化铝陶瓷的耐压性能提出了更高的要 求 。实践表明,在真空条件下,氧化铝陶瓷绝缘子耐压水平往往低于其体击穿强度和相 同尺寸的真空间隙 的耐压水平,其原因就是绝缘子表面发生了沿面闪络击穿。针对真空器件在特定的环境中,氧化铝陶瓷绝 缘子表面绝缘能力的提高已成为电真空领域所关注和亟待解决的问题之一。电极作为高压的加载对象 ,其 结构上的变化对绝缘子沿面耐压有着至关重要的作用 。国外早在 2 世纪 6 年代就有相关报道,但在单次 O 0 微秒级脉冲加载电压下缺少实验研究和系统分析, 文中对几种新型电极结构进行 了场强仿真计算和实验研
有 空余 的发送 Mo b的情 况下 ,将 转换好 的数字信 号写入 某一 发送 Mo b中 ,然后 由 C NC MO A D B寄存 器来 控制 发送动 作 ,将 消息发送 出去 。若 多于 8 B,由于 C N 的一帧报 文最 多 只能传 送 8 A B的数据 ,所 以只 能 把所 有 的数 据 分成几 个标准 帧发送 到 总线上 。发送 与接 收流程 如 图 3所 示 。
C N 控制 器复位 C NCO A A , N ̄ I< WR S < S E) 清 空 所有 Mo 、Mo 态寄存 器 、I 寄存 b页 b状 【 ) 器、屏蔽码寄存器、C N数据信息寄存器 A
【丝 塞 J 塑 壁
设置 C N计时器预分频 C NT O A A C 设置波 特 率、采 样 点
主要 介绍 了由带 C N20 B协 议 的微控 制 器 A 9C N18 高速 C N 隔 离收发 器 C M 15 A . A() T0A 2及 A T 00组成 的

基于CAN总线的车载智能终端硬件设计

基于CAN总线的车载智能终端硬件设计

编程 F ah存 储 器 , 用 高 密 度 非 易 失性 存 储 器 技 ls 采
术 制造 , 与工业 8 C 1产 品指 令 和引脚 完全兼 容 。 O5
1 2 2 CAN 控 制 器 的 选 择 . .
S A1 0 是 一 款 独 立 的 C J 00 AN 控 制 器 , 泛 应 广 用 于汽车 和一般 工业 环 境 中 的控 制器 局域 网络 。它
内的节点 数 在理 论上不 受 限制 。另外 , AN 总线 的 C 通 信介 质多样 , 以是 双绞 线 、 可 同轴 电缆 或光 纤 。在
C AN 收 发 器 是 C AN 协 议 控 制 器 和 物理 总线
成本 上 , 基于 C AN 的车 用 总 线 具 有 较 强 的 市 场竞
争力 , 普遍 认为 是 车载 网络 领 域 最 有 发 展 前 途 的 被
之 间 的接 口, 为总 线提 供 差动 的发 送 和接 收功 能 , 是 C AN 系统 中的 必 须 设 备 。该 智 能 终 端 选 用 常用 的
C AN 收 发 器 即 P A8 C 5 C 2 2 0作 为 C AN 控 制 器 S AI 0 J O 0和 C AN 总 线 间 的 接 口, 现 对 总 线 的差 实
摘 要 : 据 车 载 智 能 终 端 的 需 要 , 计 了 基 于控 制 器局 域 网 C 根 设 AN 总 线 的 车 载 智 能 终 端 硬
件 电路 , 并对 信 号 传 输进 行 抗 干 扰 处 理 ; 拟 实验 表 明 所 设 计 的 系统 能 够 正 确 读 取 C N 帧 报 文 信 模 A
随着 汽车工 业 的发展 , 车 变得 越来 越 电子 化 、 汽
智 能化 、 网络化 , 电子 设 备及 线 路越 来 越 多 。该 文拟 设计 基 于控 制 器 局 域 网 C N( o t l rAraN t A C nr l e e— oe w r) ok 总线的汽 车智 能终 端 , 汽 车上 的多路 传感 器 将 信号通 过 C N 总线传 输 到智 能终 端 上 , A 以实 现对 车

基于CAN总线的智能控制器设计

基于CAN总线的智能控制器设计

基于CAN总线的智能控制器设计随着科技的不断发展,智能控制器在工业自动化中的应用越来越广泛。

CAN(Controller Area Network)总线作为一种高效可靠的通信协议,被广泛应用于智能控制器的设计中。

CAN总线是一种串行通信协议,具有高速传输、抗干扰能力强等特点。

它最初是由德国BOSCH公司提出的,用于汽车电子系统的通信。

随着其优越性能的认可,CAN总线逐渐在其他领域的智能控制器中得到应用。

智能控制器是一种能够根据外部环境和用户需求自主调节的控制设备。

它通过传感器采集环境信息,并通过CAN总线与执行器进行通信,实现对设备的控制。

在智能控制器中,CAN总线充当了数据传输的核心角色。

基于CAN总线的智能控制器设计包括硬件和软件两个方面。

在硬件设计中,首先需要选取合适的微控制器作为控制器核心,然后进行外围电路的设计,包括CAN总线收发器、传感器接口电路、执行器驱动电路等。

这些电路的设计需要考虑到CAN总线的特性,确保数据的稳定传输。

在软件设计中,首先需要编写CAN总线通信协议的驱动程序,实现与其他设备的通信。

其次,根据具体的控制需求,设计相应的控制算法,通过CAN总线将控制指令发送给执行器。

同时,还需要编写数据采集程序,将传感器采集到的数据通过CAN 总线发送给上位机或其他设备。

基于CAN总线的智能控制器设计具有许多优势。

首先,CAN总线具有较高的传输速率和较低的误码率,可以满足实时性和可靠性要求。

其次,CAN总线支持多节点通信,可以实现多个智能控制器之间的数据交互。

最后,CAN总线的抗干扰能力强,可以在复杂的工业环境中稳定运行。

综上所述,基于CAN总线的智能控制器设计是一种有效的解决方案。

它通过充分利用CAN总线的特性,实现了智能控制器的高效、可靠和稳定运行。

随着科技的不断发展,基于CAN 总线的智能控制器设计将在工业自动化中发挥更加重要的作用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于CAN总线智能节点设计The design of intelligent nodes Based on CAN Bus李光忠1,吴士涛2LI GUANG-ZHONG,WU SHI-TAO(1. 山东农业大学信息科学与工程学院,山东 泰安 271018;2. 山东科技大学,山东 泰安 271000)(1. College of Information Science and Engineering, Shandong Agriculture University,Taian 271018 China;2. Shandong University of Science andTechnology,Taian 271000 China)摘要:CAN总线是一种应用极为普及的现场总线。

文中提出了一种CAN总线通信接口的设计方案。

CAN总线智能节点用单片机AT89S52和SJA1000控制器为核心组成。

分别从硬件电路设计和SJA1000软件初始化、发送、接收设计方面进行了分析,实现了相应的网络控制功能,具有较高的实用性。

关键词:CAN总线,智能节点,系统设计中图分类号:TP336 文献标识码:BAbstract:Can-Bus is popular as a field Bus.In this paper,a new modern CAN-bus communication interface is designed. Intelligent node of CAN-bus is mainly made up of MCU AT89S52 and SJA1000 controller.The hardware principle and the programming methods for initialization,transmitting and receiving modules of SJA1000 are introduced.The design can perform the control function.It is a practical design.Key words:CAN Bus,Intelligent node,system design0 引言CAN是控制器局域网络(Controller Area Network)的简称,是一种有效支持分布式控制或实时控制的串行通信网络。

CAN总线作为智能设备的联系纽带,把挂在总线上作为网络节点的智能设备连接为网络系统,并进一步构成自动化系统,实现基本控制的综合自动化系统。

本文给出了一种基于AT89S52和SJA1000的CAN总线智能节点设计方案,并对软硬件设计进行了相应的说明。

1 系统硬件设计智能节点能够通过监测设备采集的现场数据,并根据接收到的命令或者主动将数据发送到CAN总线。

通过事先设置验收码和验收屏蔽码可以控制智能节点从总线上接收数据或命令。

CAN总线系统智能节点硬件电路由3部分构成:微控制器AT89S52、独立CAN通信控制器SJA1000和CAN总线驱动器82C250。

微处理器AT89S52负责SJA1000的初始化,通过控制SJA1000实现数据的接受和发送等通信任务。

SJA1000作为独立CAN总线控制器具有完成CAN高性能通信协议所要求的全部必要特性。

使用简单总线连接的SJA1000可完成物理层和数据链路层的所有功能。

其硬件与软件设计包括与基本CAN工作模式(BasicCAN)兼容,同时它新增加的增强CAN工作模式(PeliCAN)可以支持CAN 2.0A及CAN 2.0B协议。

CAN总线收发器PCA82C250提供协议控制器和物理传输线路之间的接口。

它可以用高达1Mb/s的速率在两条有差动电压的总线电线上传输数据。

硬件电路如图1所示。

图1.节点硬件电路图SJA1000的AD0-AD7连接到AT89S52的P0口,cs连接到AT89S52的P2.7。

P2.7为0时CPU片外存储器地址可选中SJA1000,CPU通过这些地址可对SJA1000执行相应的读/写操作。

SJA1000的R D、W R、ALE分别与AT89S52的对应引脚相连,IN T接AT89S52的0IN T,AT89S52可通过中断的方式访问SJA1000。

AT89S52复位是高电平有效而CAN通信控制器SJA1000的复位是低电平有效,所以两者之间加反相器。

AT89S52与CAN通信控制器SJA1000共用一个12MHz晶振。

设计中在AT82C250与CAN总线接口上采用一定抗干扰措施。

在82C250的CANH和CANL引脚上各自通过一个5Ω的电阻与CAN总线相连,电阻可起到一定的限流作用,保护82C250免受过流的冲击。

CANL和CANH与地之间并联了两个30PF的小电容、两个防雷击管,可以起到滤出总线上的高频干扰和防止电磁辐射和防止瞬变干扰的措施。

2 智能节点的软件设计CAN总线智能节点的软件设计包括三部分:CAN节点初始化、报文发送和报文接收。

2.1 初始化过程SJAl000的初始化只有在复位模式下才可以进行,初始化主要包括工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器(AMR)和接收代码寄存器(ACR)的设置、波特率参数设置和中断允许寄存器(IER)的设置等。

在完成SJAl000的初始化设置以后,SJAl000就可以回到工作状态,进行正常的通信任务。

初始化的工作主要针对SJA1000相应寄存器内容的赋值来完成一定的功能设计。

SJAl000采用增强CAN工作模式(PeliCAN)。

2.2 发送过程发送子程序负责节点报文的发送。

发送时用户只需将待发送的数据按特定格式组合成一帧报文,送入SJAl000发送缓存区中,然后启动SJAl000发送即可。

SJAl000报文的发送主要有两种方式:中断发送方式和查询发送方式。

该监测系统中采用查询方式发送报文。

2.2.1单片机发送程序发送程序框图如图2所示。

图2.CPU所完成的发送程序框图2.2.2SJAl000完成的工作总线控制器SJAl000在接收到置位“发送请求命令”(CMR.0=1)后自动完成的工作,具体步骤如图3所示。

图3.发送时SJAl000自动完成的动作框图2.3 接收过程接收子程序负责节点报文的接收以及其他情况的处理。

接收子程序比发送子程序要复杂的一些,因为在处理接收报文的过程中,同时要对诸如总线关闭、错误报警、接收溢出等情况进行处理。

SJAl000报文的接收主要有两种方式:中断接收方式和查询接收方式,两种接收方式的编程思路基本相同。

该监测系统中采用中断方式接收报文。

采用中断方式接收报文之前已在初始化程序中使能CAN控制器的接收中断。

2.3.1 SJAl000完成的工作CAN控制器总线控制器SJAl000自动完成报文接收工作,如图4所示。

图4.接收时SJAl000自动完成的工作框图CAN控制器总线控制器可存储最多64个字节的报文,而在一个查询周期内最多可接收十三个字节(其中八个数据字节)的报文。

2.3.2 单片机报文接收单片机报文接收子程序框图如图5所示。

图5.CPU接收时完成的程序框图3 结束语CAN总线具有较强的纠错能力,适用于高噪声环境,具有较远的传输距离,广泛应用于计算机测控领域,该设计作为CAN总线节点的一个模块,能够和计算机以及传感器等设备相结合,使其具有网络通讯的能力。

该系统通过CAN适配器与计算机相连,可以方便地构成分布式测控系统,已经成功应用于煤炭综采支架安全监测系统中。

通过现场应用,该系统运行可靠,具有很好的推广和应用价值。

本文创新点:提出了一种CAN总线通信接口的设计方案。

分别从硬件电路设计和软件初始化、发送、接收设计进行了分析。

参考文献[1]王幸之,钟爱琴,王雷,王闪.AT89系列单片机原理与接口技术[M].北京:北京航空航天大学出版社,2004,347-360[2]饶运涛,邹继军,郑勇芸.现场总线CAN原理与应用技术[M].北京:北京航空航天大学出版社,2002,154-160[3]史久根,张培仁,陈真勇.CAN现场总线系统设计技术[M].北京:国防工业出版社,2004,50-66[4]胡光永.总线节点电路的设计与实现[J].微计算机信息,2006,1-2:9-10+231作者简介:李光忠(1973- ), 男, 汉族, 研究生,山东农业大学信息科学与工程学院讲师, 研究方向为计算机测控技术, 计算机通信。

吴士涛(1974- ),男, 汉族, 研究生,山东科技大学讲师, 研究方向为智能仪器监测。

Biography:Li Guang-zhong,born in 1973,Male,the Han nationality,instructor,Master,College of Information Science and Engineering, Shandong Agriculture University.Main field: Computer Measurement & Control,Computer Communication. Wu shi-tao, born in 1974,Male,the Han nationality,instructor,Master, Shandong University of Science and Technology.Main field: intelligent instrument monitoring.。

相关文档
最新文档