型号: PXF0190
CAN总线基础及其发展
摘 要: CAN (Controller Area Nework) 总线属于现场总线(field Bus) 的范畴。介绍一种基于CAN 总线的网络监控系统方案。该系统由上位机(PC 机)、下位机(单片机F040) 组成, 采用CAN 卡和单片机本身集成的CAN 模块作为上、下位机通讯接口。上位机与CAN 卡的接口采用VB 编写, 本文还给出了单片机中CAN 模块通信的数据处理方法。
关键词: CAN 总线; 单片机F040; 通信协议; 现场总线
Abstract: CAN (Controller Area Network)Bus belongs to field Bus1 This article includes a network supervise system based on
CAN Bus1 The system consists of PC and single chip processor (F040) 1 Thismethod uses CAN card and CAN model in single ch ip. Processor (F040) as communicat ion interface between PC and single ch ipp rocessor (F040) 1 Communicat ion interface betw een PCand CAN card is realized byVB1 This article int roduces communication data pocess of CAN model in single chip processor (F040).
Keywords: CAN Bus; single chipp rocessor F040; communicat ion protocol; field Bus
引言
工业数据通信与控制网络是近年来发展形成的自动控制领域的网络技术,是计算机网络、通信与自动控制技术结合的产物。随着自动控制、计算机、通信、网络等技术的发展,企业的信息集成系统正在迅速壮大,将覆盖从现场控制到监控、市场、经营管理的各个层次以及原料采购、生产加工的各个环节,并将一直延伸到成品储运销售乃至世界各地市场的供需链全过程,以适应企业管理控制一体化的应用需求。企业信息系统的发展对工业数据通信的开放性、对抵偿控制网路的偶尔功能及性能都提出了更高的要求。工业数据通信与控制网络技术正是在这种形势下逐渐发张形成的。
控制网络与现场总线基础
工业数据通信的内容可以追溯久远,但控制网络确实近些年发展形成的。工业数据通信是控制网络的基础和支撑条件,是控制网络技术的重要组成部分。通常把工业数据通信和控制网络总称为控制网络。现场总线是一种应用于生产现场,在现场设备之间、现场设备与控制装置之间实行双向、串行、多节点数字通信的技术。所谓的数据通信是指在两点货多点之间以二进制形式进行信息交换的过程。其中两点之间借助传输介质直接进行数据传输是最简答的数据通信方式。在工业领域,人们通常又会按照信帧的长短,把数据传输总线分为传感器总线、设备总线和现场总线。随着时代的进步和技术的变革。工业上出现控制网络改导致了传统控制系统结构的变革。形成了新的网络集成式控制系统。其突破以往DCS系统通中因专用网络的封闭造成的缺陷,采用开放化、标准化的解决方案,把来自于不同厂商,而运用统一标准的协议规范的自动化设备连接成控制网络,组合成各类控制系统,实现其综合自动化的各种功能。网络集成式控制系统改变了传统控制系统的机构形式。其总线式串行通信,丰富了控制信息内容创造了良好的条件。使其管理、操作更加人性化。作为网络节点的智能现场设备,具备数字计算和数字通信能力,提高了信号的测量,控制和传输精度。在其他方面。控制网络的通信系统应具有开放性。控制网络中的控制设备应具有互操作性与互用性。随着现代工业的发展,多元素化的,多功能化的设备群到处可见,如何将设备群充分利用,同时节约能源,那么就是对控制网络有了新的要求。网络是控制系统运行的动脉,是通信的枢纽。因而高度重视网络系统的开放性、互操性、通信的实时性、对环境的适应性等。控制网络基本任务是实现测量控制,这就要求了高度的实时性和有效性。控制网络还应该具有对现场环境的适应性。归根结底,控制网络的主要作用还是为自动化系统传递数字信息。
在工厂生产过程中,时时刻刻都在进行着数据通信。数据通信就像血管里的血液一样,体现着生产过程中的每个状态。而在工业数据通信中一般是与生产过程密切相关的数值、状态、指令等表达。在工业数据通信通信系统中监控计算机和具有通信能力的现场测量控制仪表是主要的通信设备,是构成控制网络的网络节点。自动化系统正式借助它们之间的数据交换来实现测量、控制、监视、操作等功能。
1.CAN总线的产生与发展
控制器局部网(CAN-CONTROLLER AREA NETWORK)是BOSCH公司为现代汽车应用领先推出的一种多主机局部网,由于其卓越性能现已广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部门。控制器局部网将在我国迅速普及推广。
随着计算机硬件、软件技术及集成电路技术的迅速发展,工业控制系统已成为计算机技术应用领域中最具活力的一个分支,并取得了巨大进步。由于对系统可靠性和灵活性的高要求,工业控制系统的发展主要表现为:控制面向多元化,系统面向分散化,即负载分散、功
能分散、危险分散和地域分散。分散式工业控制系统就是为适应这种需要而发展起来的。这类系统是以微型机为核心,将 5C 技术--COMPUTER(计算机技术)、CONTROL(自动控制技术)、COMMUNICATION
(通信技术)、CRT(显示技术)和 CHANGE(转换技术)紧密结合的产物。它在适应范围、可扩展性、可维护性以及抗故障能力等方面,较之分散型仪表控制系统和集中型计算机控制系统都具有明显的优越性。典型的分散式控制系统由现场设备、接口与计算设备以及通信设备组成。现场总线(FIELDBUS)能同时满足过程控制和制造业自动化的需要,因而现场总线已成为工业数据总线领域中最为活跃的一个领域。现场总线的研究与应用已成为工业数据总线领域的热点。尽管目前对现场总线的研究尚未能提出一个完善的标准,但现场总线的高性能价格比将吸引众多工业控制系统采用。同时,正由于现场总线的标准尚未统一,也使得现场总线的应用得以不拘一格地发挥,并将为现场总线的完善提供更加丰富的依据。控制器局部网 CAN(CONTROLLER AERANETWORK)正是在这种背景下应运而生的。由于CAN为愈来愈多不同领域采用和推广,导致要求各种应用领域通信报文的标准化。为此,1991 年 9 月 PHILIPS SEMICONDUCTORS 制订并发布了 CAN技术规范(VERSION2.0)。该技术规范包括A和B 两部分。2.0A给出了曾在CAN技术规范版本1.2 中定义的CAN报文格式,而2.0B给出了标准的和扩展的两种报文格式。此后,1993 年11 月ISO正式颁布了道路交通运载工具--数字信息交换--高速通信控制器局部网(CAN)国际标准。
2.CAN总线特点
CAN总线是德国BOSCH公司从80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通信速率可达1MBPS。CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11 位或29 位二进制数组成,因此可以定义211或229 个不同的数据块,这种按数据块编码的方式,还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。数据段长度最多为8 个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8 个字节不会占用总线时间过长,从而保证了通信的实时性。CAN协议采用CRC 检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。另外,CAN总线采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线
以及广播通信的特点。CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。CAN总线协议已被国际标准化组织认证,技术比较成熟,控制的芯片已经商品化,性价比高,特别适用于分布式测控系统之间的数通讯。CAN总线插卡可以任意插在PC AT XT兼容机上,方便地构成分布式监控系统。
3.CAN 总线技术介绍
3.1 位仲裁
要对数据进行实时处理,就必须将数据快速传送,这就要求数据的物理传输通路有较高的速度。在几个站同时需要发送数据时,要求快速地进行总线分配。实时处理通过网络交换的紧急数据有较大的不同。一个快速变化的物理量,如汽车引擎负载,将比类似汽车引擎温度这样相对变化较慢的物理量更频繁地传送数据并要求更短的延时。CAN 总线以报文为单位进行数据传送,报文的优先级结合在11 位标识符中,具有最低二进制数的标识符有最高的优先级。这种优先级一旦在系统设计时被确立后就不能再被更改。总线读取中的冲突可通过位仲裁解决。如图2 所示,当几个站同时发送报文时,站1 的报文标识符为011111;站2 的报文标识符为0100110;站3 的报文标识符为0100111。所有标识符都有相同的两位01,直到第3 位进行比较时,站1 的报文被丢掉,因为它的第3 位为高,而其它两个站的报文第3 位为低。站2 和站3 报文的4、5、6 位相同,直到第7 位时,站3 的报文才被丢失。注意,总线中的信号持续跟踪最后获得总线读取权的站的报文。在此例中,站2 的报文被跟踪。这种非破坏性位仲裁方法的优点在于,在网络最终确定哪一个站的报文被传送以前,报文的起始部分已经在网络上传送了。所有未获得总线读取权的站都成为具有最高优先权报文的接收站,并且不会在总线再次空闲前发送报文。CAN具有较高的效率是因为总线仅仅被那些请求总线悬而未决的站利用,这些请求是根
据报文在整个系统中的重要性按顺序处理的。这种方法在网络负载较重时有很多优点,因为总线读取的优先级已被按顺序放在每个报文中了,这可以保证在实时系统中较低的个体隐伏时间。对于主站的可靠性,由于CAN 协议执行非集中化总线控制,所有主要通信 http://www.51lm.cn/p/templates/cn/show.php?cid=79&aid=190