본문 바로가기
랩뷰(LabVIEW)

제 6강. 랩뷰(LabVIEW)의 동일한 파일에 데이터 누적 저장

by asmodeliy 2022. 11. 30.

1. 파일 또는 폴더 존재 확인(Check if File or Folder Exists) 함수

2. 케이스(Case) 구조

3. 파일 불러오기

4. 파일 생성


안녕하세요. 저번 시간(제 5강. 랩뷰(LabVIEW)의 파일 I/O(File I/O)를 통한 데이터 저장)에는 기본적인 데이터 저장에 대해 배웠다면, 이번에는 기존의 파일을 불러와 그곳에 데이터를 누적하여 저장해보겠습니다.

 

먼저 오늘 사용할 핵심적인 함수는 파일 또는 폴더 존재 확인 함수입니다.

이 함수와 케이스 구조를 통해 누적 저장을 구현할 수 있습니다.

 

 파일 또는 폴더 존재 확인 함수

 

경로에는 저번시간에 했던 것처럼 경로 만들기 함수를 연결하고 편의를 위해 파일 이름은 data.txt로 자동 생성되게 했습니다.

이제 경로에 True or FalseCase 구조에 연결해서 사용하면 됩니다.

 

Case구조(False)

다음과 같이 파일이 존재하지 않을 때 배열을 새로 생성하고

 

While문

저번 강의처럼 While 문의 시프트 레지스터(Shift register)를 이용하여 랜덤 값이 0.5 초과될 때 까지 횟수와 난수를 기록해보겠습니다.

파일 열기 함수와 텍스트 파일에 쓰기 함수
파일 닫기 함수

파일 생성은 파일 열기 함수, 텍스트 파일에 쓰기 함수, 파일 닫기 함수를 사용하여 만들겠습니다.

 

파일 생성을 위한 블록 다이어그램

이와 같이 세 함수를 연결하여 구성하고

배열을 스프레드시트 문자열로 함수

배열을 스프레드시트 문자열로 함수를 텍스트 파일에 쓰기 함수에 연결하여 데이터를 저장합니다.

 

파일 열기 함수의 동작과 접근은 노드에 상수를 생성해 각각 replace of create, write-only로 해줍니다.

이제 생성된 파일을 불러와 누적하여 데이터를 입력하는 케이스 구조의 True 값을 작성해야 합니다.

 

텍스트 파일로부터 읽기 함수

파일 생성에서 사용했던 파일 열기 함수, 파일 닫기 함수를 사용하고 텍스트 파일에 쓰기 함수를 대신하여 텍스트 파일로부터 읽기 함수를 사용해 파일 불러오기를 구현하겠습니다.

 

파일 불러오기를 위한 블록 다이어그램

이번에는 파일 열기 함수의 동작,접근을 각각 open, read-only로 하고

 

스프레드시트 문자열을 배열로 함수

스프레드시트 문자열을 배열로 함수를 사용해 텍스트 파일에 저장된 문자열을 다시 배열로 만들어 줍니다.

누적 저장 블록 다이어그램
랜덤 값이 0.5 초과인 경우 멈추는 VI를 여러 번 실행시켰을 때의 데이터

결과적으로 이러한 블록 다이어그램이 만들어지고 실행을 누를 때마다 데이터가 누적되어 생성됩니다.

 

글을 마치며 이 포스팅을 통해 파일 I/O를 통한 데이터 누적 저장에 대한 궁금증이 어느 정도 해소되었으면 합니다.

 

감사합니다.

 

누적 저장.vi
0.01MB

댓글