复​用​现有​LabVIEW​代码,​缩短​开发​时间

概览

LabVIEW​在​单​个​应用​程序​中将​多种​编​程​方法​与​图形​化​数据​流​(G)​组合​在一起。 您​可以​利用​这种​灵活​性​选择​所需​的​工具​来​创建​算法​并​解决​各种​各样​的​工程​问题。 LabVIEW​将​多种​语言​(如.m、​C、​Python、​IEC 61131-3​和.NET)​集成​到​您​的​应用​程序​中,​且​能够​与​本地​或​网络​上​运行​的​其他​软件​进行​互​操作,​从而​帮助​团队​更​快速​成功。

目录

  1. 将​现有​源​代码​和​共享​库​集成​到​LabVIEW中
  2. 便于​团队​合作​的​互​操作性
  3. 物理​系统​仿真​与​建模
  4. 结论
  5. 其他​资源

将​现有​源​代码​和​共享​库​集成​到​LabVIEW中

LabVIEW​包含​许多​复​用​现有​代码​库​的​选项,​因此​您​无​需​再​创建​新​代码。

集成.m​代码

导入、​编辑​和​执行​使用​The MathWorks,​Inc.MATLAB®​或​GNU Octave​软件​开发​的.m​文件,.m​文件​是​数字​分析、​信号​处理​和​高级​数学​的​常用​编​程​方法。 这些​脚本​与​使用​G​开发​的​VI​相​结合,​可​构成​独立​的​可​执行​程序,​在​台式​计算​机​以及​确定​性​实​时​硬件​上​运行,​从而​快速​访问​真实​的​I/​O。

了解​如何​在​桌面​和​确定​性​实​时​LabVIEW​应用​程序​中​添加​文本​数学。

图​1: MathScript​节点​可以​轻松​地​将​G​语言、​真实​I/​O​和.m​脚本​连接​起来。 

 

集成​C​代码

除了​将​源​代码​导入​LabVIEW​程序​框​图​之外,​还​可在​LabVIEW​应用​程序​调​用​使用​其他​语言​开发​的​应用​程序​和​算法。 例如,​如果​您​已经有​一个​C/​C +​+共享​库​并且​需要​在​LabVIEW​中​复​用​该​库,​那么​可以​使用​调​用​库​函数​节点​来​调​用​这个​共享​库。 为了​使​导入​外部​库​更加​容易,​LabVIEW​包括​导入​共享​库​向导,​可​自动​创建​或​更新​LabVIEW​包装​VI​项目​库,​以便​集成​到​LabVIEW​程序​框​图​中。

图​2: 使用​G​编​程​方法​和​调​用​库​函数​节点,​复​用​现有​C​或​C +​+共享​库。 ?,

集成​Python、​ActiveX​和.NET​代码

LabVIEW​也可以​调​用​系统​中​运行​的​其他​应用​程序。 开发​Python​自动​化​脚本​并​集成​至​大型​的​LabVIEW​程序​提供​了​一个​直观​的​解决​方案​来​将​Python​的​灵活​脚本​编写​功能​合并​到​LabVIEW​系统​设计​工具。 结合​System Exec.vi,​您​还​可​连接​命令​行;​System Exec.vi​提供​了​特定​操作​系统​的​接口​来​调​用​可​执行​文件​和​其他​内​置​库。 LabVIEW​还​可以​通过​ActiveX​或.NET​接口​调​用​公开​的​外部​代码。

了解​更多​关于​在​基于​LabVIEW​的​测试​和​测量​系统​中​使用​Python​的​信息

集成​来自​Linux​社区​的​软件包

NI​平台​本身​是​建立​在​许多​标准​技术​上​的,​所以​LabVIEW​用户​可以​访问​其他​技术​生态​圈,​包括​在​LabVIEW Real-​Time​应用​程序​中​使用​基于​Linux​的​库,​从而​提高​团队​可​复​用​的​代码​的​数量。 这些​方法​使用​的是​现有​代码,​因此​开发​团队​可以​尽可能​多​地​复​用​代码​并​将​其​集成​到​测试、​测量​和​控制​系统​中。

