LonWorks总线RTU扩展模块设计简介

(海思技术部供稿)

一、引言

    LonWorks现场总线技术的核心Neuron神经元芯片是一种集38CPU及网络通信协议(LonTalk协议)为一体的芯片。采用该芯片构成的智能节点在LonWorks现场总线控制网络中能使现场设备之间相互通信,快速地交换信息,以满足系统实时监控的要求。由于Neuron神经元芯片只提供了11个通用I/O口,这对于采集量和控制量要求较多的现场设备并不能满足要求,因此开发基于神经元芯片的RTU扩展模块智能节点很重要。
二、神经元芯片介绍

   Neuron芯片主要包括Neuron3150和 Neuron3120两种系列。3150芯片中包括E2PROMRAM存储器,同3120芯片的区别在于它无内部ROM,但具有访问外部存储器的接口,寻址空间可达64 KB31503120在节点开发上具有更好的灵活性。3150芯片内部带有38位微处理器:1个用于链路层的控制,1个用于网络层的控制,1个用于执行用户的应用程序。该芯片还包含11I/O口和完整的LonTalk通信协议,同时具有通信和控制功能。 

三、基于神经元芯片智能节点的设计方案

  

   基于神经元芯片开发的智能节点具有结构简单、成本低等优势,其开发方法可分为两种。基于控制模块的硬件设计方法。采用这一方法的优势是可缩短产品的开发周期,因为控制模块通常都集成了神经元芯片、Flash程序存储器、收发器以及RAM等,用户只需设计自己的应用电路即可完成节点开发。基于收发器的硬件电路设计方法。采用这一方法可以降低节点成本,提高节点的市场竞争力,但是这需要在考虑应用电路设计的同时考虑神经元芯片与Flash存储器及RAM的接口电路。

四、智能节点的电路设计 

    节点采用主、背板结构。主板上集成有控制电路、通信电路和其它附加电路。智能节点主板结构如图1所示;背板设计为两种多点I/O模块(包括多点数字I/O模块和多点模拟I/O模块);主、背板之间采用统一标准的20针接口。采用主、背板结构设计法,使得此智能节点的应用领域更为广泛,适用性、通用性和功能都大大增强,对于节点应用程序的开发也更为灵活。 

1主板电路设计 

1控制电路 

    控制电路主要由神经元芯片、片外存储器和主背板接口电路等组成。各元器件功能如下。 

神经元芯片。采用3150芯片,主要用于提供对节点的控制,实施与Lon网的通信,支持对现场信息的输入输出等应用服务。 

② 片外存储器。采用Atmel公司生产的AT29C256Flash存储器)。AT29C256共有32KB的地址空间,其中低16KB空间用来存放神经元芯片的固件(包括LonTalk协议等)。高16KB空间作为节点应用程序的存储区。采用ISSI公司生产的IS61C256作为神经元芯片的外部 RAM。 

主、背板接口电路。用于主板与多点I/O模块的电气连接。 

(2) 通信电路 

    通信电路的核心——收发器是智能节点与Lon网之间的接口。本智能节点采用Echelon公司生产的适用于双绞线传输介质的FTT-10A收发器模块。 

(3)附加电路 

    附加电路主要包括晶振电路、复位电路和ServICe电路等。 

晶振电路。为3150神经元芯片提供工作时钟。 

复位电路。用于在智能节点上电时产生复位操作。另外,节点还将一个低压中断设备与3150Reset引脚相连,构成对神经元芯片的低压保护设计,提高节点的可靠性稳定性。 

③Service电路。专为下载应用程序设计。Service指示灯对诊断神经元芯片固件状态有指示作用。 

2 I/O扩展电路设计 

    3150 神经元芯片包含11个通用口,用户可根据不同的需求进行灵活配置,以便于同外部设备进行接口。但是对于输入和输出(I/O)数量需求较大的外围设备,11 I/O口显然不能满足。虽然可以依靠增加节点数量来满足外围需求,但是这样做不仅成本价格高而且增加了安装的工作量,维护也不方便。因此,通过增加外围电路实现I/O扩展,成为多点I/O智能节点开发的重要部分。I/O扩展设计包括多点模拟模块设计和多点数字模块设计。具体扩展方案实现如下。

