基于虚拟仪器LabVIEW的锁相放大器远程实验系统

测试测量实验

6人已加入

描述

  虚拟仪器是利用PC机的显示模拟传统仪器的控制面板,以多种形式表达输出检测结果,由PC机的强大软件功能实现信号数据的运算、分析、处理,由I/O接口设备完成信号的采集、测量与调理,从而完成各种测试功能的一种计算机仪器系统。

  基于互联网的远程实验是远程教育的一个新的发展方向。远程实验从远程计算机上进行实验操作和观察,所得到的实验结果与本地得到的完全相同,如同在实验室真实操作实验设备一样,突破了时空限制,极大地提高了实验教育的灵活性。将虚拟仪器技术和网络技术相结合,实现网络化虚拟仪器,并结合电路其他元件的远程控制,可实现基于虚拟仪器的远程实验。

  1 LabVIEW简介

  LabVIEW(laboratory virtual instrument engineering workbench)是美国NI公司推出的一种基于G语言(graphics language)的虚拟仪器软件开发工具,具有各种功能强大的函数库,包括数据采集、网络通信、串口控制、数据显示及数据存储等。采用旋钮、开关、波形图等构造用户界面。

  LabVIEW提供了强大的网络通信功能,TCP/IP(transmission control protocol/internet protocol)协议是Internet最基本的协议。函数库的Communication子模板中提供了TCP节点,可以实现客户机/服务器模式下的双机通信。

  2 远程实验系统总体设计

  本文开发了基于虚拟仪器的锁相放大器远程实验系统,实现了远程测量热敏电阻温度特性,远程实验系统结构框图如图1所示。

  

锁相放大器

  用户打开客户机,运行程序,在虚拟面板上可以设置锁相放大器的相位调节、积分时间等参数。同时,通过虚拟面板可以改变加热按钮的状态,用户在客户机的虚拟面板上点击加热按钮,接通加热电源,控制继电器闭合,加热电路开始给热敏电阻加热,该状态值通过Intern-et和服务器送往实验机。实验机将接收到的加热控制状态通过串口送入单片机,通过单片机调节继电器的状态,从而控制热敏电阻的加热状态。热敏电阻的温度由DSl8B20数字式温度传感器测得,送往单片机系统,通过串口将被测热敏电阻温度值读入到实验机中;音频输入电缆采集信号发生器输出的参考方波和桥式电路输出的电压值,经声卡模/数转换器送入实验机。实验机中的被测信号通过服务器和Internet反馈给客户机。用户通过虚拟锁相放大器和虚拟温度计进行观察和测量,得到热敏电阻温度特性曲线。

  3 远程实验系统的软件设计

  远程实验系统采用C/S(client/server)模式,其典型运作过程为:

  (1)服务器监听相应端口的输入;

  (2)客户机发出一个请求;

  (3)服务器接收到此请求;

  (4)服务器处理此请求,并把结果返回给客户机;

  (5)重复上述过程,直至完成一次会话过程。

  客户机与实验机的通信利用TCP/IP协议实现。TCP协议是一个可靠的、基于连接的协议,能保证网络间的可靠传输。C/S模式要分别编写客户机和实验机程序,采用TCP协议可正确传送控制命令和数据。

  锁相放大器远程实验系统需要实现远程控制继电器的状态,声卡采集输入信号和参考信号,串口采集温度值,并用锁相放大器测量热敏电阻输出电压,用虚拟温度计测量热敏电阻的温度。在LabVIEW环境下分别编写客户机和实验机程序,实现测量热敏电阻温度特性曲线远程实验。

  3.1 客户机程序

  3.1.1 客户机程序的用户界面

  客户机程序的用户界面如图2所示,集成了锁相放大器的全部功能以及虚拟温度计,波形图实时显示了锁相放大器工作过程中各个中间过程的波形。热敏电阻的温度值也实时显示在虚拟温度计上。

  

锁相放大器

  用户点击加热按钮,接通加热电源,其状态值经由网络送往实验机,从而改变实验室内测温电路的继电器状态,加热电路开始对热敏电阻进行加热。实验电路中桥式电路的输出信号和热敏电阻的温度值,经由网络反馈给客户机,用户通过虚拟仪器面板观察各个点波形的显示,同时读取温度值,完成热敏电阻温度特性测量。

  服务器一栏设置为实验室内服务器的IP地址,剩余时间一栏显示用户可用的时间。本实验控制真实的实验元件,每次只能有一位用户操作。规定每位用户的实验时间为30 min。30 min后,此客户机与实验机的连接自动断开。

  3.1.2 客户机软件框图程序

  软件框图程序如图3所示。程序分别设置了3个While循环结构,分别完成读取温度值、读取电压值以及发送控制继电器状态的功能。循环中止的条件为下列三者之一:用户点击了“退出”按钮;用户连接时间超过了30 min;实验过程中TCP连接出错,如实验机程序先行中止,或系统错误引起连接中止。

  

