안녕하세요. 구스입니다. 이 글에서는 랩뷰 시계를 한번 만들어 볼텐데요.랩뷰 시계를 만들기 위해서는 어떠한 내용을 파악하고 있어야 할까요. 아래에 설명할 랩뷰 시계 코드를 이해하는데 필요한 내용은 While문, For문, 기다림 함수등이 필요합니다.그럼 먼저 UI(User Interface) 부터 살펴보도록 합시다. 본 코드는 아래와 같이 구성이 됩니다.프론트패널에는 시간을 보여주는 UI로 구성이 됩니다. 랩뷰 코드는 아래와 같아요랩뷰 코드 실행 순서는 아래와 같습니다. 1. 날짜/시간을 초로 얻기를 통해서 현재 시간을 가져옵니다. 이 함수는 타임스탬프 형으로 데이터를 리턴합니다. 2. 받아온 날짜를 시간(%H), 분(%M), 초(%S)로 나눕니다.3. 각각 나눈 정보를 이용하여 시간/분/초를 인디케이터..
안녕하세요. 구스입니다. 오늘은 랩뷰에서 프로그래밍적으로 VI를 생성하거나, 편집할 수 있는 기능에 대해서 알아볼까 합니다. 동적으로 랩뷰 VI를 제어하는데 사용이 되는 기능인데요. 이 기능을 제공하는 함수는 바로 NI LabVIEW Scripting이라는 녀석입니다. LabVIEW VI Scripting는 VI Server에 대한 클래스, 프로퍼티, 메소드등을 제공해주어, 사용자가 특정 객체를 생성해서 프론트패널 혹은 블록다이어그램에 추가할 수 있으며, 새 VI 생성, 실행, 정지도 가능하게 도와줍니다. NI LabVIEW Scripting의 기능은 아래와 같습니다. 새로운 LabVIEW 코드를 프로그램적으로 생성하고 실행기존 코드 검사 및 변경새로운 컨트롤 및 인디케이터를 프로그램적으로 배치VI 커넥..
안녕하세요. 구스입니다. 이 글에서는 LIN 통신(Local Interconnect Network) 에 대해서 알아볼까 합니다. LIN 통신(Local Interconnect Network) 은 CAN통신과 같이 자동차산업에 많이 사용이 되는 통신 방식 중 하나입니다. CAN 통신에 대해서 궁금하다면 아래의 글을 참고하세요. 2016/04/12 - [National Instruments/통신] - 자동차 통신 기술인 CAN 통신과 CAN FD 통신에 대해서 LIN 통신은 주로 차량용 ECU와 능동센서 및 능동 액추에이터 사이의 통신에 사용이 됩니다. LIN 통신은 CAN 통신과는 달리 하나의 Master와 여러대의 Slave로 구성이 되는데요. CAN통신보다 훨씬 간단한 방식으로 사용이 됩니다. LIN ..
안녕하세요. 구스입니다. 이 글에서는 파이썬에서 랩뷰 코드인 vi를 실행시키는 방법에 대해서 알아볼까 합니다.물론 파이썬 뿐만 아니고, ActiveX에 대한 부분을 실행할 수 있는 모든 코드에서 실행이 가능합니다. (다음기회에 다른 언어인 c#에서 해보도록 할께요.) 그럼 ActiveX가 무엇일까요? 액티브X(ActiveX)는 마이크로소프트사가 개발한 재사용 가능한 객체지향적인 소프트웨어 구성 요소 개발에 사용액티브X는 컴포넌트 오브젝트 모델과 객체 연결 삽입 (OLE)을 적용해서 컨텐츠를 이용 ActiveX에 대해서 알아보았습니다.그럼 이 ActiveX를 이용해서 파이썬에서 다른 프로그램을 제어하기 위해 필요한 내용을 알아보도록 합시다. 파이썬은 pywin32를 이용해서 ActiveX 기반 혹은 COM..
안녕하세요. 구스입니다 오늘은 NI 9401과 Compact DAQ 샤시를 이용할 때 발생할 수 있는 문제점에 대해서 이야기를 해볼께요. NI 9401은 디지털입력과 출력 그리고 카운터를 이용한 펄스 트레인(Pulse Train) 출력 및 Encoder 입력 신호를 처리할 수 있는 모듈입니다. 이는 NI 9401 핀맵을 보면 확인할 수 있는데요. P0.X라고 되어 있는 부분이 디지털 입출력을, PFI n이라고 되어 있는 부분이 엔코더 혹은 카운터 신호 생성이 가능한 부분입니다. 핀맵을 보면 알겠지만 DIO, Counter, Encoder 모두 같은 IO를 사용하고 있습니다. 하지만 디지털입력과 출력을 동시에 사용하거나, 입력과 카운터 출력을 동시에 사용을 하게 되면 아래와 같이 -201133 에러가 발생..