当前位置:首页 > 工业控制 > 工业控制
[导读] 引言   CAN(Controller Area Network)总线是德国Bosch公司为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维,通信

 引言

  CAN(Controller Area Network)总线是德国Bosch公司为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbps,通信距离可达10km,CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码,使网络内的节点个数在理论上不受限制。由于CAN总线具有较强的纠错能力,支持差分收发,因而适合高干扰环境,并具有较远的传输距离。因此,CAN协议对于许多领域的分布式测控是很有吸引力的。目前CAN已成为ISO11898标准,其特性如下:

  (1)CAN是一种有效支持分布式控制和实时控制的串行通信网络。

  (2)CAN协议遵循ISO/OSI模型,采用了其中的物理层、数据链路层与应用层。

  (3)CAN 可以多主方式工作,本质上也是一种CSMA/CD方式,网络上任意一个节点均可以在任意时刻主动地向网络上的其它节点发送信息,而不分主从,节点之间有优先级之分,因而通信方式灵活;CAN采用非破坏性位仲裁技术,优先级发送,可以大大节省总线冲突促裁时间,在重负荷下表现出良好的性能;CAN可以点对点、一点对多点(成组)及全局广播等几种方式传送和接收数据。

  (4)CAN的直接通信距离最远可达10km(传输速度为5 Kbps);最高通信速率可达1Mbps(传输距离为40m)。

  (5)CAN上的节点数据实际可达110个。

  (6)CAN数据链路层采用短帧结构,每一帧为8个字节,易于纠错;CAN每帧信息都有CRC校验及其它检错措施,有效地降低了数据的错误率;CAN节点在错误严重的情况下,具有自动关闭的功能,使总线上其它节点不受影响。

  (7)信号调制解调方式采用NRZ编码/解码方式,并且采用插入填充位(位填充)技术。

  (8)数据位具有支配“0”(Dominant bit)和退让“1”(Recessive bit)两种逻辑值,采用时钟同步技术,具有硬件自同步和定时时间自动跟踪功能。

  基于CAN总线的家庭控制器总线设计方案

  在进入信息化时代的今天,人们对于居住环境中的安全性、舒适性要求已越来越高,建立住宅小区计算机管理局域网,实现小区综合管理的网络化势在必行。通过遍布于整个住宅区的家庭控制器和中央计算机系统,实现对住宅的智能化管理。

  图 1是基于CAN总线的总体结构示意图,系统采用支持CAN标准的总线型网络。中央计算机系统(上位机PC)通过CAN接口适配卡与CAN总线相连,进行数据交换。通过双绞线把中央计算机系统和家庭控制器(下位智能节点)挂接在一条总线上,构成低层通信网络。由于采用了CSMA/CD的信息传输控制技术,允许总线上各节点平等争用总线,从而可构成具有多主节点的冗余网络结构。

  在低层通信网络中,中央计算机系统和家庭控制器分别有自己的ID标志。由于采用CAN标准作为网络通信协议,各节点在网络中的地位相同,于是我们可以将中央计算机系统虚拟成主机,而家庭控制器则虚拟成从机,响应主机的要求。中央计算机系统负责对整个CAN总线系统进行监视管理,具有系统参数(如传输速率、节点地址等)设置、数据发送、数据请求、本机状态查询、节点状态查询、中断状态查询等功能。系统工作过程为上位机向下位节点(家庭控制器)发送命令,下位节点识别并执行相应命令。同时各下位节点也可按要求进行信息交换。

  在数据链路层中,规定了支持CAN协议的两种帧类型:数据帧和远程帧。数据帧用来发送数据,用于一个节点传送信息到其它任一或所有节点;远程帧用来“远程发送请求”,用于一个节点主动要求其它节点发送信息,两种帧的具体格式如图2所示。

  硬件电路设计

  家庭控制器硬件设计

  本系统是由许多智能家庭控制器通过CAN总线相连而组成的一个控制器局部网,因此,CAN总线的设计就显得极为重要。其中,CAN控制器的选取、CAN收发器以及抗干扰措施将成为设计的关键。

  ①CAN控制器的选取

  为了系统进一步扩展的需要,可选取支持CAN2.0B通信协议的SJA1000。SJA1000是PHILIPS公司最新生产的既支持CAN2.0B又支持 CAN2.0A的CAN控制器,它与仅支持CAN2.0A的CAN控制器PCA82C200在硬件上和软件上完全兼容。

  ②CAN收发器

  PCA82C250是PHILIPS公司的CAN控制器和物理总线间的接口,提供对总线的差动发送和接收能力。它与ISO11898标准完全兼容,有三种不同的工作方式即高速、斜率控制和待机,可根据实际情况选择。

 ③光电隔离
  为了进一步提高系统的抗干扰能力,在控制器SJA1000和收发器PCA82C250之间增加了由高速隔离器件6N137构成的隔离电路,电源采用DC-DC变换器。


  硬件电路中使用PCA82C250是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI),实现热防护等。

  CAN器件与微处理器的硬件结构图如图3所示。

