网络化虚拟测控系统的设计
摘要:为满足计算机专业教学和测控仪器开发的需要,设计了基于网络、虚拟仪器和SOPC技术的网络化虚拟测控系统。该系统由PCI接口卡、基于NiosII软核的SOPC数据采集系统组成,使用Labview技术构建了C/S模式的远程数据采集和管理体系结构,并基于Windows DDK与VC++语言开发了PCI接口驱动程序。实际应用表明,该系统具有开放性、灵活性以及易用性等优点,达到了预期目的。
关键词:测控系统;虚拟仪器;SOPC;PCI接口卡
随着信息技术的发展,社会对测控仪器的需求不断增加,因而对计算机软硬件综合设计和开发能力的要求也越来越高。然而,计算机专业普遍存在“重软轻硬”的现象,学生综合应用计算机专业知识能力和测控产品开发能力较差,降低了学生的就业竞争力和发展潜力。针对上述问题,基于提高计算机应用系统综合设计能力要求,充分利用自动测试技术、计算机技术、网络通信技术,结合科研和测控仪器开发的需要,适应测控仪器向网络化、虚拟化、集成化方向发展的趋势,设计了网络化虚拟测控系统。
网络化虚拟测控系统基于Labview环境下开发的,从机为基于Nios II软核微处理机系统的片上系统(SOPC),其主要功能为多通道模拟信号的采集、外部设备控制、与主机的通信、传感器信号调理等;主机主要完成外部信号、数据处理与存储、系统参数设置、显示以及人机交互等。整个系统设计工作包括PCI接口卡设计及其驱动程序设计、虚拟仪器应用软件和SOPC系统定制、仿真及其从机软件设计。该系统不仅提供二次开发接口,而且能够配置、自动检测外部设备变化,能够应用于科研、教学和实际测控,具有很强的灵活性、先进性和应用价值。
1 网络化虚拟测控系统的设计
1.1 测控系统的总体设计
借鉴虚拟仪器思想,把虚拟仪器技术引入测控系统,组成以SOPC系统可配置数据采集模块、PCI总线接口卡、虚拟仪器应用软件于一体的网络化虚拟测控系统(如图1所示)。系统的硬件设计包括PCI接口卡设计、基于NIOS Il软核的SOPC硬件系统的定制;软件系统设计包括PCI接口卡驱动程序、SOPC软件以及虚拟仪器应用软件、管理软件的设计。虚拟仪器应用软件主要完成数字信号处理、分析、显示以及存储,服务器端软件,多通道数据采集参数与工作方式的设置;管理软件提供上传、下载以及与仪器的无缝连接。为降低系统的开发难度、提高系统的可靠性和使用性,系统软件基于虚拟仪器软件Labview与Matlab混合编程方法,充分利用了Lalbview软件的强大数据采集、分析与表达、图形表示能力以及Matlab语言的丰富的工具箱和强大的计算能力,简化了仪器软件的编程,缩短了开发时间。主机系统通过PCI接口卡与SOPC系统进行的信息交换,SOPC系统可以独立工作以及外部设备进行通信,有效降低分布式测控系统的成本。
1.2 硬件系统设计
虚拟测控系统硬件系统包括PCI接口卡和基于Nios II的嵌入式SOPC系统。PCI接口卡采用PLX公司生产的PCI9054接口芯片,采用PCI9054局部总线工作模式C,该模式时序控制比较简单,非复用32位地址/数据总线,PCI总线通过PCI9054内部FIFO实现对局部总线进行单周期的I/O读写操作,支持DMA操作。为提高计算机与SOPC系统之间的数据传输效率,借鉴文献的设计方法,PCI接口卡使用2片双向FIFO存储器IDT7 204(4kx9)实现支持DMA操作,分别用于PCI总线读写数据,其读写逻辑信号FPGA实现,DMA传输时序如图2所示,其对应的FPGA读写逻辑状态图可表示为图3所示。
相对于PCI9054,HOLD、ADS#、BLAST、LWR#、LA[31..2]为输出信号,READY#、LHOLDA为输入信号,LD[31..0]是双向信号。由于本实验仪器数据传输宽度为8位,局部地址线最低2位LA0和LA1分别由BE0和BE1信号提供,数据对齐方式采用大端模式(由BIGEND#引脚及寄存器决定的)。对Local端为I/O类型的引脚,需要根据实际情况和引脚极性上拉或下拉电阻,如ADS#、HOLD、局部地址信号等。图3中DMA方式读数据逻辑状态图转换描述如下:当检测到HOLD=1时,在下个时钟周期赋值HOLDA=1,转到状态S1;ADS#下降沿到达时,从LA[31..2]及BE1、BE0读取地址,转到状态S2;如果LWR#=1(读数据)且BLAST=1、READY#=0,转到状态S3;在下一个时钟周期上升沿从本地数据总线LD[0..7]把数据读入到PC19054内部,循环读取数据直至BLAST信号下降沿出现,转到S4;如果HOLD=1、HOLDA=1,则转到S1,否则转到S0。
SOPC系统使用CYCLONEII系列可编程逻辑器件EP2C5F256C8,通过SOPC Builder定制和仿真NioslI微处理器及其外围系统,包括软核CPU、并行输入输出(PIO)、多通道A/D及D/A转换控制逻辑、UART串行接口、网络控制逻辑、计数器/定时器、双口FIFO控制器、SRAM控制器以及FLAS H控制器等外围设备组成等。其中,PIO用于SOPC系统与外部设备的数字量输入输出;网络控制逻辑与以太网接口芯片LAN91C111实现SO PC系统与外部设备之间的网络通信。LAN91C111是SMSC公司生产的10M/100M以太网接口控制芯片,它通过8、16、32位总线与嵌入系统连接,是理想的NIOSII微处理系统以太网解决方案。上述接口控制逻辑均由SOPC Builder工具选择相应的IP核及其相应的VHDL,通过编译整个系统建立一个完整的嵌入式系统。SOPC系统不仅接收主机命令以及数据传输,而且可以与其他外部设备进行通信。
为保证测控系统的可靠性和通用性,电路设计采用以下关键技术:
1)多通道模拟信号采集与控制该模块由输入信号差模转换电路、8选1模拟开关MPC508A、AD公司的集成程控信号放大器AD620、跟随器、1片采样速率高达2.2 MHz、14位高速模数转换器MAX1201、缓冲驱动电路以及光电耦合隔离器TIL300电路组成。其工作过程为,多路输入模拟量(0~5V)首先由低噪声、宽频带运算放大器MAX4108组成差分电路把传感器信号转化为差分信号来消除电路干扰,并由模拟选择开关ADG526A选通一路模拟信号,然后经过程控信号放大器AD620放大同时使输入信号由差分转化为单端信号进入A/D转换器MAX1201。MAX1201输出的数字信号经过光电耦合隔离器进入FIFO缓冲区,缓冲区满时通过向单片机或PC机发出中断请求信号实现数据的读取。
程控信号放大器AD620的增益放大倍数有×1、×2、×10、×100、×1 000五档,由FPGA中的信号通道控制逻辑控制AD620的放大倍数,提高对传感器信号的适应性。模数转换器MAX1201内部有数字误差自校正和自校正功能,具有良好的信噪比和抗谐波失真特性。差分转换电路不仅能够提高抗干扰性能,而且还可以增大信号的量程。采用A/D转换器MAX1201的目的是,提高信号的转换精度,并且接口电路简单、便于与FIFO连接。MAX1201的工作方式分为程序启动、外部触发信号启动。A/D转换速率由SOPC系统定时器产生的波形频率控制,根据A/D转换结束标志由FPGA中的采样控制逻辑自动完成采样数据的存储。
2)电路隔离实验系统由模拟数字混合电路组成,存在大量的干扰。比如前置电路部分存在共模干扰和差模干扰,数字系统的高频干扰容易进入模拟部分,外设信号还常常会受到电源波动、强脉冲等干扰。上述干扰不仅会影响模拟信号采集的精度,严重时会影响电路的稳定性乃至计算机的工作。因此,实验系统需要对所有的输入、输出信号均进行了隔离。
本文基于线性光耦TIL300模拟量输入输出实现隔离(如图4a),其中,U1A、U2A为运算放大器LF356,共同组成偏置电路;U2补偿U1的传输特性与温度漂移,保证U1的线性度;U3为输入差分运放电路,提高输入信号的抗干扰能力;模拟量隔离电路可以有效地提高脉冲量、阶跃信号由光电耦HCPL22631隔离;数字量采用TTL113光电耦合器隔离,也可采用脉冲变压器隔离。需要指出的是,光电耦合器输出驱动能力非常有限,必须增加负载驱动电路,数字量除数隔离电路需要驱动电路。除了对所有的输入输出信号隔离外,实验硬件系统还把模拟电路地与数字电路分开布线,并使用如图4(b)所示的电路隔离模拟与数字地和电源。上述措施不仅能够防止数字系统的高频干扰进入模拟电路部分,而且阻断了来自前置电路部分的共模干扰和差模干扰。
- 倒T型电阻网络D/A转换器(01-24)
- RS-485网络设计降低功耗问题(01-26)
- 网络环境下的蓄电池智能监测系统设计(01-06)
- 基于RTL8019AS的串口与以太网接口转换器(04-29)
- 在高温超导滤波器后级的低温低噪声放大器的设计和调试方法(06-01)
- 基于AX88796B的网络接口模块的设计与实现(06-24)