微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 一种CAN总线与以太网互连系统的设计方案

一种CAN总线与以太网互连系统的设计方案

时间:02-19 来源:电子技术网 点击:

  1.前言

  在大型企业自动化系统中,在上层企业管理层和生产监控层采用的都是以太网和PC机,而在下层车间现场都是采用现场总线,如RS-485、CAN、lonWorks等,而连接上下两层的沟通通常采用工业控制机加以太网卡再加上PC机插槽上的与现场总线对应的接口卡或并行打印口的EPP接口卡来实现,这种连接方式成本高,开发周期长,接口卡成为系统上下两层的通信瓶颈一旦出现故障上下两层的联系就将中断;为此利用廉价的基于单片机的以太网-CAN网桥取代昂贵的工控机加接口卡,实现以太网和CAN总线网的直接连接具有重要意义。

  2.系统方案设计

  由于系统中有以太网网和CAN总线数据处理,因此需要采用大容量RAM进行暂存网络数据,采用集成有8KRAM和64K Flash的P89C668型高速控制器,如图1所示,系统采用芯片RTL8019进行网络数据收发,采用芯片SJA1000处理CAN总线数据,同时为了方便对转换桥系统调试和进行参数设置(CANID、CAN波特率,以太网物理地址,IP地址,网关地址,子网掩码)和保存,增大系统使用的范围和使用灵活性,系统还扩展串口通信RS232接口和24C256串口存储电路。

  

  3.系统硬件设计

  3.1 以太网接口电路设计

  以太网接口电路如图2所示,电路中36脚~43脚为数据输入输出口直接连接到单片机P0口。RTL8019AS有三个分别反映其工作状态的输出脚,分别LED0、LED1、LED2,分别输出网络的连接性、数据发送和数据输出状态;IOCS16是16位或8位I/O的选择脚,当上电复位的时,该引脚为低电平时,网卡将选择8位模式,为高电平时,网络控制器将选择16位的模式,电路用了个电阻R9(27K)下拉,在复位时引脚为低电平,因此网卡选择8位模式。由于RTL8019AS每个引脚(除AEN外)内部都有100K的下拉电阻置地,故当各引脚悬空时内部检测为低电平,由图2可知85脚、84脚、82脚、81脚分别悬空,从而选择了基地址300H,因此电路扩展就要以此为基准来进行配置,RTL8019AS地址线A19~A10固定接地,A9、A8定接P2.5作为地址选择端有单片机来控制而不是用34脚AEN(直接接地)来作为地址选择断,将A7,A6,A5固定接地,A4~A0要根据所要访问的RTL8019AS寄存器地址不同而不同,从而由由P89C668的P2.0~P2.4来选择RTL8019300H~31FH,因此对应P2口地址线变化范围为0xE0-0xFF,由于仅有P2口来选择地址,而P0口并没有参与地址编址电路中单片机对RTL8019AS的寻址I/O并不是连续,程序中分别定义Reg00~Reg1F来分别对应300H~31FH端口,定义如下:

  

  

  3.2 CAN总线的接口电路设计

  如图3所示,CAN总线的接口电路主要由P89C668处理器、CAN通信控制器SJA1000、CAN总线驱动器82C250、高速光电耦合器6 N 1 3 7电路组成,微处理器P 8 9 C 6 6 8负责SJA1000初始化,通过控制SJA1000实现数据的接收和发送等通信任务;为了增强CAN总结点的抗干扰能力,SJA1000的TX0和RX0通过高速光耦6N137后与82C250相连,实现了本节点在CAN总线上的电气隔离,提高了本系统的硬件的稳定性和安全性;82C250的CANH和CANL引脚之间串连60欧姆(两个120欧姆电阻并联)的电阻以消除电路中信号的反射等干扰,CANH和CANL与地之间并联两个30pF的小电容,起到滤除总线上的高频干扰和一定的电磁辐射的能力,两根CAN总线输入端与地之间分别接了一个防雷击管,当两端输入端与地之间出现瞬变干扰时,通过防雷击管的放电起到一定的保护作用,R18则为斜率电阻。

  

  4.系统软件设计

  4.1 系统软件总体设计

如图4所示,根据以太网与现场总线CAN协议转换功能可知系统软件包括TCP/IP协议程序、CAN协议程序、RS232串行数据收发程序以及对以上三种协议程序进行协议转换和监控管理的应用管理程序;TCP/IP协议包括ARP(地址解析协议)、IP协议(网际协议)、ICMP(Internet互联网控制报文协议)、TCP(传输控制)协议和UDP(用户数据报)协议,ARP协议用于负责把一个IP地址映射成物理地址,即获取对方或通知对方本主机物理地址的一个协议;IP协议主要功能是把源主机上的数据分组发送到互联网中的任何一台目标主机上;ICMP用于差错报告和报文控制的协议,在本系统种主要完成ping命令请求和应答功能;UDP和TCP协议在工作时是建立在IP协议之上,UDP协议对每次输出都生成一个UDP数据报,然后把生成的UDP数据报直接封装在IP数据报中进行传输,提供无连接的不可靠的数据报文服务,而TCP协议提供面向连接的、可靠的数据流服务;CAN协议用于将接收到的以太网数据转换成一定格式的CAN协议格式的数据并转发到目标节点以及从其他目标节点受到的数

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top