1多点模拟模块设计 

    多点模拟模块主电路如图2所示。TLC2543CN是支持SPI串行总线的11路模拟通道12位逐次逼近型模数转换器。CSPIN 15)片选信号端接IO0DATA INPUTpin 17)为串行数据输入,其中4位串行地址用于选择下一个被转换的模拟通道或测试电压寄存器;DATA OUTPUTpin 16)输出模数转换的结果;CLK是维持A/D转换正常工作的输入输出时钟。值得注意的是,时钟信号频率较高,任何一点干扰都可能影响模块的正常工作。在 CFLK上串联或并联一支电阻可以起到很明显的抗干扰效果,保证A/D模块的稳定(本模块中,CLKIO8DATA INPUTIO9DATA OUTPUTIO10)。TLC2543还有一个特点;IO9输入数据的同时,IO10输出的是上一次A/D转换的值,因此,在编写NeuronC源程序时要注意A/D转换的时序。选用2只旁路电路:一只47 μF 电解电容,对低频起滤波作用;另一只为0.1 μF ,对高频起滤波作用。此A/D模块没有选用电压基准,故在A/D芯片的参考电压边上接了10.1 μF 电容,用以去除高频干扰。 

(2)多点数字模块设计 

多点数字模块主要包括:输入、输出、双向I/O三部分。通过扩展,模块具有16路数字输入通道、15路数字输出通道的3路双向I/O通道。 

① 输入部分 

    2 81数据选择器——74LS151级联,并将3150IO0IO3定义为Nibble Output方式,即半字节输出方式;IO4定义为Bit Input方式,即位输入方式。IO0IO3作为16路输入通道的地址选通信号,与74LS151的地址输入端(STBABC引脚)相连。IO4 作为数字信号入口,与74LS151的选通输入端连接,具体电路如图3所示。下面的NeuronC源程序可完成对16路数字通道的定时扫描,定时时间为 1s; 

IO_0 output nibble io_mselect; //定义半字节输出I/O 

IO_4 input bit io_tmp; //定义位输入I/O 

Stimer repeating t_circle=1; //定义并初始化定时器 

When(timer_expires(t_circle)) 

{int i,bit I_num,temp[15]; //定义循环变量、通道状态 

//数组、初始化通道号 

for(i=0;i<16;i++) 

{io_out(io_mselect,I_num) //写通道号 

temp=(io_in(io_tmp)= =ON)?1:0)}}//读通道状态并存入状态数组 

② 输出部分 

    如图4所示,输出部分由28位移位寄存器74LS164274LS373锁存器组成。

    74LS164的功能是将NeuronC I/O口的15位串行帧输出转化为16路并行信号输出。74LS373 锁存器的作用是使74LS16415路输出在电平转换后加以保持,直至下一次电平转换。为了满足15路并行输出的要求,在时序上需要使2片 74LS373严格同步。因此,硬件上增加了非门和RC电路,对274LS373的使能信号加以协调。通过实验,证明此电路能够完全满足设计要求。在 NeuronC源程序中将IO8IO9定义为Serial Output方式,即串行输出方式。其中IO8输出时钟信号,IO9输出串行数据。IO7定义为Bit Input方式,即位输入方式,作为74LS164的清零端。 

③ 双向I/O部分 

    为了使用户对此智能节点的二次开发更为灵活、方便,我们在多点数字模块上设计了3个双向I/O口(IO5IO6IO10)。用户可根据自己的需要,利用模块上的拨动开关进行输入、输出切换。 

    需要注意的是,为了提高智能节点的抗干扰能力,在输入、输出电路中均采用了光电耦合器进行电气隔离。特别在输出端加入了三极管功率放大电路以便于驱动外部继电路。

(本文仅供参考,本网站不保证其正确与否)

    版权所有:南京海思自动化系统有限公司    网站地图:Sitemap        苏ICP备13027346号-1
电话:025-52804590 52804690 地址:南京市白下高新产业园区永丰大道8号B2-503室 网址: www.highsys.com.cn
版权所有:南京海思自动化系统有限公司
总机:025-52804590 / 52804690
市场部:8008分机  售后部:8006分机
手机:18905184663(市场)  邮箱:highsys@163.com
南京市白下高新产业园区永丰大道8号B2-503室