cheoly's language study blog

랩뷰(labview) 시퀀스 구조 사용하기

프로그래밍/LABVIEW
반응형
SMALL

오늘은 랩뷰에서 시퀀스 구조 사용하는 방법에 대해서 알아보겠습니다.,

이 시퀀스 구조는 언제 사용할까요?

 

프로그램이 동작할 때, 무언가를 수행한 후 다른 동작을 수행해야 할 때가 있습니다.

이렇게 명확하게 순서가 필요할 경우 시퀀스 구조를 사용합니다.

 

이렇게 플랫 시퀀스 구조를 선택하여 만들어주면 시퀀스 구조가 만들어집니다.

이 플랫 시퀀스 구조는 무엇을 말할까요?

이렇게 영화 프레임처럼 가로로 프로그램 순서를 지정해 줄 수 있습니다.

이 플랫 시퀀스는 한눈에 보기 좋다는 장점이 있죠.

하지만 프로그램이 복잡해지고 단계가 많아지면 옆으로 쭉 늘어나서 이동이 힘들죠.

그래서 우리가 페이지를 넘기듯 사용할 수 있는 다층시퀀스를 사용할 수도 있습니다.

변경방법은 마우스 우클릭해서 다층 시퀀스로 대체를 눌러주시면 되요

그러면 이처럼 페이지가 보이는 다층 시퀀스로 변경이 됩니다.

이렇게 해서 프로그램을 차면 한 눈에는 못봐도 모니터가 작고 페이지가 많을 때는 훨씬 프로그램짜기 쉽겠죠

이 다층시퀀스에서 데이터를 다음 페이지로 넘길 때 쓰기 위한 방법도 알아보겠습니다.

 

이렇게 시퀀스 로컬추가를 해주면 다음페이지에 데이터를 넘길 수가 있습니다.

이렇게 데이터가 넘어갔단 의미로 화살표가 있죠

위 사진과 화살표 방향이 반대입니다.

이렇게 앞선 페이지의 데이터를 받아 올 수 있습니다.

 

이상 랩뷰에서 시퀀스 구조에 대해서 알아봤습니다.

반응형
LIST

'프로그래밍 > LABVIEW' 카테고리의 다른 글

랩뷰(labview) 시리얼 통신  (0) 2024.10.11
랩뷰 LABVIEW GPIB 통신(VISA 사용)  (0) 2024.08.14
LABVIEW 이벤트 구조 사용하기  (0) 2024.08.12
LABVIEW에 대해서 아시나요??  (0) 2016.08.18

랩뷰 LABVIEW GPIB 통신(VISA 사용)

프로그래밍/LABVIEW
반응형
SMALL

오늘은 랩뷰 GPIB 통신에 대해서 보려고하는데요.

우선 GPIB통신이 무엇인지 부터 알아야겠습니다.

GPIB의 약자 같은거는 굳이 알 필요는 없겠죠.

단순하게 장비와 통신하기위한 방법이라고만 알고 있으면 되겠습니다.

 

GPIB 통신을 하기위해서 장비와 PC간 연결이 잘되었는지 확인을 해야합니다.

이것은 NI MAX에서 연결되어진 장비를 확인해 볼 수 있습니다.

 

연결되어진 장비가 있으면 디바이스와 인터페이스에 확인이됩니다.

GPIB로 연결되어진게 있으면 GPIB::02::INSTR 대략 이런식으로 되어 있는것을 볼 수 있습니다.

GPIB로 연결되어 있으면 대부분 VISA 방식을 이용해서 하는데요.

랩뷰에는 이것이 되게 쉽게 잘 되어 있습니다.

기존 C기반의 언어들을 보면 VISA32.DLL 같은 것들 넣고 어쩌고 복잡한 과정을 해줘야 하는데요.

랩뷰는 기본적으로 다 구성되어져 있어서 가져다 쓰기만하면됩니다.

이렇게 VISA 관련 내용들이 다 있죠.

C언어에서 쓰듯이 OPEN 하고 쓰고 읽고 하면 됩니다.

OPEN은 VISA 고급을 눌러보면 확인이 가능합니다.

그러면 이제 이 VISA 통신 예제를 확인해볼게요.

랩뷰 예제를 보면 쉽게 확인 됩니다.

이렇게 GPIB를 VISA를 사용해서 하는것에 대해 예제프로그램이 있습니다.

