基于FPGA的多通道应变测试系统设计

2011-09-12 03:22张浩茹谢锐
电子测试 2011年11期
关键词:电桥命令单片机

张浩茹,谢锐

(1 中北大学电子测试技术国家重点实验室,山西太原 030051;2 中北大学仪器科学与动态测试教育部重点实验室,山西太原 030051)

0 引言

该系统采用FPGA+单片机的结构,单片机Msp430用来进行数据采集及转换,数据传输、显示及远程通信则由计算机来完成。由单片机采集到的数据发送到FPGA后,经串并转换保存到内部的FIFO里,计算机经USB通信读取数据。用户在LabVIEW设计的软面板上选择通道、采样频率,以及电桥调平衡等对模拟板的控制,产生一组命令,计算机将命令通过USB通信口发送给FPGA,FPGA对命令进行解串后将各组命令对应发送出去。这种设计方案经验证是可行的,本系统极大地提高了采集模式的灵活性和数据采集的实时性。MSP430系列单片机是由TI公司开发的16位单片机,其突出特点是强调超低功耗,非常适合于各种功率要求低的场合。该系统采样电路采用MSP430单片机内部12位的A/D,在多通道应变测试系统中实现实时选择通道和采样频率的功能。FPGA为主控逻辑模块。

1 系统总体方案设计

1.1 应变测试基本原理

应变测试系统使用电阻应变片来测量力学实验台上加载后构件产生的应变。构件上的应变片与应变仪中电阻组成电桥,杆件发生形变时,引起桥臂上应变片阻值发生变化,根据胡克定律,通过测试出的构件表面测点的应变,求出测点的应力,从而实现应变测量的目的[1]。

本设计的测量电路采用惠斯登电桥,将应变片的阻值变化转化为电压或电流信号。采用恒压源供电,应变片连接的基本电路如图1所示。

图1 基本电路图

分析电路,其中有:

所以,当公式中的R1R4=R3R2时,电桥平衡,桥路的输出电压△e为零。一般桥臂选用等臂电桥[2]。

1.2 多通道应变测试系统工作原理

如图2所示,该系统的主要功能是采集并在计算机上实时显示包括载荷、力锤以及10路应变的12通道数据,多通道数据采集的选通功能由计算机控制单片机来实现,FPGA作为计算机与单片机的桥梁。FPGA接受到来自计算机的包含采集任务和电桥调平衡的任务后,对接收到的串行传输的各组命令逻辑进行解串,之后发送到单片机,程序跳入中断,单片机开始工作。单片机将采集到的应变片模拟应变信号转变成数字信号,数据由单片机经SPI模式即同步串行传输模块快速发送给FPGA,FPGA将数据经串并转换后存储到计算机上。该系统采用1kHz的采样频率来采集载荷与应变信号,用100kHz的采样频率来采集力锤的信号,载荷与应变在PC上同步实时显示,以便实验人员可以实时观测载荷与应变在变化过程中的相互关系。

图2 应变测试系统原理框图

1.3 信号调理电路

模拟信号经INA128仪表放大器进行放大,由于仪表放大器是一种具有差分输入和相对参考单端输出的闭环增益单元,它的两个输入端阻抗平衡并且阻值高,与电桥隔离,避免对电桥产生影响。设计滤波器时,除考虑满足滤波截止频率的要求外,还要考虑满足测试系统的不失真测试条件即幅频特性应当是常数(即水平直线),相频特性应当满足线性关系。设计的滤波电路采用以二阶压控电压源低通滤波器为模型的模拟低通滤波器,其中当Q=0.707时,滤波器具有最佳阻尼比。图3为应变信号的放大滤波电路。经计算,放大系数为72倍,前一级的INA128仪表放大器放大了72倍,在图3所示的滤波电路中放大了两倍。

图3 滤波放大电路

2 基于FPGA的设计实现

FPGA系统的硬件设计模块主要有采集参数逻辑转换模块、串并转换模块、时钟生产模块和FIFO设计模块等[3]。下面主要对命令参数逻辑转换、串并转换和FIFO设计模块进行描述和实现。

2.1 串并转换

串并转换的功能是将串行输入的数据加载到8位寄存器中,然后并行输出,图4为串并转换的电路结构。图4中,Din为输入的串行数据,q[7:0]为并行输出数据,Clk是转换的时钟信号,Nrst是复位信号[4]。