了解​更多​Linux​在​NI​平台​中​发挥​的​作用​及其​为​LabVIEW​用户​带来​的​好处。

集成​VHDL​代码

您​可​使用​G​编​程​方法​和​LabVIEW FPGA​模​块​来​编写​在​FPGA​上​运行​的​代码。​然而,​与​之前​使用​的​编​程​方式​一样,​您​可能​希望​复​用​现有​代码​或者​灵活​选择​实现​方式。 大​多数​FPGA​都​使用​基于​文本​的​数据​流​描述​语言​VHDL​进行​编​程。 您​可以​使用​组​件​级​IP(CLIP)​节点​将​VHDL​导入​到​VI​中,​而不是​使用​G​语言​重​写​编写​代码。

了解​更多​关于​将​外部​IP​导入​LabVIEW FPGA

返回​顶部

便于​团队​合作​的​互​操作性

在​LabVIEW​的​协同​环境​中,​您​可​充分利用​团队​成员​的​软件​语言​能力,​结合​合适​的​工具​高效​地​设计​系统。 LabVIEW​为​在​不同​环境​中​工作​的​不同​团队​成员​提供​了​高效​协作​的​接口。

通过​标准​工业​协议​与​外部​系统​通信

LabVIEW​具有​用于​以太​网​和​串​行​通信​的​通用​和​行业​专用​外​设​通信​库。 通过​对​常用​工业​协议​(如​CAN、​PROFINET、​OPC UA​和​EtherCAT)​的​本​机​支持,​LabVIEW​可以​连接​到​各种​设备、​机器​和​基础​架构。 如果​您​的​应用​程序​需要​支持​多种​协议,​LabVIEW​可以​作为​一个​网​关,​在​几乎​20​种​支持​的​协议​之间​转换,​包括​针对​特定​行业​的​协议,​如​DNP3​和​FlexRay。

由于​在​LabVIEW​中也​可​编​程​FPGA,​您​甚至​可以​高效​地​构​建​自​定义​通信​协议​来​满足​传统​或​专有​通信​需求。 LabVIEW FPGA​模​块​提供​了​串​行、​I2C​和​SPI​等​数字​总​线​协议​的​代码​示例,​作为​开发​的​起点,​同时​还为​Xilinx Aurora、​Serial RapidIO、​JESD204B​和​10​千​兆​位​以太​网​等​高速​串​行​协议​提供​了​FPGA IP​内​核。 了解​更多​可与​LabVIEW​无缝​连接的工业​协议​硬件​产品

开发​C/​C +​+应用​程序

许多​团队​已有​一些​熟悉​的​开发​环境​和​工具​链,​可以​与​基于​LabVIEW​的​系统​共存​和​互​操作。 例如,​对于​NI Linux Real-​Time​终端,​开发​人员​可以​在​Eclipse​或​其他​首​选​集成​开发​环境​(IDE)​中​完全​使用​C​或​C +​+编写​开发​和​调​试​应用​程序,​并​将​其​部署​到​嵌入式​处理​器,​并与​LabVIEW​应用​程序​连接。

了解​更多​LabVIEW​提供​的​C/​C +​+实​时​应用​程序​代码​开发​选项

 

图​3: 使用​LabVIEW​或​任何​与​Linux​兼容​的​工具​对​嵌入式​处理​器​进行​编​程,​并​使用​NI​可​重​配置​I/​O(RIO)​驱动​程序​与​LabVIEW FPGA​进行​通信。 

连接​IEC 61131-3​工业​自动​化​标准

IEC 61131-3​是​定义​可​编​程​逻辑​控制器​(PLC)​软件​架构​和​编​程​语言​的​国际​标准,​如​梯形​逻辑​和​结构​化​文本。 LabVIEW 2017 FPGA IEC 61131-3​接口​工具​可​允许​该​标准​定义​的​工业​自动​化​代码​通过​3S CODESYS IDE​与​NI Linux Real-​Time​设备​上​的​FPGA​芯​片​连接。 这​使得​设计​和​维护​团队​之间​可以​通过​熟悉​的​标准​界面​进行​协作,​便于​代码​复​用​和​调​试。

