第4章 网络化虚拟仪器精品.ppt
文本预览下载声明
4.7.2 B/S模式 采用B/S模式构成的Web虚拟仪器是将仪器的前面板发布到Web页面上,以浏览器/服务器的方式实现网络数据、命令传输,以虚拟仪器实现信号采集、显示与分析,最终通过Web服务器与数据采集控制服务器的交互来实现相关的测试与控制需求。它有三层体系:浏览器/Web服务器/数据采集与控制服务器,如图4-74所示。 图4-74 Web虚拟仪器系统构成示意图 4.7.3 应用实例 实例4.6 基于C/S网络的虚拟任意波形仿真信号发生器的设计 设计步骤 ①客户端数据发布VI的设计:分前面板设计和框图程序两部分。 ● 前面板设计 从Controls模板→All Controls→Num Ctrls中选择Numeric Control控件,依次放置输入型数字控件,或在框图程序中的任意波形发生器图标连线端分别点鼠标右键,出现Create菜单并选择Control,依次在前面板出现相应的输入型数字控件。本例有6个输入型数字控件,分别命名为:端口号、信号类型、信号幅值、信号频率、初始相位、采样周期,供使用者生成所需的信号。 从Controls模板→ All Controls →Graph Indicators中选择Waveform Chart图形控件,放置在前面板上,用于显示发送的信号波形。 从Controls模板→ All Controls →Boolean中选择Toggle Switch控件放置在前面板上,用于控制程序的启停。 本例的客户端端口号为2055(可任意设定),在信号类型中选择正弦波、方波、三角波,则运行之后所对应的前面板分别如图4-75、图4-76、图4-77所示。 图4-75 正弦波信号的产生 图4-76 方波信号的产生 图4-77 三角波信号的产生 ● 框图程序的设计 从模板Functions →All Functions→Analyze→Signal Processing→ Signal Generation中选择Signal Generator by Duration.vi(任意波形信号发生器),放置框图程序中。 为了能产生连续信号,从Functions→ All Functions→Structures中选择While loop, 放置框图程序中并用采样周期作为While循环等待时间。 从Functions→All Functions→Communications→TCP中分别选择TCP Listen、TCP Write、TCP Close节点,放置框图程序中,实现数据的发送。 将上述控件进行连线,完成之后保存,程序名为ClentAnyWave(发布).vi,其框图程序如图4-78所示。 图4-78 任意波形信号发生器发送端框图程序 ②服务端数据接收VI的设计:分前面板设计和框图程序两部分。 ● 前面板设计 从Controls模板→All Controls→Num Ctrls中选择Numeric Control控件,供使用者输入端口号。 从Control模板→Text Inds中选择String Ind控件,显示数据发布端的计算机名或IP地址。如果从Control模板→Text Ctrls中选择String Ctrl控件,则使用者可输入数据发布端的计算机名或IP地址。 从Controls模板→All Controls→Graph Indicators中选择Waveform Chart图形控件,放置在前面板上,用于显示接收到的信号波形。 从Controls模板→ All Controls→Boolean中选择Toggle Switch控件放置在前面板上,用于控制程序的启停。 与数据发布端产生的正弦波、方波、三角波相对应的接收端前面板分别如图4-79、图4-80、图4-81所示。 图4-79 正弦波信号的接收 图4-80 方波信号的接收 图4-81 三角波信号的接收 ● 框图程序的设计 接收端的框图程序较为简单,即从Functions→ All Functions→Structures中选择While loop,放置框图程序中并使While循环等待时间=采样周期。 从Functions→ All Functions→Communications→TCP中分别选择TCP Open、TCP Read、TCP Close节点,放置框图程序中,实现数据的接收。 将上述控件进行连线,完成之后保存,程序名为ServerAnyWave(接收).vi,其框图程序如图4-82所示。 实例4.7 基于B/S模式和虚拟仪器
显示全部