毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc

上传人:laozhun 文档编号:2961925 上传时间:2023-03-05 格式:DOC 页数:27 大小:918KB
返回 下载 相关 举报
毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc_第1页
第1页 / 共27页
毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc_第2页
第2页 / 共27页
毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc_第3页
第3页 / 共27页
毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc_第4页
第4页 / 共27页
毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于CAN总线智能节点通信系统的设计.doc(27页珍藏版)》请在三一办公上搜索。

1、 专科毕业论文(设计)题 目:基于CAN总线智能节点通信系统的设计学 院:高等职业技术学院专 业:电气工程及自动化姓 名: XXXX 指导教师:XXXX XXXXX2006年 5月 25日基于CAN总线智能节点通信系统的设计摘 要现场总线技术被誉为自动化领域的局域网,它是计算机技术、通信技术、控制技术的集成。其中,CAN现场总线以其高性能、高可靠性及其独特的设计越来越受到人们的重视。CAN总线上的节点能接收和发送信息。智能节点通过编程设置工作方式、ID地址、波特率等参数。本文介绍了现场总线的发展背景以及CAN总线的发展背景、主要特点、协议分层以及报文传输等内容,并对CAN总线节点的各组成部分作

2、了较详细的介绍。通过论证比较最后确定采用由单片机AT89C51、可编程的CAN通信控制器SJA1000和CAN收发器PCA82C250组成的节点的设计方案。设计了基于CAN总线智能节点的硬件和软件,并对节点的通信系统做了说明。关键词 CAN总线,智能节点,通信AbstractThe field bus technology is praised as the LAN of the automatic field, it is integration of computer , communication , control technology. Among them, CAN bus att

3、ach importance to by the people more and more with high performance , high dependability and unique design . The node of CAN bus can receive and transmit communication. Intelligent node set up parameter about working , address of ID and baud rate etc through program. This paper introduces developmen

4、t background of field bus and development background , main character, protocol layer and transmitting message of CANbus , and includes more detailed introduction to CAN bus every nodal component . Use the SCM AT89C51,CAN Controller SJA1000, PCA82C250 through demonstration and comparison . on the ba

5、sis of CAN bus,design hardware and software with intelligent node ,and illuminate communication subsystem.Key word CAN bus,Intellectual node,Communication目录前言1第1章 CAN现场总线介绍211现场总线发展背景212 CAN现场总线发展背景213 CAN现场总线应用现状及主要特点314 CAN现场总线协议分层515 CAN现场总线报文传输516 CAN现场总线优越性论证6第2章 CAN现场总线控制器与收发器概述721 CAN通信控制器SJA

6、1000功能简介722 SJA1000验收滤波器的工作原理823 PCA82C250-CAN收发器功能简介9第3章 CAN总线智能节点设计1031 CAN现场总线智能节点设计方案论证1032智能节点硬件电路设计1133智能节点通信设计123.3.1.初始化子程序123.3.2.发送子程序163.3.3.查询方式接收子程序17第4章 结束语19谢 辞20参考文献21附 录22附表1 几种现场总线技术特性的比较22附表2 SJA1000引脚功能23前言近年来,随着信息技术的飞速发展以及控制、计算机、通信、网络等技术的融合,信息交换已经渗透到工业生产领域的各个层次,从现场设备到控制管理的各个层次。传

7、统的RS-232、RS-485和CCITTV.24通信标准和通信系统已经远远不能满足工业现场的通信需要。传统的现场控制技术及现场监控设备正在发生一场新的革命,这就是以全数字式现场总线为代表的现场控制仪表,设备的互连规范,在全世界范围内兴起。以现场总线为基础的全数字控制系统将现有的模拟信号电缆用高容量的现场总线网络代替,从而大大减轻现场信号电缆连接的费用和工作量,提高信号的传输效率,提高信号传输的精密和灵活性,为工业现场用户带来了巨大的好处。现场总线技术是自动化领域发展的热点,是用于现场仪表与控制系统和控制室之间的一种全分散、全数字化、智能、双向、互联、多变量、多点、多站的串行通信系统,被誉为自

