当前位置:首页 > 模拟 > 模拟
[导读]设计了基于虚拟仪器的锁相放大器远程实验的软件系统,用LabVIEW软件编写了客户机与实验机程序,实现了串口与单片机系统的通信、声卡采集信号、TCP/IP网络通信等功能。用Linux中的IPtables防火墙技术实现实验机与服务器间的端口映射,使得互联网上的所有用户可以通过服务器访问实验机,进行远程实验。

O 引言
    20世纪80年代末美国成功研制了虚拟仪器,虚拟仪器的发展标志着自动测试与电子测量仪器领域技术发展的一个崭新方向。虚拟仪器是利用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软件编写了客户机与实验机程序,实现了远程测量热敏电阻温度特性曲线。与传统实验相比,只需要一台计算机、一台信号发生器以及必要的硬件实验电路即可进行实验。在此基础上结合网络技术和仪器控制技术,实现远程实验。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