网站地图
范文同学网


自动化 模具 机械 电子 通信 动画 英语范文 工程管理 金融范文 旅游管理 工业工程 生物工程 给排水范文 西门子PLC 历史学 三菱PLC
单片机 财务 会计 法律 行政 物理 物流范文 电子商务 制药工程 包装工程 土木工程 材料科学 汉语言范文 欧姆龙PLC 电压表 松下PLC
计算机 化工 数电 工商 食品 德语 国贸范文 人力资源 教育管理 交通工程 市场营销 印刷工程 机电一体化 数控范文 变电站 文化产业

  • 网站首页|
  • 文档范文|
  • 人工降重|
  • 职称文章发表|
  • 合作期刊|
  • 范文下载|
  • 计算机范文|
  • 外文翻译|
  • 免费范文|
  • 原创范文|
  • 开题报告

联系方式

当前位置:范文同学网 -> 免费范文 -> 电子专业 -> 基于CAN总线分布式控制系统智能节点的设计
自动化文档范文| 电子机电范文| 测控技术范文| 通信专业范文| 电气工程范文| 通信工程范文| 电子信息工程范文| 免费自动化范文| 免费电子范文| 免费电气范文| 通信范文
·电气自动化原创文章范文 ·学前教育专业原创文章范文 ·国际经济贸易原创文章范文 ·药学专业原创文章范文 ·英语专业原创文章范文 ·公共事业管理原创文章范文
·金融专业原创文章范文 ·广播电视编导原创文章范文 ·电子商务专业原创文章范文 ·法律专业原创文章范文 ·工商管理原创文章范文 ·汉语言文学原创文章范文
·人力资源管理原创文章范文 ·摄影专业原创文章范文 ·心理学专业原创文章范文 ·教育管理原创文章范文 ·市场营销原创文章范文 ·计算机专业原创文章范文
·物流管理专业原创文章范文 ·小学教育专业原创文章范文 ·行政管理专业原创文章范文 ·土木工程管理原创文章范文 ·财务会计专业原创文章范文 ·信息管理信息系统原创范文
·新闻学专业原创文章范文 ·眼视光技术原创文章范文 ·播音与主持原创文章范文 ·广告学专业原创文章范文 ·表演专业原创文章范文 ·动画专业原创文章范文
·视觉传达设计原创文章范文 ·数控技术专业原创文章范文 ·录音艺术原创文章范文 ·光机电应用技术原创范文 ·机电一体化原创文章范文 ·印刷技术专业原创文章范文
·动漫设计与制作原创范文 ·软件技术专业原创文章范文 ·书法学专业原创文章范文 ·应用电子技术原创文章范文 ·电子信息工程技术原创范文 ·机械专业原创文章范文
·酒店管理专业原创文章范文 ·旅游管理专业原创文章范文 ·文化产业管理专业原创范文 ·体育教育专业原创文章范文 ·通信工程专业原创文章范文 ·护理专业原创文章范文

本专业推荐:带proteus仿真程序的文档设计范文  原创文档范文点击进入 → 自动化单片机相关的原创文档范文

基于CAN总线分布式控制系统智能节点的设计

本文ID:LW3863 ¥
前言 现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN(Controller Area Network)属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。较之目前许多RS-485基于R线构建的..
前言
   
现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN(Controller Area Network)属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。较之目前许多RS-485基于R线构建的分布式控制系统而言,基于CAN总线的分布式控制系统在以下方面具有明显的优越性:
首先,CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。而利用RS-485只能构成主从式结构系统,通信方式也只能以主站轮询的方式进行,系统的实时性、可靠性较差;
其次,CAN总线通过CAN控制器接口芯片82C250的两个输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。这就保证不会出现象在RS-485网络中,当系统有错误,出现多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某些节点的现象。而且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,从而保证不会出现象在网络中,因个别节点出现问题,使得总线处于“死锁”状态。
而且,CAN具有的完善的通信协议可由CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期,这些是只仅仅有电气协议的RS-485所无法比拟的。另外,与其它现场总线比较而言,CAN总线是具有通信速率高、容易实现、且性价比高等诸多特点的一种已形成国际标准的现场总线。这些也是目前 CAN总线应用于众多领域,具有强劲的市场竞争力的重要原因。
    硬件电路设计
   