8、动化领域的局域网,它是计算机技术、通信技术、控制技术的集成。现场总线控制系统打破了传统控制系统的结构形式。传统模拟控制系统采用一对一的物理连接,而现场总线控制系统把单个分散的测量控制设备变成网络节点,以现场总线为纽带,将每个网络节点连接成可以相互沟通信息、共同完成自控任务的网络系统和控制系统。现场总线中的传感器、变送器、执行机构均置入微控制器。使它们具备了数字计算和数字通信的能力,信息的传输不再依赖于控制室内的计算机或控制仪表,直接在现场的个网络节点完成,实现了彻底的分散,有力地推动了测控系统向数字化、网络化、智能化方向发展。在这些总线标准中,CAN总线以其高性能、高可靠性及其独特的设计越来越

9、受到人们的重视,在国外已有很多大公司的产品采用了这一技术。CAN是英文Controller Area Network的缩写,即控制器局域网络,是一种主要用于各种过程(设备)检测及控制的网络,最初是为汽车的检测、控制系统而设计的。众所周知,现代汽车越来越多的采用电子控制装置来控制如发动机定时、注油以及复杂的加速刹车控制(ASC)、抗锁定刹车系统(ABS)等。但存在由于这些部件及参数的监控需要交换大量的数据,如果采用硬接信号线的方法势必繁琐而且昂贵等一些问题,用传统方法是很难解决的,采用CAN后就能很好的解决这些问题了。其中CAN总线的总线规范现已被ISO国际标准组织制订为国际标准(ISO1189

10、8),得到多个公司的支持,已广泛应用为离散控制领域。CAN已被公认为几种最有前途的现场总线之一。本文着重介绍了基于CAN总线的节点以及通信系统的设计。第1章 CAN现场总线介绍11现场总线发展背景在计算机数据传输领域内,长期以来使用RS-232和CCITTV.24通信标准,尽管它们被广泛地使用,但却是一种低数据速率和点对点的数据传输标准,无能力支持更高层次的计算机之间的功能操作。同时,在复杂或大规模的应用(如工业现场控制或生产自动化领域)中需要使用大量的传感器、执行器和控制器等,它们通常分布在非常广的范围内,如果在最低层上采用传统星型拓扑结构,那么安装成本和介质造价都将非常昂贵;采用流行的LA

11、N组件及环型或总线型拓扑结构,虽然可以减少电缆长度,但是增加的LAN介质及相关硬件和软件又使其系统造价与星型系统相差无几。所以在最低层次上的确需要设计出一种造价低廉而又能经受工业现场环境的通信系统,随着计算机技术的高速发展,计算机技术尤其是网络技术与控制结合使我们的想象成为可能。现场总线技术应运而生,现场总线(Field bus)就是在这种背景下产生的。现场总线是用于过程控制现场仪表与控制室之间的一个标准的、开放的、双向的多站数字通信系统。随着计算机技术、通讯技术、集成电路技术的发展,以全数字式现场总线(Field Bus)为代表的互联规范,正在迅猛发展和扩大。由于采用现场总线将使控制系统结构

12、简单,系统安装费用减少并且易于维护;用户可以自由选择不同厂商、不同品牌的现场设备达到最佳的系统集成等一系列的优点,现场总线技术正越来越受到人们的重视。发展现场总线的初衷是建立开放的控制通信网络,其通信协议理应趋于统一,但近十几年由于现场总线的国际标准不能建立,现场总线发展的种类较多,约有40余种:如德国西门子公司Siemens的ProfiBus,法国的FIP,英国的ERA,挪威的FINT,Echelon公司的LONWorks,Phenix Contact公司的InterBus,Rober Bosch公司的CAN,Rosemounr公司的HART,Carlo Garazzi公司的Dupline,

13、丹麦Process Data公司的P-net,Peter Hans公司的F-Mux,以及ASI(Actratur Sensor Interface),MODBus,SDS,Arcnet,国际标准组织-基金会现场总线FF:Field Bus Foundation,WorldFIP,BitBus,美国的DeviceNet与ControlNet等等。12 CAN现场总线发展背景任何从事电气控制系统的设计、安装、调试、维修人员时刻面临着大量复杂的控制线路,也就意味着较大的工作量。能够在实现系统要求功能的情况下设计最简洁、可靠的线路成为控制线路设计人员追求的一种高水平的境界。简洁的控制线路意味着为了减小

