计算机毕业论文,毕业论文,毕业设计 毕业论文免费检测 知网论文检测

基于单片机的CAN/RS-485总线转换网桥设计

时间:2011-01-19 12:34来源: 骆驼毕业论文网 作者:admin
摘要:CAN 总线在自动测控和工业控制领域应用越来越广,但目前许多已投入使用的自动测控和工业控制设备采用的仍然是传统的RS485总线,系统互连困难。文章主要介绍了以AT89C52微处理器为核心的CAN总线与RS-485总线转换网桥的软、硬件设计,以便实现系统互连。 关键

QQ交谈计算机毕业设计,毕业设计,毕业论文,计算机毕业论文

摘要:CAN 总线在自动测控和工业控制领域应用越来越广,但目前许多已投入使用的自动测控和工业控制设备采用的仍然是传统的RS485总线,系统互连困难。文章主要介绍了以AT89C52微处理器为核心的CAN总线与RS-485总线转换网桥的软、硬件设计,以便实现系统互连。
  关键词:
本文来自:www.luotuo.net.cn 骆驼论文单片机;CAN总线;转换网桥;RS-485总线;主监控程序;系统互连
    
  CAN现场总线技术在自动测控和工业控制领域应用越来越广泛,但目前在许多已投入使用的测量和现场系统中,各仪器设备或装置之间通信所使用的仍是传统的RS-485或RS-232总线,要在短期内完全改造或淘汰那些旧系统是不现实的,因此在一定时期内,新老总线系统将会并存,这样系统的互连问题也就日现突出。文章介绍了一种CAN总线与RS-485总线转换网桥的设计方法,以便实现系统互连。
  一、CAN总线与RS-485总线转换网桥的组成
  该网桥主要由微控制器、CAN控制器、驱动器、RS-485收发器、看门狗、状态指示等几部分组成,其框图如图1所示。微控制器负责整个网桥的监控;CAN控制器和驱动器构成CAN总线接口电路,实现CAN总线信号模式转换;RS-485收发器实现RS-485总线信号模式转换;状态指示实现网桥的总线收发状态及故障信息等内容的显示。
  二、硬件介绍
  本系统中硬件主要包括微控制器与CAN总线接口,其电路原理图如图2所示:
  1.微控制器电路部分:微控制器采用AT89C52,具有8K Flash存储器和256个字节的内部RAM。AT89C52的P0口与SJA1000的AD0~AD7口线连接,P2.0作为SJA1000的片选线,WR、RD、ALE及RESET等分别与SJA1000的对应引脚相连。
  2.CAN控制器接口电路部分:CAN控制器接口电路由CAN通信控制器SJA1000和CAN总线收发器82C250组成。为了增加系统的可靠性和抗干扰能力,系统采用高速光耦合6N137与82C250相连,这样就很好的实现了CAN总线节点间的电气隔离,光耦部分电路所采用的两个电源VCC和VDD也完全隔离。82C250的CANH和CANL引脚各自通过一个5欧电阻与CAN总线相连,电阻可起到一定的限流作用,保护82C250免受过流的冲击。CANH和CANL与地之间并联了两个30pF的小电容,可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力。另外,在两根CAN总线输入端与地之间分别接了一个防雷击管,当两输入端与地之间出现瞬变干扰(Transient Interference)时,通过防雷击惯的放电可起到一定的保护作用。82C250的RS脚上接有一个斜率电阻,电阻大小可根据总线通信速度适当调整,一般在16K~140K之间,本电路中采用47K。
  网桥硬件还有LED指示灯、EEPROM和看门狗等部分。LED用于网桥上电指示、总线收发状态及故障指示,这样从网桥面板上就可以了解网桥运行情况,便于网桥的管理和维护。R网桥的看门狗部分使用了一片X25045,它除具有看门狗和上电复位功能外,其内部还集成了512B的串行EEPROM,用于保存网桥的配置参数等信息。
  三、软件设计
  CAN/RS-485网桥是实现在两个不同总线系统之间进行数据通信的连接纽带。由于通信对时间的要求以及CAN网桥中内部缓存容量有限(AT89C52内部容量为256B),在进行软件设计时要求做到存储转发的时间应尽量短,所以,总线数据的接收均采用中断方式,在主监控程序中实现数据的发送,内存采用FIFO机制管理。由于CAN总线和RS-485总线是两种不同的总线,网桥软件的设计相对来讲较为复杂。CAN总线标准具有物理层和数据链路层协议,以帧为单位进行数据通信,且每帧均携带相应的ID标识,而RS-485仅是一个物理标准,以字节为单位进行数据通信,不带任何其它信息,其帧格式完全由自己定义。由于不管是在CAN总线还是在RS-485总线中最终信息的传输都是以帧为单位,所以在考虑设计RS-485帧格式时,应该参考CAN总线的帧格式,包括地址(ID)、帧长度、数据和校验等。如果两者的帧格式类似,将为协议的转换带来很多方便。具体设计RS-485帧格式时可参考以下格式:
  地址CAN帧格式CAN网ID数据帧校验
  
  图3
  第一字段为地址字段,占用一个字节,可作为RS-485子网的多机通信地址使用,在RS-485网络中,只能采用一主多从的方式进行通信,网络中必须有一个主控节点,在这里以RS-485子网中网桥为主控节点,通过查询的方式实现网络通信管理。第二至四字段与CAN报文中的同名字段定义相同,实际上这三个字段就是一帧完整的CAN报文,网桥在进行转发时只需将其发送出去即可,使网桥中的协议转换更容易实现。校验字段可用于网桥接收报文时的校验,以保证数据的可靠。
  为了实现网桥的上述功能,CAN/RS-485网桥软件主要包括:初始化子程序、主监控程序、网桥中断处理程序等几个部分。初始化主要包括工作方式的选择、各种配置参数的预置等,此部分程序的编写较简单,在此不作详述,下面主要介绍主监控程序和网桥中断处理程序的设计。
  (一)网桥主监控程序
  图3为网桥主监控程序流程图。监控程序根据接收缓冲中是否有报文,决定是否发送以及发送对象。如接收CAN data_buffer中有报文则向RS-485子网转发,如接收RS-485 data_buffer中有报文则向CAN子网转发。由于CAN报文和自定义的RS-485报文格式不同,在转发报文时要进行帧格式的转换。
  (二)网桥中断处理程序
  在本网桥中RS-485子网采用多机通信方式,在响应中断后首先判断是否为本机地址。在接收数据前先使SM2=0;并计算接收报文长度,与缓冲区剩余空间进行比较,若溢出,则不接收。为能正确接收下一帧数据,在中断返回前应使SM2=1。接收CAN子网报文中断处理程序中,在进入中断后,首先应判断中断类型,若为错误警告中断则进行相应处理并建立标志,若为接收中断则接收报文。在报文接收前,要根据接收报文的长度判断接收缓冲区是否溢出,若会溢出,则返回;若不会溢出,则接收该报文。接收报文后,进行缓冲区参数调整,接收报文有效。随后是释放CAN接收缓冲区,恢复现场和中断返回等工作。
  四、结语
  RS485-CAN 总线转换网桥的电路简单可靠,操作方便。但网桥的软件设计相对较难,所以没有将网桥的功能设计得过于复杂,对于通信流量和差错控制,则由通信双方的应用层通信软件来完成。
  
  参考文献
  [1]饶运涛,邹继军,等.现场总线CAN原理与应用技术[M].北京:北航出版社,2003.
  [2]邹益仁,马增良,等.现场总线控制系统的设计与开发[M].国防工业出版社,2003.
  [3]杨振江.智能仪器与数据采集系统中的新器件及应用[M].西安电子科大出版社,2001.

本文内容只是论文部分简介,如需了解更多详情请咨询本站客服! QQ交谈计算机毕业设计,毕业设计,工程硕士论文,计算机毕业论文
毕业论文搜集整理:毕业论文网 计算机毕业设计 计算机毕业论文 毕业设计


顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
计算机毕业设计
计算机毕业论文
论文发表