Home
Support
Write to Spreadsheet File 및 Read from Spreadsheet File.vi를 사용하여 파일을 읽거나 쓸때 생기는 정밀도 에러
Write to Spreadsheet File 및 Read from Spreadsheet File.vi를 사용하여 파일을 읽거나 쓸때 생기는 정밀도 에러
주요한 소프트웨어: LabVIEW Development Systems>>Full Development System
주요한 소프트웨어 버전: 6.1
문제가 해결된 소프트웨어 버전:
부차적인 소프트웨어: N/A
문제점: Get Date/Time in Seconds 함수에서 반환되는 타임스탬프 데이터를
Write to Spreadsheet File.vi 함수를 이용하여 저장합니다. Excel에서 저장된 스프레드시트 파일을 열어보면 데이터가 항상 같은 값으로 저장된 것을 확인할 수 있습니다. 이 문제를 어떻게 해결해야 합니까?
솔루션: Write to Spreadsheet File.vi의 입력 데이터 타입은 단정도를 사용하기 때문에 저장하는 데이터를 잘라낼 수 있습니다. Write to Spreadsheet File.vi는 1D 배열 입력 및 2D 배열 입력의 두개의 입력을 가지고 있습니다. 이 두개의 입력은 32 비트 단정도 배열입니다. 따라서 이 함수는 입력값을 자동으로 32 비트 단정도 배열로 변경하고 이 포맷으로 저장되어 Microsoft Excel 같은 프로그램에서 읽도록 해줍니다. 이 함수의 입력에서 강제 형 변환이 일어나는 경우, VI의 데이터 터미널에 작은 회색 점을 디스플레이하여 강제 형 변환을 보여줍니다.
따라서 이와같은 현상은 단정도로 표시할 수 없는 매우 크거나 작은 숫자를 저장할 때 나타나게 됩니다. 예를들어 Get Date/Time in Seconds 함수의 출력은 64비트 배정도로 Write to Spreadsheet File에서 수용할 수 없습니다. Write to Spreadsheet File.vi에서 매우 큰 숫자를 스프레드시트 파일로 저장하는 경우, 값을 반올림하거나 약간 바꾸기 때문에 약간의 에러를 포함한 데이터로 저장됩니다. 이 함수는 종종 모든 데이터의 엔트리를 같은 값으로 저장하기도 합니다.
Read From Spreadsheet File.vi의 출력도 단정도이기 때문에 동일한 문제가 Read From Spreadsheet File.vi에서 데이터/시간 정보를 읽어드릴때 발생할 수 있습니다. 이것은 Write to Spreadsheet File.vi 및 Read From Spreadsheet File.vi의 입력 또는 출력의 형을 각각 변경하여 원본 데이터타입과 일치시킬 수 있습니다. 배정도로 데이터 타입을 변경하는 경우, 아래의 절차를 따르십시오.
- 블록다이어그램에 Write to Spreadsheet File.vi를 놓습니다.
- Write to Spreadsheet File.vi 아이콘에서 두번 클릭하여 이 함수를 엽니다.
- 블록다이어그램을 엽니다.
- "1D data" 터미널에서 오른쪽 마우스 버튼을 클릭하고 형(Representation)을 선택합니다. DBL (배정도)을 선택합니다.
- "2D data" 터미널에서 오른쪽 마우스 버튼을 클릭하고 형(Representation)을 선택합니다. DBL (배정도)을 선택합니다.
- VI를 다른이름으로 저장합니다. (예: Write to Spreadsheet File (DBL).vi)
- Read From Spreadsheet File.vi에서 1-6 단계를 반복하여 "all rows", "first row", 및 "type(empty) 터미널에서 단정도를 배정도로 변경합니다.
위의 절차를 진행하여 입력 및 출력을 배정도로 변경하면, 날짜/시간 데이터는 정확하게 저장 또는 불러올 수 있습니다.
관련 링크:
첨부:
리포트 날짜: 11/12/1999
마지막 업데이트: 02/08/2006
문서 번호: 1RBDAG5P
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.