14、发生在控制线路上小的故障率而做更多的工作。如果所有的控制线路简化到像现在大多的民用电器的供电线路一样只用一对双绞线,每个传感器、动作单元的控制线都挂到这对双绞线上,所有的主控设备也都挂到双绞线上,主控设备可以在线路上找到与自己有关的被控对象进行控制而与在线的其它主控设备、被控单元无关。那么控制线路的设计、接线、维护工作将轻松到极点了。工控界有诸多专家预言:二十一世纪工控界将发生一次技术革命:用户可将不同的公司生产的不同现场总线标准的现场仪表和DCS挂接在同一个现场总线上,其优异的性能必将取代诸多控制手段而成为控制系统的主流。CAN(Controller Area Network)控制器局域网络

15、是在20世纪80年代初由德国的BOSCH公司提出为解决汽车内部的复杂硬信号连接而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线,同轴电缆或光导纤维。目前,其应用范围已不再局限于汽车工业,而向过程控制、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等领域发展。CAN总线以其独特的设计,低成本、高可靠性、实时性、抗干扰能力强、纠错能力强等特点在测控领域获得广泛应用,成为一种新型的工业控制现场总线方案。但是,CAN芯片只提供了开放系统互连参考模型中的物理层和链路层功能,一般用户必须直接用驱动程序操作链路层,不能直接满足工业控制网络的组态和产品互连的要求,为了以CAN芯片为

16、基础构成完整的工业控制现场总线系统,必须制定相应的应用层协议,实现系统的组态、设备互连和兼容功能。为此1992年在德国成立了“自动化CAN用户和制造商协会”(CiA),开始着手制定自动化CAN应用层协议CANopen。此后,协会成员开发出一系列CANopen产品,在机械制造、铁路、车辆、船舶、制药、食品加工等领域获得大量应用。1993年11月ISO正式颁布了道路交通运输工具、数据信息交换、高速通信控制器局欲网国际标准ISO11898CAN高速应用标准,ISO11519CAN低速应用标准。这为控制器局域网的标准化、规范化铺平了道路。目前CANopen协议已经被提交欧洲标准委员会讨论,作为一种新的

17、工业现场总线标准EN-50325-4。CAN(Controller Area Network)属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。CAN遵循ISO的标准模型,分为数据链路层和物理层。在工程上,这两层通常由CAN控制器和收发器实现的。CAN控制系统主要由操作站、智能节点以及CAN现场控制网络组成。操作站主要完成在线系统监控,多个智能节点各自独立完成数据采集、系统设定、运行显示控制等,通过CAN现场总线,在操作站和智能节点之间交换各种数据和管理控制信息。CAN应用范围遍及从高速网络到低成本的多线路网络。13 CAN现场总线应用现状及主要特点CAN网络(Contr

18、oller Area Network)就是现场总线技术的一种,它是一种架构开放、广播式的新一代网络通信协议,称为控制器局域网现场总线,是类似LAN(Local Operating Network )局域网的新型控制规范。是现今世界上最为流行控制手段-现场总线的一种形式。CAN网络具有反应快、可靠性高的特性,使用在要求实时处理的场合,例如汽车刹车防锁死系统安全气囊等。今天此项通信协议已得到广泛应用,众多厂商制造供应高温度等级、具有高抗干扰能力的低价位CAN芯片,其特色不仅在汽车工业,在工业控制的其他领域更能发挥其强大的能力。目前,CAN总线以其高性能、高可靠性、实时性等优点,而被广泛应用于控制系

