본문으로 바로가기

랩뷰에서 파이썬 실행하기

category Programming/LabVIEW 2021. 8. 9. 17:15
반응형

자바스크립트나 파이썬과 같은 동적 프로그래밍 언어의 인기가 높아지며, 다른 개발 환경에서 이런 스트립트 언어로 작성된 코드를 연동하는 방법들이 많이 주목받고 있다. 바라보는 관점에 따라 여러 해석이 나올 수 있겠지만, 언어마다 가지는 특장점을 적극적으로 살리는 형태의 개발이 트렌드가 되고 있다는 생각을 가지고 있다.

오늘은 파이썬으로 작성된 코드를 랩뷰 안에서 실행시키는 방법에 대해 포스팅을 해보려고 한다. 만약, 파이썬에 관한 기초적인 내용이 궁금한 경우, 블로그 내에서 파이썬을 주제로 한 시리즈 글을 참고하길 바란다.

랩뷰 안에서 파이썬 코드를 실행시키는 첫 번째 방법은 System Exec VI를 이용해서 파이썬으로 작성된 프로그램 코드를 직접 실행하는 방법이다.

System Exec VI는 블록 다이어그램 메뉴 중에서 Connecivity의 하위 메뉴인 Libraries & Executables에 위치하고 있다. System Exec VI는 위 그림과 같은 형태를 가지고 있고, 윈도우 기반의 애플리케이션을 실행해주는 역할로 사용한다. 다시 말해, 작성된 파이썬 프로그램을 지정해서 직접 실행시키겠다는 의미이다.

위 그림과 같이, 'Hello, LabVIEW!' 문자열이 출력되는 간단한 파이썬 프로그램을 하나 작성하였다. 이 프로그램은 TestCode.py라는 이름으로 저장되어 랩뷰의 System Exec VI를 통해 실행될 것이다.

작성된 파이썬 프로그램을 실행시키기 위해 그림과 같이 랩뷰 프로그램을 작성한다. System Exec VI의 Command Line 입력으로 실행할 파이썬 프로그램의 경로를 전달해주어야 한다. 여기서 주의할 점은 랩뷰의 도움말 문서에도 나와 있듯이, System Exec VI는 윈도우 기반의 프로그램을 실행해준다는 것이다. 다시 말해, 앞에서 작성한 파이썬 프로그램의 경로도 필요하지만, 동작시킬 파이썬의 인터프리터 경로도 함께 전달해주어야 한다는 점이다.

정확히는 위와 같은 형태로 작성된 문자열이 전달되어야 한다. 따라서, 파이썬 인터프리터의 경로와 작성된 파이썬 프로그램의 경로를 프론트 패널에서 각각 입력 받아서 하나의 문자열로 결합한 다음, System Exec VI의 Command Line에 연결한다.

이렇게 작성된 프로그램을 실행시키면, 파이썬 프로그램에서 print 함수를 통해 출력된 문자열이 System Exec VI의 standard output으로 전달되는 것을 확인할 수 있다.

파이썬의 sys 모듈을 이용하면, 위의 방법으로 파이썬 프로그램을 실행시키는 과정에서 원하는 인자를 전달할 수 있다.

먼저, 인자를 전달 받기 위해 파이썬 프로그램을 위 그림과 같이 수정하자. 파이썬 프로그램을 실행하는 과정에서 추가되는 인자는 sys.argv라는 리스트의 형태로 파이썬에 전달된다.

다시 말해, 위 그림과 같은 형태의 문자열이 System Exec VI의 Command Line으로 전달되면, 파이썬 프로그램의 이름인 TestCode.py를 시작으로 각각의 인자들이 sys.argv 리스트의 원소가 된다는 의미이다.

인자들을 포함한 문자열이 System Exec VI의 Command Line으로 전달되도록 랩뷰의 프로그램을 위 그림과 같이 수정하고,

프로그램을 실행하면, 위 그림과 같은 결과를 얻을 수 있다.

반응형

'Programming > LabVIEW' 카테고리의 다른 글

랩뷰에서 파이썬 호출하기  (0) 2021.08.09
SubVI  (0) 2021.08.09
SET과 MAP 데이터의 함수들  (0) 2021.08.07
MAP 데이터 타입  (0) 2021.08.06
SET 데이터 타입  (0) 2021.08.03