基于FPGA的LON网络高速智能节点的设计
扫描二维码
随时随地手机看文章
1 概述
LonWorks现场总线(简称LON总线)是美国Echelon公司推出的局部操作网络,为集散式监控系统提供了很强的实现手段,成为当今流行的现场总线技术之一。现在的测控系统中,连接在现场总线网络上的每一个节点,即传感器、变送器、执行器等都不再是单功能的传统仪表,而是具有数据采集、转换、控制、计算、报警、诊断及数字通讯等功能的智能化设备(智能节点)连接在网络上的各种智能现场设备共享总线信道,进行数据和信息交换,相互协调工作组成一个完整的现场总线控制系统。LON总线技术使用开放式的通信协议LonTalk,为设备之间交换控制状态信息建立了一个通用标准并,在硬件芯片的支持下实现了实时性和接口的直观、简洁的现场总线的应用要求。在LON总线技术中所有节点都包括一个用以实现通信管理、输入、输出和控制等功能的神经元芯片(Neuron Chip)-- LON总线技术的核心,它不仅是LON总线的通信处理器,也是数据采集和控制的通用处理器,LON总线技术中所有网络的操作实际上都是通过它来完成的。因此网络中节点的设计是实现LON总线技术的一个关键所在。
2 智能节点开发的一般方法
智能节点是控制网络中分布在现场级的基本智能单元,主要用于接受和处理来自传感器的输入数据,执行通信和控制任务以及控制执行起操作等。智能节点中的核心技术是LONTALK协议和神经元芯片。智能节点的开发分为两类:一类是利用神经元芯片完成所有的工作(包括通信和用户应用程序),节点中不再包含其他处理器。这类智能节点成为基于神经元芯片的节点。另一类是只利用神经元芯片完成通信工作,而用户的应用程序由其他的处理器(如微处理器、微控制器或PC机来完成)这种智能节点成为基于主机的节点。
(1) 以Neuron 芯片为核心的控制节点
图1为以Neuron芯片为核心的控制节点的结构框图。
神经元芯片是一组复杂的VLSI器件,通过独特的硬件固件相结合技术,使一个Neuron芯片几乎包含一个现场节点的大部分功能若加上收发器就可以构成一个典型的现场控制节点。
此设计方法由于Neuron芯片是8位总线,目前只支持最高主频是10MHz,因此它能完成的功能也十分有限,对于一些复杂的控制如带有PID算法的单回路多回路的控制就显得力不从心。且其片载操作系统基于一种巡检机制,不太适合于实时性很强的控制节点。
图1 以Neuron芯片为核心的控制节点结构
图2 采用MIP结构的控制节点结构
(2) 采用MIP结构的控制节点
图2为Host Base结构的节点框图。鉴于方法(1)的缺点,采用MIP结构是解决这一问题的好办法,将Neuron芯片作为通信协处理器,用高级主机(上位管理机)的资源来完成复杂的测控功能。
对于这种方法,由于高级主机(上位管理机)和各智能节点间,属于多对一通信,当节点增多时,容易引起网络的阻塞,且一旦发生网络阻塞,网络上的数据传输效率将显著降低。
此外,现有大多LON网络的智能节点应用中,数据采集系统通常采用单片机或DSP(数字信号处理器)作为CPU,控制ADC(模/数转换器)、存储器和其他外围电路的工作。但是单片机的时钟频率较低,难以适应高速数据采集系统的要求,而DSP虽然可以实现较高速的数据采集,但其速度提高的同时也提高了系统的成本。FPGA(现场可编程门阵列)有单片机和DSP无法比拟的优势:时钟频率高,内部时延小;全部控制逻辑由硬件完成,速度快,效率高;组成形式灵活,可以集成外围控制、译码和接口电路。
3高速智能节点的设计
3.1高速智能节点的硬件系统结构设计
该高速智能节点是基于FPGA架构来设计的。FPGA是整个系统的控制中心和数据交换桥梁,而且能够实现对底层的信号快速预处理,在很多信号处理系统中,底层的信号预处理算法要处理的数据量很大,对处理速度要求很高,但算法结构相对比较简单,适于用FPGA进行硬件编程实现。
系统的原理框图如图3所示。
图3 通用高速智能节点总体结构框图
整个高速数据采集处理系统的主要硬件构成为:
1)ACEX1K系列EP1K30TC144-3:主处理器,是整个系统的控制中心和数据处理中心,特点是电路连接I/O口多,速度快;
2)AD9288:实现4路8位采样,最高采样频率为100 MSPS,适合应用与高速信号测量仪器;;
3)Neuron芯片:通信协处理器,负责通信功能
4)双口RAM:主处理器与通信协处理器的接口,实现数据交换;
5)收发器FTT-10A:将数据传递至LON总线。
在控制台发出采集指令或定时器的作用下,模拟输入经AD采样进入FPGA,经过FPGA里的信号处理模块和算法处理后存入RAM,经Neuron芯片读出至LON网络。
3.2高速智能节点的软件设计
软件设计包括:数据采集和控制。
1) 数据采集软件设计
数据采集当上位机发出采集数据指令后,通过网络变量送到相应的节点,然后控制外部传感器执行相应的数据采集指令,并将采集到的数据经 A/D 转换送到神经元芯片,再经过网络变量传递,经 LNS DDE 动态数据连接传递给监控软件,并进行图形化显示给操作者。这一流程可以不断循环进行,直到满足所有条件为止。这一部分的总体流程如图4所示。
图4 采集程序的软件流程图 图5 控制程序的软件流程图
数据采集部分核心软件:本部分的主要功能是将采集到的模拟信号通过电平转换、滤波及多路开关后分成 8 路信号,再进行 A/D 转换变成数字量,经过加工处理后,送至网络数据库,自动改写其中的网络变量的值。
2)控制软件设计
控制软件主要是负责对底层设备的控制。当控制中心在监控软件下发出控制指令,经DDE 传递给 LonWorks 网络,通过网络变量送到对应的节点,在经过 D/A转换,底层设备接收后开始数据采集,然后进行检测是否有下一个控制指令。这一流程也是可不断循环直到满足所有条件为止。这一部分的总体流程如图5所示。
3.3 实验结果
输入一正弦波,周期为1s,得到如图6示结果:
图6 实验结果
4 结束语
本设计成功的实现了利用FPGA芯片作为LON网络智能节点的主处理器,并且采用双口RAM实现了主处理器与NEURON芯片之间的数据传递。本系统适合大多数数据采集场合,能达到通用和高速的目的。
采用FPGA进行设计可缩短开发生产周期,而且现场灵活性好,它不但包括了MCU这一特点,而且可触及硅片电路的物理界限,并兼有串、并行工作方式,高速、高可靠性以及宽口径适用性等诸多方面的特点。因此,利用基于FPGA的LON网络的高速智能节点的设计具有一定的实际意义和价值。