CAN接口适配卡和CAN总线中继器

  CAN接口适配卡完成CAN-PC总线的通信。适配卡由单片机89C51、CAN控制器SJA100、CAN收发器89C250及其控制电路组成。

  由于CAN收发器的限制,在一个CAN总线网络中,最多只能有110个CAN节点,最多只能有110个CAN节点。利用中继器可对CAN总线进行扩展,不但可使CAN节点总数达到2032个,而且可使CAN通信距离成倍增加,同时也可以把两个不同速率的CAN网连接在一起,组成更复杂的CAN网络。

  中继器采用特定的控制逻辑控制一对CAN收发器82C250.CAN收发器背-背相接,连接两个物理上独立的CAN网,双向传输数据。从物理层上看,中继器实现CAN总线信号的透时中继。

  软件设计

  上位机软件

  采用Visual Basic 6.0开发软件。分两大功能模块:高层系统管理模块和低层通信模块。程序流程图如图4所示。

  家庭控制器(节点)软件

  实现与上位机及其它节点的信息交换。

  在软件设计中, 遵循模块化设计思想,采用结构化程序设计方案,使之具有良好的模块性、可修改性和可移值性。

  CAN总线系统的初始化设计是软件设计的关键,这一部分设计不好,系统将不可能正常工作。因此初始化设计是一个难点,又是一个重点。

  在初始化之前,应设置输出控制寄存器(OCR)的复位请求位为高,再设置其它寄存器。控制寄存器(CR)设定中断;命令寄存器(CMR)控制缓存器的接收状态;中断寄存器(IR)、状态寄存器(SR)查询SJA1000的工作状态;接收码寄存器(ACR)设定工作地址;接收屏蔽寄存器(AMR)设定工作形式,总线定时寄存器(BTR0、BTR1)设定工作频率、采样频率;输出控制寄存器(OCR)一般为正常输出方式,最后应使复位请求位从高变低,使CAN 控制器进入正常工作状态。因此,对CAN控制器进行初始化,实际上就是对ACR,AMR,BTR0,BTR1和OCR这些寄存器进行访问。

  成功地初始化SJA1000后,系统就可以应用它来传输报文。

  结语

  CAN总线以其高性能、高可靠性及其独特的设计越来越受到人们的重视,并被公认为最有前途的总线之一。我们在家庭控制器系统中应用了这种总线技术,设计了硬件电路和软件,并得到实际应用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

为增进大家对控制器的认识,本文将对影响控制器可靠性的因素以及控制器的常见故障和维修方法予以介绍。

关键字: 控制器 指数 集成电路

为增进大家对控制器的认识,本文将对温度控制器的分类以及温度控制器的功能予以介绍。

关键字: 温度控制器 指数 控制器

为增进大家对控制器的认识,本文将对控制器结构类异常以及常见的几种电机控制器予以介绍。

关键字: 控制器 指数 电机

一直以来,MCU微控制器都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来MCU微控制器的相关介绍,详细内容请看下文。

关键字: MCU 微控制器 控制器

pwm控制器将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对pwm控制器的相关情况以及信息有所认识和了解,详细内容如下。

关键字: pwm 控制器 mppt

在这篇文章中,小编将对运动控制器的相关内容和情况加以介绍以帮助大家增进对运动控制器的了解程度,和小编一起来阅读以下内容吧。

关键字: 运动控制系统 运动控制器 控制器

旗芯微近日发布了最新一代Hyper控制器家族产品,全系列对标英飞凌 TC家族控制器,覆盖智能底盘、功能安全控制器、域控制器等应用领域。超融合HPU(Hyper Processing Unit)FC7300系列芯片的性能媲...

关键字: 嵌入式 控制器

汽车电子系统架构发生了颠覆性变化。它已经持续了近十年,现在正在加快速度。这主要发生在 BEV 初创公司中,因为它们没有历史限制或根深蒂固的喜爱设计,并且可以从电子架构的零基础开始。

关键字: CAN总线 电动汽车

为增进大家对控制器的认识,本文将对PID控制器以及电动车控制器维修方法予以介绍。

关键字: PID 控制器 指数

为增进大家对控制器的认识,本文将对控制器的组合逻辑、控制器微程序予以介绍。

关键字: 控制器 指数 微程序

工业控制

13704 篇文章

关注

发布文章

编辑精选

技术子站

关闭