《(虚拟lcr测试仪的研究与设计).doc》由会员分享,可在线阅读,更多相关《(虚拟lcr测试仪的研究与设计).doc(54页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、本科生毕业论文(设计)中文题目 虚拟LCR测试仪的研究与设计 英文题目 Research and Development of Virtual LCR Instrument学生姓名 李维博 班级 650505 学号 65050537 学 院 仪器科学与电气工程 专 业 电气工程及其自动化 指导教师 张秉仁 职称 教授 中文摘要近年来出现的虚拟仪器突破了传统仪器的束缚,是仪器发展史上的一次革命。本文研究并设计了基于虚拟仪器技术的 LCR 测试仪,并以 LabVIEW 为软件平台,开发了相应的控制界面。该 LCR 测试仪采用经典的阻抗测量方法自由轴法,实现对被测参数的测量。系统由软硬件两部分组成。
2、硬件部分通过FPGA制作的地址译码器锁存电路实现与单片机的通信;通过 FPGA制作的数字波形 ROM,实现正弦波激励源及四路基准相位信号的发生;采用模拟乘法器芯片AD5428 实现全波鉴相;采 用A/D转换芯片ADS1232 实现模数转换功能。软件部分采用虚拟仪器软件平台 LabVIEW 开发应用程序,实现数据的处理与操作界面的设计。LCR测试仪通过计算机串口实现与计算机的通信。设计的基于虚拟仪器技术的LCR测试仪工作稳定,取得了良好效果。关键词 LCR测试 串行通信 FPGA LabVIEW 外文摘要Title Research and Development of Virtual LCR
3、Instrument AbstractIn recent years, the emergence of the virtual instrument is a revolution in the history of the development. It breaks the shackles of the traditional instruments, representing the latest development trend of the instrument. In this research, the structure and design of virtual LCR
4、 tester which is based on virtual instrument technology are studied. The construction process is also described and introduced. And the software platform adopts graphic virtual instrument software LabVIEW to development the control interface. The design of the LCR test board based on the free-axis m
5、easurement, one of the traditional method of measuring the most classic voltammetry. The research describes the LCR tester system from two respects, one is the hardware and the other is the software. In the hardware system, use FPGA chips in-house production of address decoder and latch circuit to a
6、chieve communications with Single-Chip Microcomputer. Use FPGA chips in-house production of digital waveform ROM to achieve the front-end excitation signal and the four-way reference signal. Two group of discrete digital waveform are controlled by the same address accumulator and programmable clock
7、control, therefore excitation signal and reference signal may guarantee the same frequency strictly. Select analog multiplier phase-sensitive detector AD5428 core and use front-end sinusoidal signal as a reference signal ,to achieve full-wave phase. Use the ADS1232 core to realize the analog-to-digi
8、tal conversion. In the software system, choose the Virtual instrument software platform LabVIEW to develop applications, in order to realize the data processing and user interface. The unique graphic language of LabVIEW is applicable to the production of instruments front panel to achieve the visual
9、ization of measurement results. LabVIEW provides a large number of VISA I/O library, to realize with GPIB, VXI or the serial port components interface correspondence. The hardware of the LCR tester communicate with the compute through the computer serial. LCR tester designed based on virtual instrum
10、ent technology works stability, achieving good results.Keywords LCR testing serial communication FPGA LabVIEW目 录1 引言11.1 论文研究背景11.2 论文研究意义21.3 论文的主要内容32 系统测试原理与总体方案设计42.1 LCR测试原理的研究与选择42.2 总体方案设计82.3 系统设计中的难点和关键技术93 LCR测试仪硬件部分实现103.1 硬件系统总体设计103.2 硬件电路的设计与实现114 LCR测试仪软件部分设计204.1 LabVIEW简介204.2 LCR测试
11、仪的VI设计205 系统测试265.1 系统硬件部分测试265.2 系统软件部分测试295.3系统测试及误差分析29总 结32参考文献33致 谢35吉林大学本科生毕业论文 引言1 引言1.1 论文研究背景随着计算机技术和软件技术的发展,新的测量方法以及新的仪器结构不断出现。近年来出现的虚拟仪器是仪器发展史上的一次革命,代表着仪器发展的最新方向和潮流。虚拟仪器(Virtual Instrumentation)是指,在以通用计算机为核心的硬件平台上,由用户自己设计定义,具有虚拟的操作面板,测试功能由测试软件来实现的一种计算机仪器系统。它通过应用程序将通用计算机与功能化硬件结合起来,用户可以通过友好
12、的图形界面来操作这台计算机,就像在操作自己定义、自己设计的一台仪器一样,从而完成对被测试量的采集、分析、判断、显示、数据存储等功能。吉林大学虚拟仪器实验室成功的将虚拟仪器技术引入实验室,构建了集信号发生、数据采集、分析处理于一体的可重构实验系统 VIETS(虚拟仪器实验教学系统)总线系统。VIETS系统具有低成本、可重构等特点,它可以实现一套系统替代多种仪器设备的目的,从而提高了实验教学的效率与质量。VIETS测试系统采用模块化的设计思想,将一些通用的测试仪器模块化,并按照一定的规范集成到一个机箱中。系统硬件平台采用“一个控制器+多个功能模块”的结构,通过控制器模块控制各功能模块的工作。系统软
13、件平台采用图形化语言LabVIEW开发应用程序。总体机构如图1-1所示,体系结构如图1-1所示。预计模块化仪器包括:任意波形发生器、数字存储示波器、多通道同步采集卡、LCR测试仪、频率计/计数器、矩阵开关、数字I/O和程控直流电源等。图1-1 VIETS测试系统体系结构1.2 论文研究意义在电子产品中, 电感(L)、电容(C) 和电阻(R)是构成我们所有电子设备最基本的元器件,其特性直接关系到产品的性能质量,甚至所设计产品的成功与否。在充满激烈竞争的电子行业中,要求电子产品必须具有越来越高的性能、质量及性价比,从而对所使用的元器件提出了更高、更严格的要求。元器件在不同的信号频率、不同的信号电平
14、下,其性能和技术指标会发生变化。尤其在高频段,元器件参数以及元器件所表现出的特性变化更大。所以,元器件虽然能满足出厂时的技术指标,但装入实际电路中会表现出不同的特性。正如我们实际使用的电阻、电容、电感并不是理想的元件,而是存在着寄生电容、寄生电感和损耗。因此,了解元器件在实际工作条件下的性能特性,有助于设计出高质量的电路,提高产品的性能和可靠性。 目前市面上的LCR测试仪,硬件电路往往比较复杂,体积比较庞大,不便携带。而LCR测试仪性能的实现基本上都是依赖于硬件,要达到智能化就一定要采用更高性能的硬件电路,这样的代价是价格的昂贵与更新速度的缓慢。虚拟LCR测试仪是以软件为核心的,其结合了计算机
15、强大的信息处理能力,将一部分硬件所难以达到的功能交予软件来实现,使设计的投资小,更新速度快。利用虚拟仪器技术研制具有较高稳定性和精密度的LCR测试仪是非常必要的。该LCR测试仪板卡可以实现在工作中方便快捷的对所需要的无源器件,电感(L)、电容(C) 和电阻(R)进行测量,从而了解元器件在实际工作条件中的特性。另外LCR测试仪的开发可以丰富VIETS系统,使其更广泛的应用在实验教学当中。1.3 论文的主要内容本文的第一章是引言部分,介绍了本题目的研究背景和研究意义。在第二章中,首先对LCR参数的测量方法:电桥法、谐振法、和伏安法,做了详细的研究和比较。确定了本次设计进行测量的基本原理伏安法中的自
16、由轴法。另外给出了系统的整体设计方案,分析了系统设计过程中的难点和关键技术。在第三章中,给出了LCR测试仪硬件部分总体实现方案及具体实现方式。文中分四个部分对系统硬件进行探讨。第一部分为接口通信模块的设计与实现。这部分是计算机与硬件板卡信息交流的通道,因此对该部分作了详细的论述。第二部分为信号源的发生。第三部分为相敏检波模块。第四部分为A/D转换模块。这部分对利用FPGA控制A/D转换的时序作了详细的介绍。在第四章中,介绍了LCR测试仪软件部分。给出了利用LabVIEW8.6开发系统应用程序的过程,并介绍了利用LabVIEW8.6设计的上层控制界面。在第五章中,对系统的硬件部分、软件部分以及整
17、体进行了测试,并给出了相应的测试数据和波形。然后根据测试结果对系统误差进行了分析。3吉林大学本科生毕业论文 系统测试原理与总体方案设计2 系统测试原理与总体方案设计2.1 LCR测试原理的研究与选择LCR参数的测量方法主要有电桥法、谐振法和伏安法。其中伏安法又分为固定轴法和自由轴法。2.1.1 平衡电桥法电桥法实际上是一种比较测量法,即把被测量与同类性质的已知标准量进行比较,从而确定被测量的大小。电桥有直流电桥和交流电桥之分。直流电桥只能测量电阻,要同时测量L、C、R必须采用交流电桥,原理如图2-1所示。其中、组成电桥的四个桥臂,G为检流计,一般为输出幅度稳定的正弦信号,频率和输出阻抗可调以适
18、应不同负载。如果调节桥臂使流过检流计的电流=0,则电桥平衡,有下式成立: ,即。 (2-1)图2-1 平衡电桥法测试原理图2.1.2 谐振法由于谐振电路有多种接法,这里简要介绍一下LC串联谐振。LC串联谐振电路如图2-2所示,为等效电阻。图2-2 LC串联谐振电路LC串联谐振网络有一个固有的谐振频率,由式 (2-2)决定。可以看出,只与L、C的大小有关,而与无关。当激励源的频率等于时,网络便发生串联谐振的现象。此时,网络呈纯阻性,且阻抗最小;L、C上的电压相等。已知、L可以求得C,或者已知、C可以求得L。2.1.3 伏安法伏安法是最经典的测量方法,它的测量原理直接来源于阻抗的定义。 图2-3
19、伏安法测量原理伏安法可以用图2-3所示的原理电路来说明。图中为激励源,是标准阻抗,是被测阻抗。由于与串联,流经与的电流相等,分别测出与两端的矢量电压与,通过电压比率便可计算出被测阻抗: (2-3)根据矢量表示的方法,可以将公式(2-3)写成 (2-4)从公式2-4可知,只要分别测出与的实部分量和虚部分量,再通过矢量除法运算就可以计算出被测阻抗。有两种方法可解决这个问题,分别是固定轴法和自由轴法。1. 固定轴法固定轴法采用双斜积分实现。双斜积分具有电压量相除的运算功能,但它只能实现简单的标量除。为了将式中的矢量除法转化为标量除法,就必须把复数阻抗直角坐标的实轴方向选取为与分母矢量的方向一致,这样
20、分母上的矢量只有实部分量,于是公式(2-4)就可以表示为: (2-5)这样只要通过简单的标量乘除运算就可以求出待测参数。2. 自由轴法自由轴法采用微处理器直接进行矢量运算。自由轴法原理框图如图2-4所示,图2-5是其矢量图。图2-4 自由轴法原理框图yU4U3U2U1UxUsx图2-5 自由轴法矢量图自由轴法的坐标方向可以任意选择,即相敏检波器的相位基准可以任意的选择。通过多路开关来选择与,由相敏检波器测出与在X、Y坐标轴上各个投影分量。为了得到矢量电压相应于正交坐标轴的分量,需要对每个或的两次测量保持精确的相位差。这就要求相位发生器能产生彼此严格相差的波形控制信号作为相敏检波器的基准电压信号
21、。由图2-4的前端电路分析得: (2-6) (2-7) (2-8)式中、分别为在和方向上的电压分量、对应的数字量;、分别为在和方向上的电压分量、对应的数字量;为A/D转换器的刻度系数,即每个数字代表的电压值。由式(2-6)(2-8)可得:(2-9)因此,直接通过计算、这些数字量即可完成矢量除法运算,求出被测阻抗。2.1.4 测试原理的选择平衡电桥法虽具有较高的测量精度,但测量需要反复进行平衡调节,测量时间长,很难实现快速自动测量。另外测量量程范围小,对于覆盖很大的测量范围,只能用分段测量法,这会造成各段测量精度不一致。因而目前智能LCR测试仪中很少采用电桥法。谐振法要求有较高的激励频率信号,一
22、般不容易满足高精度测量的要求。另外由于测量频率不固定,测试速度也很难提高。固定轴法要求复数阻抗的坐标轴固定。这样为了固定坐标轴,确保精确的相位关系,需要专门的硬件电路,如锁相、校相等,硬件电路复杂,测试困难,测量精度受到了限制。自由轴法,它不要求把坐标轴固定在某个已知的方向上,省去了有关的硬件电路,具有测试精度高、速度快的优点。目前大多数的LCR测试仪采用自由轴法,本设计也采用了此种方法,既充分利用了现代计算机技术,又体现了虚拟仪器的优势。2.2 总体方案设计本节主要介绍LCR测试仪的总体设计方案,分析在设计系统的整个过程中所遇到的难点和重点。2.2.1 硬件方案设计系统的硬件原理框图如图 2
23、-6 所示。设计中用 FPGA制作信号源,用来产生激励源信号和基准相位发生信号。信号通过 D/A 转换芯片 AD5428,使数字信号模拟连续输出。输出的激励源加到前端电路两端。在相敏检波器中进行电压实部和虚部的分离。通过A/D 转换芯片ADS1232将采集得到的模拟量转换成数字量然后送到计算机上层软件进行数据处理和显示。图2-6 系统的硬件原理框图2.2.2 软件方案设计LCR 测试仪的软面板通过图形化的编程软件 LabVIEW 编程实现,用户界面友好。系统的数据传输通过串行通信实现。软件工作流程:在VI程序中,首先进行选择VISA资源名称,设置波特率,设置数据位等初始化串口操作,然后启动设备
24、。用户根据自己需要发送测试状态命令。硬件系统接收命令完成相应的动作,并将采集数据通过串口送给计算机,应用软件对数据进行处理、分析和显示等功能。系统软件原理框图如图 2-7 所示。图2-7 系统的软件原理框图2.3 系统设计中的难点和关键技术 1.相敏检波器的实现。该部分是硬件电路关键的部分,也是系统设计的难点所在,该部分采用的是全波乘法器,取其有效直流分量。2.上层软件与硬件通信的实现。该部分是数据传输的关键,是整个系统的一个重要部分。该部分用串行通信技术,利用单片机编程和在FPGA内置的地址译码器实现。3.系统软件设计。利用LabVIEW开发应用程序,该部分包括串口配置,数据处理和显示界面,
25、是整个系统设计的重要部分。9吉林大学本科生毕业论文 LCR测试仪硬件部分实现3 LCR测试仪硬件部分实现3.1 硬件系统总体设计 LCR测试仪系统原理框图如图3-1所示图3-1 LCR测试仪系统原理框图系统分成以下几大模块:1.接口通信模块。单片机通过串口实现与计算机的通信。单片机负责处理计算机发送过来的命令,控制相应的电路单元工作。并且将接收到的采集数据发送给计算机。2.信号发生模块。部分主要包括可编程时钟、地址累加器、波形存储器、巴特沃斯低通滤波器和D/A转换器。主要用来产生激励信号和基准信号。 3测试模块。包括前端测量电路、信号调理和A/D转换三部分。前端测量电路,用四端对结构将被测量引
26、入测试系统;信号调理部分包括电压跟随电路、相敏检波电路、全波整流电路、低通滤波电路。其中电压跟随电路将被测元件两端的矢量电压和标准电阻两端的矢量电压进行分离,输出的矢量电压由相敏检波电路分别分离出实部分量和虚部分量,送给 A/D 模块进行模数转换;A/D 采集模块中的A/D 转换器选用高分辨率、高精度的模数转换器ADS1232。3.2 硬件电路的设计与实现3.2.1 接口通信模块的设计与实现接口通信模块是计算机与硬件板卡信息交流的通道,硬件系统通过此模块接收计算机发出的命令,控制相应的电路单元工作并且把处理得到的结果传给计算机进行数据的分析与处理。3.2.1.1 方案设计与方案选择方案一、利用
27、FPGA技术内制双口RAM实现总线通信LCR测试仪板卡中的单片机通过双口RAM实现与控制器板卡的通信。完成诸如配置寄存器初始化、数据存取、仪器命令解析等功能。利用FPGA技术在其内部制作双口RAM实现单片机与总线的通信功能。在VIETS系统中,各种命令、数据、地址和其它消息都是通过总线传递。总线从功能上可分为:电源总线、公用总线、数据传输总线、中断请求总线、触发总线。图3-2 利用双口RAM实现通信如图3-3所示,双口RAM通过FPGA技术仿造IDT7130实现,它可以通过两套数据、地址、控制线对唯一的储存单元进行操作。通过地址单元3FF,3FE的读写控制实现USB控制卡和本板单片机的中断响应
28、。控制需要注意的是FPGA内部存储器件的读写使能都是高电平有效,因此外围逻辑需要加入非门实现和IDT7130一致的逻辑。图3-3 FPGA内部双口RAM的实现方案二、利用串行通信技术串行通信是仪器和设备常用的通信方式。单片机可直接通过串口实现与计算机的通信。单片机负责进行数据的传输以及处理通过串口发送过来的命令,控制相应的电路单元动作。为提高程序的灵活性、增强系统集成度,可在FPGA内部制作地址锁存器,对单片机接收到的控制命令,完成单片机命令译码,控制相应的组件工作。方案比较方案一,所用的通信方式适合VIETS测试系统“一个控制器+多个功能模块”的模式。系统通过控制器模块控制各功能模块的工作。
29、但是利用这种总线通信的方式,涉及到LCR测试仪驱动的开发,USB控制器驱动的开发以及总线系统通信协议的修改等问题。总体设计复杂,周期耗时长,故没有采用;方案二,利用VIETS总线系统的电源总线和公用总线为LCR测试仪板卡供电和提供系统复位、系统时钟功能,利用串口和单片机实现数据的传输,则具有硬件电路简单灵活,FPGA及应用程序的开发易于实现等优点。故本次设计选用方案二设计接口通信。3.2.1.2 FPGA 技术概括FPGA是英文Field Programmable Gate Array(现场可编程门阵列)的缩写, 它是在PAL、GAL、PLD等可编程器件的基础上进一步发展的产物,是专用集成电路
30、(ASIC)中集成度最高的一种。FPGA 的开发流程如图3-4 所示:图3-4 FPGA设计流程图3.2.1.3 串行通信及单片机程序RS232目前仍然是计算机广泛使用的通信接口之一。在虚拟LCR测试仪中,串口主要用来实现本地控制。由于单片机串口为TTL电平,为实现和计算机的正常通信,需要电平转换芯片将TTL电平转换为RS232电平。电平转换芯片选用MAXIM公司的串口通信芯片MAX232。该芯片连接简单,只需几个外置电容即可。1. 系统接口电路图单片机与计算机接口电路如图3-5所示。图3-5 系统接口电路图2. 单片机软件编程通过软件编程,使单片机实现与串口通信的功能。单片机可以接收数据,并
31、且判断接收到的数据是否正确。另外,单片机还可以读取AD转换的数据并通过串口将其送给上层应用软件。单片机程序流程图如图3-6。图3-6 单片机程序流程图While循环中程序执行的功能是:当接收到正确数据时,判断第6个字节(前5个字节是固定的消息头)里面的值,当是1时,单片机发送读命令,将采集到的数据送给计算机;当是26时,单片机发送写命令,将从串口接收到的数据写到FPGA相应的地址中,以分别实现设置激励源,设置相敏检波器相位,设置标准电阻,设置采集信号源、放大倍数、采样速度和启动采集这些功能。以单片机给指定地址写激励源控制字为例程序为:case MSG_SET_STIMU: /设置激励源*(un
32、signed char xdata *)ADDR_FRE_ACLR = 1; /频率计数器清零置位*(unsigned char xdata *)ADDR_FRE_CTL0=command6;*(unsigned char xdata *)ADDR_FRE_CTL1=command7;*(unsigned char xdata *)ADDR_FRE_CTL2=command8;*(unsigned char xdata *)ADDR_FRE_CTL3=command9; /写频率控制字*(unsigned char xdata *)ADDR_FRE_ACLR=0;/频率计数器清零复位*(uns
33、igned char xdata *)ADDR_AMP_CTL=command10; /写幅度控制字*(unsigned char xdata *)ADDR_OFF_CTL=command12; /写偏置控制字break;3. FPGA内制地址锁存电路AT89S52中的16位地址,分为高8位和低8位。高8位由P2口输出,低8位由P0口输出。而P0口同时又是数据输入/输出口,故在传送时采用分时方式,先输出低8位地址,然后再传送数据。这就需要用地址锁存器将低8位地址信号锁存起来。单片机写周期的时序为:当地址锁存允许信号ALE为高电平时,P0口输出的地址信息有效,ALE的下降沿将此地址打入地址锁存器
34、。而ALE在下降为低电平时,单片机_WR低电平信号才有效,P0口上出现的数据写入由P2,P0组成得到的16位地址中。FPGA制作的地址锁存器如图3-7所示。图3-7 地址锁存器管脚说明:MCU_D7.0:单片机的数据输入、输出端,低8位地址输出端;ALE:地址锁存信号;MCU_A15.8:单片机高八位地址输出端;MCU_WR:单片机写信号,低电平有效;MCU_A7.0:单片机低八位地址输出端;Decode_A0AB:不同的地址空间端口。3.2.2 信号源模块的设计与实现信号源的设计包括前端测量电路的激励信号源和用于相敏检波的四路基准正弦信号。本设计利用正弦信号源作为激励源。1. 正弦信号发生模
35、块设计正弦信号发生模块产生一路正弦信号作为整个测试系统的激励源。图3-8 正弦信号发生模块框图波形ROM 中存有一个周期(256 点)的正弦信号幅度控制字,通过可编程时钟对其循环扫描输出,输出的幅度控制字由 AD5428 转换成对应的模拟量。其中,前一个 AD5428 的输出作为后一个 AD5428 的基准电压,用来控制输出信号的幅度。后一个 AD5428 输出的正弦波存在谐波分量,通过四阶巴特沃斯低通滤波器滤除高频谐波分量,能够得到频谱纯净的正弦信号。2. 基准信号发生模块设计在元件参数的测量中,分离出矢量电压的实部和虚部,然后进行测量。在FPGA内部设置四个初相位0、64、128、192,
36、由多路开关按要求选择初相位并与波形ROM中的256点相加,即可得到四路相位相差90的离散数字基准信号。图3-9 基准信号发生模块框图3.2.3 相敏检波器的设计与实现前端测量电路输出的电压是矢量电压,需要相敏检波器对其进行实部、虚部分离。相敏检波器的一种形式是半波取样积分型;另一种形式是模拟乘法器型。半波鉴相可以消除被测信号中所有偶次谐波的影响,奇次谐波的影响逐次减弱;而全波鉴相既可以消除偶次谐波又可以消除奇次谐波的影响。设计中采用模拟乘法器芯片AD5428进行相敏检波,采用正弦信号作为参考信号,实现全波鉴相。图3-10 相敏检波原理框图相敏检波的原理框图如图 3-10 所示。ROM1 和 R
37、OM2 共用地址线和时钟线,保证了激励源和参考信号同频率。地址累加器的初始值通过 sel1.0选择,与四个初相位相对应。波形 ROM2 与四个初相位分别相加,即可输出4组与激励信号源同频率的彼此相位差90的正弦参考信号幅度控制字。ROM2输出的8位数据信号送到8位乘法型 D/A 转换器 AD5428 的输入,待检测信号加到参考电压端。这样,在AD5428内部对基准相位信号和被测信号相乘,实现数字全波鉴相。3.2.4 A/D转换电路的设计与实现在A/D转换部分,考虑到价格、速度以及时序的控制方面,采用了低价格、高分辨率的串行输出芯片ADS1232。1 ADS1232芯片介绍ADS1232 是一个
38、精密24位A/D转换器,它具有低噪音可变增益放大器(PGA)(可选择增益 1,2,64 或 128),精密的-ADC(有效分辨率 23.5 位)和内部振荡器。ADS1232功能框图如图 3-11 所示:图3-11 ADS1232 功能框图ADS1232 没有控制寄存器,参数直接通过引脚(SPEED,GAIN0, GAIN1,A0,PDWN)控制。其中:SPEED 用来控制数据速率;GAIN0,GAIN1 用来控制增益;A0 用来通道选择;PDWN 用来复位。设计中对SPEED,GAIN0,GAIN1的控制,通过计算机给硬件电路写控制字来实现。2 ADS1232的时序控制在进行A/D转换时,如果
39、用单片机来控制转换时序,最高的转换速度只能达到几K,这样当测试信号为1K时,每个周期只能取几个点,很不准确,因此不采用单片机直接控制A/D采样。选择FPGA来做A/D采样的时序,只要单片机发出一条开始采样的命令,FPGA就会产生相应的时序进行A/D变换,当采完一定的数据量之后,FPGA自动结束A/D转换。如图3-12所示,当DOUT由高变低时,用户通过改变时钟,使ADS1232不断转换模拟位,第一次移出的是最高有效位。24位数据必须在下组数据更新前移出,否则数据将被覆盖。为防止有数据更新期间移出,设计时多发出一个时钟以抬高DOUT,而不是让DOUT停留在发送的最后一位数据状态上。这样就能够通过
40、判断DOUT的下降沿准确判断出数据准备好了。图3-12 ADS1232采集数据时序图3 ADS1232数据串转并的控制由于A/D输出是串行数据,因此在每次存储之前要进行串转并的操作,然后将数据存到单片机存储器中。同样采用FPGA进行串转并的控制。利用FPGA技术基于上述时序设计的数据采集时序模块如图3-13。图313 ADS1232采集模块管脚说明:MCU_rst:输入信号,高电平时启动采集,由计算机发控制字控制;clk:输入时钟;AD_DOUT:输入信号,ADS1232转换完成的信号或数据;AD_SCLK:输出信号,采样时钟;AD_DATA23.0:输出数据;finish:转换完成标志输出信
41、号。20吉林大学本科生毕业论文 LCR测试仪软件部分设计4 LCR测试仪软件部分设计4.1 LabVIEW简介LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是由美国国家仪器公司(NI)在1986年推出的一种基于图形编程语言(G语言)的开发环境,它具有十分强大的功能,包括数值函数运算、数据采集、信号处理、输入/输出控制、信号生成、图像的获取、处理和传输等等。LabVIEW与C、Pascal、Basic等传统编程语言最大的区别在于:传统编程语言用文本语言编程,而LabVIEW使用图形语言(即各种图标、图形符号、连线等)编程,
42、界面非常直观形象。LabVIEW程序称为“虚拟仪器程序”(简称VI),包括三个部分:前面板、框图程序、图标/接线端口。前面板用于模拟真实仪器的前面板;框图程序则是利用图形语言对前面板上的控件对象进行控制;图标/接线端口则用于把LabVIEW程序定义成一个子程序,从而实现模块化编程。LabVIEW程序设计过程与人们设计仪器的思维过程十分相近,程序框图就实现了程序代码功能,避免了一般程序设计从框图构思到程序表示的繁琐。LABVIEW编程的另一个优点是将软件的界面设计与功能设计独立开来,修改人机交互界面无需对整个程序进行测试,这对设计像仪器操作面板这样复杂的人机界面而言十分方便。4.2 LCR测试仪
43、的VI设计4.2.1 程序流程程序的流程控制是程序设计的一项重要内容,直接关系到程序的质量和执行效率。对于LabVIEW这种基于图形方式和数据流驱动的语言,程序流程更为重要。结构是程序流程控制的节点和重要因素,在LabVIEW中,结构控制函数在代码窗口中是一个大小可以调节的方框,方框内编写该结构控制的图形代码,不同结构之间可以通过连线交换数据。LabVIEW8.6 共有6种结构类型,即循环结构、选择结构、顺序结构、事件结构、公式节点以及反馈节点。结构化的基于文本的语言,如C语言,是按照代码的先后顺序编译、执行,而基于图形方式、以数据流驱动的LabVIEW中,只要某一个数据节点所需要的输入数据都
44、已经到位,则这个节点即开始执行。本设计中使用的事件结构,可以通过单击指定按钮来执行指定的事件处理分支程序。LabVIEW程序流程如图4-1所示。图4-1 LabVIEW程序流程图4.2.2 前面板设计前面板是程序的界面,在这一界面上有控制量和显示量两类对象。在前面板中,控制量模拟了仪器的输入装置并把数据提供给VI的框图程序,例如开关、旋钮;而显示量则是模拟了仪器的输出装置并显示由框图程序获得或产生的数据。下图是本仪器的软件面板。图4-2 LCR测试仪软件面板为监控参数设置状态过程中的通信是否正常,另外用LabVIEW开发了运行监控面板。此面板可以接收单片机接收数据后的返回指令。通过观察返回指令
45、是Y还是N,判断指令是否通过串口发给了单片机,Y代表指令成功被接收,N代表指令接收错误。另外此面板还可显示A/D采集到的24位数据和被测信号的实际电压值。图4-3 LCR测试仪运行监控面板 另外,软件启动后,要先初始化串口,配置通信参数。配置串口资源来源,波特率,校验位,停止位等信息。串口通信设置界面如图4-4。图4-4 LCR测试仪通信设置面板4.2.3 后面板设计后面板又称代码窗口或流程图,是VI图形化的源程序,在流程图中对VI编程,以控制和操作定义在前面板上的输入和输出等功能。流程图中包括前面板上对象的连线端子,还有一些前面板上没有但编程必须有的对象,如函数、结构和连线等。1 串口通信程序框图启动按钮按下后,要通过“VISA配置串口”节点配置通信参数,然后程序进入运行状态,发送控制命令。其中节点清空I/O缓冲区。图4-5 串口通信设置LabVIEW程序框图2 写控制字命令程序框图写控制字命令采用用户界面事件结构,LabVIEW中用户界面事件可实现前面板用户操作和程序框图保持同步执行。以发出设置激励源命令为例,当鼠标点击前面板上的时,程序自动进入事件中的设置激励源分支执行。通过将各个字符串连接成激励源控制字符串命令,负责将这一命令写入VISA资源指定的接口中。是“VISA读取节点
限制150内