이것을 입맛에 맞게 변형해서 사용하면 쉽게 되겠죠

이렇게 간단하게 사용할 수 있습니다.

 

간단하게 드래그 앤 드롭으로 GPIB 통신이 되죠.

할 것은 GPIB 커맨드만 확인해주면 되겠습니다.

간혹 장비마다 터미널 문자가 틀리면 동작이 안 할 때가 있는데 그 때는 문자열에 다 추가해주면되겠죠.

 

이상 GPIB VISA 방식에 대해서 알아봤습니다.

반응형
LIST

LABVIEW 이벤트 구조 사용하기

프로그래밍/LABVIEW
반응형
SMALL

날씨가 많이 덥네요.

카페에와서 일하다가 심심하니 랩뷰관련 글하나 작성합니다.

 

C언어로 코딩할 때, 많이 쓰는 기능 중 하나죠.

이벤트.

프로그램이 수행 중 특정 행위가 필요할 때, 이 이벤트 구조를 많이 사용합니다.

이벤트 구조 굉장히 다양한 방법으로 사용을 할 수가 있는데요.

랩뷰에서 가장 간단하게 사용하는 방법을 이번에 적어보겠습니다.

 

이벤트 호출이니 기본적으로 멀티스레드로 돌아가는게 가장 좋겠죠.

그래서 랩뷰에서 WHILE 구조 하나를 넣고 그안에 이벤트 구조를 넣으면 랩뷰에선 간단하게 이벤트 호출 준비가 완료됩니다.

블록다이어그램 이벤트 구조

이렇게 해서 이벤트 호출 준비는 완료됩니다.

기본 이벤트 구조

이렇게 하면 일정시간마다 이벤트가 발생하는 이벤트 구조가 만들어집니다.

위 사진은 무한대기입니다. 이것을 100ms 마다 이벤트가 발생하게 바꿔보겠습니다.

100ms 마다 이벤트 발생

화살표로 표시해둔 곳의 시간을 변경하면 됩니다.

저는 이 구조를 이용해서 장비의 자동모델 변경을 하는데 사용하고 있습니다.

장비에 연결되어 있는 장비가 변경되는지 설정되어있는 시간마다 확인을 하는거죠.

 

그럼 키보드 이벤트 호출도 한 번 해볼까요?

이벤트 구조에 마우스 커서를 가져가 대서 오른쪽버튼을 누른 후 이벤트 케이스 추가를 눌러줍니다.

이런 창이 뜨는데 위 사진에서 키 앞에 +(더하기) 버튼이 보일겁니다.

여기에서 +버튼을 눌러서 키다운을 선택하고 확인을 눌러줍니다.

그러면 우리가 키보드를 누를때마다 해당 이벤트가 실행이 됩니다.

여기에서 이제 원하는 동작을 하게 만들어주면 됩니다.

여기서 조합키와 플랫폼 조합키는 무엇인지 확인해 볼까요?

인디케이터를 생성해보니 이렇게 있네요.

저는 단순하게 Ctrl + x를 누르면 프로그램이 종료하게 하는 것을 만들어 보겠습니다.

 

위의 문자가 아스키코드를 받아오기 때문에 위와 같이 처리를 해줍니다.

대소문자 상관없이 실행되게 하기 위해서 xX 이 두개를 다 처리해줍니다.

 

이상 랩뷰에서 이벤트 호출하기 였습니다.

반응형
LIST

LABVIEW에 대해서 아시나요??

프로그래밍/LABVIEW
반응형
SMALL

LABVIEW에 대해서 아시나요??^^

 

LABVIEW는 National Instrument 에서 만들었죠.

 

저도 대학다닐 때까지만 해도 몰랐습니다.

 

회사에 입사하고 팀이 바뀐 후에 알았죠..

 

그곳에서 pxi라는 장비를 들여왔더라구요..

 

당시 아무도 이 장비를 만질 수 있는 사람이 없었죠..

 

그래서 이 장비를 들여온 주체가 제가 속한 팀이었고...

 

저는 소프트웨어를 담당하고 있다보니 제가 속해있는팀 제가 속한 파트에서 맡기로 합니다.

 

그 때, 처음으로 labview를 접하게 되었죠..




위 장비 보시면 꼭 컴퓨터 같죠..

 

