이번 글에서는 NI에서 제공하는 보일러 문제에 대한 답안을 알아보도록 하겠습니다. NI에서 제공하는 Solution을 살펴보면 상태머신에 내부적으로 Queue를 쓰던지, 이벤트구조를 처리하던지 조금은 복잡하게 처리가 되어있습니다. 물론 이러한 부분을 NI에서 지키는 것이 좋기 때문에 이렇게 만들어 놓았지만, CLD 시험 구조상 시간도 부족하고 해야할 기능 구현의 양을 많기 때문에 기능상 문제없이 돌아가는데 집중을 하는 것이 효율적이라고 생각을 합니다. (100점 맞을 것 아니니, 조금의 감점은 감안하도록 합시다.) 그럼 먼저 보일러 문제에 대해서 알아보도록 하겠습니다. 보일러 문제는 아래의 PDF 파일을 통해서 확인할 수 있습니다. 간단히 보일러를 풀어본 예입니다. 이벤트와 큐없이 상태머신을 통해서 모든..
다양한 하드웨어와 소프트웨어 컴포넌트를 서로 연결하여 데이터를 송수신하는 방법은 쉽지 않습니다. 어플리케이션에 데이터를 전달하거나 가져오는 예를 생각해보도록 하겠습니다. 첫 번째로, 개발자는 장비 제어와 데이터 수집에 대한 높은 퍼포먼스를 가진 라이브러리와 같은 툴을 이용하여 원시 데이터를 수집해야 합니다. 두 번째로 다른 기술을 사용하는 응용 프로그램들 사이에서 통신을 해야 합니다. 어떠한 어플리케이션은 파일을 저장할 수도 있습니다. 다른 어플리케이션은 TCP/IP 네트워크 솔루션, DDE, ActiveX와 같은 기술을 사용할 수도 있습니다. 각 IO 메커니즘은 고유의 차이와 구현을 위한 전문 지식을 요구합니다. 이러한 복잡성은 개발자에게 다른 프로토콜 기반에서 데이터를 전송하기 위한 방법론을 강제하고..
랩뷰(LabVIEW) 2013 혹은 2014 는 쉽게 랩뷰(LabVIEW) 웹서비스를 생성 및 디버기와 출판하기 위한 방법을 제공을 목표로 하고 있습니다. 따라서 랩뷰(LabVIEW) 2013 버전 부터는 이전 버전에서 사용하던 웹 서비스 설정 방식을 사용하지 않고 새로운 방식을 채용하여 사용하고 있습니다. 이 글에서는 간략히 웹 서비스를 생성하고, 이를 이용하는 방법에 대해서 알아보도록 하겠습니다. 이전 버전과의 웹서비스와 관련된 차이는 아래와 같습니다.
[LabVIEW] 랩뷰와 PLC와 연동하기 (OPC Server, DSC 모듈) NI LabVIEW 소프트웨어는 다양한 방식으로 다른 프로그래밍 로직 컨트롤러 (PLC)와 통신할 수 있습니다. OPC (OLE for Process Control)은 컨트롤 디바이스와 휴먼 머신 인터페이스 (HMI)간 리얼타임 플랜트 데이터 통신을 위한 표준을 정의합니다. OPC Server는 거의 모든 PLC와 프로그래밍 가능한 자동화 컨트롤러 (PAC)에서 사용이 가능합니다. 이 글에서는 OPC를 사용하여 PLC와 연동하는 방법에 대해서 알아보도록 하겠습니다. PLC와 통신을 위해서는 NI 소프트웨어 입장에서 아래의 소프트웨어들이 필요합니다. NI LabVIEWNI DSC Module(Data Logging and Su..
[LabVIEW] 랩뷰 VI에 대한 메모리 사용에 대한 글 LabVIEW로 프로그래밍을 할 때 데이터를 많이 쓰고 받거나, 큰 파일을 처리할 때 메모리에 대한 문제가 많이 발생을 합니다. 이럴때는 메모리에 대한 최적화가 필요합니다. 이 글에서는 메모리 최적화에 가장 기본이 되는 VI에서 메모리를 어떻게 사용하는지에 대해서 알아보도록 하겠습니다. MemoryTest.vi라는 이름을 가진 For문으로 랜덤 데이터를 생성하여 Waveform Graph에 저장하는 코드를 만들었습니다. For문으로 100000회를 돌리고 이에 대한 결과를 WafveForm Graph라는 이름을 가진 그래프에 데이터를 넣습니다. UI는 아래와 같습니다. Waveform Graph 하나만 Front Panel에 있습니다. 이 vi ..