19、统中的检测和执行机构之间的数据通信中。CAN总线有如下特点:CAN总线插卡可以任意插在PC AT XT兼容机上,方便地构成分布式监控系统。CAN可以多主方式工作,网络上任意一个节点均可以在任意时刻主动地向网络上其它节点发送信息,而不分主从,通讯方式灵活,且无需站地址等信息。利用这一特点也可以方便地构成多机备份(容错)系统。CANBUS网络上节点信息可分成不同的优先等级,可以满足不同的实时要求,高优先级的数据最多可在134s内得到传输。CAN采用非破坏性总线仲裁技术,当多个节点同时向网络上传送信息时,优先级低的节点会主动停止数据发送,而优先级最高的节点可不受影响地继续传输数据,有效避免了总线冲突

20、,从而大大节省了总线冲突仲裁时间,尤其是在网络负载很重的情况下也不会出现网络瘫痪情况(以太网则可能会出现网络瘫痪)。CAN可以点对点、一点对多点(成组)及全局广播集中方式传送和接受数据。CANBUS直接通讯距离最远可达10km(速率5Kbps以下),通讯速率最高可达1Mbps(此时距离最长为40m)。CANBUS上节点数理论值为2000个,实际可达110个,它主要取决于总线驱动能力的大小;报文标志符可达2032种(CAN2.0A),而扩展标准(CAN2.0B)的报文标识符几乎不受限制。CAN采用短帧结构,每一帧的数据段长度最多为8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要

21、求,并可保证通信的实时性,这样短的传输时间,受干扰的概率低,重新发送的时间短,具有极好的检错效果。CAN的每帧信息都有CRC效验及其他检错措施,保证了数据的出错率极低。通讯介质采用廉价的双绞线、同轴电缆或光缆,无特殊要求,用户可灵活选择。CAN节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其它操作不受影响。NRZ编码/解码方式,并采用位填充(插入)技术。用户接口简单,编程方便,很容易构成用户系统。开发系统廉价,OEM用户容易操作,INTER、PHILIPS等芯片厂家均生产具有CAN接口的80C51芯片。故而CANBUS是符合中国国情的一种现场总线。CAN总线是一

22、种多主总线系统,特别适合工业过程监控设备的互连,因此越来越受到工业界重视。而且,CAN具有的完善的通信协议可由CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期。另外,CAN已被公认为几种最有前途的现场总线之一。CAN总线规范已被ISO国际标准组织制订为国际标准。CAN协议也是建立在国际标准组织的开放系统互联参考模型基础上的,主要工作在数据链路层和物理层。用户可在其基础上开发适合系统实际需要的应用层通信协议,但由于CAN总线极高的可靠性,从而使应用层通信协议得以大大简化。14 CAN现场总线协议分层CAN总线协议主要描述设备之间的信息传递方式,从结构上可分为3个层次,

23、分别对应OSI标准网络模型的最低两层:数据链路层和物理层。CAN总线协议层次结构有高到低如下表所示。CAN总线协议分层结构协议层对应OSI模型说明LLC数据链路层逻辑链路控制层,用于为链路中的数据传输提供上层控制手段MAC媒体访问控制层,用于控制仲裁、错误界定等数据传输具体实现物理层物理层作用是在不同节点间根据所有的电气属性进行位的实际传输LLC层和MAC层也可以看作是CAN总线数据链路层的两个子层。其中LLC子层的主要功能是:为数据传送和远程数据请求提供服务,确认有LLC子层接收的报文实际已被接收,完成报文滤波、过载通知和恢复管理等工作。在定义目标处理时,存在许多灵活性。MAC子层的功能主要

24、是传送规则,亦即控制帧结构、执行仲裁、错误检测、出错标定和故障界定。MAC子层也要确定,为开始一次新的发送,总线是否开放或者是否马上开始发送。位定时性也是MAC子层的一部分。MAC子层不存在修改的灵活性。物理层的功能是有关全部电气特性在不同节点间的实际传送。自然,在一个网络中,物理层的所有节点必须是相同的,然而,在选择物理层时存在很大的灵活性。15 CAN现场总线报文传输总线上的信息以不同格式的报文发送,但长度有限制。当总线开放时,任何连接的单元均开始发送一个新报文。CAN总线在进行数据传输时,每次传输的数据都是由一个位串组成的,这个位串被称之为“帧”。为了实现数据传输和链路控制,CAN总线提