CAN遵循ISO的标准模型,分为数据链路层和物理层。在工程上,这两层通常由CAN控制器和收发器实现的。当前,市面上有两种CAN总线器件可供选择:一种是带有片上CAN的微控制器,如P8XC591/2、87C196CA/CB、MC68376、PowerPC555等,使用这种集成器件方便用户制作印制板,电路图也更紧凑;另外一种是独立的CAN控制器,如Philips SJA1000、Intel公司82526以及MCP2510(具有SPI接口,方便MCU连接)等, 使用独立的CAN控制器的潜在优势是,系统开发人员可以根据所需从众多种类的单片机中选择最理想的系统设计方案。    
作者设计的智能节点硬件电路图略(详见《电子产品世界》2002.10)。
节点微控制器选用单片机80C196KC,CAN接口由独立控制器SJA1000和CAN控制器接口芯片82C250组成。SJA1000在软件上和引脚上都是与它的前款PCA82C200独立控制器兼容的,并增加了许多新功能:标准帧数据结构和扩展帧数据结构,并且这两种帧格作为式都具有单/双接收过滤器;64字节的接收FIFO;可读写访问的错误计数器和错误限制报警以及只听方式等等。
SJA1000有两种工作模式:Basic CAN模式和PeliCAN模式,其中PeliCAN模式全面支持CAN2.0B协议。SJA1000作为微控制器的片外扩展芯片,其片选引脚CS接在微控制器的地址译码器上,从而决定了CAN控制器各寄存器的地址。SJA1000通过CAN控制器接口芯片82C250连接在物理总线上。82C250器件提供对总线的差动发送能力和对CAN控制器的差动接受能力,完全和“ISO11898”标准兼容。其引脚8允许选择三种不同的工作方式:高速、斜率控制和待机。在低速和总线长度较短时,一般采用斜率控制方式,限制上升和下降斜率,降低射频干扰,斜率可通过由引脚8至地连接的电阻进行控制。斜率正比于引脚8上的电流输出。为进一步提高系统抗干扰能力,在CAN控制器SJA1000和CAN控制器接口82C250之间加接6N137光电隔离芯片,并采用DC-DC变换器隔离电源。通信信号传输到导线的端点时会发生反射,反射信号会干扰正常信号的传输,因而总线两端接有终端电阻R1、R2,以消除反射信号,其阻值约等于传输电缆的特性阻抗。
    软件设计
   
