LabVIEW

 找回密码
 注册
查看: 31|回复: 0

[推荐贴] LabVIEW 如何调用外部的script 和 可执行程序

[复制链接]
发表于 2021-11-13 13:24:21 | 显示全部楼层 |阅读模式
USB-6009数据采集卡首发
Overview:
如果想在LabVIEW中调用C/C++的dll的话,用Call library node。但如果你之前的程序是用python,perl或者bat脚本写的,或者干脆就是个可执行的exe程序,那么用System Exec.vi, 它在后面板的位置是Connectivity/Libraries & executables。
1.png
Topic1:  使用LabVIEW调用python,perl或者bat的script
1. 首先,当然你要在你的机器上安装python,perl,然后把例如c:\Python27之类的路径加到你的environment variable的path里。
2. 设置正确的参数,working directory是你script的路径。wait until completion?如果是True,则如果你的script会运行1个小时的话,这个VI就会被block住,如果是False,那么script被调用后,VI会立刻返回。
command line就是实际运行的命令了,比如是python ***.py
3. 举个栗子
比如你在VI的同级目录下写了个test.py
INICode
  
1
# E9 h- N) [6 E" ~8 D, H  2
8 j* H( K; s. L# s0 g: K, }' k6 o  3
& z  t7 ?4 s' [) o* x  4) l% T* O1 `1 p- n, n- L  K
  5
& q% m- b8 d8 q  6
( Q5 t0 v; B) F! H" [  7  Y, q, q  T: k- L: g. |3 p
  8, F) k! h6 y, y; d* ]& L
  9
. v! D; l# ]% u1 ^/ U$ r8 |/ A  # s. \7 s/ b4 A1 y5 a' k8 F; b
  
  
  
import time
9 s" \  P4 Q# U4 o6 M  1 C$ Q8 l* e0 G7 `% a1 K. {1 w7 p
  def add(p1, p2):
! ^5 t: h$ ~+ U2 g0 S! N     print p1+p2
( r+ t" |* E! v+ X; b/ X5 ]     return p1+p2
6 o" T) R. W* _' L, s& B8 Z! u  & B3 X) F# A* R
  if __name__=='__main__':* G4 s0 r5 R7 L) q! l6 f) {1 X4 J
     time.sleep(5)
# m5 k5 m7 L, R' L3 N     add(1,2)
  
那么在VI里面就这样来画,当wait until completion?=True时,VI会被block住
2.png
Topic2:使用LabVIEW调用外部可执行文件exe和bat文件
如果你运行的exe已经在环境变量里了,那么OK,在command line的输入你可以直接写notepad等等等。但是,如果exe或者bat脚本是你自己写的,那么command line里面一定要写全路径,要写D:\****\***.bat,而不能写***.bat(会产生一个errorcode=2的错误)。不要被working directory这个输入混淆,它不是定义exe的路径的,而是定义exe运行后的工作路径。
在环境变量里的exe
3.png
自己的exe或bat:
4.png

# H! W) {2 a0 U
IDAQ-USB-6009数据采集卡
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|无图浏览|手机版|网站地图|虚拟仪器论坛 ( 沪ICP备13044638号-3 )

GMT+8, 2021-11-29 02:06 , Processed in 0.017094 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表