(通信与信息系统专业论文)can总线应用系统设计.pdf_第1页
(通信与信息系统专业论文)can总线应用系统设计.pdf_第2页
(通信与信息系统专业论文)can总线应用系统设计.pdf_第3页
(通信与信息系统专业论文)can总线应用系统设计.pdf_第4页
(通信与信息系统专业论文)can总线应用系统设计.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(通信与信息系统专业论文)can总线应用系统设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 控制器局域网( c a n ) 为串行通讯协议,能有效地支持具有很高安全等级的分布实 时控制。c a n 的应用范围很广,从高速的网络到低价位的多路接线都可以使用c a n 。本 文首先介绍了使用c a n 总线的实际意义、c a n 的发展历程和基本知识;然后通过c a n 一2 3 2 智能c a n 接口卡的设计作实例讨论了c a n 与单片机的接口技术:通过c a n i s a 与c a n p c i 计 算机适配卡的设计实例讨论了c a n 与p c 机的接口技术;最后,通过一个完整的工程实例一 基于c a n 总线的温度、湿度实时采集、记录、报警系统全面地介绍t c a n 总线在工程中的 实际应用。本文对全部实例都从硬件和软件两方面进行展开分析,对于c a n 总线在工程 项目中的具体应用具有一定的参考价值。 关键词控制器局域网;工业控制;接口技术;监控系统 a b s t r a c t t h ec o n t r o l l e ra r e an e t w o r k ( c a n ) i sas e r i a lc o m m u n i c a t i o n s p r o t o c o lw h i c h e f f i c i e n t l ys u p p o r t sd i s t r i b u t e dr e a l f i m ec o n t r o lw i t hav e r yh i g hl e v e lo fs e c u r i t y i t sd o m a i n o f a p p l i c a t i o nr a n g e s 如mh i g hs p e e dn e t w o r k st ol o wc o s tm u l t i p l e xw i r i n g a tf r o s ti ts i m p l y i n t r o d u c e st h es i g n i f i c a n c eo fc a n p r o t o c o la n dt h ed e v e l o p m e n tc o n d i t i o no fc a n b u s i t e x p o u n dt h ee s s e n t i a lc h a r a c t e r i s t i c sa n dp r i n c i p i u mo f c a n t h ep r a c t i c a lp r o s p e c ta n d r e s e a r c hp u r p o r ta r ea l s op r o b e di n t oi nt h i sp a p e r t h e ni td i s c u s s e st h ei n t e r f a c eb e t w e e n c a na n dr s 2 3 2t h r o u g ht h ed e s i g no f t h ec a n 一2 3 2i n t e l l e c t u a lc o n v e r t o r i ta l s oa n a l y z e s t h ei n t e r f a c eb e t w e e nc a na n dp cb yt h er e a l i z a t i o no fc a n - i s aa n dc a n - p c ii n t e r f a c e a d a p t e r s a tl a s t ,i se x p l a i n s h o wt ou s ec a nb u si nt h er e a lp r o j e c tb yt h ee x a m p l eo f r e a l t i mt e m p e r a t u r ea n dh u m i d i t ys a m p l i n g ,r e c o r d i n ga n d a l a r m i n gs y s t e mb a s e db yc a n b u s t h i sp a p e ra n a l y z e sb o t ht h es t r u c t u r eo f h a r d w a r ea n dt h ef l o wc h a r to f t h ep r i n c i p a l l y s o h v a r e i th a sd e f m i t er e f e r r e n c ei m p o r t a n c ei nt h ep r o j e c t r e a l i z i n gb yc a n b u s , k e yw o r d s :c o n t r o l l e ra r e an e t w o r k ;i n d u s 。 - yc o n t r o l ;i n t e r f a c et e c b m o l o g y ;m o p j t e r s y s t e m 河北大学 学位论文独创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写的研究成果,也不包含为获得河北大学或其他教育机构的学位或证书 所使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示了致谢。 作者签名:二鼋习量一 目期:吐年厶月l 日 学位论文使用授权声明 本人完全了解河北大学有关保留、使用学位论文的规定,即:学校有权保留并向国 家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。学校可以公布 论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。 本学位论文属于 l 、保密口,在年月目解密后适用本授权声明。 2 、不保密翻。 ( 请在以上相应方格内打“4 ”) 作者签名: 盈赴 日期:互丛年厶月皿日 导师签名: l 猛匪 第1 章绪论 第1 章绪论 1 1 课题的提出及意义 电子工业协会e i a ( e e t r o n i c i n d u s t r i e sa l l i a n c e ) 于1 9 8 3 年制订并发布r s 一4 8 5 标 准并经t i a ( t e l e c o m m u n i c a t i o n si n d u s t r ya s s o c i a t i o n ,电信行业协会) 修订后命名 为t i a e i a 一4 8 5 - a ,习惯地称之为r s 一4 8 5 。r s 一4 8 5 是为弥 b r s 一2 3 2 通讯距离短、速率低 等缺点而产生的。r s - 4 8 5 只规定了平衡驱动器和接收器的电特性,而没有规定接插件、 传输电缆和应用层通讯协议。因而在当时看来是一种相对经济,具有相当高噪声抑制, 相对高的传输速率,传输距离远和宽共模范围的通讯平台。 在过去的2 0 年的时间里,建议性标准r s - 4 8 5 作为一种多点差分数据传输的电气规 范,被应用在许多不同的领域,用做数据传输链路。目前在我国应用的现场总线中r s 一4 8 5 半双工、全双工异步通讯总线也是被各个研发机构广泛使用的数据通讯总线。但是基于 在r s 一4 8 5 总线上只能有一个主机的特点,它往往应用在集中控制枢纽与分散控制单元之 间。 由于r s4 8 5 总线本身存在的许多局限性,随着科技的发展,r s - 4 8 5 的总线效率低、 系统的实时性差、通讯的可靠性低、后期维护成本高、网络工程调试复杂、传输距离不 理想、单总线可挂接的节点少、应用不灵活等缺点慢慢地暴露出来。虽然许多 :程师、 生产厂商等提出了改进的方法和建议,但都不能从根本上解决r s 一4 8 5 这些先天性的问 题。于是应用r s 一4 8 5 的侉产厂商开始寻求一种更好的更彻底的解决方案。 c a nb u s 总线在成本、可靠性、实时性、灵活性、易用性、通讯能力、传输距离等 方面有着明显的优势,猫成为业界最有前途的现场总线之一”1 。 据c i a 统计2 0 0 1 年,仅在欧洲就销售了超过1 亿个c a n - b u s 节点。几乎淘汰了所有的 r s 一4 8 5 系统。但在国内基于历史或者其他的原因,大多数的厂商、工程师在设计产品、 工程立项时第一想到的是应用r s 一4 8 5 总线系统,这不能不说是一种遗憾。 1 2 课题的主要研究内容和目的 c a n ( c o n t r o l l e ra e r an e t w o r k ) 是一种具有国际标准而且性能价格比又比较高的 c a n ( c e n t r e l l e ra o r an e t w o r k ) 是一种具有国际标准而且性能价格比又比较高的 1 河北大学工学硕士学位论文 现场总线,它在当今自动控制领域的发展中能发挥重要的作用。在充分理解现场总线理 论的基础上,本课题研究的目的是尽可能广泛而深入地将c a n 总线应用于工业自动化等 领域。 本课题包含如下内容: c a n 总线特点和技术规范的剖析 c a n 总线控制器与单片机的接口技术 c a n 总线控制器与p c 机的接口技术 c a n 总线在温度、湿度实时监控、记录、报警系统中的实际应用 对c a n 总线原理和技术规范的剖析是c a n 总线控制器与单片机、p c 机接口技术的 基础,c a n 总线在工业自动化等领域的应用是c a n 总线控制器与单片机、p c 机接口技术 进一步发展的必然。本课题包含了大量的实际工作,如c a n 智能c a n 接口卡( c a n2 3 2 ) 、 p c 机i s a 总线、p c i 总线c a n 适配卡( c a n _ i s a 、c a n p c i ) 的硬件和软件设计,c a n 总 线应用系统的实际搭建等。 2 第2 章深入理解c a n 总线 第2 章深入理解c a n 总线 2 1c a n 总线的发展历程 2 1 1c a n 总线的起源 c a n 最初出现在8 0 年代末的汽车工业中。当时,由于消费者对于汽车功能的要求 越来越多,而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越 来越复杂,同时意味着需要更多的连接信号线。提出c a n 总线的最初动机就是为了解决 现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的信号线。在底特律的汽车 工程协会大会上,由b o s c h 公司研究的新总线系统被称为“汽车串行控制器局域网”。 u w ek i e n c k e 、s i e g f r i e dd a i s 和m a r t i nl i t s c h e l 分别介绍了这种多主网络方案。 此方案基于非破坏性的仲裁机制,能够确保高优先级报文的无延迟传输,并且不需要在 总线上设置主控制器。此外,c a n 之父上述几位教授和b o s c h 公司的w o l f g a n g b o r s t 、w o l f g a n gb o t z e n h a r d 、o t t ok a r l 、h e l m u ts c h e l l i n g 、j a nu n r u h 已经实现 了数种在c a n 中的错误检测机制。该错误检测也包括自动断开故障节点功能,以确保能 继续进行剩余节点之间的通讯。传输的报文并非根据报文发送器接收器的节点地址识 别( 几乎其它的总线都是如此) ,而是根据报文的内容识别。同时,用于识别报文的标 识符也规定了该报文在系统中的优先级。 2 1 2c a n 总线的前景 尽管c a n 协议已经有1 5 年的历史,但它仍处在改进之中。从2 0 0 0 年开始,一个 由数家公司组成的国际标准化组织i s o ( i n t e r n a t i o n a lo r g a n i z a t i o nf o r s t a n d a r d i z a t i o n ) 任务组织定义了一种时间触发c a n 报文传输的协议。b e r n dm u e l l e r 博士、t h o m a sf u e h r e r 、b o s c h 公司人员和半导体工业专家、学术研究专家将此协议 定义为“时间触发通讯的c a n ( t t c a n ) ”,计划在将来标准化为i s o l l 8 9 8 4 。这个c a n 的扩展已在硅片上实现,不仅可实现闭环控制下支持报文的时间触发传输,而且可以实 现c a n 的x - b y - w i r e 应用。因为c a n 协议并未改变,所以,在同一个的物理层上,既可 以实现传输时间触发的报文,也可以实现传输事件触发的报文。 t t c a n 将为c a n 延长5 一l o 年的生命期。现在,c a n 在全球市场上仍然处于起始点, 3 河北大学工学硕士学位论文 当得到重视时,谁也无法预料c a n 总线系统在下一个1 0 一1 5 年内的发展趋势。这里需 要强调一个现实:近几年内,美国和远东的汽车厂商将会在他们所生产汽车的串行部件 上使用c a n 。另外,大量潜在的新应用( 例如:娱乐) 正在呈现不仅可用于客车, 也可用于家庭消费。同时,结合高层协议应用的特殊保安系统对c a n 的需求也正在稳健 增长。德国专业委员会b i a 和德国安全标准权威t o y 已经对一些基于c a n 的保安系统 进行了认证。c a n o p e n s a f e t y 是第一个获得b i a 许可的c a n 解决方案, d e v i c e n e t s a f e t y 也会马上跟进。全球分级协会的领导者之一,g e r m a n i s c h e rl l o y d 正在准备提议将c a n o p e n 回件应用于海事运输。在其他事务中,规范定义可以通过自 动切换将c a n o p e n 网络转换为冗余总线系统。 2 2c a n 总线的特点 c a n ,全称为“c o n t r o l l e ra r e an e t w o r k ”,即控制器局域网,是国际上应用最广 泛的现场总线之一。最初,c a n 被设计作为汽车环境中的微控制器通讯,在车载各电子 控制装置e c u 之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱 控制器、仪表装备、电子主干系统中,均嵌入c a n 控制装置。由于其卓越的性能,在 工业自动化、多种控制设备、交通工具、医疗器械以及建筑、环境控制等众多部门越来 越受到广泛的关注。 一个由c a n 总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中, 节点数目受网络硬件的电气特性所限制。例如,当使用p h i l i p sp 8 2 c 2 5 0 作为c a n 收发 器时,同一网络中允许挂接i i 0 个节点。c a n 可提供高达i m b i t s 的数据传输速率,这 使实时控制变得非常容易。另外,硬件的错误检定特性也增强了c a n 的抗电磁干扰能力。 c a n 以下主要特性“”1 8 : 多主站依据优先级进行总线访问; 无破坏性的基于优先级的仲裁; 借助接受滤波器的多地址帧传送; 远程数据请求; 配置灵活性强; 全系统兼容性好; 错误检测和出错信令全面; 4 第2 苹深入理解c a n 总线 发送期间若失去仲裁或由于出错而遭破坏的帧可以自动重发; 暂时错误和永久性故障结点的判别以及故障结点能够自动脱离。 2 3c a n 总线技术规范 由于c a n 技术应用的普遍推广,导致要求通讯协议的标准化。为此,1 9 9 1 年9 月 b o s c h 公司制定并发布了c a n 技术规范( v e r s i o n2 0 ) 。该技术规范包含a 和b 两部分。 1 9 9 3 年1 1 月i s 0 正式颁布了道路交通运载工具一数字交换一高速通讯控制器局部网 ( c a n ) 国际标准( i s o1 1 8 9 8 ) ,为控制器局部网标准化、规范化的推广铺平了道路。 2 3 1o a n 通讯协议 c a n 通讯协议主要描述设备之间的信息传递方式。c a n 通讯层的定义与开放系统互 连模型o s i ( o p e ns y s t e m si n t e r c o n n e c t i o n ) 一致。每一层与另一设备上相同的那一 层通讯。实际的通讯发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介 质互连。c a n 的规范定义了模型的最下面两层:数据链路层和物理层。 在物理层,c a n 能够使用很多物理介质,例如双绞线、光纤等。只要物理驱动器是 在“开集电极”,而且每个节点都能够监听到它自己以及其他所有节点,那么c a n 就能 够工作。最常用的就是双绞线,一个信号能够使用差分电压传送,c a n 驱动器能够因此 而避免噪声和容错,这两条信号线被称为“c a n _ h ”和“c a n _ l ”,静态时是2 5 v 。用 c a n _ h 比c a n _ l 高表示的逻辑“0 ”,被称为“显形位”;而用c a n l 比c a nh 高表示 的逻辑“1 ”,叫做“隐性位”。差分的电压令c a n 网络即使在一条信号线断开或者在 噪声极大的环境中也能够工作。只需要一对双绞线,差分的c a n 输入就能够很有效地抵 偿噪音。总线位的数值表示“ “如图2 1 所示: 河j 大学工学硕士学位论文 平均u ( v ) 刊u n v 。 厂丁 止1y 七。 图2 1c a n 总线位的数值表示 在建立一个实际运行的c a n b u s 通讯网络时,由c a n 底层硬件来实现对物理层、数 据链路层的控制。c a n 2 0 协议规定的通讯检错机制已足够保证c a n b u s 通讯网络具有 非常高的可靠性。但对于用户协议层仍然需要制定或选择合适的通讯协议对网络上的通 讯数据流进行解析与管理。图2 2 为c n q b u s 通讯层的概念: 图2 2c a n 通讯层概念 对于普通的c a n b u s 应用领域,采用通常的“命令一响应”模式通讯协议即可以实 现非常可靠的“主一从”通讯网络。对于需要进行大量数据交换,或者通讯方式灵活的 c a n b u s 网络,也可以采用一些标准的多主通讯协议,比如h i l o n b 协议,或者采用c a n 2 0 协议中远程帧定义。 在汽车电子产品领域,通常可参考或直接采用s a e j l 9 3 9 等一系列国际标准规范。 6 第2 章深入理解c a n 总线 在电力通讯设计领域,d e v i c e n e tv 2 0 规范已被采纳为中国国家标准,是未来数 年中电力通讯产品的通讯规约领导者。 在智能楼宇通讯领域,可以使用m o d b u s 协议或沿用r s 4 8 5 模式等“主一从”协议 以保持产品的可持续发展并可以节省开发人力资源。 2 3 2c a n 数据交换原理 c a n 是一种基于广播的通讯机制,广播通讯依靠报文( m e s s a g e ) 的传送机制来实 现,因此c a n 并未定义站及站地址,而仅仅定义了报文,这些报文依靠报文确认区 ( i d e n t i f i e r ) 来进行识别,一个消息报文确认区在一个网络中必须是惟一的,它不但 描述了某一报文的意义,而且还定义了报文的优先级,当很多站都在访问总线时,优先 级是很重要的。”。 c a n 使用地址访问的方法,使网络的配置变得非常灵活,用户可以很容易的增加一 个新的站到一个已经存在c a n 的网络里,而不用对已经存在的站进行任何硬件或软件上 的修改,但必须此新的站为完全的接受者,这样它将不会对网络上各结点的通讯产生影 响“1 。图2 3 为c a n b u s 数据交换原理图: c a n s t a t i o nl ( c o n s u m e r ) c a n s t a t i o n2 ( c o n s u m e r ) c a n s t a t i o n4 ( c o n s u m e r ) 图2 - 3c a n b u s 数据交换原理图 2 3 3c a n 实时数据传输 在实时处理系统中,通过网络交换紧急报文存在很大的不同,一个迅速改变的值, 如发动机负载必须频繁的进行传送且要求延迟比其它的值如发动机温度要小。 c s 眦c d 是“载波侦听多路访问冲突检测”( c a r r i e rs e n s em u l t i p l ea c c e s sw i t h 7 河北火学工学硕士学位论文 c o l l i s i o r ld e t e c t ) 的缩写。利用c s m a 访问总线,可对总线上信号进行检测,只有当 总线处于空闲状态时,才允许发送。利用这种方法,可以允许多个节点挂接到同一网络 上。当检测到一个冲突位时,所有节点重新回到监听总线状态,直到该冲突时间过 后,才开始发送。在总线超载的情况下,这种技术可能会造成发送信号经过许多延迟。 为了避免发送时延,可利用c s m a c d 方式访问总线。当总线上有两个节点同时进行发送 时,必须通过“无损的逐位仲裁”方法来使有最高优先权的的报文优先发送。在c a n 总 线上发送的每一条报文都具有唯一的一个i l 位或2 9 位数字的i d 。i d 号越小,则该报 文拥有越高的优先权,因此一个为全o 标志符的报文具有总线上的最高级优先权。可 用另外的方法来解释:在消息冲突的位置,第一个节点发送0 而另外的节点发送1 ,那 么发送0 的节点将取得总线的控制权,并且能够成功的发送出它的信息。 发送请求在整个系统中按报文的重要性来排序处理,当总线负荷较重的时候这会带 来很多好处,因为总线访问的优先权是基于报文本身的,因此可以节约很多总线时间, 在实时系统中降低了传送的延迟。 2 3 4c a n 报文帧类型 在c a n 总线中有四个通讯对象:带有应用数据的报文帧、向网络请求数据的远程帧、 能够报告每个节点错误的出错帧、如果节点的接收器电路尚未准备好就会延迟传送的过 载帧。”“。 c a n 协议支持两种报文帧格式,它们只是在确认区存在差异,一种被成为c a n 标准 帧,在c a n 2 0 协议的p a r t a 进行定义,标准帧支持i i b i t 的确认区长度:另一种称为 c a n 扩展帧,在c a n 2 0 协议的p a r t b 进行定义,支持2 9 b i t 的确认区。 c a n 标准帧格式以被称为“s t a r to ff r a m e ( s o f ) ”的起始位开始,接下来是“仲 裁区( a r b i t r a t i o nf i l e d ) ”,仲裁区由确认区和“远程发送传送请求( r t r ) ”组成, r t r 位用于区分数据帧和被称为“远程帧”的数据请求帧。接下来的“控制区( c o n t r o l f i e l d ) ”包含了确认扩展位( i d e ) ,用于区别c a n 标准帧和c a n 扩展帧。同样,“数据 长度代码( d l c ) ”用于表示接下去的“数据区( d a t af i e l d ) ”中的字节数,如果报文 用于远程帧,d l c 就包含所请求数据的字节数。“数据区”可长达8 字节。报文的完整 性由接下来的“循环冗余校验码( c r o ”来保证。而“应答区( a c k ) ”则有应答槽( a c k s l o t ) 和a c k 界定符( a c kd e l i m i t e r ) ,应答槽中的位会被接受到站填充并发送到总线 第2 章深入理解c a n 总线 上,接收者不需要判断报文的有效性便可以应答正确的报文,即无论是否与自己有关的 报文,接受者都会填充应答槽并进行发送。报文结束于“帧结束( e o f ) ”位,“帧间隔 ( i f s ) 定义了一个两个数据之间的最小元数,一般不小于3 b i t 。如果没有任何站企图 对总线进行访问,则总线会一直保持空闲状态。标准帧格式如图2 4 所示: 一_r一一 r1r a r b i t r a t io “ c o n t f 0 1d a t a( r fa c ke do f f i e l d f i e l df i e l df i # l d:l e f 1 e 1d i圭主戛匿i 鬻“麓:;瓣| | 麟蕤黼鬻蘩醺雕羯鬟麟;赣;蘸糕i l i壤剿辫骥,i l 旦塑一 i c r ( i 图2 - 4c a n 标准帧格式 c a n 扩展帧的报文与标准帧相似,不同之处仅是所使用的确认区长度,确认区由已 存在的l l b i t 确认区( 称为基本确认区) 和1 8 b i t 扩展区( 称为标识扩展区) 组成,标 准帧与扩展帧的不同来自于对i d e 位的使用。当i d e 为显性时,则报文为标准帧来发送, 当i d e 位为隐性时报文作为扩展帧来发送。当两种格式报文同时出现在总线上,并且具 有相同的确认区或基本确认区,那判断报文优先级的方法通常为:标准帧的报文总是比 扩展帧的报文优先级高。扩展帧格式如图2 5 所示: a r b i t r 。】1i o ” f i c id i韭韭韭 e暑 兰量l 兰5 j i 襄鬻隧豢i l 瓣i g 鬟蘸i 壤5 锤l 鎏鬟i黼蘩凌l 翼飘骥缝i戮澜鬻瓣i纂刻瓣,鹾 卜1 蔫警_ 卜剖蔫一i 二雠纠hl j 。l e n g t “ 图2 5c a n 扩展帧格式 作为某数据接受器的站,通过发送远程帧( r e m o t ef r a m e ) 可以启动其资源结点传 送它们各自的数据。远程帧也有标准格式和扩展格式。 过载帧( o v e r l o a df r a m e ) 包括两个位域:过载标志和过载界定符。有三种情况会 9 掣 一 洞北大掌工学硕士学位论文 引发过载标志的传送,即: 接受器的内部原因,它需要延迟下一个数据帧或远程帧。 在间歇( i n t e r m i s s i o n ) 的第一位和第二位检测到一个显性位。 如果c a n 结点在错误界定符或过载界定符的第8 位采样到一个显性位,结点会发 送一个过载。 2 3 5c a n 错误检测 c a n 协议有五种错误检测的方法,三个是报文级的,而两个是位级的。如果一个报 文出错,那么错误检测的任何一个方法使节点不接收这个报文,并产生一个出错帧,使 所有的帧都忽略它并使发送节点重新发送这个报文。 在报文级检查中,有c r c 检查和应答隙。c r c 检查是一个1 5 位c r c ,其生成多项式 为: x 15 + 工“+ x ”+ x 8 + x 7 + 爿4 + x 3 + l ”“ 它计算描述符场和数据字节的c r c ,应答场有两位,包括一个应答位和一个应答界 定符。这个发送器将会把一个隐性位放在应答场。任何一个正确接收报文的节点在应答 场写一个显性位。如果发送器在应答场没有读回一个显形位,它将产生一个出错帧并重 新传送报文。最后,在报文级还有一个形式检查。它检查那些总是隐性位的报文场。如 果检测到显形位,就会产生错误。它检查:帧起始、帧结束、应答界定符以及c r c 界定 符位。 在位级检查中,每一个位都由发送器监控。如果一个位被写进总线但读到的是它的 反,错误就会产生。只有标识符场用于仲裁和应答隙是除外的,它要求显性位覆盖隐性 位。最后的一种错误检测方法是通过位填充规则。当一个报文没有被填充,即如果在逻 辑电平相同的连续5 位后,下一位不是前面的反,则产生一个错误。 活动错误帧包括六个显形位,它们违背了位填充规则,所有的c a n 节点都认为它是 一个错误并产生自己的错误帧,所以错误帧的长度可以在6 位和1 2 位之间。错误帧后 是8 位隐性位界定符场,而总线在重发被破坏的报文前是空闲的。要注意报文在被成功 接收之前仍要争取仲裁。 o 第3 章c a n 总线控制器与单片机的接口技术 第3 章c a n 总线控制器与单片机的接口技术 3 1c a n 器件的选择 3 1 1c a n 控制器s j a l 0 0 0 s j a l 0 0 0 是一种独立的c a n 控制器,主要用于移动目标和一般工业环境中的区域网络 控制。它是p h i l i p s 半导体公司p c a 8 2 c 2 0 0c a n 控制器的替代产品。s j a l 0 0 0 有一系列先 进的功能,适合于多种应用,特别在系统优化、诊断和维护方面非常重要。”3 。 s j a l 0 0 0 独立的c a n 控制器有2 个不同的操作模式 b a s i c c a n 模式和p c a 8 2 c 2 0 0 兼容 p e l i c o n 模式 b a s i c c a n 模式是上电后默认的操作模式。因此,用p c a 8 2 c 2 0 0 开发的已有硬件和 软件可以直接在s j a l 0 0 0 上使用,而不用作任何修改。 p e l i c a n 模式是新的操作模式,它能够处理所有c a n 2 0 b 规范的帧类型。而且它还 提供一些增强功能使s j a l 0 0 0 能应用于更宽的领域。 s j a l 0 0 0 的主要新功能“”1 有: 标准帧格式和扩展帧格式报文的接受和传送; 接收f i f o ( 6 4 字节) ; 在标准和扩展格式中都有单双接受滤波器,滤波器包括屏蔽寄存器和代码寄存 器: 读写访问的错误技术器; 可编程的错误超限报警; 最近一次的错误码寄存器; 对每一次c a n 总线中出错的错误中断; 有详细的位描述的仲裁丢失中断: 一次性发送( 当出错或仲裁丢失时不重发) ; 只听模式( 监听c a n 总线,无应答,无错误标志) ; 支持热插( 无干扰的软件位速率检测) ; 河北大学工学硕士学位论文 - 硬件禁止c l k o u t 输出; s j m 0 0 0 的功能框图“ 4 如图3 1 所示: 图3 1s j a l 0 0 0 的功能框图 3 1 2c a n 总线驱动器8 2 c 2 5 0 8 2 c 2 5 0 是c h n 控制器与物理总线之间的接1 2 1 ,它最初是为汽车中的高速应用而设计 的。器件可以提供对总线的差动发送和接收功能。8 2 c 2 5 0 的主要特性如下: 与i s 0 1 1 8 9 8 标准完全兼容; 高速率( 最高可达1 m b p s ) ; 具有抗汽车环境下的瞬间干扰,保护总线能力; 采用斜率控制( s l o p ec o n t r 0 1 ) ,降低射频干扰( r f i ) ; 过热保护; 总线与电源及地之间的短路保护; 低电流待机模式; 未上电结点不会干扰总线; 第3 章c a n 总线控制器与单片机的接口技术 总线至少可连l l o 个结点。 8 2 c 2 5 0 的功能框图u p 9 如图3 2 所示: 图3 28 2 c 2 5 0 的功能框图 3 2g a n - 2 3 2 智能c a n 接口卡的设计 3 2 1 硬件电路设计 本课题所设计的c a n 一2 3 2 智能c a n 接口卡,实质上是c a n 智能结点与2 3 2 电平转换电路 的结合。采用a t 8 9 c 5 2 作为结点的微处理器,在c a n 总线通讯接口中,c a n 通讯控制器采 用s j a l 0 0 0 ,c a n 总线驱动器采用8 2 c 2 5 0 。2 3 2 电平转换电路采用m a x 2 3 2 。 3 2 1 1 硬件总体结构 c a n 一2 3 2 智f 毙c a n 接口卡原理图见附录1 ,硬件总体结构框图如下: 河北大学工学硕士学位论文 l e d p 2 0 u 1 卜叫i no u t -t x dc a n h 显示 6 n 1 3 7 p 0 i 蕊l q z 1i 8 2 e 5 0 i n- _ o u t i n 一 r x dc a f 4 l 、强豫魏二髭i 6 n 1 3 7 t l ot 1 i t x d 涨黼熬黔 r l ir l or x d。 d i p p l 开关 图3 3c a n 一2 3 2 智能c a n 接口卡硬件结构框图 电路主要由7 部分构成:微处理器a t 8 9 c 5 2 、独立c a n 通讯控制器s j a l 0 0 0 、c a n 总线 驱动器8 2 c 2 5 0 、高速光电耦合器6 n 1 3 7 、t t l 电平与r s 2 3 2 电平转换器m a x 2 3 2 、l e d 数码管 显示电路以及为s j a l 0 0 0 提供初始地址的拨码电路。 微处理器a t 8 9 c 5 2 负责s j a i 0 0 0 的初始化,通过控制s j a i 0 0 0 实现数据的接收和发送 等通讯任务。 3 2 1 2s j a l 0 0 0 与a t 8 9 0 5 2 的接口 图3 4 为s j a l 0 0 0 与a t 8 9 c 5 2 的接口电路图: u 1m 1 33 9 m t1 2 : i n t l p 0 】l 3 82 4 a d ot x 0 盯0p o 3 7笛 a d i t x l 1 5 p 0 2 鱼d 2 3 6 m c s1 4荪 a d 3r 冀口 t lp o3 t d f 0 4 + 3 42 8 a d 4r x l p 0 5 a d 5 v c c3 1 3 3 l e a n fp 0 6 3 22 d 6m o d e x 11 9 p 0 7 a d 7v d 吐1 x i v d d 2 x 21 82 1c s 4 x 2p 2 0 2 2 r d 5 : c sv d d 3 p 2 1 一 r d a r e s9 2 3 w r 6 : f e s e tp 2 2 2 4a l e3 。 w r v 1 r d 1 7 p 2 3 2 5 丑q t1 6 a e v s s 2 1 6 一 r d 弛4 2 6 m t v s s 3 t 4 v终雾p25 一2 s r e s 1 7 1 1 p 2 6 2 8c o u t7 。 f e s e tx t a l l 2 2 2 1 0p 2 7 c o l r rx t a l 0 3 3 p 1 1 霜a i 呱 4 4 p 1 2 5 5 p 1 3 1 0r x d l1 6 “吨 6 6 7 1 4r x d 1 lt x d lx t a i “fi 口卜_ 7 7 p 1 5t x d 3 口a l e = 葺o p f = 8 p 1 6a l e 巾 8 p 1 7p s e n篮 图3 4s j a l 0 0 0 与a t 8 9 c 5 2 的接口电路图 1 4 札1 a u 第3 章c a n 总线控制器与单片机的接口技术 从中可以看出,s j a l 0 0 0 的a d o a d 7 连接蛩j a t 8 9 c 5 2 的p o 口,c s 连接虱j a t 8 9 c 5 2 的p 3 4 ( a t 8 9 c 5 2 的定时器t 0 不起作用) 。p 3 4 为0 时c p u 可选中s j a l 0 0 0 ,c p u 可通过访问外部 r a m 低地址区的方法对p o 口进行读写,对s j a l 0 0 0 相应寄存器执行读写操作。s j a l 0 0 0 的r d 、w r 、a l e 分别与a t 8 9 c 5 2 的对应脚相连,i n t 接a t 8 9 c 5 2 的i n t o ,a t 8 9 c 5 2 也可 以通过中断方式访问s j a l 0 0 0 。为了增加系统的稳定性采用双晶振的方式,a t 8 9 c 5 2 采用 1 1 0 5 9 2 m h z 的晶振,s j a l o o o i 盘用1 6 m h z 的晶振。复位电路可选用d s l 2 3 2 ,其输出s e t 与 r s t 分别与a t 8 9 c 5 2 的r e s e t 和s j a l 0 0 0 的r e s e t 脚相连。 3 2 1 3c a n 控制器与驱动器的连接 为了增强c a n 总线结点的抗干扰能力,s j a l 0 0 0 的t x o 与r x o 并不是直接与8 2 c 2 5 0 的 t x d 和r x d 相连,而是通过高速光耦6 n 1 3 7 后与8 2 c 2 5 0 相连,这样就很好的实现了总线上 各点间的电气隔离。如图3 5 所示: 图3 5c a n 控制器与驱动器的连接电路 图中的d c d c 电源模块是十分必要的,它可以使v c c 与v c c l 完全隔离,使结点的稳定 性与安全性得到了很大的提高。 8 2 c 2 5 0 上的引脚8 ( r s ) 用于选定8 2 c 2 5 0 的工作模式,有三种不同的工作模式可 供选择”。1 2 :高速、斜率控制和待机,如表3 一l 所示: 河北大学工学硕士学位论文 r s 提供条件工作模式r s 上的电压或电流 v r s o 7 5 v c c待机模式i i r s l oua 一2 0 0ua i r s 一1 0 ua 斜率模式 0 3 v c c v r s 0 6 v c c v r s o 3 v c c 高速模式 i r s - 5 0 0ua 表3 18 2 c 2 5 0 引脚r s 用法 在一些应用中由于考虑到系统的成本等问题而使用非屏蔽的总线电缆。然而,使用 非屏蔽电缆意味着收发器要满足额外的要求,譬如:电磁兼容性( e m c ) 问题。如果使 用非屏蔽总线电缆,p c a 8 2 c 2 5 0 的总线信号转换速度应被特意降低,此时需要调正r s 的 阻值。整根据c a n 的位定时要求,转换速度下降将增加总线节点的循环延迟,因此在给 定的位速率下总线长度减少,或者说在给定的总线长度下,位速率降低。斜率控制模式, 中总线输出的转换速度大致和流出引脚r s 的电流成比例,电流范围在l o “a 一i r s 2 0 0 u 。如果r s 引脚的输出电流在这个范围中,引脚r s 将输出大约0 5v c c 的电压。当在 r s 引脚和地电平之间应用一个适当的电阻时,收发器被设置成斜率控制模式。一般来 说这个电阻阻值要在范围1 6 5 k r e x t 1 4 0 k 之间才符合上面所说的r s 输出电流范围。 3 2 1 4t t l 与r s 2 3 2 c 电平转换电路 c a n 一2 3 2 智能c a n 接口卡采用m a x 2 3 2 双组r s 2 3 2 c 发送接受器来实现t t l 电平与 r s 2 3 2 3 c 电平的双向转换。m a x 2 3 2 内部有电压倍增电路和转换电路,仅需+ 5 v 电源便 可工作”1 。电路原理图如图3 6 所示: v c c 图3 - 6m a x 2 3 2 电路原理图 第3 章c a n 总线控制器与单片机的接口技术 3 2 2 软件设计 3 2 2 1 软件总体结构 c a n 一2 3 2 智能c & n 接口卡的软件设计主要包括5 大部分:c a n 结点初始化、r s 2 3 2 报文接收、r s 2 3 2 报文发送、c a n 报文接收和c a n 报文发送。主监控程序流程图如图3 7 所示: 荪函孬面磊i 赢匠r 型 y 向c a n 子网转发报文,并调整缓冲区参数 n 二要兰竺查堡至塑! ! : 向上位机发送状态信息 图3 7 主监控程序流程图 c a n 总线标准具有物理层和数据链路层协议,以帧为单位进行数据通讯,且每帧均 携带相应的i d 标识符,而r s 2 3 2 本质上仅仅是一个物理层标准,以字节为单位进行通 讯,不携带任何其它附属信息,其帧格式完全由用户自己定义。由于不管是在c a n 总线 还是在r s 2 3 2 总线中最终信息的传输都是以帧为单位,所以在考虑设计r s 2 3 2 帧格式时, 应该参考c a n 总线的帧格式,包括地址( i d ) 、帧长度、数据和校验等。 3 2 2 2c a n 结点初始化 独立c a n 控制器s j a l 0 0 0 必须在上电或硬件复位后设置c a n 通讯。在由主控制器操 作期间,它可能会发送一个( 软件) 复位请求,s j a l 0 0 0 会被重新配置( 再次初始化) 。 初始化主要包括工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器和接收代码寄 存器的设置、波特率参数设置和中断允许寄存器的设置等。在完成s j a l 0 0 0 的初始化设 置后,s j a l 0 0 0 就可以回到工作状态,进行正常的通讯任务。初始化流程图如图3 8 所示: 1 7 河北人学工学硕士学位论文 ( 初始化或重新配置) 屏蔽主控制器c a n 中断源 + 进入复位模式 初始化寄存器: 时钟分频寄存器 中断允许寄存器 接收屏蔽寄存器 接收代码寄存器 总线定时寄存器0 总线定时寄存器1 输出控制寄存器 接收缓存起始地址寄存器 发送错误计数寄存器 错误代码捕捉寄存器 方式寄存器 进入工作模式 打开主控制器c a n 中断源 r 初始化结束 图3 - 8c a n 结点初始化流程图 对于s 3 a 1 0 0 0 寄存器初始化,首先要将方式寄存器( m o d ) 复位模式位置l ,之后 通过时钟分频寄存器( c d r ) 选择p e l i c a n 模式,同时关闭时钟输出( c l o c k o u t ) ;通过中 断允许寄存器( i e r ) 开放发送中断、溢出中断和错误警告中断;为接收屏蔽寄存器( a m r ) 赋初值;为接收代码( a c r ) 寄存器赋初值;通过总线定时寄存器0 ( b t r o ) 和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论