CAN总线节点要有效、实时地完成通信任务,软件的设计是关键,也是难点。它主要包括节点初始化程序、报文发送程序、报文接收程序 以及CAN总线出错处理程序等等。CAN控制器芯片SJA1000的内部寄存器是以作为微控制器的片外寄存器存在并作用的。微控制器和SJA1000之 间状态、控制和命令的交换都是通过在复位模式或工作模式下对这些寄存器的读写来完成的。在初始化CAN内部寄存器时注意使得各节点的位 速率必须一致,而且接、发双方必须同步。报文的接收主要有两种方式:中断和查询接收方式。为提高通信的实时性,文中采用中断接收方式,而且这样也可保证接收缓存器不会出现数据溢出现象。SJA1000的Basic CAN工作模式是与其前一款PCA82C200独立控制器相兼容的模式, 而PeliCAN工作模式支持CAN协议中的更多功能,它的程序设计也与之有所不同。下面给出SJA1000工作在模PeliCAN式下的节点初始化、报文发送、报文接收的196汇编源程序。
INITIALIZE:    初始化子程序 LDB AL, #09H;  初始化模式寄存器进入复位模式 STB AL, MODE;  选择单滤波方式 LDB AL, #88H;  时钟分频器  STB AL, CDR;   选Peli CAN模式 LDB AL, #00H STB AL, ACR0;  初始化接收代码寄存器 LDB AL, #60H STB AL, ACR1 LDB AL, #00H STB AL, AMR0;  初始化接屏蔽寄存器 LDB AL, #3FH;  只接收标识符为2,3的报文 STB AL, AMR1 LDB AL, #8FH STB AL, IER;   中断使能寄存器 LDB AL, #01H;  总线定时寄存器0、1的设置 STB AL, BTR0; LDB AL, #1CH;  在16MHz晶振情况下 STB AL, BTR1;  波特率设置为250 LDB AL, #0AAH STB AL, OCR;   输出控制器寄存器设置 LDB AL, #0H;   接收缓存器起始地址设为0 STB AL, RBSA; LDB AL, #01H; ORB AL, MODE; STB AL, MODE;   返回工作模式 RET TRANSMIT:;            发送子程序 LDB AL, SR SRCVE: JBS AL,4, SRCVE;正接收? STRSV: JBC AL,3, STRSV;发送成功? STBF: JBC AL, 2, STBF; 发送缓存器锁定否 WID: LDB AL, #08H LD BX, #TXB;           发送缓存的首址 STB AL,[BX]+;          传送两个字节的标识符 LDB AL,#ID0 STB AL,[BX]+ LDB AL,#ID1 STB AL,[BX]+ LDB COUT,#08H;         8个字节数据 TDATA: LDB AL,[DATA]+   CPU内的发送数据缓存区首址 STB AL,[BX]+; DJNZ COUT,TDATA;       8个字节发完否? LDB AL,#01H; STB AL,CMR;            发送 RET 
RECEIVE:     ; 接收中断程序 PUSHF;          保护现场 LDB AL,IR JBC AL,0,OTHER; 接收中断否? LD BX,#RXB;     接收缓存器首址 LDB AL,[BX]+ JBC AL,6,RCDATA;标识符的RTR=1? LDB AL,#04H;    是远程帧,释放接收缓存区 STB AL,CMR;  LCALL TRANSMIT; 相应远程帧,发送相应数据 SJMP BACK RCDATA: ANDB AL,#0FH;   取低四位数据长度 ADDB AL,#03H; STB AL,R1;      该报文含有的字节数 LD BX,#RXB;     接收缓存器的首地址 LD CX,#CRBF;    CPU内的接收数据缓存区首址 RECE: LDB AL,[BX]+ STB AL,[CX]+ INCB R1 DJNZ R1,RECE;   接收完否? LDB AL,#04H STB AL,CMR;     释放接收缓存区 BACK; POPF RET
结语
    CAN总线已被公认为是最有前途的几种现场总线之一。因其高性能价格比、实现简单等突出优点深得越来越多的研发人员的青睐。文中的智能节点来源于一电源组集散控制系统,其硬、软件电路的设计方法同样适合于其他基于CAN总线的分布式控制系统的节点设计。

基于CAN总线分布式控制系统智能节点的设计相关范文
上一篇:红外监控系统的设计与实现 下一篇:基于VHDL语言设计数字频率计
点击查看关于 基于 CAN 总线 分布式 控制系统 智能 节点 设计 的相关范文题目 【返回顶部】
精彩推荐
电气工程自动化原创范文  电子商务原创文章范文
人力资源专业原创文章范文 土木工程原创文章范文
工商管理专业原创范文    药学专业原创范文
汉语言文学专业原创范文  会计专业原创文章范文
计算机技术原创文章范文  金融学原创文章范文
法学专业原创文章范文   市场营销专业原创范文
信息管理专业原创文章范文 学前教育专业原创范文
公共事业管理专业原创范文 英语专业原创范文
教育管理专业原创范文   行政管理专业原创范文
热门范文

关于我们 | 联系方式 | 范文说明 | 网站地图 | 免费获取 | 钻石会员 | 硕士文章范文


范文同学网提供文档范文,原创文章范文,网站永久域名www.lunwentongxue.com ,lunwentongxue-范文同学网拼音首字母组合

本站部分文章来自网友投稿上传,如发现侵犯了您的版权,请联系指出,本站及时确认并删除  E-mail: 17304545@qq.com

Copyright@ 2009-2024 范文同学网 版权所有