锁相放大器

  客户端程序的软件部分采用3个独立的While循环,每个端口分别设置了独立的服务器端口,依次是2322,2323和2324。

  (1)读取反馈的实验数据。对于数据接收,用2个TCP Read节点读取实验机发送的声卡采集的数据长度和字符串数据。

  2322端口接收串口读取的温度值,因为温度值采集时已经转换为4位BCD码表示的十进制数,因此接收时读取的字长设置为4,读取的温度值送入虚拟温度计并实时显示出来。

  2323端口对应接收声卡读取的电压值,因为是左、右声道各采集一路信号,因此设置了2个Sequence结构,其中Sequence0接收左声道读取的桥式电路输出信号,送入锁相放大器的信号输入端;Sequence1接收右声道读取参考方波,送入锁相放大器的参考信号输入端。同时将读取的波形实时显示在用户界面上。

  (2)发送继电器控制信号。2324端口发送加热控制电路的继电器状态值,用户可以在虚拟面板生改变加热按钮的状态,并通过服务器反馈回实验机,从而控制加热电路中继电器的状态。加热按钮其处于不同的位置时,向网络连接发送不同的命令字。将命令字放在一个CASE结构中,这样便于实现用户将加热按钮置于不同的位置时,发送不同的命令字。为有效传送数据,采用2个TCP Write节点,第1个节点发送字符长度,第2个节点发送字符数据。

  3.2 端口映射

  服务器平台上安装Linux操作系统。利用其IPtables防火墙技术进行端口映射,使得互联网上的计算机可以通过访问服务器,间接访问实验机,进行远程实验。端口号的选择要避开系统保留端口,即O~1023。假设实验机程序的监听端口为2322。在IPtahies中,将服务器的2322端口映射到实验机。外界计算机访问服务器的2322端口时,若实验机程序正在2322端口监听,与客户机的TCP连接就会建立,客户机与实验机通信,传送控制命令与实验数据。

  3.3 实验机程序

  3.3.1 实验机程序的用户界面

  实验机程序的用户界面如图4所示。波形显示图实时监测声卡采集的信号;日志文件用于记录与实验机建立连接的客户数目、客户地址和连接时间。Inputformat设置了声卡采样的数字声音格式;数据采集为立体声格式,样本位数为16 b;为了防止数据溢出,远程数据传送时A /D转换率采用11 025 Hz。Constant为声卡采集数据的缩小倍数。温度显示为串口采集到的热敏电阻的温度。

  

锁相放大器

  实验机程序实现如下功能:

  实验机接收用户发送来的加热信号,通过串口送往单片机系统,由单片机根据预先设置的指令驱动继电器,从而控制热敏电阻的加热状态。热敏电阻的温度值由串口采集,送入实验机;音频输入电缆左声道采集热敏电阻阻值改变后桥式电路的输出电压,右声道采集信号发生器输出的参考方波,通过声卡送入实验机。实验机将采集到的所有信号经由服务器和Internet反馈给客户。

  3.3.2 实验机软件框图程序

  实验机框图程序如图5所示。实验机程序的软件部分整体采用一个While循环,其l中又包含2个While循环。其中一个While循环中设置了一个顺序结构,Sequence 0中包含了2322监听端口,用于监听串口读取温度值;Sequence 1中包含了2323端口,用于监听声卡读取电压值。

  另外一个While循环中包含了一个2324监听端口,用于接收客户机发送来的当前继电器状态值。当接收到闭合继电器控制指令时,发送“30 H”到单片机,控制继电器闭合;当接收到断开继电器控制指令时;发送“31H”到单片机,控制继电器断开。单片机与实验机通过串行口通信,接收计算机发送的控制指令。

  

锁相放大器

  (1)实验机与单片机的串行通信。实验机与单片机的通信利用LabVIEW中的VISA库(virtua|instrument software architecture)实现。V-ISA作为新一代程控仪器I/O软件规范,在接口无关性、平***立性、可扩展性和功能上都有很大提高。本文单片机带有RS 232接口,计算机通过串口与之通信。单片机通过串口与实验机相连,VISA Configure Serial Port节点中VISA Resouce Name设为ASRL4:INSTR。参数与单片机的设置一致:传输速率4 800 b/s,起始位1位,数据位8位,停止位1位,无校验位。

  (2)声卡采集电路信号。用SI Read节点读取声卡采集的电路信号,Stereo 16 b端口显示读取的数据。Index Array函数分别提取0列(左声道)和1列(右声道)的信号,缩小一定倍数后,经Type Cast函数转为字符串数据:Sequence 0发送音频电缆左声道采集的数据,即热敏电阻两端的电压;Sequence 1发送音频电缆右声道采集的数据,即信号发生器输出的参考方波。信号波形同时显示在前面板波形显示器中显示。

  4 结语

  本文开发了基于虚拟仪器的锁相放大器远程实验系统。用LabVIEW软件编写了客户机与实验机程序,实现了远程测量热敏电阻温度特性曲线。与传统实验相比,只需要一台计算机、一台信号发生器以及必要的硬件实验电路即可进行实验。在此基础上结合网络技术和仪器控制技术,实现远程实验。

欢迎转载,本文来自电子发烧友网(http://www.elecfans.com/)
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分