번호가 붙어 있는 곳에 모듈이 하나씩 들어가는데요.

 

그 모듈 하나하나가 우리가 사용하는 계측장비가 들어가게 되요..

 

양산을 위한 테스트나 칩 테스트를 할 때, 이장비를 사용하는 거죠..

 

칩이 나왔을 때, 사람이 하나하나 손으로 테스트 하잖아요..

 

Manual Test라고.. 이것을 대신하기도 하는 장비죠..

 

제가 다녔던 회사에서 이 장비를 산 이유는 양산을 위해서 테스트 하러 갔을 때, 불량이 나면 비용이 너무 많이 소모된다는 것이죠.

 

저 장비 하나를 다채우면 1억이 넘게 드는데 그게 더 이익이라는 판단이 나왔던 거죠.

 

저 장비를 컨트롤 할 때 쓰이는 툴이 teststand라는 거구요..

 

이 teststand안에서 또 명령을 내리는 모듈 프로그램을 만들어야하는데 그것이 랩뷰로 만들어진답니다..

 

teststand는 순서를 정해주는 프로그램이구요..

 

labview의 장점은 gpib, 시리얼통신 등 장비와 통신하는 프로그램을 만드는데 진짜 좋아요.

 

자동차에 쓰이는 can통신 하는 모듈도 있다고 하더군요...

 

저는 사용해보지 않았지만요..

 

전 저 장비를 사용할 때, 파워서플라이, 스코드, 디지털 멀티미터, adc, 스위치, 정도로 써본 것 같네요..^^

 

무엇인가 더 있었던 것 같기도한데...ㅋㅋㅋㅋㅋㅋ

 

기억이 안납니다..

 

다음 포스팅에서는 랩뷰 내부를 한 번 보기로 할게요..^^

반응형
LIST

모든 프로그래밍의 기본 if구문과 for 구문

프로그래밍
반응형
SMALL

대학교 2학년 때부터 작년 4월 회사를 퇴사하기 직전까지 손에서 놓지 않고 있었던 프로그래밍인데요.


퇴사를 하면서 다시는 코딩은 안해야지 하면서 새로운 사업을 준비했었는데..


어떻게 하다 보니 사업 중 하나가 애들에게 코딩을 가르쳐 주게 되었네요.


그래서 영어 공부 할려고 했던 블로그를 이렇게 프로그래밍과 제가 알고있는 내용을 교류하는데 쓰기로 했습니다.


추가로 배울 것도 넣었구요.


그곳이 언제 채워질지는 모르겠지만요.


오늘은 각 언어에 대한 정리를 하기에 앞서 제가 프로그래밍을 하면서 느꼈던 것을 좀 말해보려고합니다.


제가 프로그래밍을 한 것은 약 6년인데요. 2009년부터 해서 2015년까지 했으니까요.


물론 예전 대학1학년 때나 중고등학교 때 부운 GW BASIC, VISUAL BASIC은 빼구요.


그 때는 그냥 멋도 모르고 했던거니..ㅋㅋㅋㅋ


그런것들까지 치면 10년은 프로그래밍 했을텐데요.


느낀 것은 딱 1개 입니다. 코딩은 반복과 조건을 얼마나 잘거냐에 따라서


깔끔하게 돌아가냐 안 돌아가냐가 정해진다는 것이죠.


솔직히 다른 문법들을 쓰는 것은 코딩을 더 쉽고 정갈하게 만들어 주는 것이죠..


기본적인 것은 이 2가지로 다 해결이 된다고 생각합니다.


for, if


어떻게 보면 인생도 똑같다 생각이 드는군요..


반복된 삶에서


while(1)

{

...

}


해야할 일을 하는 것(조건문)이 아래 코딩과 같아 보입니다.


while(1)

{

if(...)

{

...

}

...

}


시간은 흐르고 그 흐르는 사이에 시간이 되면 해야할 것을 하고..


열심히 코딩을 할 때는 이런 생각을 해 본적이 없는데..


한 발 물러서니 철학자가 되는 기분이군요..^^


오늘 포스팅에서 하고 싶은 말은


반복문과 조건문을 잘 사용하자는 것이었습니다...ㅋㅋㅋㅋㅋㅋ

반응형
LIST

'프로그래밍' 카테고리의 다른 글

비주얼 스튜디오 2015 무료 버전 설치  (1) 2016.06.24