1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,现场总线控制系统,5.1.1 CAN的发展概况,这些系统由多个电控单元相互连接而成,可分为控制器、传感器、执行器等。同时各个系统之间也互相连接,进行着越来越多的数据交换。这样就需要使用大量的线束和插接器来实现互连,进行它们之间的数据交换。随着,汽车电子,技术的不断发展,这种需求的增长是惊人的(如图)。,5.1.1 CAN的发展概况,由于线束和插接器的数量不断增加,整车电子系统的复杂程度愈来愈高,其可靠性将难以保证,故障率会提高,维修会更加困难。,为了满足汽车内部信息交换量急剧增加的要求,有必要使用一种实现多
2、路传输方式的车载网络系统。这种网络系统采用串行总线结构,通过总线信道共享,减少线束的数量。,车载,网络除了要求采用总线拓扑结构方式外,必须具有极好的抗干扰能力;极强的差错检测和处理能力;满足信息传输实时性要求;同时具备故障的诊断和处理能力等。另外考虑到成本因素,要求其控制接口结构简单,易于配置。,5.1.1 CAN的发展概况,20世纪80年代,Bosch的工程人员开始研究用于汽车的串行总线系统,因为当时还没有一个网络协议能完全满足汽车工程的要求。参加研究的还有Mercedes-Benz公司、Intel公司,还有德国两所大学的教授。,1986年,Bosch在SAE(汽车工程人员协会)大会上提出了
3、CAN,1987年,INTEL就推出了第一片CAN控制芯片82526;随后Philips半导体推出了82C200。,1993年,CAN的国际标准ISO11898公布,从此CAN 协议被广泛的用于各类,自动化,控制领域。,5.1.1 CAN的发展概况,1992年,CIA(CAN in Automation)用户组织成立,之后制定了第一个CAN应用层“CAL”。,1994年开始有了国际CAN学术年会(ICC)。,1994年美国汽车工程师协会以CAN为基础制定了SAEJ1939标准,用于卡车和巴士控制和通信网络。,到今天,几乎每一辆欧洲生产的轿车上都有CAN;高级客车上有两套CAN,通过网关互联;1
4、999年一年就有近6千万个CAN控制器投入使用;2000年销售1亿多CAN的芯片;2001年用在汽车上的CAN节点数目超过1亿个,。,但是轿车上基于CAN的控制网络至今仍是各大公司自成系统,没有一个统一标准。,5.1.1 CAN的发展概况,基于CAN的应用层协议应用较通用的有两种:DeviceNet(适合于工厂底层自动化)和 CANopen(适合于机械控制的嵌入式应用)。,任何组织或个人都可以从DeviceNet供货商协会(ODVA)获得DeviceNet规范。购买者将得到无限制的、真正免费的开发DeviceNet产品的授权。,DviceNet自2002年被确立为中国国家标准以来,已在冶金、电
5、力、水处理、乳品饮料、烟草、水泥、石化、矿山等各个行业得到成功应用,其低成本和高可靠性已经得到广泛认同。,5.1.2 CAN的性能特点,有专门的国际标准ISO11898。,任一节点可在任一时刻主动发送。,报文以标识符分为不同的优先级,可满足不同的实时性要求。优先级最高的报文保证134us内得到传输。,非破坏性总线仲裁技术,大大节省了总线冲突的仲裁时间。,通过对报文滤波可实现点对点、一点对多点和全局广播等多种传送方式。,速率最高可达1Mbps,最远可达10km,节点数可达110个,标识符几乎不受限制,5.1.2 CAN的性能特点,短帧结构,传输时间短,受干扰概率低,适于工业环境,每帧信息都采用C
6、RC校验及其他检错措施,数据出错率极低。,通信介质选择灵活(双绞线、同轴电缆或光纤),错误严重情况下自动关闭输出,保证不影响总线上其他节点通信。,性价比高,器件容易购置,节点价格低。,开发技术容易掌握,能充分利用现有的单片机开发工具。,5.1.3 位数值表示和通信距离,“显性”位0和“隐性”位1,若总线上有两个以上驱动器同时分别发送“0”和“1”,其结果是总线数值为显性“0”。,CAN总线上两个节点间的最大距离,速率kbps,1000,500,250,125,100,距离 m,40,130,270,530,620,速率kbps,50,20,10,5,距离 m,1300,3300,6700,10
7、000,5.2 CAN技术规范,1991年9月BOSCH公司发布了CAN技术规范2.0,该技术规范包括A和B两部分。,2.0A给出了CAN报文的标准格式,2.0B给出了标准的和扩展的两种报文格式,1993年11月ISO正式将它颁布为:道路交通工具-数据信息交换-高速通信控制器局域网标准ISO11898。,2.0B完全兼容2.0A。所以我们介绍2.0B。,5.2.1 基本概念,位速率,在一个给定的CAN系统里,位速率是唯一且固定的,远程数据请求,通过发送远程帧,需要数据的节点可以请求另一节点发送相应数据帧,仲裁,当总线开放时任何单元均可开始发送报文,运用非破坏性逐位仲裁规则解决潜在冲突:在标识符
8、仲裁区)发送期间,每个发送器都监视总线上当前的电平,并与它发送的电平进行比较,如果相等则继续发送,如果发送一个隐性位(1)而检测到的是一个显位(0),那么此节点失去仲裁,立即停止后续位的发送。仲裁区值最小的竞争者将赢得仲裁。,5.2.1 基本概念标识符的逐位仲裁,显性,隐性,失去仲裁,节点1,节点2,线上可见,5.2.2 依据OSI模型的CAN的分层结构,位编码/解码,位定时,同步,驱动器接收器特性,逻辑链路子层LLC,接收滤波,超载通知,恢复管理,介质访问控制子层MAC,数据包装/解包,帧编码,介质访问管理,错误监测,出错标定,应答,串并转换,数据链路层,物理层,故障界定,总线故障管理,监
9、控器,5.2.3 报文传送及其帧结构,5.2.3.1 帧格式和帧类型,标准帧,11位标识符,扩展帧,29位标识符,帧类型,数据帧、远程帧、错误帧和过载帧,编码规则,1)位填充:发送器监视发送位流,连续5个相同位便自动插入一个补码位。(错误帧和过载帧以及帧结束标志不执行位填充),2)采用不归零(NRZ)编码,5.2.3.2 数据帧,由7个不同的场组成。数据场长度可为0,CAN2.0B存在标准和扩展两种帧格式,为了设计简单,可以对标准格式执行部分扩展,不一定要完全扩展,可以用整个标识符进行报文滤波,也可以把标识符屏蔽一部分进行报文滤波,仲裁场,控制场,数据场,CRC场,帧间空间,帧结束,帧起始,A
10、CK场,帧间空间,数据帧,数据帧的标准格式和扩展格式,标准格式,扩展格式,仲裁场,控制场,数据场,11位标识符,SOF,RTR,IDE,r0,DLC,仲裁场,控制场,数据场,11位标识符,SOF,RTR,IDE,DLC,18位标识符,r1,r0,SRR,数据帧的标准格式和扩展格式,帧起始(SOF),仅由一显位构成。所有站都必须同步于首先发送的那个帧起始前沿,仲裁场(标准格式),由11位标识符ID28 ID18、远程发送请求位RTR组成,其中ID高七位不可全为1(隐性)。,仲裁场(扩展格式),由29位标识符ID28 ID0、SRR位、IDE位、RTR位组成,SRR是隐性位,它用于替代标准格式的R
11、TR位。,IDE=1(隐性)代表扩展格式。IDE位在扩展格式中位于仲裁场而在标准格式中位于控制场。,数据帧的标准格式和扩展格式,控制场,由6个位组成,数据长度码,DLC3DLC0指示数据场的字节数,08,其他数值不允许使用。,保留位,r1和r0必须为0,IDE(标准格式)=0,数据场:,08个字节,8位/字节,MSB先发,CRC场,由15位CRC序列和1位CRC界定符组成。CRC界定符为一隐性位。,保留位,控制场,数据场或CRC场,数据长度码,仲裁场,IDE/r1,r0,DLC3,DLC2,DLC1,DLC0,数据帧的标准格式和扩展格式,应答场,为2位,包括应答间隙和应答界定符,不进行位填充。
12、在应答间隙时间,发送器发隐位;所有正确接收到有效报文的接收器发一个显位。,应答界定符为隐位(1)。,帧结束:,由7个隐位组成,不进行位填充。,7.2.3.3 远程帧,需要数据的节点可以发送远程帧请求另一节点发送相应数据帧,远程帧的RTR位是隐性的,它没有数据场,所以数据长度码没有意义。,5.2.3.4 错误帧,错误帧由两个不同的场组成,第一个场是不同站提供的错误标志的叠加,第二个场是错误界定符。,错误标志,分两种,主动错误标志(6个显性位)和被动错误标志(6个隐性位),检测到错误条件的“错误主动”站发送主动错误标志,这样一来所有其他站都会检测到错误条件并开始发送错误标志。叠加在一起最多12个
13、显性位,错误标志的重叠,错误界定符,帧间空间或过载帧,错误帧,数据帧,错误标志,5.2.3.4 错误帧,检测到错误条件的“错误被动”站发送被动错误标志。从那时开始,等待6个相同极性的位,一旦等到,被动错误标志就算完成,错误界定符,包括8个隐性位。一个站发送错误标志以后,就发送一个隐性位,并一直监视总线,直到发现一个隐性位,就发送其余7个隐性位。,5.2.3.5 过载帧,过载帧包括两个场:过载标志(6个显位及其叠加)和过载界定符(8个隐位),导致发送过载标志的条件:,接收器内部要求延迟下一个数据帧或远程帧,在间歇场第一或第二位检测到一个显性位,过载标志,的形式与主动错误标志一样,一个站发出过载标
14、志,其他站都将检测到过载条件并发出过载标志。,过载界定符,的形式与错误界定符一样。过载标志发送后,站就监视总线直到发现从显位到隐位的跳变,然后发送其余7个隐性位。,过载标志的重叠,过载界定符,帧间空间或过载帧,过载帧,帧结束或错误界定符或过载界定符,过载标志,5.2.3.6 帧间空间,对于数据帧或远程帧,无论它前面是什么帧,都用帧间空间来分开;但是对于过载帧或错误帧,没有帧间空间与前面帧分开,间歇场由3个隐位组成。间歇场期间不允许启动发送数据帧或远程帧。,总线空闲周期可为任意长度。此时,总线是开放的,任何站可随时发送。,间歇场,总线空闲,帧,帧间空间,帧,5.2.4 错误类型和界定,5种错误类
15、型:,位错误:发送器监视到总线位数值与发出的位数值不同。仲裁场填充位和应答间隙发出隐位而检测到显位则例外,填充错误:应该使用位填充的地方出现第6个相同位。,CRC错误:计算结果与收到的CRC不同,形式错误:固定形式的位场中出现非法位,应答错误:在应答间隙,发送器未检测到显位,5.2.4 错误类型和界定,检测到CRC错误,应在应答界定符后发送错误标志;检测到其他错误应在下一位发送错误标志。,节点的,3种故障状态,:错误主动,错误被动,总线关闭,正常情况下节点是,“错误主动”站,,此类站检测到错误时发送主动错误标志,出现错误较多的节点转为,“错误被动”站,,此类站检测到错误时只能发被动错误标志,出
16、现太多错误时节点转为,“总线关闭”状态,,此时节点不可对总线有任何影响(例如关闭输出驱动器),5.2.4 错误类型和界定,为了界定故障,在每个节点中都有两种计数发送错误计数和接收错误计数,按照以下规则计数:,接收器检出错误时,接收错误计数器加1,接收器在送出错误标志后第一位检出一个显位,接收错误计数器加8,发送器送出一个错误标志时,发送错误计数器加8,送出一个错误标志或过载标志时检测到位错误,发送错误计数器加8,报文成功发送后发送错误计数器减1,5.2.4 错误类型和界定,报文成功接收后接收错误计数器减1,但若其127则将其置为119到127之间某数,发送错误计数器127或接收错误计数器127
17、节点置“错误被动”状态,发送错误计数器255,节点置“总线关闭”状态,两个计数器均小于等于127,错误被动节点置为错误主动节点,在检测到总线上连续11个隐位发生128次后,总线关闭节点变为错误主动节点且两个计数器清0,5.2.5 位定时与同步,一个标称的位时间分为:同步段、传播段、相位缓冲段1、相位缓冲段2。,同步段用于同步各节点,正常情况下跳变沿落在此段内,传播段用于补偿网络内的传输延时,采样点时刻读取的电平代表这个位的电平,同步段,4时间份额,1时间份额,1位时间=,10时间份额,传播段,1时间份额,4时间份额,相位缓冲段1,相位缓冲段2,采样点,5.2.5 位定时与同步,时间份额由振荡
18、器周期分频而得,各时间段长度为:同步段1份额,传播段18份额,相位缓冲段1,18份额,相位缓冲段2,Max(相位缓冲段1,信息处理时间),其中信息处理时间=2份额。一个位的总时间份额数为825,可以编程。,同步的规则:,在总线空闲时,只要检测到一个隐性到显性的边沿,就执行一次硬同步(以该边沿作为同步段),在总线不空闲时,若边沿落在同步段以外,则按其与同步段之差执行再同步:,5.2.5 位定时与同步,再同步情况:边沿落在同步段以后,则把所差份额加到相位缓冲段1,再同步情况:边沿落在同步段以前,则从相位缓冲段2减去所差份额,再同步所加减的份额有个上限,该上限可取值14个时间份额,但不可大于相位缓冲
19、段1。,因为有位填充规则,所以可用于再同步的边沿在一定时间内总会出现。最大可能时间间隔是29个位。,一个位时间内只能执行一次同步,一般只把隐性到显性的边沿用于同步,5.3 CAN控制器和CAN收发器简介,5.3.1 CAN控制器的作用,完成CAN规范所规定的物理层和数据链路层大部分功能,有微处理器接口,易于连接单片机,结构分两种类型,独立IC或与单片机集成在一起,SJA1000属于前者,属于后者的有:PHILIPS的87C591、LPC2119,西门子的C167C,INTEL的80C196CA等,都遵循CAN2.0规范,掌握其中一种就可触类旁通,5.3.2 CAN控制器SJA1000主要特性,
20、28引脚,可与INTEL系列或MOTOROLA系列微处理器接口,支持CAN2.0A和CAN2.0B规范,支持11位和29位标识符,64字节先进先出(FIFO)接收缓冲器,通信速率最高1Mbps,CAN输出驱动器可配置,工作温度-40125,扩展的报文验收滤波器,可置成单滤波或双滤波模式,CAN控制器SJA1000在系统中的位置,传感器,执行元件,MMI,模块控制器,CAN控制器,CAN收发器,T,X,R,X,传感器,执行元件,MMI,微控制器,SJA1000,82C250,T,X,R,X,CAN总线,分布模块1,分布模块2,SJA1000的模块结构,发送缓冲区,验收滤波器,接收FIFO,CAN
21、2.0B核心模块,接口管理逻辑,主控制器,收发器,SJA1000,CAN总线线路,SJA1000发送缓冲器的布局,CAN地址,内容,16,TX帧信息,17,TX标识码1,18,TX标识码2,19,TX数据字节1,20,TX数据字节2,21,TX数据字节3,22,TX数据字节4,23,TX数据字节5,24,TX数据字节6,25,TX数据字节7,26,TX数据字节8,27,未用,28,未用,标准帧格式,CAN地址,内容,16,TX帧信息,17,TX标识码1,18,TX标识码2,19,TX标识码3,20,TX标识码4,21,TX数据字节1,22,TX数据字节2,23,TX数据字节3,24,TX数据字
22、节4,25,TX数据字节5,26,TX数据字节6,27,TX数据字节7,28,TX数据字节8,扩展帧格式,SJA1000接收缓冲器(FIFO)的布局,地址,内容(标准帧),内容(扩展帧),16,RX帧信息,RX帧信息,17,RX标识码1,RX标识码1,18,RX标识码2,RX标识码2,19,RX数据字节1,RX标识码3,20,RX数据字节2,RX标识码4,21,RX数据字节3,RX数据字节1,22,RX数据字节4,RX数据字节2,23,RX数据字节5,RX数据字节3,24,RX数据字节6,RX数据字节4,25,RX数据字节7,RX数据字节5,26,RX数据字节8,RX数据字节6,27,RX数据
23、字节7,28,RX数据字节8,SJA1000接收标准帧报文的单滤波器配置,标识符,数据字节12,SJA1000接收扩展帧报文的单滤波器配置,29位标识符,SJA1000接收标准帧报文的双滤波器配置,SJA1000接收扩展帧报文的双滤波器配置,SJA1000与单片机典型接口电路,5.3.3 CAN收发器82C250主要特性,符合ISO11898标准,最高速率1Mbps;,抗汽车环境瞬间干扰,具有保护总线能力;,斜率控制,降低射频干扰RFI;,热保护以及电源和地短路保护;,低电流待机模式;,未上电的节点对总线无影响;,可连接110个节点;,工作温度-40+125。,5.3.3 CAN收发器82C2
24、50主要特性,内部具有限流电路,可防止发送输出级对电源、地或负载短路。虽然短路出现时功耗增加但不至于损坏器件。若结温超过160,则两个输出端电流限将减小,从而限制了芯片温升。器件的所有其他部分将继续工作。双线差分驱动有助于抑制汽车等恶劣电器环境下的瞬变干扰。,5.3.3 CAN收发器82C250,PCA82C250收发器的典型应用如图。SJA1000的RX和TX分别通过光电隔离电路连接到82C250,82C250的差动收发端CANH和CANL连接到总线电缆。输入R,S,用于模式控制。V,ref,输出电压是0.5Vcc,(Vcc=5V)。,CAN总线系统智能节点硬件设计,5.4 DeviceNe
25、t简介,5.4.1 DeviceNet技术概述,如图,在Rockwell提出的三层网络结构中,DeviceNet处于最底层,即设备层。,5.4.1 DeviceNet技术概述,工业控制网络底层节点相对简单,传输数据量小,但节点数量大,要求节点费用低。,针对以上通信要求,DeviceNet可以提供:,低端网络设备的低成本解决方案;,低端设备的智能化;,主从以及对等通信的能力。,DeviceNet有两个主要用途:,传送与低端设备关联的面向控制的信息;,传送与被控系统间接关联的其他信息(例如配置参数)。,5.4.1 DeviceNet技术概述,物理/介质特性,主干线分支线结构;,最多支持64个节点;
26、无需中断网络即可解除节点;,同时支持网络供电(传感器)及自供电(执行器)设备;,使用密封式或开放式连接器;,接线错误保护;,数据波特率可选125、250、500kbps;,标准电源插头,电源最大容量可达16A;,内置式过载保护。,5.4.1 DeviceNet技术概述,通信特性:,物理信号及MAC使用CAN;,基于连接概念的协议,要与设备交换信息须先与它连接;,典型的请求/响应方式,适用于两个设备间多用途的点对点报文传递;,I/O数据的高效传输;,为长度大于8字节的报文提供分段服务;,重复节点地址(MAC ID)的检测。,表5.4.1 DeviceNet的主要技术特点,网络大小,最多64个节
27、点,每个节点可支持无限多的I/O,网络长度,端端网络距离随网络传输速度而变化,波特率,距离,125kb/s,500m,250kb/s,250m,500kb/s,100m,网络模型,生产者/消费者模型,数据包,08字节,总线拓扑结构,线性(干线/支线),总线供电,总线寻址,点对点(或一对多);多主站和主从;轮询或状态改变(基于事件),系统特性,支持设备的热插拔,无需网络断电,5.4.1 DeviceNet技术概述,DeviceNet的通信模式,在现场总线领域常用的通信模式有两种:,(a)源/目的模式:,(b)生产者/消费者模式:,源/目(点对点)通信模式的缺点:,多个节点间同步动作困难;,浪费带
28、宽,源节点必须多次发送给不同节点。,生产者/消费者模式的特点:,一个生产者,多个消费者;,数据更新在多个节点同时发生;,提供多级优先,适用于实时I/O数据交换。,源节点地址,目的节点地址,数据,校验,标识符,数据,校验,5.4.1 DeviceNet技术概述,DeviceNet的通信模型:,5.4.2 DeviceNet的物理层媒体访问单元,媒体访问单元包括收发器、连接器、误接线保护电路、稳压器和光隔离器。,收发器可采用市面上的集成CAN收发器。注意需保证所选符合DeviceNet规范。,5.4.2 DeviceNet的物理层媒体访问单元,误接线保护(MWP)电路如图,要求节点能承受连接器5根
29、线的各种组合的接线错误。在U+电压高达18V时不会造成永久损害。VD1防止U-端子误接了U+电压;VT1作为电源线上接入的开关防止U-断开造成损害。,5.4.2 DeviceNet的物理层传输介质,拓扑结构:典型是干线分支方式,如图。干线末端必须有终端电阻。线缆包括粗缆(干线)、细缆(支线)。支线最长6m,允许连接多个节点。只允许在支线上有分支结构。总线线缆中包括24VDC电源线、信号线及屏蔽线。总线支持有源和无源设备,对有源设备提供专门设计的光隔离收发器。,5.4.2 DeviceNet的物理层传输介质,终端电阻:121,,1%金属膜电阻,1/4 W,终端电阻不可包含在节点中。(如包含很容易
30、错误导致阻抗太高或太低),连接器:5针,即1对信号线、1对电源线和1根屏蔽线。包括密封式和非密封式连接器。,DeviceNet连接器,5.4.2 DeviceNet的物理层传输介质,设备分接头:设备直接通过端子或通过支线连接到网络。,电源分接头:电源分接头不同于设备分接头,它包含(1)连在电源U+上的肖特基二极管,(2)两根熔丝或断路器,防止总线过电流而损坏电缆和连接器。,干线的额定电流为8A。也允许外部供电的设备(如电动机起动器、阀门驱动器等)连到总线,但是要有光电隔离。,DeviceNet应该一点接地。如果多点接地会造成接地回路;如果不接地将容易受到静电以及外部噪声的影响。,5.4.3 D
31、eviceNet的数据链路层,DeviceNet的数据链路层遵循CAN协议规范,并通过CAN控制芯片实现。,MAC帧:在CAN定义的4种帧格式(数据帧、远程帧、超载帧、错误帧)里面,DeviceNet不使用远程帧。,总线仲裁机制:,CSMA/NBA(带非破坏性逐位仲裁的载波侦听多址访问),即CAN的仲裁机制,错误诊断和故障界定机制:同CAN。,5.4.4 DeviceNet的应用层,5.4.4.1 连接的概念,OSI 7层协议中连接的概念:层之间通过接口提供两种服务:面向连接的服务和无连接的服务,面向连接:服务双方必须先建立可用连接,然后利用该连接完成数据传送,最后还要释放建立连接时所需资源。
32、这种服务典型的例子是有线电话系统。,无连接:要传递的数据自身携带目的地址信息,因而可以有不同的路由选择。这种服务的典型例子是邮寄系统。另外,为了增强服务的性能,可以引入确认(acknowledgement)信息,这以牺牲一定的传输时间和网络负载为代价。,5.4.4.1 连接的概念,计算机网中“连接”可以分为不同的层次:,实际物理媒介连接:典型的点对点连接,虚电路:通过路由表、队列缓存和相关软件实现。这种连接一般用于通信子网的连接,而在控制网络中基本不用。,面向连接的服务:使用软件实现虚拟的连接,与其他任何子层都没有关系。这种连接一般用于应用层的连接,通过一定的技术措施来达到“连接”的效果,给服
33、务调用者造成存在“连接”的“错觉”,其内部实现也许既无物理连接也无虚电路连接。,DeviceNet是基于“连接”的网络,两个节点在开始通信前必须事先建立连接,这种连接是逻辑上的关系,并不是物理上实际存在的。,5.4.4.1 连接的概念,DeviceNet 的连接提供了“应用”之间的路径。当建立连接时,与连接相关的传送会被分配一个连接ID(CID)。如果连接包含双向交换那么应当分配两个连接ID值。,DeviceNet建立在标准CAN2.0A协议之上,并使用11位标准报文标识符,可分成4个单独的报文组如下表:,5.4.4.2 DeviceNet的对象模型,连接对象,显式报文,I/O报文,对象模型为
34、管理和实现DeviceNet 产品的属性(可见特性的描述)、服务(支持的功能)和行为(如何响应特定事件)提供了一个模板。,节点内对象大体可分为通信对象和应用对象两类。,节点,5.4.4.2 DeviceNet的对象模型,模型为每个属性提供了由4 个数字组成的寻址方案,它们分别是节点地址(MAC ID)、对象类标识符、实例编号和属性编号。这四级地址与显式报文连接相结合,将数据从DeviceNet 网络上的一点传送到另一点。下表列出四个地址组件的范围:,地 址,最 低,最 高,节点,0,63,类,1,65535,实例,0,65535,属性,1,255,5.4.4.3 DeviceNet设备里的对象
35、类,标识对象类标识符=01;一般只包含一个实例(1#实例),该实例的属性有:供货商ID、设备类型、产品代码、版本、状态、序列号、产品名称等。,报文路由对象类标识符=02;一般只包含一个实例(1#实例),该对象向其他对象传送显式报文。该对象一般不具有外部可视性。,DeviceNet对象类标识符=03;提供了节点物理连接的配置及状态。一个物理网络接口对应一个DeviceNet对象。,组合对象组合多个应用对象的属性,便于访问。例如多个应用对象I/O数据的组合。,5.4.4.3 DeviceNet设备里的对象类,连接对象DeviceNet 产品一般至少包括两个连接对象。每个连接对象代表DeviceNe
36、t 网络上两节点间虚拟连接中的一个端点。两种连接类型分别称为显式报文连接和I/O 报文连接。显式报文包括属性地址、属性值和服务代码来描述所请求的行为。I/O 报文只包含数据。I/O 报文中,所有有关如何处理数据的报文都包含在与该I/O 报文相关的连接对象中。,参数对象,在带有可设置参数的设备中要用到参数对象。每个实例代表一个参数,每个参数的属性包括它的值、范围、文本和限制等。,应用对象通常设备中至少有一个应用对象。DN规范的对象库中有大量的标准应用对象。,5.4.4.4 DeviceNet的报文,DeviceNet 应用层定义了如何分配标识符,如何用CAN 数据区指定服务、传送数据。,Devi
37、ceNet 使用更为有效的,生产者消费者模式,,取代了传统的源目的传输方法。该模式要求对信息打包,使它具有数据标识区。标识符还提供仲裁的手段,以便更高效传送I/O 数据,并供多个消费者使用。,拥有数据的设备生产数据报文,所有需要数据的设备在总线上监听报文,识别出相应的标识符后就消费此数据。采用生产者消费者模式,报文将不再专属于特定的源或目的,例如机组控制器发出的一个报文,用很窄的带宽就可以供多个电动机起动器使用。,5.4.4.4 DeviceNet的报文,DeviceNet 定义了两种不同类型的报文,称作I/O 报文和显式报文。,I/O 报文,适用于传输应用和过程数据。I/O数据总是从一个“生
38、产”应用传输到多个“消费”应用。,I/O报文格式的最重要的特性是完全利用了CAN数据场来传输过程数据。连接的端点通过CAN报文标识符来识别过程数据的重要性。每个I/O报文使用1个优先级高的CAN标识符。,I/O 报文通过一点或多点连接进行报文交换。报文的含义由连接ID(CID,CAN 标识符)指示,建立连接就是预先规定该报文的发送和接受设备,包括源和目的对象的属性,以及数据生产者和消费者的地址。,5.4.4.4 DeviceNet的报文,显式报文,则适用于两个设备间多用途的点对点传送,采用典型的请求-响应通信方式,常用于节点的配置、问题诊断等。显式报文通常使用优先级低的连接标识符。,显式报文传
39、送通过显式连接对象来实现,在设备中建立显式连接对象。显式报文请求指明了对象、实例和属性,以及所要调用的特定分类服务。,显式报文格式最重要的特性是CAN标识符场的任何一部分都不用于显式报文传输协议。所有协议都包含在CAN数据场当中。CAN标识符场用作连接ID。设备之间的每个显式连接通道需要2个CAN标识符,一个用于请求报文,另一个用于响应报文。标识符在连接建立时确定。,5.4.4.4 DeviceNet的报文,I/O报文的格式,如下:,显式报文的格式,如下:,CAN帧头,应用I/O数据,CAN帧尾,CAN帧头,协议区&特殊服务数据,CAN帧尾,08字节,08字节,5.4.4.4 DeviceNe
40、t的报文,DeviceNet 为长度大于8 字节的报文提供了,分段服务,。大的I/O 报文可以分割成为任意多的标准I/O 报文。显式报文也同样可以进行分段。分段服务为DeviceNet 提供了更多的可扩展性和兼容性,保证了将来更加复杂、更智能化的设备可以加入到DeviceNet 网络上。在不改变基本协议和连接模型的基础上DeviceNet 面向对象的设计和编址方式使其有相当大功能扩展余地。,另一方面设备通信也可以非常简单。一个含两个报文连接的简单从机设备的应用(1 个I/O 报文,1 个显式报文),用4K ROM 和175 字节RAM的CPU(如Motorola 68HC05X4)就可以实现。
41、5.4.4.4 DeviceNet的报文,报文分段服务如下图所示:,要发送的报文,重组后的报文,Frag#1,Frag#2,Frag#3,Frag#1,Frag#2,Frag#3,对I/O报文,若连接对象“长度”属性大于8字节,使用分段协议。对显式报文,在报文头中有一位指出是否分段。,5.4.4.4 DeviceNet的报文,字节偏移,位,7,6,5,4,3,2,1,0,0,1,2,报文体,7,字节偏移,位,7,6,5,4,3,2,1,0,0,分段协议,1,2,分段报文体,7,不分段I/O报文数据场格式,分段I/O报文数据场格式,分段类型,分段计数器,表明是首段、中间段还是尾段,每段加1,循
42、环计数,5.4.4.4 DeviceNet的报文,字节偏移,位,7,6,5,4,3,2,1,0,0,报文头,1,2,报文体,7,字节偏移,位,7,6,5,4,3,2,1,0,0,报文头,1,分段协议,2,分段报文体,7,不分段显式报文数据场格式,分段显式报文数据场格式,Frag,XID,MAC ID,1=要分段,有效性识别码,0、1交替,从站必须照原样回送,R/R,服务代码,服务特定变量,0=请求报文,1=响应报文,5.4.4.5 CAN标识符的使用,CID包含报文组ID、该组中的报文ID、设备MAC ID。报文ID根据报文的含义来分配。,报文组1,分配了1024个CAN标识符(000H 3F
43、FH)。该组中每个设备最多可拥有16个不同的报文。同组报文的优先级主要由报文ID决定。2个设备同时发送报文则报文ID号较小的设备优先。报文组1通常用于 I/O报文交换应用数据。,5.4.4.5 CAN标识符的使用,报文组2,分配了512个标识符(400H5FFH)。该组的大多数报文ID可选择定义为“预定义主/从连接集”。其中1个报文ID定义为网络管理。优先级主要由设备地址(MAC ID)决定,其次由报文ID决定。如果要考虑各位的具体位置,那么带8位报文滤波的CAN控制器可以根据MAC ID滤出自身的报文组2报文。,5.4.4.5 CAN标识符的使用,报文组3,分配了,448个标识符(600H7
44、BFH),具有与报文组1相似的结构。与报文组1不同的是,它主要交换低优先级的过程数据。此外,该组的主要用途是建立动态的显式连接。每个设备可有7个不同的报文,其中2个报文保留作未连接报文管理器端口(UCMMPort)。,5.4.4.5 CAN标识符的使用,报文组4,分配了,分配了48个CAN标识符(7C0H7EFH),不包含任何设备地址,只有报文ID。该组的报文只用于网络管理。通常分配4个报文ID用于“离线连接集”,该集报文ID为2C2F,用于通信故障的恢复。,其它16个CAN标识符(7F0H7FFH)在DeviceNet中被禁止。,5.4.4.6 DeviceNet连接的建立,只有当对象之间已
45、建立一个连接时,才能通过网络进行报文传送。DeviceNet规定了两种类型连接:,I/O 连接,在一个生产应用及一个或多个消费应用之间提供了专用的,具有特殊用途的通讯路径。特定的应用和过程数据通过这些路径传输;,显式报文连接,在两个设备之间提供了一个通用的、多用途的通讯路径。显式报文连接提供典型的面向请求/响应的网络通讯方式。,5.4.4.6 DeviceNet连接的建立,DeviceNet节点在开机后能够立即寻址的唯一端口是“非连接信息管理器端口”(UCMM端口)和预定义主/从连接组的“Group2非连接显式请求端口”。当通过UCMM端口或者Group2非连接显式请求端口建立一个显式报文连接
46、后,这个连接可用于从一个节点向其它节点传送信息,或建立I/O信息连接。一旦建立了I/O信息连接,就可以在网络设备之间传送I/O数据。,通过UCMM端口可以动态的建立显式信息连接。一个支持预定义主/从连接组,并且具有UCMM功能的设备称为Group 2服务器。一个Group 2服务器可被一个或多个客户机通过一个或多个连接进行寻址。,5.4.4.7 预定义的主从连接组,DeviceNet 应用层协议功能很强,设备间的连接允许动态配置。但考虑到有些设备根本不需要也没有资源去使用这一强大功能,DeviceNet 指定了一套称为,预定义主/从连接组,的CID,用来简化主/从结构中I/O 数据的传送。,许
47、多设备要实现的功能在设计时就已经预先决定了(如感受压力、起动电动机等等),因此这些设备将要生产或消费的数据的类型和数量在通电前就已经知道了。这些设备通常提供输入数据或请求输出数据和配置数据。预定义主/从连接组可以满足设备的这些要求。,5.4.4.7 预定义的主从连接组,预定义主/从连接组用于简单而快速地建立一个连接。当使用预定义的主/从连接组时,客户机(主站)和服务器(从站)之间只允许存在一个显式连接。由于在预定义主/从连接组定义内已省略了创建和配置应用与应用之间连接的许多步骤,可以使用较少的网络和设备资源来实现DeviceNet通讯。,5.4.4.7 预定义的主从连接组,不具有UCMM功能,
48、只支持预定义主/从连接组的从设备,被称为DeviceNet中的,仅限Group 2服务器,。只有分配它的主站才可以寻址仅限Group 2的服务器。仅限Group 2的设备能够接收的所有报文都在报文组2中被定义。支持预定义主/从连接组对设备制造商来说代表了一个简单实现的方案。,绝大多数现有的DeviceNet设备都是基于预定义的主/从连接组,因为这在终端设备上实现起来比较简单。,5.4.4.7 I/O数据触发方式,DeviceNet支持的I/O数据触发方式有:位选通、轮询、状态改变、循环。,位选通,:主站发出位选通命令报文,其中数据域的64个位对应网络上64个可能的节点,位=1的时候表示要求该节
49、点发送I/O数据(最大8Byte)。,5.4.4.7 I/O数据触发方式,轮询,:位选通方式只能传送少量I/O数据,而轮询命令和响应报文则可在主从站之间传送任意数量的数据(分段或不分段)。轮询命令是主站发往从站的命令和输出数据,响应是从站的回答(输入数据)。,循环,:适用于一些模拟设备,可以根据设备信号产生的快慢灵活设定循环数据交换的时间间隔。这样就可以降低不必要的通信流和包处理,可以为改变更快的、对实时性要求更严格的I/O 数据保留带宽。例如,在慢速PID 回路中的温度传感器可以将周期设置为500ms,而主机可能是每30ms 扫描一次所有的设备。,5.4.4.7 I/O数据触发方式,状态改变
50、此方式用于离散的设备,使用事件触发的方式,当设备状态发生改变时,才发生通信,而不是由主设备不断地查询。,为了确保消费数据的设备知道数据生产者仍处于活动状态,DeviceNet 提供一个间隔可调节的背景心跳。当状态改变或心跳计时器超时时就发送数据。该服务保证连接的有效性,通知数据消费者它的数据源设有任何故障。这样控制器就不必再定期发送仅仅是确定设备是否活动的请求。在多点传送时这种方式比较有效。,5.4.4.8 重复MAC ID检测,DeviceNet的每一个物理连接必须被赋予一个唯一的MAC ID,不可重复。由于MAC ID可能是人工设置的(比如拨码开关),所以MAC ID重复的错误是不能完
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818