LabVIEW를 설치하기 글을 쓰기 전에 사실 먼저 왜 LabVIEW가 일상을 여행처럼에 들어와있는지에 대해 설명을 해야할 것 같아 글을 써본다. 요즘 워낙 소프트웨어에 대한 관심이 많아지는 추세에 하나씩 자기가 사용하는 프로그램이 있으면 좋다. 나도 C언어를 공부했지만 LabVIEW를 알고부터는 LabVIEW로 갈아탔다. 사실 무슨언어를 사용하는지는 중요하지 않다. 소프트웨어에 대한 프로그래밍 언어를 이해하게 되면 세상을 쳐다보는 시각이 달라질 수 있다. 내가 머리속에서 생각한 것들을 컴퓨터가 혹은 컨트롤러가 똑같이 생각하고 행동하게 하려면 이를 언어로 표현하고 이해시켜야한다. 생각에 따라 표현되는 말이 사람마다 다르듯이 프로그램을 만든 코드를 보면 사람마다 다양하다. 일종의 하나의 표현하는 언어를 배우는 것이고 그게 기계언어로 통해서 표현될 뿐이다.
그런의미에서 초등학교에서 수행하는 프로그램 코딩교육 진행하는 것에는 찬성하는 편이지만, 사실 프로그램 코딩교육을 과외를 하고 배우는 것이 중요한 것이 아니라 생각을 하는 능력과 그 생각을 구현하기 위해 프로세스를 정립하는 방법, 표현하는 방법의 언어적 능력을 키우는 것이 중요할 것 같다. 단순히 프로그램 코딩을 통해 아두이노로 어떠한 결과를 내는 것이 중요한 것이 아니라 결과를 내기 위해 다양한 방법에 대해 고민하고, 왜 그러한 방법으로 표현하는 것이 효율적이고 좋은지에 대한 평가를 하는 것이 더 중요할 것으로 생각된다. 이제 내 자식이 실제로 프로그램 코딩 교육을 배우게 될텐데 다양한 언어가 있다는 사실과 그리고 그 언어로 표현되는 것에는 정답이 없다는 사실을 알려주고 싶다. 프로그램 언어는 나를 표현하는 다른 수단이기도 하고, 실제로 내가 생각한 시스템을 구현해주기도 하기에 현실세계에서 구현하기 힘든걸 구현하면서 나를 자유스럽게 해주는 수단이 될 수 있다.
그 중에 내가 LabVIEW를 선택한 이유는 1. 텍스트 언어가 아닌 그래픽 언어이다.
기존의 C언어기반의 언어는 전부 텍스트 기반으로 되어 있다. 텍스트 기반의 언어 문제는 프로그램의 프로세스와 코딩을 해석하는데 있어 한눈에 보이지 않는다는 것이다.
똑같은 역할을 하는 프로그램을 봤을 때 텍스트 기반의 언어보단 그래픽 기반의 언어가 되면 이해하기 쉽고 코딩하기가 쉬워진다. 그만큼 코딩이 쉬워지면 프로그램의 언어의 발전 흐름이 그래픽 기반 언어로 발전할 것이다. 예를 들어 과거의 DOS를 보면 모든 명령어를 텍스트로 하고 텍스트로 폴더나 파일 위치를 확인해야 했다. 그 와중에 windows가 나왔고 나를 포함해 많은 사람들이 windows를 사용하지 않고, 계속 DOS를 사용했다. 하지만 그래픽 기반의 직관적인 소프트웨어로 많은 사람들이 편하게 사용하면서 DOS는 사라졌다. 그럼에도 Low Level 작업을 할 때에는 DOS 기반의 cmd 창에서 수행은 필요하다. 하지만 사용자는 그렇게 Low Level에 대해 모르더라도 프로그램을 사용하는데 전혀 문제가 없다. 초등학교에서 코딩교육하는 것도 명령어를 시각화 하여 배치하는 방법을 택하면서 Low Level의 C언어에 대해서 자세히 모르더라도 코딩을 할 수 있다. 즉, 이제 변화는 정말 Low Level의 프로그램 언어를 통해 만들어 놓은 함수를 사용자가 목적에 맞게 가져다 쓰는 것만으로도 내가 원하는 기능을 만들어낼 수 있을 것이다. 그리고 그 기반은 사용하기 좋은 그래픽 기반의 언어가 될 것이다. 실제로 한 미래세계를 다룬 영화에서 그래픽 기반의 언어를 사용하는 장면이 나왔다. 2015년도에 개봉한 Chappie 학습형 인공지능을 탑재한 로봇에 대한 영화로 인간과 같이 완벽한 인공지능을 구현하는 프로그래머가 사용하는 언어가 LabVIEW로 까메오로 출현했다.
2. LabVIEW의 다양한 시스템과의 호환성 그리고 다양한 기능이 있어서이다.
원래 National Instruments는 계측장비를 만드는 회사였다. 계측장비를 만드면서 그 장비를 사용할 수 있는 프로그램에서 시작한 것이 LabVIEW이다. 그러다 보니 NI에서 만드는 다양한 하드웨어는 물론이고 3rd Party의 제품들간에도 호환성이 좋다. 거기에 다양한 기능.. 다양한 모듈이 있어 내가 생각할 수 있는 모든 것을 구현할 수 있다. Vision 모듈을 통한 카메라 제어, 영상 분석, 패턴 인식, 글자 인식 등을 할 수 있고, Control & SImulation 툴킷에서는 다양한 시스템을 시뮬레이션 수학적 모델링이 가능하다. Signal Processing 은 다양한 신호의 해석을 할 수 있고, Veristand를 통해 Hardware In Loop System인 HILS도 구현할 수 있다. 뭐 말하자면 너무 다양한 기능이 많아서 나도 아직 다 사용하지는 못하지만 정말로 내가 생각한 모든 것을 만들어 낼 수있다. 하나의 취미생활로 프로그래밍을 통해 시스템을 만드는 일을 할 수 있다. 일상을 여행처럼 즐기기는 내가 얼마나 재밌게 사는냐에 있다고 생각한다. 재밌게 사는 방법 중에 프로그래밍이 있고, 이를 실제로 구현하여 사용하는데 더 큰 쾌감을 느끼면 어디 멀리 여행가는 것보다 훨씬 나를 자유롭고 재밌게 만들어 주는 게 아닐까??
'정보기술' 카테고리의 다른 글
[장비] 자이너스 노트북테이블 구입 (0) | 2017.03.15 |
---|---|
[인바디] Inbody H20B (0) | 2017.03.14 |
[탄산수 제조기] 소다스트림 소스 Sodastream Source (0) | 2017.03.08 |
[LabVIEW] 설치하기 (0) | 2017.03.05 |
[정보&Tips] Trip Advisor Offline 오프라인 저장 (0) | 2017.02.27 |