can总线在智能控制系统中的应用Word格式.docx
- 文档编号:19542617
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:7
- 大小:24.02KB
can总线在智能控制系统中的应用Word格式.docx
《can总线在智能控制系统中的应用Word格式.docx》由会员分享,可在线阅读,更多相关《can总线在智能控制系统中的应用Word格式.docx(7页珍藏版)》请在冰豆网上搜索。
在计算机数据传输领域内,长期以来使用的通信标准,尽管被广泛使用,但是无法在需要使用大量的传感器和控制器的复杂或大规模的环境中使用。
控制器局部网CAN(CONTROLLERAERANETWORK)就是为适应这种需要而发展起来的。
CAN总线的出现,就是为了减少不断增加的信号线,所有的外围器件都可以被连接到总线上。
由于CAN总线具有可靠性高、实时性好、成本合理等优点,逐渐被应用于如船舶、航天、工业测控、自动化、电力系统、楼宇监控等其他领域中。
【关键字:
CAN控制局域网,总线,起源,工作原理,数据帧
第一章总线的工作原理
1.1引言:
CAN总线以其高性能,高可靠性及独特的设计,在现代分布式测量与控制技术领域中的应用已愈来愈广泛。
同时由于CAN总线自身的特点,其应用范围目前已不再局限于汽车行业,而是转向铁路、交通、自动控制、航空航天、航海、机械工业、机器人、医疗器械及安防等领域发展。
CAN总线的发展已经颇具规模,它不仅在汽车领域的应用占据一定优势,在其他工业领域内也占有一席之地。
这要归根于通信技术的不断进步,对通讯本身的要求不断提高,对性价比的关注也逐步提升,这种形势下CAN总线的优势在于其优越的抗干扰能力和性价比。
尽管CAN总线有一定局限,甚至还有漏洞,但对CAN总线的改进还在继续,相信在未来的发展中,CAN总线通过不断的更新和改进,能够取得更大的进步。
1.2can总线的起源
20世纪80年代初期,由于欧洲汽车工业发展发展的需要,最先由德国Bosch公司提出的CAN总线方案以解决装置间的通信问题。
当时,由于消费者对于汽车功能的要求越来越多。
而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂,同时意味着需要更多的连接信号线,提出CAN总线的最初动机就是为了解决现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的新号线。
于是,他们设计了一个单一的网络总线。
所有的外围期间可以被挂接该总线上。
Bosch公司于1986年正式公布了这一总线,且命名为CAN总线。
1987年Intel公司生产出了首枚CAN控制器(82526).不久,Philips公司也推出了CAN控制器82C200.1993年CAN成为国际标准ISO11898(高速应用)和ISO11519(低速应用)。
为促进CAN以及CAN协议的发展,1992在欧洲成立了国际用户和厂商协会(CANinAutomation,简称CIA)在德国Erlangen注册,CIA总部位于Erlangen。
CIA提供服务包括:
发布CAN的总类技术规范。
根据CIA组织统计,截止到2002年底,约有500多家公司加入这个协会。
协作开发和支持各类CAN高层协议。
CAN接口已经被公认为微控制器(Microcontroller)的标准串行接口。
应用在各种分布内嵌系统。
该协会已经为全球应用CAN技术的权威。
1.3can总线的工作原理
总线是一种有效支持分布式控制或定时控制的串行通讯网络它以半双工的方式工作一个节点发送信息多个节点接收信息实现了全分布式多机系统提高了数据在网络中传输的可*性。
CAN总线的信息存取利用了广播式的存取工作方式信息可以在任何时候由任何节点发送到空闲的总线上每个节点的CAN总线接口必须接收总线上出现的所有信息因此各节点都设置有一个接收寄存器该寄存器接收信息然后根据信息标文符决定是否读取信息包中的数据以判断是否使用这一信息。
当CAN总线上的一个节点(站)发送数据时,它是以报文形式(编码过的通信数据块)广播给网络中所有节点的。
而对每个节点来说,无论数据是否是发给自己的,都对其进行接收处理。
报文的组织形式如下:
<
每组报文开头的11位或29位字符为标识符,定义了报文的优先级与其他重要信息;
之后为数据段(比如8字节)以及其他校验码。
这种报文格式称为“面向内容的编址方案”。
在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。
当几个节点(站)同时竞争总线读取时,这种配置十分重要。
当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;
当它收到总线分配时,转为发送报文状态。
CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其他站处于接受状态。
每个处于接收状态的站对接受到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。
由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。
我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。
当所提供的新站是纯数数据接受设备时,数据传输协议不要求独立的部分有物理目的地址。
它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。
第二章can总线的特点与趋势
2.1can总线的特点
80年代末,在汽车工业中,由于众多的控制设备与测试仪器之间需要进行大量数据交换,传统的总线无法满足需求,德国BOSCH公司提出了CAN总线,这种新的串行数据通讯协议。
CAN总线即控制器局域网总线,通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。
它具有如下特点。
1.CAN是到目前为止为数不多的有国际标准的现场总线,总线协议已被国际标准化组织认证,技术比较成熟,控制的芯片已经商品化,性价比高,特别适用于分布式测控系统之间的数通讯。
2.CAN总线没有采取传统的站地址编码,不对节点进行地址规定,而是把通信数据块进行编码。
这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11位或29位二进制数组成。
这种按数据块编码的方式,使用报文的标识符来指定报文的优先级以及报文的内容,高优先级的节点享有传送报文的优先权。
还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。
采用短帧结构,每一帧的有效字节数为8个,数据传输时间短,受干扰的概率低,重新发送的时间短,从而保证了通信的实时性。
3.CAN总线采用了多主竞争式总线结构,通信介质可以是双绞线、同轴电缆或光导纤维,可以多个主站运行并且分散仲裁。
CAN总线上任意节点可以点对点,一对多及广播集中方式传送和接受数据,而且可以任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。
CAN通讯距离最大是10公里(设速率为5Kbps),最大通信速率为1Mbit/s(设通信距离为40米)。
4.CAN采用非破坏性的总线仲裁技术,即载波侦听多路访问/冲突检测(CSMA/CD)的总线仲裁方式,当多个节点同时发送数据时,优先级低的节点会主动停止发送,高优先级的节点可继续传输,节省总线仲裁时间。
避免多个节点同时开始发送消息而造成总线冲突,保证优先级高的报文能够优先发送。
5.CAN总线协议采用了完善的错误检测与错误处理机制,包括了CRC校验、错误报文自动重发、错误状态判断、临时错误自动恢复等措施,从而很好的保证了数据通信的可靠性。
节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其他操作不受影响。
CAN总线采用双线串行通信方式,检错能力强,可在高噪声干扰环境中工作。
具有实时性强、传输距离较远、抗电磁干扰能力强、成本低等优点。
可根据报文的ID决定接收或屏蔽该报文。
可靠的错误处理和检错机制,发送的信息遭到破坏后,可自动重发,报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。
CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的通信,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。
2.2CAN总线的优势
CAN(ControllerAreaNetwork)属于现场总线的一种,在传统的工业控制领域中,大部分的通信采用RS232、RS485或RS-422总线。
相比之下,RS232、RS485或RS-422总线有着通信距离近,通讯速度慢,抗干扰性能差等缺点。
通讯一般采用主从方式,通过主站查询方式进行通讯,实时性、可靠性较差。
当系统有错误,多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某些节点。
基于CAN总线的分布式控制系统在很多方面具有明显的优越性。
1.而CAN的电路结构简单,要求的线数较少,只需要两根线与外部器件互联,使得各控制单元能够通过CAN总线共享所有的信息和资源。
达到简化布线、减少传感器数量、避免控制功能重复的效果。
CAN具有的完善的通信协议,并且可以通过CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期。
2.CAN支持分布式控制或实时控制,工作于多主方式,网络上各个节点均可以在任一时刻主动发送信息,可以点对点,点对多点以及全局广播方式收发数据。
网络中的各节点都可根据总线访问优先权,采用非破坏性总线总裁技术,通信速度快,可靠性高,可大大节省了总线仲裁冲突时间,在网络负载很重的情况下,也不会出现网络瘫痪。
CAN没有采用站地址编码,而是对通信数据进行编码,这可使不同的节点同时接收到数据,这使得CAN总线的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。
3.CAN总线通过CAN控制器接口芯片的输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。
CAN总线的信号状态为2种,隐位与显位。
当隐位与显位发送出现竞争时,最终结果是显位。
在处理冲突时,由于该信号的二值且“单稳态”的特性变得简单,报错帧可以使所有节点很容易地取得一致性的数据,并且保证了节点状态的同步,这种二值特性对CAN总线的可靠性有很大保障。
而且CAN节点在出现严重错误的情况下,可以自动关闭输出,避免总线上其他节点的操作受影响,从而保证不会因个别节点出现问题,而使得总线处于“死锁”状态。
4.CAN总线具有位填充、回读、错误约束、出错自动重发等优点,同时通信速率高、通信距离远、容易实现、且性价比高。
2.3CAN总线的发展前景
CAN最初是用于汽车行业的监测、控制,用来解决汽车内部的复杂硬件信号接线的低成本通信总线,现今CAN总线已经被公认为一种可靠的网络总线在汽车上得以应用。
CAN总线共享信息和资源,总线的数据通信提高了系统可靠性、实时性、灵活性、可维护性,更好地匹配和协调各个控制系统。
随着汽车电子技术的发展具有高度灵活性、简单的扩展性、优良的抗干扰性和处理错误能力的CAN总线,越来越受到人们的重视,它在汽车领域上得到了广泛的应用。
世界上一些著名的汽车制造厂商,都采用了CAN总线来实现汽车内部控制系统与各检测和执行机构间的数据通信。
近年来CAN总线已发展成为汽车电子系统的主流总线,已形成国际标准的现场总线,并由ISO正式颁布了ISO11898CAN高速应用标准和ISO11519CAN低速应用标准,这为CAN总线的标准化、规范化铺平了道路。
CAN总线以其高性能,高可靠性及独特的设计,在现代分布式测量与控制技术领域中的应用已愈来愈广泛。
第三章can总线的协议
CAN协议以国际标准化组织的开放性互联模型为参照,规定了物理层、传输层和对象层,实际上相当于ISO网络层次模型中的物理层和数据链路层。
在发送过程中,数据、数据标识符及数据长度,加上必要的总线控制信号形成串行的数据流,发送到串行总线上,接收方再对数据流进行分析,从中提取有效的数据。
CAN协议的一个最大特点是废除了传统的站地址编码。
而代之以对通信数据块进行编码,数据在网络上通过广播方式发送。
其优点是可使网络内的节点个数在理论上不受限制(实际中受网络硬件的电气特性限制),还可使同一个通信数据块同时被不同的节点接受,这在分布式控制系统中非常有用。
CAN2.0A版本规定标准CAN的标识符长度为11位,同时在2.0B版本中又补充规定了标识符长度为29的扩展格式,因此理论上可以定义2的11次方或2的19次方种不同的数据块。
遵循CAN2.0B协议CAN控制器可以发送和接受标准格式报文(11位标识符)或扩展的格式报文(29位标识符),如果禁止CAN2.0B则CAN控制器只能发送和接受标准格式报文而忽略扩展格式的报文,但不会出现错误。
每个豹纹数据读取按长度为0-8个字节,可满足通常工业领域中控制命令、工作状态及监测数据传送的一般要求。
同时,8个字节占用总线时间不长,从而保证了通信的实时性。
CAN协议采用CRC检验并提供相应的错误处理功能,保证了数据通信的可靠性。
3.1can总线的分层结构
CAN遵从OSI模型划分二层:
数据链路层、物理层(本层又分为MAC和LLC)。
CAN的数据链路层是其核心内容,其中逻辑链路控制子层(LogicalLinkcontrol,LLC)完成过滤、超载,媒体访问控制子层(MediumAeeesscontrol,MAC)完成数据封装/拆装、帧编码、媒体访问管理、错误检测、出错标定、应答、串行转换等功能。
3.2can总线的帧格式
一报文传送由以下四种类型帧
1_zi_x_{H_T_}8H6数据帧:
数据帧携带数据从发送器至接收器。
2.2M3O-?
t_I9P远程帧:
总线单元发出远程帧,请求发送具有同一识别符的数据帧
2I_q:
3
错误帧:
任何单元检测到一总线错误时就发送错误帧
_Q$F_K_i;
s4g_w_4
超载帧:
用来在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。
5c_xk_}#V,BEDA中国门户网站d
G%\{_g_二帧格式介绍
k_{.V_}:
l:
wA1
数据帧EDA中国门户网站%Bw_uB*u,Zy;
P
数据帧由7个不同的位场组成,即帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结束。
7bT_d
c-C
I'
K2
远程帧
_S_?
_B_X_M_}_[/l远程帧由6个不同的位场组成,即帧起始、仲裁场、控制场、CRC场、应答场、帧结束。
EDA中国门户网站___j;
c6x!
~$~_u
3错误帧EDA中国门户网站7K5z
u_]_w
错误帧由两个不同的场组成。
第一个场是错误标志,用做为不同站提供错误标志的叠加;
第二个场是错误界定符。
EDA中国门户网站)v_?
)o&
p_Qw,K_g/z
4
超载帧
:
G__
w9Q_L7i0超载帧包括两个位场:
超载标志和超载界定符。
_K2?
+S!
Z}0%};
dZX_|8U'
S_p
三帧格式中重点部分介绍
.~h2b&
I_M_c{0x01
帧起始
_K*__b^)B;
n0T帧起始标志数据帧和远程帧的起始,由一个单独的“显性”位组成。
由控制芯片完成。
_C_^_i+T_F-Z2
仲裁场EDA中国门户网站_W7H%P_P_K_J#Q
仲裁场包括标识符和远程发送请求位(RTR)。
_@+M_\!
b/W)M#?
_B0P!
B0对于CAN2.0A标准,标识符的长度为11位。
RTR位在数据帧中必须是显性位,而在远程帧必须为隐性位。
EDA中国门户网站
OF_}_xa&
?
_|
对于CAN2.0,标准格式和扩展格式的仲裁场不同。
在标准格式中,仲裁场由11位标识符和远程发送请求位组成。
在扩展格式中,仲裁场由29位标识符和替代远程请求位(SRR)、标志位(IDE)和远程发送请求位组成。
EDA中国门户网站#k_w^_@)?
$L
仲裁场的作用之一是说明数据帧或远程帧发送目的地;
之二是指出数据帧或远程帧。
仲裁场的数据由软件编程配置SJA1000完成。
_q.d_z_H"
\_a2UW6H,|3
控制场EDA中国门户网站4R#C)a_o_tq)u_b
控制场由6个位组成,说明数据帧中有效数据的长度。
控制场的数据由软件编程配置SJA1000完成。
EDA中国门户网站_f_m_q_}_G_A
数据场EDA中国门户网站_L_X_h_UO(L1BV_s
数据场由数据帧中的发送数据组成。
它可以为0~8个字节。
数据场的数据由软件编程配置SJA1000完成。
EDA中国门户网站!
w2X/b_[!
~_\
j
5CRC场
5MI_oO)O_S/I0CRC场包括CRC序列,这部分由SJA1000控制芯片完成。
EDA中国门户网站_C
w.R/Q;
Q
_l
6应答场EDA中国门户网站_y7[&
\J__Q_b!
J
应答场长度为两个位,包括应答间隙和应答界定符。
由SJA1000控制芯片自动完成。
_k^;
{!
NZ9j0q3P4Z7帧结束_q_PP_g_r_dXWu_W_K-r0
每一个数据帧和远程帧均由一标志序列界定,这个标志序列由7个“隐性”位组成。
这部分由SJA1000控制芯片自动完成。
&
|.o)B_?
+__p总之,仲裁场、控制场、数据场由软件编程配置SJA1000完成;
帧起始、CRC场、应答场、帧结束由CAN总线控制芯片SJA1000自动完成。
第四章总线的应用
4.1总线的应用范围
同时由于CAN总线自身的特点,其应用范围目前已不再局限于汽车行业,而是转向铁路、交通、自动控制、航空航天、航海、机械工业、机器人、家庭、医疗器械及安防等领域发展。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- can 总线 智能 控制系统 中的 应用