凌峰创科服务平台

LabVIEW Web服务器方法如何配置与使用?

LabVIEW 提供了强大的 Web 发布功能,允许你将前面板、数据和控制界面通过浏览器进行访问,这对于远程监控、数据共享和设备管理非常有用。

LabVIEW Web服务器方法如何配置与使用?-图1
(图片来源网络,侵删)

下面我将从核心方法、详细步骤、高级配置和最佳实践四个方面进行全面讲解。


核心方法:三种主要发布方式

LabVIEW 的 Web 服务器主要通过以下三种方式实现,适用于不同的应用场景:

方法 描述 优点 缺点 适用场景
Web 发布工具 这是最简单、最直接的方法,通过一个图形化工具,选择 VI 和要发布的控件,生成一个包含 HTML、Java 和 LabVIEW 服务器脚本的文件包。 简单易用,无需编程,适合快速原型和简单监控。 功能有限,界面是“快照”式,交互性不强,每次更新都需要重新发布。 发布静态或准静态的面板供查看,简单的数据监控。
Web 服务 这是一种更灵活、更强大的方法,通过 LabVIEW 的 Web 服务容器,你可以创建一个自定义的、基于 XML 的 API(Web 服务 VI)。 高度灵活,可以发布特定的数据或功能,而非整个前面板,适合与其他系统集成(如网页、手机 App)。 需要一定的 LabVIEW 编程知识,开发相对复杂。 为网页或移动应用提供数据接口,远程控制设备参数,发布特定计算结果。
WebVI 这是 NI Web-Based Monitoring and Control (WBM) 框架的核心,它使用现代 Web 技术(HTML5, JavaScript, WebSockets)来创建响应式的、高性能的 Web 界面。 现代化,响应式设计,性能高,交互性好,支持双向实时通信。 需要 NI Web-Based Monitoring and Control 许可和运行时引擎,对部署环境要求较高。 构建专业的、现代化的远程监控和控制系统,类似 SCADA 的 Web 版本。

方法一:使用 Web 发布工具(最常用)

这是最入门级的方法,适合大多数简单的远程监控需求。

详细步骤:

  1. 准备 VI

    LabVIEW Web服务器方法如何配置与使用?-图2
    (图片来源网络,侵删)
    • 打开你想要发布的 VI。
    • 确保前面板上的所有你希望远程用户看到的控件和指示器都设置为“共享”状态。
    • 如何设置共享
      • 右键点击一个控件或指示器。
      • 选择 “高级” -> “Web 发布工具…”
      • 在弹出的对话框中,你可以直接设置它的发布属性,你也可以先不设置,在工具里统一配置。
  2. 打开 Web 发布工具

    • 在 LabVIEW 菜单栏,选择 “工具” -> “Web 发布工具…”
  3. 配置发布设置

    • VI 名称:选择你要发布的 VI。
    • 前面板 URL:这是用户在浏览器中访问的地址,LabVIEW 会自动生成一个默认的名称,你可以修改它。注意:这个 URL 是区分大小写的。
    • 查看模式:选择用户如何查看你的 VI。
      • 嵌入:将 VI 的前面板嵌入到一个标准的 HTML 页面中,这是最常用的选项。
      • 快照:发布 VI 当前前面板的静态图片,会定期刷新。
      • 监视器:与“嵌入”类似,但会限制用户的一些交互功能。
    • 控件:这是最关键的一步,在左侧列表中,选择你想要发布的控件(输入)和指示器(输出),点击箭头将它们添加到右侧的“发布设置”列表中。
      • 对于控件,你可以设置它在 Web 页面上是可写(允许远程用户修改)还是只读
      • 对于指示器,它默认是只读的,用于显示数据。
  4. 文件设置

    你可以设置存放生成的 HTML、Java 和支持文件的目录,通常保持默认即可。

    LabVIEW Web服务器方法如何配置与使用?-图3
    (图片来源网络,侵删)
  5. 连接设置

    • 端口:默认端口是 80,如果你的电脑上 80 端口被其他程序(如 IIS)占用,你需要修改为其他未被占用的端口(如 8080)。
    • 根目录:指定 Web 服务器的主目录,所有发布的文件都会存放在这里。
    • 浏览器访问:你可以指定哪些 IP 地址段的计算机可以访问这个 Web 服务器,为了方便测试,可以设置为 (允许所有访问),但在生产环境中应设置为你信任的 IP 地址段。
  6. 发布

    • 点击 “发布” 按钮,LabVIEW 会生成所需的文件,并启动 Web 服务器。
  7. 访问

    • 在同一局域网内的另一台电脑上,打开浏览器。
    • 在地址栏输入:http://<你的LabVIEW电脑的IP地址>:<端口号>/<前面板URL>.htm
    • http://192.168.1.100:8080/MyApp.htm
    • 如果一切正常,你就能在浏览器中看到 VI 的前面板了。

方法二:创建 Web 服务

这种方法更偏向于编程,适合需要将 LabVIEW 功能作为服务提供给其他应用(如网页、手机 App)的场景。

核心概念:

  • Web 服务 VI:这是一个特殊的 VI,它定义了可以通过 Web 调用的函数,它的输入和输出参数会被映射到 Web 请求的参数和响应中。
  • Web 服务容器:运行在 LabVIEW Web 服务器上的一个环境,负责接收 HTTP 请求,找到对应的 Web 服务 VI,执行它,并返回结果(通常是 XML 格式)。