图4 串并转换电路结构

本设计采用VHDL语言输入法,使用quartus II 软件进行编译仿真,功能仿真的结果如图5所示。图6所示的串并转换模块是在quartus中由实现串并转换功能的VHDL语言生成。

图5 串并转换模块仿真图形

图6 串并转换模块原理图

2.2 FIFO设计以及命令参数逻辑转换

在quartusII软件中,选择符合设计要求的FIFO进行适当修改。要让此FIFO完成需要的功能还需要加一些外围设备以产生需要的控制信号,比如FIFO的使能、半满、全满和溢出等标志[5]。FIFO的余度值原则上不可过于接近FIFO深度。因为在计算机通过USB口读取数据,68013响应FIFO中断时,FPGA仍然在进行数据的采集和存储[6]。设置的余度值过于接近FIFO深度将容易产生FIFO溢出的错误。FIFO核心模块的信号有:读写数据q/data;读写使能rdreq/wrreq;读写时钟clk;数据空信号和满信号。数据data在写时能有效的情况下按照写时钟往FIFO里面存储,在读使能时,数据按照读时钟的速度从q数据总线上输出。

计算机发出两组命令,分别发送给模拟电路和单片机。发送给模拟电路的命令主要是电桥调平衡,命令发送格式为以一桢16bit的数据传输到FPGA,然后由FPGA进行解串。解串后发送给模拟板。数据格式如图7所示。前面8位是值为66的桢头,后面8位为电桥调平衡的各组命令,U/D控制滑动变阻器滑动片的移动方向,INC根据U/D所指示的滑动方向调整滑动变阻器的电阻值。TA0~TA3用来选通需要进行电桥调平衡的通道。

图7 电桥调平衡命令逻辑传输数据格式

计算机发出的另一组命令是选择AD转换及读取的通道和采样频率。数据格式如图8所示。前面8位是值为55的桢头,后面的16位数据为选通和采样频率选择的命令。其中高4位用来控制采样频率的选择,低12位分别对应AD采集的12个通道。高电平时选通。

图8 选通及频率选择命令数据格式

3 实验结果

以等强度梁为例,在定载荷采样时,采用增量均值的测量方法,每增加相同的载荷测量出一个应变值,再将应变的差值取平均得出增量载荷对应的应变值[8]。等强度梁第一通道测试数据如表1所示。

表1 等强度梁测试数据

-128即为本次测量增量载荷所对应的应变值。载荷增量值为300。

4 结论

本文完成多通道应变测试系统中关于FPGA部分的设计。使用VHDL编程语言对FPGA进行设计,在quartusII软件中进行系统仿真和验证。并且可以根据现场具体情况,可以灵活的修改FPGA内部配置。因此,使该系统较原来的系统更加灵便,可靠性更高。

[1]叶卫东,任宪朝.基于FPGA的微应变数据采集系统的设计[J].微计算机信息,2009,25(16):71-73.

[2]韩雪,郭文成.FPGA的功耗概念与低功耗设计研究[J].单片机与嵌入式系统应用,2010,(3):9-11.

[3]Welch, T.A.A Technique for High-Performance Data Compression[J].IEEE Computer 1984,17(6):8-19.

[4]Zhang W D.Design Method of Storage Measurement and Its Application [M].Higher Education Press,2001:50-54.

[5]滕明晖,杨瑞峰.基于FPGA的高速大容量异步FIFO的实现[J].电子测试,2010(6):47-50.

[6]田小芳,熊超,陆起涌.基于CPLD/FPGA的同步异步转换实验设计[J].实验室研究与探索,2005,24(8):50-52.

[7]刘薇,张彦军,郑燕露,刘文怡.基于FPGA的多通道高精度采集传输系统的设计[J].化工自动化及仪表,2011,38(3): 335-338.

[8]陈茂华.基于无线数据传输的力学实验台测试系统研究[D].太原:中北大学,2008.

猜你喜欢
电桥命令单片机
只听主人的命令
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
单臂电桥测电阻灵敏度的分析
移防命令下达后
电桥法测量电阻的实验研究
这是人民的命令
Microchip推出两个全新PIC单片机系列
双源电桥测高阻关键环节和技术的探讨