Search
Duplicate
🤖

GUI programming (feat. LabVIEW)

간단소개
팔만코딩경 컨트리뷰터
ContributorNotionAccount
주제 / 분류
Embedded
Scrap
태그
GUI
9 more properties

LabVIEW란?

Laboratory Virtual Instrument Engineering Workbench
엔지니어가 자동화된 연구, 검증 및 생산 테스트 시스템을 개발하는 데 사용하는 그래픽 프로그래밍 환경(GUI)로써 하드웨어 I/O 및 데이터와 빠르게 연동이 가능합니다.
LabVIEW의 블록다이어그램)
LabVIEW는 특정 분야에 특화된 언어입니다. 전기, 전자, 자동차, 철도, 각종 실험기기 등 대학이나 기업의 연구소 등에서 제품 테스트 및 제어 등에 많이 사용합니다.
# LabVIEW 활용 분야 - 센서 또는 액추에이터를 사용한 물리적 시스템 측정 - 전기 시스템 설계 검증 - 생산 테스트 시스템 개발 - 스마트 머신 또는 산업용 장비 설계
Plain Text
복사
유저 인터페이스(UI)도 쉽게 구현할 수 있습니다. 계측이나 테스트, 제어 분야의 프로그램 개발이 주 용도라서 그래프나 영상 이미지 등과 같은 강력한 컨트롤이 기본으로 제공해주기 때문에 프로그램 개발에 아무래도 다른 언어보다 효율적 입니다.

LabVIEW 의 단점?

LabVIEW로 웹을 구현한다거나 모바일 어플리케이션을 제작하는 등과 같은 작업을 할 수 없습니다…
겁나게 비싸다…
하지만랩뷰 라이선스는 돈을 주고 사야하지만 비영리 목적으로 “LabVIEW community” 버젼은 누구나 무료로 사용할 수 있습니다!

정말 직관적인 LabVIEW

간단한 예제를 통해 GUI 프로그래밍이 얼마나 직관적인지 알아보겠습니다.
저희는 피신때
숫자를 문자로 변환하고
문자를 숫자로 변환하고
문자열을 이어 붙히고 나누고 쪼개고
하는 것에 꽤 애를 먹었습니다? (적어도 C를 거의 처음 한 저는 그랬었습니다…)
이런 것을 한다고 생각해보겠습니다.
LabVIEW는 이게 끝입니다… 그냥 몇 가지 블록들을 마우스로 선만 이어주면 끝입니다…
다음과 같은 여러 종류의 블록에서 원하는 기능을 ‘드래그 앤 드롭’하면 끝입니다.
한번 String 관련 함수들을 살펴보겠습니다.
저희가 구현했던 것들을 많이 볼 수 있습니다.
while 문이나 for 문 등도 구현이 가능합니다
이처럼 간단한 프로그래밍이 필요할 때 매우 직관적으로 빠르게 프로그램을 만들 수 있습니다. 코딩을 잘 모르는 사람도 할 수 있다는 장점 또한 있겠죠?

실제 활용 예시

마지막으로 제가 만들어 봤던 간단한 센서 측정 프로그램입니다. 컴퓨터에 ‘myDAQ’이라는 기기를 연결해서 간단한 실험을 해보았습니다.
간단한 원리는
1. 센서가 외부 변화(온도, 빛)를 감지하면 2. 그에 따른 센서의 저항이 변화하고 3. 저항의 변화에 따른 전압의 변화를 측정한다.
Plain Text
복사
라고 생각하시면 될 것 같습니다.
practice_temperature_sensor.vi
practice_cds_sensor.vi
이와 비슷한 GUI 프로그램으로 ‘Qt’ 라는 것도 있는데 다음 기회에 소개해보도록 하겠습니다.
# Qt vs Labview https://forum.qt.io/topic/90276/showdown-qt-vs-labview/2
Plain Text
복사