简要步骤:

  1. 创建 Web 服务 VI

    • 创建一个普通的 VI,GetData.vi,它可能有一个输入(如设备 ID)和一个输出(如温度数据)。
    • 在 VI 属性的 “Web 服务” 分类中,将该 VI 注册为 Web 服务。
  2. 创建 Web 服务描述文件 (.wsdl)

    这个文件描述了你的 Web 服务的接口(有哪些方法,输入输出是什么),LabVIEW 可以自动生成这个文件。

  3. 部署和调用

    • LabVIEW Web 服务器会根据 WSDL 文件,在特定的 URL 上暴露你的服务。
    • 其他开发者(如网页前端工程师)可以使用任何支持 HTTP 请求的语言(如 JavaScript, Python, C#)来调用这个服务。
    • 调用示例 (JavaScript)
      fetch('http://labview-server:8080/MyWebService/GetData?deviceId=1')
        .then(response => response.text()) // LabVIEW 默认返回 XML
        .then(data => {
          console.log('从 LabVIEW 获取的数据:', data);
        })
        .catch(error => {
          console.error('调用失败:', error);
        });

方法三:创建 WebVI

这是 NI 推荐的现代方法,提供了最佳的用户体验。

核心概念:

  • WebVI 编辑器:一个 LabVIEW 项目中的特殊项,用于设计 Web 界面。
  • G-Script:一种基于 LabVIEW 图形化语法的脚本,用于在 Web 浏览器中执行逻辑和数据处理。
  • WebSockets:一种在 Web 服务器和浏览器之间建立持久、双向通信的技术,确保数据实时更新,无需频繁刷新页面。

简要步骤:

  1. 安装和许可

    • 确保你的 LabVIEW 安装了 NI Web-Based Monitoring and Control 模块。
    • 你需要相应的许可证才能开发和部署 WebVI。
  2. 在项目中创建 WebVI

    • 在 LabVIEW 项目中,右键点击“我的电脑”,选择 “新建” -> “Web-Based Monitoring and Control” -> “WebVI”
  3. 设计界面

    • WebVI 编辑器会提供一个类似前面板的设计界面,但控件是 Web 原生的(如图表、滑块、按钮等)。
    • 你可以将这些控件拖放到设计画布上。
  4. 编写后端逻辑

    • 你可以将 LabVIEW VI 拖到 WebVI 的“主机”部分,将前面板控件和 VI 的输入/输出连接起来。
    • 当用户在浏览器中与 WebVI 交互时,会触发后台的 LabVIEW VI 执行,并将结果通过 WebSocket 实时推送到前端。
  5. 部署

    • WebVI 需要部署到 NI Web-Based Monitoring and Control Server 上,而不是 LabVIEW 自带的 Web 服务器,这是一个独立的运行时环境。

高级配置与最佳实践

  1. 安全性(最重要!)

    • 使用防火墙:不要将 LabVIEW Web 服务器直接暴露在公网上,只允许来自特定 IP 地址(如你的办公室网络)的访问。
    • 启用 HTTPS:对于任何生产环境,都必须使用 SSL/TLS 加密通信,你可以配置 LabVIEW Web 服务器使用自签名证书或由受信任的证书颁发机构签名的证书,这能防止数据在传输过程中被窃听。
    • 设置用户名和密码:在 Web 发布工具的“连接设置”中,可以启用“需要用户验证”,并为不同的用户或用户组设置权限。
    • 使用 VPN:最安全的方式是要求用户先通过 VPN 连接到你的内部网络,然后再访问 LabVIEW Web 服务器。
  2. 性能优化

    • 避免发布过多数据:不要将高速循环中产生的大量数据直接发布到 Web 页面,这会导致网络拥堵和浏览器卡顿,考虑发布“聚合数据”(如最大值、最小值、平均值)或降低发布频率。
    • 使用 WebVI:对于需要实时更新的应用,WebVI 的 WebSocket 技术比传统的 HTTP 轮询(Web 发布工具)效率高得多。
    • 前端优化:对于复杂的自定义 Web 页面,注意优化 HTML、CSS 和 JavaScript 代码。
  3. 部署与维护

    • 使用开机自启动:将 LabVIEW 设置为 Windows 服务或在启动时自动运行,确保服务器重启后 Web 服务能立即恢复。
    • 版本控制:将你的 VI 和 Web 发布文件纳入版本控制系统(如 Git),方便追踪变更和恢复。
    • 日志记录:启用 LabVIEW Web 服务器的日志功能,记录访问和错误信息,便于排查问题。

总结与建议

  • 新手/快速原型:从 Web 发布工具 开始,它能让你在几分钟内看到成果,是理解 LabVIEW Web 服务器工作原理的好方法。
  • 需要集成/API:如果你的目标是给一个网站或 App 提供数据接口,选择 Web 服务,它提供了最大的灵活性和标准化。
  • 构建专业级监控系统:如果你需要开发一个功能强大、界面美观、交互流畅的现代化远程监控应用,WebVI 是不二之选,尽管它有较高的门槛,但最终的体验和性能是最好的。

希望这份详细的指南能帮助你掌握 LabVIEW Web 服务器的使用方法!

分享:
扫描分享到社交APP
上一篇
下一篇