(5168cc银河官网娱线路研发部供稿)
关键词:LonWorks,LonWorks开发,LonWorks技术,控制网络
一、LonWorks技术概述
工业现场总线技术迅猛发展,取代传统的集中式控制系统已成为必然趋势。LonWorks技术是美国ECHELON公司在上世纪90年代研发的先进控制网络技术。LonWorks以其杰出的分布式处理能力、开放性、互操作性、多媒介适应能力以及多网络拓扑结构等特性,适应了未来发展对测控网络的要求,成为众多现场总线技术中的佼佼者。
LonWorks技术将计算机技术、网络技术、远程控制技术集成在一片神经元芯片中,并在该芯片内固化了LonTalk通信协议。该协议遵循ISO标准,可用双绞线、电力线、光纤、同轴电缆、无线电波、红外等多种媒介进行通信。另外,LonTalk协议采用可预测“载波监听多路访问”(CSMA)来解决网络通信的瓶颈问题,通信速度可达1.25Mb/s或78kb/s,通信长度可达2700m。在LonWorks技术中,网络通信采用面向对象的设计方法,引入“网络变量”,使网络通信的设计简化为参数设计。LonWorks技术还具有真正的互操作性。目前,LonWorks技术已广泛应用于楼宇、工业、能源、交通、电力 等众多的自动化领域。
实现LonWorks测控网络的关键是LonWorks智能节点的开发。本文提出了两种LonWorks频率采集节点的设计与实现方法,并对二者的优缺点进行了综合比较。
二、LonWorks智能节点描述
LonWorks智能节点的核心处理器神经元芯片是NEURON 3120或NEURON3150.神经元芯片具有独特的内部结构即:芯片内部集成了三个CPU,CPU-1是介质访问控制器,CPU-2是网络处理器,二者共同完成节点的网络通信功能,CPU-3是应用处理器,主要负责执行用户编写的代码以及用户代码调用的操作系统命令。
典型的LonWorks智能节点的结构有两种类型:
1、以NEURON芯片为核心的节点,NEURON芯片既处理用户应用又负责网络通信,如图1(a)所示;
2、采用MIP结构的节点,NEURON芯片只充当通信处理器,节点的应用程序由主处理器来执行,如图1(b)所示.
ECHELON公司将双较线收发器FTT-10A与原有的神经元芯片集成在一起推出了双较线智能收发器FT3150、FT3120芯片,节省了用户在外围电路设计上所花费的时间,不仅降低了节点的开发难度和开发成本,而且提高了节点的抗干扰性。此外FT3150、FT3120芯片还支持更高的输入时钟,最高输入时钟可达40M赫兹,大大提高了整个芯片的处理速度。
三、基于神经元芯片的频率采集节点设计
LonWorks是专用于工业测控领域的控制网络,为了方便使用NEURON芯片的11个I/O口可以通过编程定义为34种应用对象。其中周期输入对象、脉冲计数对象和总数输入对象都可对现场频率信号进行测量。下面分别给出这三类IO对象的简单应用:
1、周期输入对象可测量输入信号两个上升沿或两个下降沿之间的时间间隔简单应用如下:
2、当FT3150采用10M晶振时周期输入对象的分辨率是25.6us,脉冲计数输入对象可通过技术0.8388608s时间内的输入边沿,测量输入信号的平均频率,简单应用如下:
3、总数输入对象通过定时计数器记录输入信号的上升沿或下降沿跳变总数,当FT3150采用10M晶振时输入信号的最大频率是2.5M赫兹。
简单应用如下:
一种简单的频率测量实现方法就是利用以上三种IO对象来实现的。设计框图如图2所示。
8选1多路模拟开关CD4051通过IO_0~IO_4与FT3150相连,FT3150可以定义IO_0~IO_7相邻的4个IO口作为半字节IO对象用来进行通道选通,我们选用IO_0~IO_3来实现此功能,半字节IO对象的定义如下:IO_0 output nibbleio_select;IO_4为测量信号输入脚。
此类节点可以对8路频率信号进行采集,具有易简单,体积小等特点,其缺点是由于受NEURON芯片自身特性的限制只适用于输入信号频率较低的场合。
四、基于多处理器模式(MIP模式)的频率采集节点设计
针对测量频率较高的场合,节点的设计可采用多处理器模式,用AT89C52单片机进行频率测量,FT3150专职负责处理LonWorks网络通信。输入频率信号经过限幅或放大等信号调理电路后进入可编程器件CPLD进行分频处理,单片机对分频后的信号进行采集后,通过异步串口送入FT3150,并由它转发至LonWorks网络。
节点硬件设计框图如图3:
设计中CPLD采用可编程器件ISP1016E来实现输入信号进行分频以及通道的切换。
ISP1016E内部有2000个PLD门,32个输入输出(IO)引脚,4个专用输入引脚,引脚TTL电平兼容。ISP1016E采用高性能的E2CMOS技术,最大使用频率为125M赫兹,电可擦除和编程。设计使用ISP1016E的16个IO作为信号的输入端;3个IO口(A,B,C)实现8选1选通;一个IO口(CS)控制是否进行分频,当CS=0时不对输入信号进行分频,输入8路低频信号,当CS=1时对输入信号进行分频处理;然后通过IO输出至单片机采集端口。
FT3150可根据网络上的控制消息向AT89C52发出中断信号,启动数据采集,经过一段延时后通过异步串口接收来自单片机的采集数据。
I0_0 output bit starts;//中断信号发送I/O口starts是自定义的对象名称,output bit表示IO被定义为比特输出对象发送启动采集信号可以通过下面的语句实现。
单片机检测到IO_0引脚的由高到低的电平变化后进入中断采集数据。采集完8个通道的数据后通过异步串口发送采集数据。FT3150接收数据的实现程序如下:
IO_8 input serial baud(4800)data_in;
IO_8定义为串行输入口,波特率为4800b/s,io_in(data_in,in_buffer,17);
接收采集数据并存放与输入缓冲区。
(本文仅供读者学习,不代表本网认可其观点及方法)
返回顶部