了解​更多​关于​与​IEC 61131-3​工业​自动​化​标准​的​连接

图​4: IEC 61131-3​接口​工具​可​允许​通过​CODESYS IDE​连接​NI FPGA。 

将​FPGA​与​Python​连接

Python​是​一种​高级​解释​性​脚本​语言,​主要​用于​科学​计算,​为​文本​处理、​Web​框架、​网络​通信​等​提供​了​大量​程序​库。 FPGA Interface Python API​可​允许​您​将​Python​与​NI​硬件​上​的​LabVIEW FPGA​代码​相​连接。 FPGA Interface Python API​可​兼容​Windows​和​Linux​开发​系统​以及​NI Linux Real-​Time​部署​终端。

了解​更多​关于​FPGA​与​Python​的​连接

图​5: FPGA Interface Python API​可​允许​通过​Python​连接​NI FPGA。 

 

返回​顶部

物理​系统​仿真​与​建模

物理​系统​建​模​和​仿真​通常​应用​于​嵌入式​系统​设计。 您​可以​通过​物理​系统​仿真​来​测试​使用​LabVIEW​编写​的​监测​或​控制​代码。 或者,​您​可以​将​测试​和​测量​结果​与​在​LabVIEW​中​运行​的​模型​进行​比较。 利用​LabVIEW​控制​设计​和​仿真​模​块​的​图形​化​信号​流​功能,​您​可以​创建​和​分析​模型,​以​了解​动态​系统​特性​并​创建​控制​系统​来​实现​所需​的​行为。 如​图​4​所​示,​您​可​将​基于​模型​的​编​程​方式​与​G​和​MathScript​节点​等​其他​方式​相​结合。

您​还​可​利用​Simulation Model Converter​来​转化​使用​The MathWorks, Inc. Simulink® 软件​开发​的​模型,​以便​与​NI LabVIEW​配合​使用。 由于​LabVIEW Real-​Time​模​块​非常​适合​用于​快速​控制​原型​设计​和​硬件​在​环​应用,​这些​动态​系统​可以​直接​部署​到​实​时​硬件​终端,​无​需​任何​中间​步骤。 如果​您​希望​在​Simulink​环境​或​各种​其他​仿真​环境​中​继续​进行​模型​开发,​可以​使用​LabVIEW​模型​接口​工具​包​来​连接​LabVIEW​和​LabVIEW Real-​Time。

了解​更多​关于​如何​使用​LabVIEW​控制​设计​和​仿真​模​块,​继续​利用​您​的​动态​仿真​能力

图​6: 从​LabVIEW​和​第三​方​建​模​环境​导入​控制​算法​和​系统​模型。​160;

返回​顶部

结论

许多​用户​使用​LabVIEW​作为​整个​系统​的​粘​合​剂,​因为​它​提供​所需​的​灵活​性​来​集成​不同​的​子​系统,​帮助​团队​进行​协作、​复​用​现有​代码​和​软件​能力​以及​针对​未来​需求​进行​扩展。 为了​提高​您​的​生产​效率,​在​过去​的​30​年​中,​NI​建立​了​一个​由​LabVIEW​代码、​工具​和​合作​伙伴​组成​的​生态​系统,​以​帮助​您​更​快​地​成功​构​建​测试、​测量​和​控制​系统。

返回​顶部

其他​资源

注册​商标​Linux®​的​使用​获得​了​Linus Torvalds​专属​授权​商​LMI​的​再​授权,​Linus Torvalds​拥有​Linux®​注册​商标​在​全球​范围​内的​所​有权。

MATLAB® and Simulink® 是​The MathWorks, Inc.​的​注册​商标。​注册​商标​Linux®​的​使用​获得​了​Linus Torvalds​专属​授权​商​LMI​的​再​授权 ,​Linus Torvalds​拥有​Linux®​注册​商标​在​全球​范围​内的​所​有权。

CODESYS®​是​3S-​Smart Software Solutions GmbH​的​商标

返回​顶部