MoonNote

반응형

 LabVIEW는 미국 텍사스 오스틴에 본사를 두고 있는 National Instruments(줄여서 NI라고 함)社의 소프트웨어로서 Test, Measurement, Automation, Control 및 Design 분야에서 사용되어지는 소프트웨어입니다. NI는 미국 본사 외에도 전세계 60여개 지사를 두고 있는 글로벌 기업으로 국내 역시 한국 NI 지사를 보유하고 있습니다.

 

NI(National Instruments) 본사 사진

 

 LabVIEW에 대해 나와있는 소개 영상을 보면 가끔 [Lab+VIEW]로 [실험실에서 보는 것]으로 설명을 하시는 분들이 있는데, 이는 잘못된 설명으로 정식 명칭은 [Laboratory Virtual Instrument Engineering Workbench]가상 계측기 역할을 해주는 워크 벤치를 말합니다.

 

 전공이 아니신 분들도 많을 것 같아 조금 추가 설명을 하자면 계측기는 중량, 용량, 속도, 진동, 소음, 온도, 열량, 길이 등 양의 크기나 물리적 상태를 양적(수치)으로 기록하는 장비를 말하는데요. 계측기의 종류는 굉장히 많은데 대표적인 것이 LCR Meter, DMM, Oscilloscope 등이 있습니다. NI 사는 이런 제어⋅계측 및 자동화 시스템에서 필요로하는 하드웨어와 소프트웨어를 제공하고 있는데, 그 중 대표적인 소프트웨어 LabVIEW는 PC 기반에서 소프트웨어적으로 가상 계측기 역할을 해줄 수 있는 소프트웨어입니다. 그래서 LabVIEW 파일을 저장하면 파일 확장자가 [*.vi]로 Virtual Instruments를 나타냅니다.

NI사의 다양한 하드웨어와 LabVIEW

 

 소프트웨어라고하면 컴퓨터 시스템을 효율적으로 운영하기 위해 개발된 프로그램을 일컫는 말로 이런 소프트웨어는 프로그래밍 언어(Visual Basic, C, C#, C++, Python 등)를 사용하여 개발되어지는데요. 엄밀히 따지면 LabVIEW는 프로그래밍 언어의 범주에 속하게 되는데 LabVIEW가 어떻게 쓰이는지 다음 소개 동영상을 살펴보고 이어서 설명하도록 하겠습니다.

 

 

수많은 LabVIEW 소개 영상 중 제 개인적으로 LabVIEW를 가장 잘 나타내었다라고 생각이 들어 LabVIEW를 처음 접하시는 분들께 소개를 시켜드리는 영상입니다. (영상 자료 출처 : niglobal 유투브 中)

 

 LabVIEW를 한번이라도 접하신 분들은 바로 감을 잡으셨을 것이라 생각이들고 처음이신 분들을 위해 다시 설명을 이어가겠습니다. 분명 LabVIEW도 프로그래밍 언어(Visual Basic, C, C#, C++, Python 등)라고 소개하였는데, 도통 영상을 보아도 이게 무엇인지 감이 안잡히실 것 같은데요. 아래의 예시 그림들이 아마 일반적으로 우리가 프로그래밍 언어라고 하였을 때 생각하는 화면의 모습일 것 입니다.

일반적인 프로그래밍 언어(텍스트 언어) 화면

 

음,,무슨 코드인지 모르겠지만 일단 프로그래밍 언어같아 보이는데요. 이해하기 어려운 이유는 아마도 대부분 ¹전공자가 아니어서, ²영어가 어렵게 느꺼져서, ³내가 사용하는 프로그래밍 언어가 아니기에 문법을 몰라서 등 다양할 것 입니다. 일반적으로 프로그래밍 언어라고하면 키보드 위주의 타이핑 입력 방식으로 위에서 아래로 한줄씩 순차적으로 실행되는 코드를 말합니다. 어떤 언어를 사용하느냐에 따라 문법 및 명령어들은 다르겠지만 이런 방식의 언어를 통틀어서 텍스트 언어(Text Language)라고 부르고 있습니다.

 

 LabVIEW는 텍스트 언어와는 다르게 마우스 기반의 코드 작성 방식을 사용하며 영상에서처럼 각각의 기능(Function)과 관련된 함수들이 아이콘 형태로 다 만들어져있습니다. 따라서 내가 필요로하는 함수들을 코드 작성 공간에 가지고와서 각 함수들을 선으로 연결만 시켜주면 코드 작성이 끝나는 와이어링 기반의 코드 작성 방식을 따릅니다. 이제 이 내용을 참고하여 아까 보셨던 영상에서의 사용자 손이 무언가 필요로하는 기능을 가지고와서 각각의 입력 값 또는 기능별로 선이 이어지는 형태로 "아, 코드 작성을 하고 있는 것이구나!"라고 이해하실 수 있을 겁니다. 마치 PCB 기판 위에 회로도를 그려 넣듯이 코드 작성 공간에 그림을 그리는 듯한 형태로 프로그램을 만들어 나가는 것이죠. 우리는 이것을 'Graphic 기반의 언어' 또는  'G 언어' 라고 부릅니다.

LabVIEW 코드 작성 방식

 

텍스트 언어(Text Language)  VS  랩뷰(LabVIEW)

 '어떤 언어가 더 좋나요?' 가장 많이 듣는 질문입니다. 솔직히 이 질문에 대한 대답은 개인마다 다를 수 밖에 없습니다. 당연히 내가 잘 사용하고 잘 아는 것이 더욱 좋다고 느껴지겠지요..저도 처음에는 그랬습니다. "무조건 랩뷰(LabVIEW)! 안되는건 없다!"라고요..

 

 프로그램 개발이라는 궁극적인 목표는 같을지라도 사용 목적 또는 테스트 환경에 따라 시스템이 천차만별이며 각각의 요구 조건에 따라 거기에 맞는 프로그램들이 있습니다. 예를 들어 다음과 같은 조건들이죠.

 

1. 누구를 위한 프로그램 개발인가? 프로그래머인가? 엔지니어인가?

2. 프로그램 완성까지의 개발 시간은 충분한가?

3. 시스템에서 하드웨어를 사용하는가? 단순 소프트웨어만 사용하면 되는가?

4. 소프트웨어에서 얼마나 세밀한 프로그래밍을 요구하는가?

5. 프로그램 개발 후 유지, 관리, 업데이트는 어떻게 하는가?

 

 어느 것이 더 좋다라고 결론을 내리기는 애매하지만 텍스트 타이핑 방식과 그래픽 기반의 언어로 나뉘기에 분명한 차이점들은 존재합니다. LabVIEW를 사용하면서 텍스트 언어(Text Language)와 비교를 해보자면 저는 보통 이렇게 구분 짓습니다. 

텍스트 언어와 랩뷰 비교

 

 처음 언어를 배우는 진입 장벽이 낮은만큼 습득력이 빠르지만 결국 세밀한 요구 사항을 만족하기 위해서는 LabVIEW도 체계적인 학습이 필요합니다. 하지만 배우기가 쉽고 타인과 어떤 기능적인 내용을 논의할 때 텍스트 언어보단 G 언어가 한 눈에 더 잘 들어오지 않을까 싶네요. 이상으로 LabVIEW가 무엇인지 소개하는 글을 마치도록 하겠습니다.

 

 

 

 

 

 

※ 이 글이 도움이 되었다면 "🤍공감" 버튼을 클릭해주세요. 클릭 한번이 글 쓰는데 큰 힘이 됩니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band