您的位置:控制工程论坛网论坛 » 现场总线 » CAN总线知识汇总贴

  • hlliu

    hlliu   |   当前状态:离线

    总积分:80  2024年可用积分:0

    注册时间: 2008-10-21

    最后登录时间: 2008-10-23

    空间 发短消息加为好友

    hlliu   发表于 2008/10/23 14:40:26

    12楼 回复本楼

    引用 hlliu 2008/10/23 14:40:26 发表于12楼的内容

  • xxzj888

    xxzj888   |   当前状态:离线

    总积分:232  2024年可用积分:0

    注册时间: 2005-01-13

    最后登录时间: 2009-09-25

    空间 发短消息加为好友

    xxzj888   发表于 2008/10/25 20:24:25

    13楼 回复本楼

    引用 xxzj888 2008/10/25 20:24:25 发表于13楼的内容

  • liu12715

    liu12715   |   当前状态:离线

    总积分:2051  2024年可用积分:0

    注册时间: 2008-05-14

    最后登录时间: 2017-08-17

    空间 发短消息加为好友

    liu12715   发表于 2008/10/30 17:42:59

    同步段 
    (1)同步段用于同步总线上的各个节点,在此段内期望有一个跳变沿出现。如果跳变沿出现在同步段之外,那么沿与同步段之间的长度叫做沿相位误差。采样点位于相位缓冲段1的末尾和相位缓冲段2开始处。

    (2)传播时间段用于补偿总线上信号传播时间和电子控制设备内部的延迟时间。因此,要实现与位流发送节点的同步,接收节点必须移相。CAN总线非破坏性仲裁规定,发送位流的总线节点必须能够收到同步于位流的CAN总线节点发送的显性位。图2显示了两个总线节点的相移和传播段时间。
    14楼 回复本楼

    引用 liu12715 2008/10/30 17:42:59 发表于14楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/2 19:31:36

    pdf
    15楼 回复本楼

    引用 chenwh78 2008/11/2 19:31:36 发表于15楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/3 12:42:36

     

    CAN总线具有突出的可靠性和实时性,适合在复杂的战场环境下工作,基于CAN现场总线的时间信息数据接口,可充分保证时间信息的传送,并为电子时间引信系统提供标准的数据接口,便于应用在其它防空武器系统的嵌入式改造或未来数字化防空武器系统中。本文阐述了CAN现场总线、总线接口技术、时间信息提取电路结构、信息无线发送结构等原理,及如何利用CAN现场总线技术实现时间信息共享技术。

    CAN现场总线概述

    CAN(Controller Area Network)总线诞生和发展于汽车工业自动控制领域,是两线制多主对等总线型拓扑网络,能有效地支持具有很高安全等级的分布实时控制,是唯一有国际标准的现场总线(Field Bus),目前发展到CAN2.0B规范,应用范围极为广泛。

    CAN总线用显性和隐性两个互补的逻辑值表示01,总线接口上同时发送显性和隐性位时,总线值是显性,实现逻辑与。根据ISOOSI参考模型,CAN的层次划分为:数据链路层,包括逻辑链路控制子层和介质访问控制子层;物理层。

    CAN总线信息的报文传输有数据帧、远程帧、错误帧和过载帧四种不同类型的帧,数据帧和远程帧可以使用标准帧和扩展帧2种不同格式,标识符域的长度分别为11位和29位。CAN的帧由不同的位域组成,以数据帧为例,它包括7个不同的位域:帧起始、仲裁域、控制域、数据域、CRC域、应答域和帧结尾。

    为获得安全的数据发送,CAN总线采取错误检测和处理的措施,在报文传输过程中设有位错误、填充错误、CRC错误、格式错误和应答错误5种错误类型,对于故障的界定有错误激活、错误认可和总线关闭3种状态。

    智能节点接口技术

    节点是CAN网络上信息的起点和终点,智能节点是指具有微处理器的节点,具体有可靠性、兼容性、信息处理能力等方面的优势。智能节点硬件设计包括CAN控制芯片与MCU的连接和CAN控制芯片与PC的连接,典型的智能节点结构为MCU+CAN控制器+CAN驱动器,具有CAN模块的MCU微控制器将前2者合二为一,如PIC18F458MC68HC908GZ16P8Xc591,使操作更加方便。PC机上的智能节点设计多采用CAN适配卡,由ISA接口、双口RAM、嵌入式微处理器、CAN控制器、CAN驱动器组成。

    智能节点软件设计的核心内容为CAN节点初始化、报文发送和报文接收,还包括CAN总线错误处理、总线关闭处理、接收滤波处理、波特率参数设置、自动检测以及CAN总线通信距离和节点数的计算。

    时间提取单元和编程装置是电子时间引信系统的重要组成部分,两者协调工作完成射弹飞行时间的隔离提取、数据共享和编码发送,设计实现上采用功能电路+数字接口的方案,作为节点连接在CAN总线上。两者的机械结构设计要充分考虑与现有武器装备的机械兼容性和电磁兼容性,不能影响现有装备的结构和工作状态。

    时间提取单元 时间提取单元的功能是从武器系统火控计算单元中提取射弹飞行时间,并将其发送到CAN总线上,电路结构主要由射弹飞行时间数字量隔离提取电路、射弹飞行时间模拟量隔离提取电路、AD转换电路、控制信号(开关量)隔离采集电路、数字接口、隔离型DCDC电源模块等组成,可以提取16位射弹飞行时间数字量或1路射弹飞行时间模拟量、8位控制信号,输出CAN总线信号,使用双绞线在1km的范围内得到高达70kbps的传输速率。

    光电隔离电路采用双光耦构成电流串联负反馈电路实现模拟信号,即将两个相同型号的光耦的输入端串联组成差分负反馈,来补偿光耦的非线性电流传输系数,可以得到较好的一致性,使电路传输特性更好。典型的双光耦芯片(HCNR200)内部结构及其应用电路采用ADC0809芯片完成AD转换,隔离型DCDC选用爱立信PKV3211PI电源模块,其输入电压范围为9V36V,输出电压5V,输出功率2.5W

    编程装置 编程装置的功能是从CAN总线上获取射弹飞行的时间数据,进行数据编码,并通过射频模块转换为射频信号发送,电路结构,由数字接口、微控器、无线射频模块和监控电路组成。微控器AT89S51为电路的核心,完成数据接收、数据编码、射频模块控制、数据串行发送等功能,大大简化了电路结构;监控电路采用X25045,监控微控制器的工作状态,防止程序跑飞;数字接口与时间提取单元相同;无线射频模块采用原厂提供的标准电路板并设置为发送状态,其天线为腐蚀在PCB板上的铜线,在天线外 2m20m的范围内形成射频编程窗口。

    编程装置电路板安装在长方体形盒里,外部通过接插件分别与CAN总线(两芯插头和插座)和无线射频模块(7芯的插头和插座)相连接。整个编程装置盒固定与火炮炮箱上方,距炮口约2.5m的位置,且将射频模块PCB板有天线一侧朝向身管方向,以便获得较好的射频性能。

    16楼 回复本楼

    引用 chenwh78 2008/11/3 12:42:36 发表于16楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/3 12:44:38

     本文采用PC机并行端口EPP(Enhanced Parallel Port)协议在Windows98系统下通过对并口操作完成对CAN控制器SJA1000的控制,从而与同一网络的其他CAN节点的通讯。
     
           1转换端口电路框图

                  转换端口电路框图


      由于SJA1000的访问时间在40ns以内,所以PC在访问SJA1000时完全可以不用插入等待周期。/Wait可以由/Addrstrobe和/Datastrobe信号经过一个与非门后产生(图1)。由于SJA1000的A L E时下降沿锁存地址信号,所以将/Addrstrobe反相后与ALE相连。在EPP的数据读/写周期时,SJA1000的/RD和/WR控制信号有效,而在地址读/写周期时无效。SJA1000的/RESET脚与并行端口的/RESET脚相连,由PC机向SJA1000提供复位信号,如果并行端口的/RESET脚不用做S J A1000的复位,则可以用作外设16位地址高低字节的选通信号。SJA1000的片选/CS脚接地,始终处于选通状态。
     
           2EPP端口寄存器

           (表1)

                        EPP端口寄存器

     

      (表2)

                         EPP端口寄存器

     

      上表中IRQEN:中断使能位(1有效);ASTRB:地址选通位(0有效);INIT:初始化(1有效);DSTRB:数据选通位(0有效);WRITE:读/写状态位(0:写,1:读)。读取接口状态和控制接口都只须对相应的端口寄存器进行操作。以下为Windows环境下采用VC++嵌入汇编的收和发的子程序(基地址为378h)。

     

           
     

     
           3对CAN节点SJA1000的操作

      在进行通讯之前应先对SJA1000进行初始化,其初始化步骤依次为:a)检测硬件连接是否正确,b)进入复位状态,c)设置时钟分频寄存器,d)设置输出控制寄存器,e)设置通讯波特率,f)设置代码验收寄存器,g)设置代码屏蔽寄存器,h)设置工作模式,i)设置中断使能寄存器,j)退出复位状态完成初始化。

      通讯过程中CAN数据格式为:一帧CAN报文分为信息头和信息内容两部分。前5个字节为信息头部分(如下表地址16~20),其前29位(ID0~ID28)为标示符(4个字节),包含本信息包的目的地址。第5个字节是帧信息,FF为帧格式(0为标准帧,1为扩展帧格式),RTR为远程帧发送请求(0表示发送数据帧,1表示发送远程帧),X表示无关位,最后4位DLC是数据长度,即所发数据的实际字节数。其余8个字节是数据内容部分,即为实际所发的数据。表3说明了CAN报文数据格式(扩展帧)。

                          CAN报文数据格式


     
           4通讯实现过程

      PC机采用Visual C++建立对话框发送对象,采用主动发送方式,此时CAN网络中一定要有接收方存在,否则SJA1000将由于无应答而一直处于发送状态。接收数据则采用查寻方法(VC++采用工作线程方法很容易实现)。以下为创建线程及线程执行函数(在执行函数体中以接收数据并输出为例,不考虑CAN总线远程帧请求,SJA1000的基地址为0)。


           5结束语

      CAN总线以高抗干扰性,高速率,实时性强等优点,被广大顾客所青睐。本文介 绍了基于并口与CAN总线的转换及通讯办法,这些都是笔者在学习和实践中得来,相信能对 从事相关工作的人员有一定的启发。 

    17楼 回复本楼

    引用 chenwh78 2008/11/3 12:44:38 发表于17楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/6 12:44:54

    基于CAN总线的地铁屏蔽门系统是指系统中PSC(站台隔离门控制器)、PSA(远方操作报警盘)以及每个DCU(门控器)都是挂接在CAN总线上的一个网络结点,CAN总线分布式结构可以保证网络上任何一个结点发生故障都不会影响整个网络其它结点的正常运行,并可以通过网络对屏蔽门进行全程控制、运行参数修改、声光报警等功能。屏蔽门控制系统在一些重要的节点及命令上也要采用硬线传输,充分利用其高可靠性及抗干扰性能,保证整个控制系统的可靠性。像PSC与信号系统、PSC与PSL(站台端头控制盒)之间,以及屏蔽门的开门、关门命令的发送及反馈,均要采用硬线传输。实例如下:
     
    某线地铁有74个站台,每个站台有40扇门,每扇门有一个DCU(门控器),他根据接受到的指令控制马达和关闭机构。这些单元确保门的力量和速度在安全范围内保持最佳。他们包括监视门上传感器和执行器的状态,并连续的将数据传输到PSC(站台隔离门控制器).
     
    站台上每一列门都是由PSC和贝加莱2003控制和监视的。DCU和 PCC通过CAN总线联网,传输速度为100KBits。这对于定时要求是足够的。CAN总线能在最长180米的站台范围内以相同的速度传输。PSC从门搜集数据,并将之传输到SMS(站台管理系统)。另外,在控制室使用贝加莱Power Panel系列的PP120,门及其功能等重要信息均在其上有所显示,并且时间报告被传输到本地环境监控系统中进行进一步分析。
     
    除了经CAN总线的DCU连接外,PSC通过RS485与LESS(本地环境监视系统)。通过RS232与PTE通信,通过以太网与显示器通信。通过开关量信号与PTI通信。由贝加莱2003提供的通信灵活性毫无疑问的满足了这些网络要求。CP476 CPU处理所有门控制器,开关量I/O和网络连接。此外贝加莱的AUTOMATION STUDIO还提供了最佳的编程环境。
    18楼 回复本楼

    引用 chenwh78 2008/11/6 12:44:54 发表于18楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/7 9:02:33

    图片: 


    图片:


    由于目前在DeviceNet节点上被广泛采用的CAN控制器芯片为Philips的SJA1000和Intel的82527两种CAN控制器芯片。下面对它们各自的主要特性作一个介绍。

    1.Intel 82527 CAN控制器

      *支持CAN2.0,包括标准的和扩展的数据和远程帧;
      *可程控全局屏蔽,包括标准和扩展信息标识符;
      *具有15个报文缓冲区,每个数据长度为8字节,包括14个TX/RX缓冲区,一个带可程控屏蔽的RX缓冲区;
      *可变CPU接口,包括多路8位总线(Intel或Motorola方式)、多路16位总线、8位非多路总线(同步/异步)以及串行接口;
      *位速率可程控,并有可程控的时钟输出;
      *可变中断结构;
      *可对输出驱动器和输入比较器结构进行设置;
      *两个8位双向I/O口;
      *44脚PLCC封装,引脚与82526兼容。

      Intel 82527控制器芯片是Intel公司Intel 82526 CAN控制器芯片的替代产品,也是支持CAN规范2.0B标准和扩展报文格式的第一个CAN控制器芯片。Intel 82527具有一个功能强大的CPU接口,它可以直接接口至不同的CPU,并可以配置为16位分时复用的地址/数据总线接口,使其可以更充分的利用16位或32位CPU的强大功能。此外,当不需要并行CPU接口时,82527提供了灵活有效的串行接口进行通讯。
      82527提供功能强大的15个每个8字节数据长度的报文缓冲区。除最后一个报文缓冲区外,每个报文缓冲区都可以配置为发送或接收,最后一个缓冲区为一个仅具有特定屏蔽设计的报文接收缓存器,以允许选择不同的报文标识符组进行接收。82527同时提供实现报文滤波的全局屏蔽性能,可以全局性的屏蔽到来报文的任何标识符,可编程的全局屏蔽性能适用于标准的和扩展的两种报文格式。
      82527的CAN控制器通过在片双口RAM与微控制器进行数据交换。微控制器将要传送的数据信息,包括数据位组长度、标识符、数据传输方向、数据帧或远程帧等包装成多达15的通讯目标送人双端口RAM,82527可以自动完成这些通讯目标的传送。

    2.Philips SJA1000 CAN控制器

      *支持CAN2.0,包括标准的和扩展的数据和远程帧
      *位速率可程控,并有可程控的时钟输出;
      *扩展的64字节FIFO接收缓冲器;
      *4个字节的验收滤波器;
      *时钟频率提高到了24MHz;
      *输出驱动器状态可编程;
      *可擦写的总线错误计数器;
      *当前错误代码寄存器;
      *仲裁丢失捕获寄存器;
      *28脚DIP/SO封装,引脚及电器特性与82C200兼容。

      Philips SJA1000是Philips公司于99年推出的全新CAN控制器芯片,用来取代以得到广泛使用的82C200 CAN控制器芯片。Philips SJA1000在82C200的基础之上增加了一些新的特性,为采用SJA1000 CAN芯片进行DeviceNet 接入产品设计的用户提供了方便和更大的灵活性。
      SJA1000的64字节FIFO接收缓冲器使网络设备可以接收更多的报文而不会因为接受缓冲区太小而拒收报文,同时SJA1000采用了4个字节的验收滤波器,可以对DeviceNet报文的整个报文头部进行接收前的检验。
      SJA1000在总线错误管理上比起82C200也有很多改进,SJA1000设有可进行读写操作的错误计数器,增加了错误认可中断和可编程的错误警告中断,并提供了当前错误代码寄存器以标记错误发生的类型、状态和位置。
      针对DeviceNet的特点,SJA1000提供了一种仅听模式,使DeviceNet节点的自动波特率检测和热插拔通过软件更为容易得到实现。SJA1000还增加了仲裁丢失中断,通过仲裁丢失捕获寄存器可以获得仲裁丢失的位置。图1是SJA1000的功能方块流图。
    SJA1000功能方块图

      其中CAN核心模块根据CAN总线协议控制数据帧的发送和接收;接口管理逻辑模块提供SJA1000与主微处理器或其它设备的连接,主微处理器可以通过数据/地址复用总线和读写控制逻辑访问SJA1000的所有寄存器;发送缓冲区可以存储一个完整的标准或扩展的报文,当主微处理器要求SJA1000发送报文时,接口管理逻辑操纵CAN核心模块将发送缓冲区中的报文发送到CAN总线上;当接收一个报文时,CAN核心模块首先将总线上的串行位流数据转换位并行数据,然后交给接收过虑模块进行识别,决定该报文是否为主微处理器所要求的报文类别,所有接收的报文可以存放在接收先进先出队列,根据不同的工作模式和数据长度,该队列可以存放最多32个报文,然后用户可以灵活地对报文分为不同地优先级和中断处理服务。
      SJA1000可直接连接两类主要的处理器家族:Intel公司的80C51系列和Motorola公司的68xx系列,其芯片外围专门有一个模式管脚用了选择CPU的类型。SJA1000提供了8位地址/数据复用总线和读/写控制信号与CPU交换数据,我们可以将SJA1000看作映射到主微处理器的外围存取器I/O设备。SJA1000与80C51系列微处理器地典型应用如图2所示:
      SJA1000通过2个8位寄存器来支持对报文的过滤功能,将应用不关心的报文拒之门外将提供处理期的性能,因为大多数应用都是通过中断的方式交换数据,所以正确的使用过滤功能可以为中断处理函数赢得时间。SJA1000提供一个接收编码寄存器(Acceptance Code Register)和一个接收屏蔽寄存器(Acceptance Mask Register)。接收过滤模块将CAN报文的11位标识符的高8位于这2个寄存器里存放的值相比较,并作出是否接收的判断,其在基本模式(BasicCAN Mode)下工作原理如图3所示:
      假设接收编码寄存器ACR和接收屏蔽寄存器AMR的值如下表所示:

    SJA1000与Intel微处理器典型应用

      在接收屏蔽寄存器中值为1的位表示接收的CAN报文相应的位可以为1或者0,这样的设置情况下,用X表示的位不用关心,只要其它位与接收编码寄存器相应的位一致就行了,因此CAN控制器可以接收64中不同的报文。


    SJA1000基本模式接收过滤

    3.CAN总线收发接口电路芯片Philips 82C251

      Philips 82C251是Philips公司于98年推出的CAN总线收发接口电路芯片。和以前的82C250相比,82C251具有25V过压保护的功能,在工艺上有也有一些改进。
      对于CAN控制器及带有CAN总线接口的器件,CAN总线收发接口电路芯片并不是必须使用的器件,因为多数CAN控制器均具有配置灵活的总线收发接口,并允许总线故障,只是驱动能力一般只允许20个左右的节点连到同一条总线上,而82C250/82C251支持多达110个节点,并且能够以1Mbps的速率工作于恶劣的电气环境下。利用CAN总线收发接口电路芯片还可以方便的在CAN控制器与收发器之间建立光电隔离,从而实现总线上各节点之间的电气隔离。
      DeviceNet正是利用CAN控制器的(如INTEL82527,Philips SJA1000)的双相位输出方式,通过设计适当的接口电路,实现了网络供电的功能。作为提供对CAN总线的差动发送和接收功能的器件,82C251的主要特性如下:
      *与ISO 11898标准完全兼容;
      *高速性(最高可达1Mbps);
      *具有抗瞬时干扰,保护总线的能力;
      *降低射频干扰的斜率控制及热保护;
      *总线与电源及地之间的短路保护;
      *25V的过压保护功能;
      *低电流待机方式和掉电自动关闭输出;
      *支持多达110个节点相连接。

      DeviceNet通过24V的直流电源进行网络供电,由于82C251所具有的25V过压保护功能,可以避免接线错误对设备带来的损坏。因此我在DeviceNet节点设计时采用了82C251。
      对于市场上众多的CAN芯片和微处理器,在DeviceNet的开发中没有一个通用的选用方案,下面我们给出一些基本的准则:

      *所有使用11位标识符的CAN芯片都可以使用,DeviceNet对于29位长标识符即不要求也不能使用。
      *对于仅支持Group2的设备,CAN控制器的基本工作模式有很好的性能。并且,DeviceNet协议对仅支持Group2的设备的通讯协议为基本工作模式作了优化。
      *CAN有两种形式,独立式控制器和嵌入式控制器。使用嵌入式控制器可以减小电路设计的尺寸,但是我们推荐该种控制器仅仅用在某些局部的场合,当满足我们所有开发的需求时。选用独立式控制器允许设计时充分的灵活性。另外在决定选择何种CAN控制器之前,还可以考虑一些有关微处理器的仿真芯片及其功能。
      *每个设备都需要有一个区别于其它厂商和区别同一厂商生产的其它设备的32位唯一系列号。因此设备可能要引入Non-Volatile,另外如果需要可设置的参数,那么必须要Non-Volatile存储。
      *要特别注意当CAN重置和上电时CAN_H和CAN_L的状态。因为CAN控制器有可能会出现电压漂移或者总线电位不对。因而在实际设计时在TxD脚和收发器之间加上无源推拉电路或者变极器来增强信号抗干扰能力。
      *不用的管脚(RX0或者RX1)不能处于漂移状态,可以把它们接到收发器的Vcc/2或者使用电压分频器,防止错误帧的产生。尽管有些CAN控制器可以通过寄存器设置来使某些管脚无效,但最保险的做法是让这些管脚处于正确的电位。
    19楼 回复本楼

    引用 chenwh78 2008/11/7 9:02:33 发表于19楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/9 21:56:46

    1 引言

      随着计算机网络的普及应用,人们从过去主要是对计算机监控系统监控功能的关注,转移到对其数据传输功能的关注。人们越来越重视数据的传输,人们希望通过互联网能在世界的任何角落及时观察到工业生产现场的各种状态数据。目前主要是基于Profibus总线的数据传输技术,虽然这种常规的传输技术具有相对结构简单、易于实现等优点,但是它有如下一些缺点不很适于作井下安全监控系统的传输总线。第一,它是主从结构,不能实现多主传输;第二,它的从节点都是固定地址,而且只能静态设置;第三,它的节点的加入不能随意动态进行;第四,它能够连接的节点数量末段最多32个,加中继的情况下也最多只能有三段,对于一些大矿,应用受到限制。相比之下,CAN总线技术具有的结构灵活性,以及它的节点容量(理论上是无限制的)十分适用于煤矿安全监控系统的组成特点和使用特点。所以我们选择CAN总线作为煤矿安全监控系统的传输技术。

      本文将对应用发展比较成熟的先进的CAN总线技术,进行了深入的研究。在此基础上提出一个基于CAN总线的煤矿安全监控系统的数据传输方案,并在最后给出实现该方案的分站通信电路、分支中继电路的设计。

    2 CAN总线

      CAN (Controller Area Network) 总线,又称控制器局域网,CAN 已被公认为几种最有前途的现场总线之一。CAN 总线规范已被ISO 国际标准组织制订为国际标准,CAN 协议也是建立在国际标准组织的开放系统互连参考模型基础上的,主要工作在数据链路层和物理层。用户可在其基础上开发适合系统实际需要的应用层通信协议,但由于CAN 总线极高的可靠性,从而使应用层通信协议得以大大简化。

      CAN总线采用总线式拓扑结构(见图1)。各节点可以像以太网节点那样直接挂接在一条主干线上。CAN采用两芯线缆,有极性连接。CAN总线网络也可以通过一个三通节点构成层次结构,呈现树型拓扑。对于采用电缆介质的CAN总线网络,总线末端要设有匹配阻抗,防止反射产生驻波。


    图1 CAN总线拓扑结构

      CAN协议分为二层:物理层和数据链路层。物理层决定了实际位传送过程中的电气特性,在同一网络中,所有节点的物理层必须保持一致,但可以采用不同方式的物理层。CAN的数据链路层功能包括帧组织形式,总线仲裁和检错、错误报告及处理,确认哪个信息要发送的,确认接收到的信息及为应用层提供了接口。


    图2 CAN协议结构

      CAN总线与其他总线相比有如下特点:

      (1)、它是一种多主总线,即每个节点机均可成为主机,且节点机之间也可进行通信;

      (2)、通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbps;

      (3)、CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余校验、优先级判别等项工作;

      (4)、CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11位或29位二进制数组成,因此可以定义211或229个不同的数据块,这种按数据块编码的方式,还可使不同的节点同时接受到相同的数据,这一点在分步式控制中非常重要;

      (5)、数据段长度最多为8个字节,可满足通常工业领域中控制命令,工作状态及测试数据的一般要求.同时,8个字节不会占用总线时间过长,,从而保证了通信的实时性;

      (6)、CAN协议采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。

      基于CAN总线技术的远程分布式智能控制系统,可运用在被监控单元设备分散而且间距相对较远,如几公里范围内的复杂系统监控上。主机与多个智能终端组成的网络系统可有效地满足工业过程的自动控制需要。

    3 CAN总线技术在煤矿安全监控系统中的应用

      3.1 目前煤矿安全监控系统的传输系统存在的问题

      煤矿生产场所的分布大都在几公里到几十公里的范围,对煤矿生产过程的安全监控遍布各个生产场所。对传输距离和传输速率的改进,将提供一个从根本上保障煤矿生产安全监控的时效性的技术措施,实现真正意义的能够满足措施及时落实到位的实时监控。从而极大地提高煤矿安全生产的监控力度和监控效力,保障人民的生命财产不受损失。

      煤矿安全监控系统在我国已经有多年的研究及应用,但其传输技术一直是系统研究中的薄弱环节,随着网络技术的发展,安全监控系统的数据传输的重要性日益突出。目前国内外煤矿安全监控系统中所采用的传输技术,存在着以下几个方面的问题需要进一步解决:

      (1)、传输速率慢

      (2)、非标准化

      (3)、高速传输时的传输距离短

      (4)、无中继连接的节点数少

      (5)、传输系统结构灵活性差

      3.2 基于CAN总线技术的问题解决方案

      煤矿安全监控系统,是一种典型的工业监测监控系统。与一般工控系统相比,它具有这样的特点:系统监测监控设备分散距离远,节点设备动态变化频繁,环境要求防爆。

      CAN的多主结构、理论无限的节点容量(不存在物理站点编号问题)、位仲裁的总线分配和介质访问技术和额定最大速率1Mbit/s的传输速率(实际传输速率在器件和线缆性能允许的情况下可以超过这个速率)以及在5Kbit/s传输速率下可无中继传输10公里的传输距离等特点,都非常适用于煤矿安全监控系统的组成特点和传输要求。

      基于CAN总线的煤矿安全监控传输系统的设计,包括系统网络结构设计、监控分站节点内传输电路设计、分支中继电路设计和传输程序设计。

      3.2.1 基于CAN总线的井下安全监控系统网络结构设计

      整个煤矿安全监控系统设计由地面中心站、网关节点站、分支中继器、井下监控分站和各种传感器以及通信介质,共六个部分组成。其中中心站负责接收、存储和显示从井下监控分站传来的各种井下生产环境安全监控数据,并通过各个井下分站发送各种配置命令和对现场设备的控制命令;井下分站负责从传感器收集数据、和地面中心站通信、输出各种控制信号和在需要的地方同时充当分支中继器;网关节点站实现现场总线协议和中心站计算机标准接口协议的相互转换;分支中继器在需要的地方完成通信线路的分支、中继和介质信号的转换;传感器负责收集各种现场环境安全监控数据和设备运行状态数据;通信介质负责安全监控系统各设备的连接和信息的传递。整个系统的传输系统采用CAN总线拓扑结构,整个监控系统分三级结构:中心站——井下分站——传感器。

      图3 是带有中继器的煤矿安全监控系统的组成原理图。图中的传输系统采用CAN现场总线技术。通信光纤/电缆上传输基带信号,节点间数据传输采用CAN协议。


    图3 带有中继器的煤矿安全监控系统的组成原理图

      3.2.2 安全监控分站中CAN总线传输电路的设计

      井下安全监控分站是整个安全监控系统的核心,它负责收集和处理现场生产环境和设备状态等方面的安全监控数据,并能实现就地控制设备。它更是传输系统的关键设施,各种数据的收发都要通过它的传输电路进行。图4是整个监控分站的原理设计。


    图4 基于CAN总线技术的监控分站结构图

      3.2.3 基于CAN总线的多功能分支中继电路的设计

      分支中继电路完全工作于CAN总线传输网络的物理层,就是负责CAN信号(NRZ码)的分接、中继和光电转换。


    图5 多功能光电分支中继器的原理图

      由于要满足CAN总线的按位仲裁功能的实现,所以在分支中继电路中要包含能够实现差分输入输出并能实现信号“线与”的CAN驱动电路,本电路设计中选用最常用的CAN驱动电路PC82C250芯片。由于“线与”功能是靠电气连接实现的,所以在设计光/电分支中继的时候,必须将光信号转换为电信号,再通过两片CAN驱动电路PC82C250的连接实现“线与”。

    4 总结

      本文根据目前煤矿安全监控系统传输系统存在的问题,提出了用CAN总线构建煤矿安全监控系统传输网络的思想,并实际完成了基于CAN总线的煤矿安全监控系统传输网络的设计。经模拟比较表明,其传输品质优于常规的基于Profibus总线的传输技术。

      本文作者创新观点:本文提出的基于CAN总线的煤矿安全监控系统的数据传输方案,它具有的灵活性结构,以及它的节点容量(理论上是无限制的)十分适用于煤矿安全监控系统的组成特点和使用特点,其传输品质和整体性能优于常规的基于Profibus总线的传输技术。

    参考文献

      [1] 王虹桥,日本煤矿的集中监控体制及监控新技术,中国煤炭,1999,25(7),8~49

      [2] William Stallings 著,王海等译,数据与计算机通信(第六版),电子工业出版社,60~70,83~88,120~126,184,192,202

      [3] 胡光永.CAN总线节点电路的设计与实现[J].微计算机信息,2006年第1-2期

      [4] 蒋建文,林勇,韩江洪,CAN总线通信协议的分析和实现,计算机工程,2002.2,219~220

      [5] 饶云涛,邹继军,郑勇芸,现场总线CAN原理与应用技术,北京航空航天大学出版社,2003.6

    20楼 回复本楼

    引用 chenwh78 2008/11/9 21:56:46 发表于20楼的内容

  • chenwh78

    chenwh78   |   当前状态:在线

    总积分:6174  2024年可用积分:0

    注册时间: 2008-10-10

    最后登录时间: 2019-06-16

    空间 发短消息加为好友

    chenwh78   发表于 2008/11/25 8:25:46

    宝莱车采用两条CAN总线,即驱动系统CAN总线和车身系统CAN总线,这两总线完全能够满足ISO的定义。驱动系统CAN总线,其通信速率为500kbps,被称为高速CAN,其连接对象为汽车动力和传动机构的控制单元等。汽车发动机控制单元、自动变速器控制单元、ABS控制单元、安全气囊控制单元等。车身系统CAN总线,其通信速率为100kbps,被称为低速CAN或舒适系统CAN,其连接对象为中央控制器,4个门控制器等。此外宝莱车还有一个重要特征,便是在车身系统的CAN中引入了网络管理的概念。这对于事件触发性质的数据通信来说是非常合适的。
    用于驱动系统的高速CAN和用于车身系统的低速CAN是两个相互独立的总线,但从资源共享的角度来看,它们之间最好有座连接桥梁,以使车身系统也能获得驱动系统的信息。当然,从传统思路来考虑,只要增加几根导线似乎就能解决问题。但从实际开发时,即在现有的控制器硬件上,要增加哪怕一个信号引出脚都将导致硬件的重新设计,往往成本和进度都不允许这么做。为了获得对方系统的信息,而又不涉及到硬件上的任何改动,宝莱车使用了网关—J533完成了此任务,宝莱车的网关是“寄生”在组合仪表内的。
    宝莱汽车上典型的与驱动系统有关的控制单元有电控燃油喷射系统、自动变速器系统、防抱死制动系统(ABS)、安全气囊系统等。
    由于每个控制单元对实时性的要求是因数据的更新速率和控制周期不同而不同的,为了满足各子系统的实时性要求,与对公共数据实行共享,如发动机转速、车轮转速、油门踏板位置等,如宝莱车的4缸汽油机运行在4000r/min,则电控单元控制两次喷射的时间间隔为6ms,其中喷射持续时间为30度的曲轴转角(1ms),在剩余的5ms内须完成转速测量、油量测量、A/D转换、工况计算、执行器的控制等一系列过程。这就意味着数据发送与接收必须在1ms内完成,才能达到汽油机电控的实时性要求。这就要求其数据交换网是基于优先权竞争的模式,且本身具有极高的通信速率,宝莱车采用了CAN总线正是为满足这些要求而设计的。
    除驱动系统外,车身系统CAN也是一条主要的控制器局域网络。它的主要连接对象为:中央控制器,4个门控制器,还包括记忆模块和其他组件。车身系统的控制对象主要是4个门上的集控锁、车窗、行李箱锁、后视镜及车内顶灯。在具备遥控功能的情况下,还包括对遥控信号的接收处理和其他防盗系统的控制。
    21楼 回复本楼

    引用 chenwh78 2008/11/25 8:25:46 发表于21楼的内容

总共 , 当前 /, 【上一页】123【下一页】