基于P87C591的CAN-RS485协议转换器的设计方案

(3页)

'基于P87C591的CAN-RS485协议转换器的设计方案'
基于P87C591的CAN-RS485协议转换器的设计方案现场总线技术以其独有的技术优势和特点,在现代分布式测量与控制技术领 域中的运用已越来越广泛。各种现场总线的主控制器一般都内嵌有相当完善的 的、开放式的互联通信协议,它具有通信速度快、误码率低、开发设计简单及网 路维护方便等诸多特点,它是实现网路化现场测量以控制技术的一个发展方向。 但是在当前的工业控制中,各种的仪器设备和装备间的通信还是传统的RS-485 和RS-422总线。这是无法在短期内改变的,所以我们要解决新老系统的兼容问 题。另外现场总线的标准也并不统一,在不同的现场总线之间的互联互通问题。要解决以上问题我们就需要使用到CAN上的智能节点,其智能节点是CAN 节点由相应控制器与单片机接口而形成,可称为网控器(网关)和转化器(网桥)。协议转换器简称协转,也叫接口转换器,协议转换器也就是网关,它能使处 于通信网上采用不同高层协议的主机仍然互相合作,完成各种分布式应用。它工 作在传输层或更高。工业控制现场总线屮的网关设备所起的作用,是实现不同信号传输模式设备 之间的连接;但网关绝不仅仅是一个物理接口转换器,还必须具有通信协议转换 的功能。物理接口的转换主要是实现信号模式转换,同时也是通信协议转换的基 础。在物理接口转换的基础上,通信协议的转换提供了不同的总线之间的数据连 接和通信格式等的转换。在该设计的总方案屮可分为两大部分,一是硬件设计,二是软件设计。在硬件设计中,我们要了解该RS-485网关的的结构框图。CAN总线与RS-485总线转换网关的硬件连接图中,网关的微控制器采用的 是P87C591,负责监控整个网关的任务,它还内置了 CAN的通信控制器,这样使 得硬件的连接变得给简单了。在其CA\总线中,我们在其微控制器后面连接上 CAN总线收发器82C250。为了增强系统的可靠性和抗干扰能力,可以在微控制器 和82C250 Z间增加光电耦合电路。RS-458总线端所使用的是内部具有光电耦合 的差动收发器MAX1480,在MAX 1480内部还集成了一个变压器可为光电耦合两端 提供隔离电源,所以使用起来非常方便。网关硬件除了以上主要部分以外,还有LED指示、EEPROM和看门狗等部分。 网关中设计的LED,可用于网关的上电指示,总线收发状态及故障情况指示。尽 量做到从网关面板上的LED灯的指示就可以基本了解网关的整个运行情况指示。 网关的看门狗部分使用了一片X25045o X25045除了具有看门狗和上电复位功能 以外,其内部还集成了 512字节的串行EEPROM, EEPROM可用于保存网关的配置 参数等信息。网关的配置可通过CAN总线或RS-485总线实现。为了进行配置, 一般在网关中设计有一个配置开关。通过网关的适当配置可非常方便地实现报文 的过滤,将不属于其转发的报文不予转发。在硬件设计中,我们应该注意一下各种小问题:光耦部分电路所采用的两个 屯源Vcc和%必须完全隔离,否则采用光耦也就失去了意义;CANH和CANL与地 之间并联了两个30pF的小电容,可以起到滤除总线上的高频干扰和一定的防电 磁辐射的能力,另外还在它们和地Z间分别接了一个防雷击管,起到瞬变干扰的 ;さ缏返淖饔;82C250的Rs引脚上接有一个斜率电阻,电阻的大小可以根据 总线通信速度适当调整,一般在16~140KQ之间。在软件设计中,网关软件设计与CAN网控器软件设计比较类似,总线数据 的接收均釆用屮断方式而在主监控程序屮实现数据的发送,内存采用FIFO机制 管理。但是由于CAN总线与RS-485总线毕竟是两种不同的总线,网关的设计比 CAN网控器软件的设计要稍微复杂一些。因为CAN总线标准具有物理层和数据链 层协议,以帧为单位进行数据通信,H每帧均携带相应的ID标示符,而RS-485 本质上仅仅是一个物理层标准,以字节为单位进行的数据通信,不带任何附属信 息,其帧格式完全由用户自己定义。由于不管是在CAN总线还是在RS-485总线 中最终信息的传输都是以帧为单位,所以在考虑设计RS-485帧格式时,应该参 考CAN总线的帧格式,包括地址(ID)、帧长度、数据和校验等。如果两者的帧格 式一样,将为协议的转换带来很多方便。软件设计最开始应该要解决CAN总线节点的初始化,报文发送和报文接收。在程序设计屮,CAN控制器的初始化是系统设计工作中极为重要的部分,它 是CAN总线系统正常工作的前提,这一部分关系到系统能不能正常工作,因此, 初始化设计是一个重要,也是一个难点。CAN通信的初始化包括操作的设置、验 收滤波器的设置、总线定时的设置和中断设置;定时器用来设置CAN总线上数据 的设置一致,否则就会导致数据的传输错误。重要的系统初始化完成后,我们接下就可以进行下一步的报文发送和接收 设计了。关于CAN报文的发送由CAN控制器根据CAN协议规范自动完成。首先 CPU必须将要发送的报文传送到发送缓冲器中,并置位命令寄存器中的发送请求 标志,发送处理可通过中断请求或查询状态标志进行控制。其实它的程序流程图 的设计思路和SJA1000的差不多。但是在此网关的设计中,我们选择了中断报文 发送。因为在此网关上我们将要处理很多的不同种的任务,我们要区分这些任务 要在什么吋候执行,这时候就可以发送中断,使得微控制器响应该中断。CAN报 文的接收也可以有两种办法,一是查询方式的接收,二是屮断控制的接收。在 CAN报文的发送和接收的软件设计中,我们应该注意报文的发送和接收中断级或 高低优先级和数据溢岀的处理。在其网关软件的设计中我们大致可以分为主监控程序,接收RS-485子网报 文程序和接收CAN子网报文程序。其间涉及到CAN总线上的报文发送和接收和 RS-485总线上的报文发送和接收。最后就是软件的调试了。
关 键 词:
基于 P87C591 CAN RS485 协议 转换器 设计方案
 剑锋文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:基于P87C591的CAN-RS485协议转换器的设计方案
链接地址: //www.wenku365.com/p-43768135.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给剑锋文库发消息,QQ:1290478887 - 联系我们

本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】。本站是网络服务平台方,若您的权利被侵害,侵权客服QQ:1290478887 欢迎举报。

1290478887@qq.com 2017-2027 //www.wenku365.com 网站版权所有

粤ICP备19057495号 

收起
展开