提升现场总线技术,基于ARM920T现场总线控制系统介绍

日期: 2020-07-18

来源:21IC

现场总线已经不是新技术,实际上现场总线得到了很多应用。 现场总线不足,很多APP无法实现。 为了加深对现场总线的认识,本文介绍了基于ARM920T的现场总线控制系统。

分散控制系统与现场总线控制系统(国电智深控制系统-编程之家

1、引言

随着工业控制系统的自动化、现代化,现场总线控制系统得到了越来越多的重视和应用,CAN总线是目前开发简单、性能价格高的现场总线。 相对于其他现场总线,CAN通信控制器的制造商最多,品种最完整,应用最广泛。 基于现场总线控制系统智能化、复杂度的提高,作为现场总线核心部件的微处理器已经无法满足传统的51芯片甚至ARM7的需求,ARM9成为了合适的选择。 但是,许多ARM9没有集成CAN接口,需要扩展CAN接口。 另外,由于ARM9分离数据地址总线,CAN控制器是数据地址总线的复用,所以CAN的扩展不能直接应用51处理器的方式。 在CAN模块驱动开发中,现有的资料大多只介绍Linux系统下的驱动开发,但由于现场总线控制系统对实时性的要求,Linux系统将位于更多的实时OS上。

下面介绍了基于ARM920T现场总线的控制系统,在此基础上详细说明了扩展CAN总线的两种方式,给出了具体的CAN模块在实时eCos上开发驱动程序的步骤,最后对两种扩展进行了简单的比较。

2、现场总线控制系统介绍

该现场总线控制系统采用EP9315作为核心处理器。 EP9315是由Cirrus Logic公司开发的基于ARM920T的工业处理器。 该现场总线控制系统除了扩展CAN总线接口外,还扩展了64Mb SDRAM和32mb闪存,包括PCMCIA接口、E PROM接口、512kb SRAM、IDE接口、莉莉实现了支持彩色VGA tft液晶屏、模拟VGA连接、视频解码压缩视频输出和s-视频输出的控制系统的数字化、智能化的多种功能,将系统的控制功能本地化简化了系统的结构。 多接口系统配置使系统的扩展、更改和拆装更加灵活和方便。

3、硬件系统的扩展

3.1 CAN总线模块结构

本文使用SJA1000T作为CAN控制器来扩展CAN模块。 SJA1000T是用于汽车和一般工业环境的独立的CAN总线控制器,具有完成CAN高性能通信协议所需的全部特性; 通过简单的总线连接,SJA1000T实现了物理层和数据链路层的所有功能。 支持CAN2.0协议。

CAN总线收发器TJA1040T是CAN控制器和物理总线之间的接口芯片,可以提高总线的驱动能力,增加CAN总线的通信距离,在一条总线上架设更多的节点。

为了提高CAN总线节点的抗干扰性,SJA1000T的TXO和RXO没有直接与TJA1040的TXD和RXD连接,而是通过两个光耦合分离芯片6N137与TJA1040T连接。 实现了收发器与控制器之间的良好电隔离,实现了保护智能节点核心电路安全工作的总线上各CAN节点之间的电隔离。 必须强调的是,为了实现这种电隔离,光耦合器两侧的直流电源必须是没有直接电连接、相互隔离的两个直流电源。 因此,用双系统的DC-DC隔离电源实现。 为了进一步加强安全性和抗干扰性,可以在总线收发器TJA1040T和CAN总线之间串联限流电阻,使TJA1040T不受过电流的冲击。 另外,CANH和CANL的地线之间并联连接有滤波器电容,可以消除总线上的高频噪声,具备一定的电磁辐射防止能力。 另外,通信信号在线路中传输时,信号在线路的端点传输时会发生反射,反射信号会干扰正常信号的传输。 为了消除这种影响,可以在CAN总线的两端并联匹配电阻,起到消除匹配总线阻抗和反射的双重作用。 如果忽视这些对策,数据通信的抗干扰性和可靠性将大幅降低,无法通信。

分散控制系统与现场总线控制系统(国电智深控制系统-编程之家

3.2 CAN模块和ARM9的两种连接方式

SJA1000T进行地址总线复用,在整个ARM9系列中,ARM920T数据和地址总线被分离。 因此,与ARM9系列的连接不能像以往的51单片机用系列方式那样扩展连接。 本文提供两种扩展方式。 即,是全部IO端口连接方式和最低IO端口的数据信号线连接方式。

3.2.1 IO连接器连接

微处理器的通用I/o端口可以用简单的方法控制SJA100T。 EP9315的GPIO信号提供了很大的灵活性,可以满足SJA1000T时间的要求。 将SJA1000T数据地址复用总线全部连接到EP9315的通用IO接口上。 其他信号线WR、RD、ALE……也与IO连接器相连接。 连接方法请参考下图。

分散控制系统与现场总线控制系统(国电智深控制系统-编程之家

p>3.2.2 数据信号线连接

除了全部由IO端口来控制CAN模块,还可利用ARM9的数据线和信号线来实现CAN模块的扩展。连接电路如图3所示,凡SJA1000T以外的信号均为EP9315芯片上的信号管脚,SJA1000T数据地址复用总线与EP9315数据线相连,GPIOx、GPIOy、GPIOz可以是EP9315任意GPIO引脚,但选择同一个通道的GPIO口将使编程更容易。注意SJA100T的INT可以连接CPU的INT也可以连接到带有中断的通用IO上。在EP9315中,GPIO的通道A,B,F有中断功能。

分散控制系统与现场总线控制系统(国电智深控制系统-编程之家

上面两图是示意图,具体的由于EP9315信号高电平为3.3V,而SJA1000T高电平为5V,故需要通过74LVC245这类电平匹配芯片进行电平匹配后再连接。

版权声明: 本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306116;邮箱:aet@chinaaet.com。