25、供了4种帧结构,它们分别位带有应用数据的数据帧、向网络请求数据的远程帧、能够报告每个节点错误的出错帧以及如果节点的接收器电路尚未准备好就会延迟传送的过载帧。在这4种帧结构中,又可以将一帧分为几个部分,每一部分负责不同的功能,这些部分被称为“位场”。数据帧用于将数据从发送器传输到接收器,它由7个不同的位场组成:帧起始、仲裁场、控制场、数据场、CRC场、应答场和帧结束(在CAN2.0B中存在,具有11位标识符的数据帧称为标准帧;具有29位标识符的数据帧称为扩展帧);远程帧用于接收器向发送器请求数据发送,它由帧起始、仲裁场、控制场、CRC场、应答场和帧结束这6个位场组成;出错帧用于报告数据在传送过程

26、中发生的错误,该帧由2个位场组成:错误标志叠加和错误界定符;过载帧用于在接收器未准备好的情况下请求延时数据帧和远程帧,由过载标志和过载界定符两个位场组成。16 CAN现场总线优越性论证在报文内容简单、通信距离和通信速率适中的应用场合,基于CAN总线的控制系统较之其他现场总线有许多明显的优越性,如:较之目前许多RS-485基于R线构建的控制系统而言,在以下方面具有明显的优越性:CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先级别(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同

27、的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。而利用RS-485只能构成主从式结构系统,通信方式也只能以主站轮询的方式进行,系统的实时性、可靠性较差;CAN总线通过CAN控制器接口芯片82C250的两个输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。而且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响。而在RS-485网络中,当系统有错误,出现多节点同时向总线发送数据时,会导致总线呈现短路,从而损坏某些节点。因个别节

28、点出现问题,会使得总线处于“死锁”状态。CAN具有的完善的通信协议可由CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期,这些是只仅仅有电气协议的RS-485所无法比拟的。另外,与其它现场总线协议标准比较而言,CANopen具有以下特点:CiA是非赢利组织。CANopen是公共和开放的协议,不代表个别公司的利益;免费发布全部技术资料。从CiA网站上可以随时获得最新的CAN协议文本。物理层采用CAN芯片。由于其应用领域广泛、产量大,实际上已经成为一种通用芯片,是采购方便,不受他人限制。协议精练、透明、便于理解;降低了驱动程序的开发难度。CAN总线与其它几种现场总线比较而

29、言,CAN总线是具有通信速率高、容易实现、且性价比高等诸多特点的一种已形成国际标准的现场总线,并且是最容易实现、价格最为低廉的一种,但其性能并不比其它现场总线差。这些也是目前 CAN总线应用于工业现场控制、智能大厦、小区安防、交通工具、医疗仪器、环境监控等众多领域,具有强劲的市场竞争力的重要原因。几种现场总线技术特性的比较见附表1。第2章 CAN现场总线控制器与收发器概述21 CAN通信控制器SJA1000功能简介CAN的通信协议主要由CAN控制器完成。CAN控制器主要由实现CAN总线协议的部分和实现与微处理器接口部分的电路组成。对于不同型号的CAN总线通信控制器,实现CAN协议部分电路的结构

30、和功能大多相同,而与微处理器接口部分的结构和方式存在一些差异。这里主要以SJA1000为代表对CAN控制器的功能作一个简单介绍。SJA1000是一种独立CAN控制器。它是PHILIPS公司的PCA82C200 CAN控制器的替代产品。SJA1000具有BasicCAN和PeliCAN两种工作方式。PeliCAN工作方式支持具有很多新特性的CAN 2.0B协议。SJA1000在软件和引脚上都是与它的前一款PAC82C200独立CAN控制器兼容的(SJA1000引脚功能如附表1所列),在此基础上增加了很多新的功能。为了实现软件兼容,SJA1000采用了两种工作方式:BasicCAN方式(PCA82

31、C200兼容方式)和PeliCAN方式(扩展特性方式)。工作方式通过时钟分频寄存器中的CAN方式位来选择。上电复位默认工作方式是BasicCAN方式。BasicCAN和PeliCAN方式的区别如下:在PeliCAN方式下,SJA1000有一个重新设计的含很多新功能的寄存器组。SJA1000包含PCA82C200中的所有位,同时增加了一些新的功能位。PeliCAN方式支持CAN2.0B协议规定的所有功能(29位的标识符)。SJA1000的主要功能如下:标准结构和扩展结构报文的接收和发送;64字节的接收FIFO;标准和扩展帧格式都具有单/双接收滤波器(含接收屏蔽和接收码寄存器);具有丢失仲裁定位功

32、能的丢失仲裁中断;硬件禁止CLKOUT输出和PCA82C200独立CAN控制器引脚兼容;和PCA82C200独立CAN控制器电气兼容;PCA82C200模式(即默认的BasicCAN模式);扩展的接收缓冲器(64字节、先进先出FIFO);和CAN2.0B协议兼容(PCA82C200兼容模式中的无源扩展帧);同时支持11位和29位识别码;位速率可达1Mbits/s;PeliCAN模式扩展功能:-可读/写访问的错误计数器-可编程的错误报警限制-最近一次错误代码寄存器-每一个CAN总线错误都可以产生错误中断-具体控制位控制的仲裁丢失中断-单次发送(当发生错误或丢失仲裁时不重发)-只听模式(监听CAN

33、总线,无应答,无错误标志)-支持热插拔(无干扰软件驱动位速率检测)-验收滤波器扩展(4字节代码,4字节屏蔽)-自身信息接收(自接收请求)-24MHz时钟频率;-对不同微处理器的接口;-可编程的CAN输出驱动器配置;-增强的环境温度范围(-40-+125)。22 SJA1000验收滤波器的工作原理在SJA1000验收滤波器的作用下,只有当接收报文中的标识位和验收滤波器预定义的位值相等时,CAN控制器才允许将已接收到的报文存入RXFIFO。SJA1000验收滤波器由4个验收代码寄存器(ACRn)和4个验收屏蔽寄存器(AMRn)组成,与82C200的相比,主要有2个不同点:一是标志符由原来的11位扩

34、展到29位;二是滤波方式由原来的单一方式改为单滤波和双滤波2种方式。要接收的报文的位模式在验收代码寄存器个定义。相应的验收屏蔽寄存器允许定义某些位为“无关”。有两种不同的过滤模式可由模式寄存器中的位(MOD.3,AFM)选择:单过滤模式(AFM位是1)即由4个验收码寄存器和4个验收屏蔽寄存器组成一个验收滤波器,总线上的信息只有通过了它的验收滤波才予以接收。对于标准帧,11位标志符和RTR位对应,。其中和的低4位未使用。由于标准帧有包括RTR位的12位标志符,故数据场的前2字节也参与滤波。数据1对应和。参与滤波的数据将不能作为用户数据使用。对于扩展帧,包括RTR位的30位标志符对应4个验收码寄存

35、器和4个验收屏蔽寄存器,此时和的低2位未使用。可见,单滤波方式更适合于扩展帧。双过滤模式(AFM位是2)即由4个验收码寄存器和4个验收屏蔽寄存器定义2个滤波器,接受的信息通过任意一个滤波器即可予以接收。对于标准帧,第一个过滤器包括,和的低4位共20位,包括RTR位的整个标准识别符和信息的第一个数据字节。其中,和与和的高4位比较标志符;和的低4位与和的低4位比较第一个数据字节。此时,第一个数据字节也不能作为用户数据使用。第二个过滤器为,和和的高4位共12位,比较包括RTR位的整个标准识别符。对于扩展符,构成第一个滤波器;, , 构成第二个滤波器。参与滤波的是29位标志符的高16位。23 PCA8

36、2C250-CAN收发器功能简介PCA82C250收发器是CAN协议控制器和物理总线之间的接口,该器件对总线提供差动发送能力并对CAN控制器提供差动接收能力,同时还可以大大增强总线的驱动能力。PCA82C250收发器主要功能特点:和“ISO11898”标准完全兼容;高速率(可达1Mbit/s);具有抗汽车环境中的瞬间干扰,保护总线能力;斜率控制以降低射频干扰(RFI);差动接收器具有抗宽范围的共模干扰,有很强的抗电磁干扰(EMI)的能力;热保护;对电源和地的短路保护;低电流待机模式;未供电的节点不会干扰总线;至少可挂110个节点。工作温度范围:-40+125PCA82C250驱动电路内部具有限

37、流电路,可防止发送输出极对电源、地或负载短路。虽然短路出现时功耗增加,但不至于使输出极损坏。若结温超过大约160,则两个发送器输出端极限电流减小,由于发送器是功耗的主要部分,因而限制了芯片的温升。器件的所有其他部分将继续工作。PCA82C250采用双线差分驱动,有助于抑制汽车等恶劣电气环境下的瞬变干扰。CAN节点的通信有三种通信模式:高速模式、斜率控制模式、待机模式。三种模式的选择是通过PCA82C250端子的接法来实现的。高速模式下要求接一个0-1.8k的电阻到地;斜率控制模式下要求接一个16.5-140k的电阻到地;待机模式下要求Rs接到高电平,至少保证RS的端电压大于0.75Vcc。Rs

38、提供条件工作模式Rs上的电压或电流0.75Vcc待机模式|10A-10A-200A斜率控制模式0.3Vcc0.6Vcc0.3Vcc高速模式-500A第3章 CAN总线智能节点设计31 CAN现场总线智能节点设计方案论证CAN的智能节点一般有2种实现方式:一,微控制器+CAN控制器+CAN收发器;二,集成CAN控制器的微控制器+CAN收发器。只要符合CAN总线规范的单元都可以通过CAN接口接入CAN总线。CAN总线得到了Intel、Motorola、Philips、Siemens等众多大公司的支持,提供了许多可以实现CAN总线协议的芯片来供用户选择。另外,CAN协议是完全公开的,这些都给CAN总

39、线的开发设计带来很大的方便。CAN控制器有Philips公司的82c200、SJA1000,Intel公司的82526、82527等。集成了CAN控制器的微控制器也很多,如 Philips公司的P8XC592/598,Intel公司的196CA/CB,TI公司的TMS320LF2407(DSP)等。CAN的收发器有Philips的82c250,TI的SN65HVD230等。这些芯片一般都兼容最新的 CAN2.0A/B协议。方案一:基于51单片机和SJA1000 CAN控制器的CAN节点实现本方案采用AT89C51(普通单片机,不带CAN控制器)、SJA1000(CAN控制器)和 PCA82C2

40、50设计CAN节点。单片机和SJA1000 CAN控制器都需要时钟信号(SJA1000的时钟还是比较关键的,因为这将关系到以后总线波特率的设定,假如晶振太小,CAN节点就无法在高速模式下运行),这里使用24MHz的晶振,51单片机的时钟采用SJA1000的CLKOUT输出。方案二:基于DSP芯片的嵌入式控制器CAN节点实现TI公司推出的TMS320LF240X系列、 TMS320LF28X系列芯片是专门针对控制领域的应用而设计的DSP芯片。这类芯片内部不但集成有丰富的控制类单元,而且也集成CAN控制器(兼容 CAN2.0A/B),因此可以很方便地将基于DSP芯片的嵌入式控制系统设计CAN总线上

41、的一个CAN节点接入,并且只占用DSP的两根I/O口线 (CAN的发送和接收端与I/O是复用的)。本方案采用TMS320LF2407作为微控制器和CAN发送器PCA82C250设计CAN节点。它不但完成各类控制功能,而且完成总线的通信功能。需要注意的是:2407采用低功耗设计,3.3V供电,而 CAN发送器PCA82C250是5V供电,假如直接相连,2407肯定无法承受。采用两路光耦6N137起到隔离DSP和CAN总线的作用。方案比较:由于DSP具有很强的数字信号处理能力,因此,基于DSP芯片设计的CAN节点常被用于处理信息量较大的场合。另外,在工控系统中,没有大量数据需要处理,故在只要实现简

42、单控制的场合,为了降低成本常采用单片机开发CAN节点。另外,使用独立的CAN控制器SJA1000,系统开发人员可以根据所需从众多种类的单片机中选择最理想的系统设计方案。因此本实际采用方案一。根据协议的通用性以及硬件电路的可移植性,还可以方便的移植到其他应用环境中,具有较大的实际应用意义。82C250器件提供对总线的差动发送能力和对CAN控制器的差动接受能力,完全和“ISO11898”标准兼容。32智能节点硬件电路设计在工业控制系统中,以及只要实现简单控制的场合,没有大量数据需要处理,为了降低成本,常采用单片机开发CAN节点。图1所示为CAN总线系统智能节点硬件电路原理图。从图1中可以看出,电路

43、主要由四部分构成:微控制器89C51、独立CAN通信控制器SJA1000、CAN总线收发器82C250和高速光电耦合器6N137。微处理器89C51负责SJA1000的初始化,通过控制SJA1000实现数据的接收和发送等通信任务。 SJA1000在软件上和引脚上都是与它的前款PCA82C200独立控制器兼容的,并增加了许多新功能:标准帧数据结构和扩展帧数据结构,并且这两种帧格作为式都具有单/双接收过滤器;64字节的接收FIFO;可读写访问的错误计数器和错误限制报警以及只听方等。SJA1000通过CAN控制器接口芯片82C250连接在物理总线上。82C250器件提供对总线的差动发送能力和对CAN

44、控制器的差动接受能力,完全和“ISO11898”标准兼容。SJA1000的AD0AD7连接到89C51的P0口。CS连接到89C51的P2.0,P2.0为0的CPU片外存储器地址可选中SJA1000,CPU通过这些地址可对SJA1000执行相应的读写操作。SJA1000的RD、WR、ALE分别与89C51的对应引脚相连,INT接89C51的INT0。89C51也可通过中断方式访问SJA1000。为了增强CAN总线节点的抗干扰能力,SJA1000的TX0和RX0并不是直接与82C250的TXD和RXD相连,而是通过高速光点耦合器6N137后与82C250相连,这样就很好地实现了总线上各CAN节点

45、间的电气隔离。应该特别说明的一点是光耦部分电路所采用的两个电源VCC和VDD必须完全隔离,否则采用光耦也就失去了意义。电源的完全隔离可采用小功率电源隔离模块或带多5V隔离输出的开关电源模块实现。这些部分虽然增益了节点的复杂程序,但是却提高了节点的稳定性和安全性。82C250与CAN总线的接口部分也采用了一定的安全和抗干扰措施。82CF250的CANH和CAHL引脚各自通过1个5的电阻与CAN总线相连。电阻可起到一定的限流作用,保护82C250免受过流的冲击。CANH和CANL与地之间并联了2个30pF的小电容,可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力。另外,在两根CAN总线接入端与

46、地之间分别反接了1个保护二极管,当CAN总线有较高的负电压时,通过二极管的短路可起到一定的过压保护作用。82C250的Rs脚上接有一个斜率电阻,电阻大小可根据总线通信速度适当高调整,一般在16140k之间。33智能节点通信设计 CAN总线节点的通信设计主要包括三大部分;CAN节点初始化、报文发送和报文接收。熟悉这三部分程序的设计,就能编写出利用CAN总线进行通信的一般应用程序。3.3.1.初始化子程序SJA1000的初始化只有在复位模式下才可以进行。初始化主要包括工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器(AMR)和接收代码寄存器(ACR)的设置、波特率参数设置和中断允许寄存器(IER

47、)的设置等。在完成SJA1000的初始化设置以后,SJA1000就可以回到工作状态,进行正常的通信任务。 波特指信号大小方向变化的一个波形。把每秒传输信号的个数,即每秒传输信号波形的变化次数定义为波特率。单位是波特。通信波特率的计算。通信波特率由BTR0和BTR1决定。假设BTR0=43H,BTR1=2FH,晶振频率为16MHz。其中为CAN系统时钟的周期,为XTAL的振荡周期。BTR0各位功能如下:D7D6D5D4D3D2D1D0SJW.1SJW.0BRP.5BRP.4BRP.3BRP.2BRP.1BRP.0系统时钟的计算:(32BRP.5+16BRP.4+8BRP.3+4BRP.2+2BRP.1+BRP.0+1)BTR0=43H=01000011B因为,所以, 同

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

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号