본문으로 바로가기

랩뷰에서 파이썬 실행하기

category Programming/LabVIEW 2024. 5. 27. 14:17
반응형

몇 년 전부터 자바스크립트나 파이썬과 같은 동적 프로그래밍 언어의 인기가 하늘을 찌를 듯이 높아지고 있습니다. 프로그래밍을 주제로 영상을 제작하는 크리에이터들 사이에서도 파이썬과 자바스크립트 언어를 꽤나 많이 다뤘었구요. 지금도 웹을 기반으로 하는 프로그래밍에서 이들 언어가 많이 사용되고 있습니다.

바라보는 관점에 따라 차이가 있을 수 있겠지만, 여러 크리에이터들이 소리 높여 이야기하는 것처럼 동적 프로그래밍 언어만 가지고 대단히 많은 것들을 할 수 있다고는 생각하지 않습니다. 그렇다고 해서 정적 언어만이 진정한 프로그래밍 언어라고 생각하는 것도 아닌데요. 누가 뭐라 하더라도 프로그래밍 언어들이 가지고 있는 특장점이라는 것들이 분명히 존재하기 때문에 특정 언어에 대한 자부심을 가지기 보다, 각 언어에 대한 장단점을 분명히 인지한 상태에서 장점을 최대한 살리고 단점을 상호 보완하는 형태로 개발을 하는 것이 현명한 길이 아닐까 생각합니다.

그런 의미에서 파이썬은 참 괜찮은 프로그래밍 언어라는 생각을 개인적으로 하고 있는데요. 마침, 랩뷰 안에서 파이썬 코드를 실행시키는 방법이 있어서 이 부분을 주제로 글을 작성해 보려고 합니다.


랩뷰 안에서 시스템 실행을 통해 파이썬으로 작성된 코드를 실행할 수 있습니다.

시스템 실행은 위 그림과 같이 함수 팔레트에서 연결 → 라이브러리 & 실행 파일 → 시스템 실행을 선택하면 블록 다이어그램에 추가할 수 있구요.

랩뷰의 온라인 헬프 문서를 통해 알 수 있듯이, 윈도우 기반의 다른 어플리케이션을 실행할 때 사용합니다. 즉, 파이썬 코드로 작성한 프로그램을 인터프리터와 함께 직접 실행시킨다는 의미이지요.

'Hello, LabVIEW!' 문자열이 출력되는 간단한 파이썬 프로그램을 위 그림과 같이 작성하고, Test01.py라는 이름으로 저장하였습니다. 랩뷰의 시스템 실행을 통해 이 파이썬 코드를 실행할 것인데요.

우선, 시스템 실행을 적용한 랩뷰 프로그램을 위 그림과 같이 작성하구요. 앞에서 말씀드렸듯이 파이썬의 인터프리터를 통해 파이썬 코드를 실행시킬 것이므로, 파이썬의 인터프리터의 경로와 실행할 파이썬 코드의 경로를 정의해 줍니다. 여기서 주목하실 부분은,

시스템 실행의 명령 라인으로 위 그림과 같은 문자열이 전달되어야 한다는 것입니다. 다시 말해, 파이썬의 인터프리터의 경로 다음에 공백 문자를 하나 넣고, 실행한 파이썬 코드의 경로를 곁따옴표로 감싸서 붙여주면 된다는 말인데요. 이 부분을 감안해서 위 그림처럼 프로그램을 작성하고 실행시켜 보면, 파이썬 프로그램에서 콘솔에 출력되었던 Hello, LabVIEW가 랩뷰의 표준 출력 인디케이터에도 출력되는 것을 확인할 수 있습니다.

위의 프로그램을 통해 랩뷰에서 파이썬 프로그램을 직접 실행할 수 있다는 사실을 확인하였습니다. 그렇다면, 파이썬 코드와 랩뷰 프로그램 사이에 의미 있는 데이터를 주고 받을 수는 없을까? 라는 의문을 가지게 되는데요. 인자와 함께 파이썬 코드를 실행시키면 가능합니다.

여기서 인자라고 하는 것은 위 그림과 같이 파이썬 코드를 실행하는 명령 라인에 포함되어서 파이썬 코드로 전달되는 데이터를 의미하는데요. 파이썬 코드에서도 이러한 인자를 받을 수 있도록 프로그램이 작성되어야 합니다.

파이썬 프로그램을 실행하는 과정에서 전달되는 인자들은 sys.argv라는 이름의 리스트로 파이썬에 전달됩니다. 다시 말해, 파이썬 코드에서 인자들을 받기 위해서는 sys 모듈을 import 시켜주어야 하구요. 전달된 인자들을 위 그림과 같이 파이썬의 내부 변수로 전달할 수 있습니다.

지금과 같이 파이썬 프로그램을 실행하는 과정에서 인자들을 전달하기 위해,

위 그림과 같이 프로그램을 수정하구요. 파이썬 프로그램에서의 순서에 따라 데이터들을 명령 라인에 포함시켜서 프로그램을 실행시켜 주면, 실행에 필요한 데이터들을 전달할 수 있습니다.

 

반응형