작성자 최정원 |
작성일 2021-07-21 |
문의구분
소프트웨어 |
문의번호 1990 |
---|---|---|---|
Q.
HMI (TOPRX1500XD) 에서 PLC의 데이터 D0000=1 이면 D0100~D0400 의 데이터를 HMI 또는 USB에 저장하고 저장이 완료되면 PLC의 데이터 D0000=0 으로 입력하고 저장시 파일명은 저장할때의 시간으로 즉 2021.07.20-24.60.60(년.월.일-시.분.초) 이와 같이 파일명으로 저장할려고 합니다. 어떻게 작화하면 되는지 예제 파일 좀 부탁합니다. 엑셀형식으로 저장하고 싶습니다. 작화는 리포트 형식으로(화면으로 보는 용도) 아래와 같이 할려고 합니다. T000: D0100 값 T001: D0101 값 T002: D0102 값 .............................. T400: D0400 의 값 이 데이터 값들은 시간과 온도입니다. 혹시 HMI에서 이전에 위의 데이터를 저장한 값들 HMI 작화 화면에서 볼 수가 있게 하는 방법도 올려주세요. |
|||
A.
안녕하세요 엠투아이입니다.
TOPRX 터치에서는 로그 기능을 이용하면 먼저 HMI 내부에 로그 데이터를 저장하고
이후 엑셀 파일 형태로 SD카드 백업 혹은 USB 복사가 가능합니다.
로그설정 관련 작화 예제는 아래 링크 참고 부탁드립니다.
http://m2i.co.kr/down/extd/extd_viw.jsp?page=2&boardId=613&type=&key=
저장되는 파일명은 [프로젝트]-[로그]-[백업] 탭에서 [분할 저장]으로 설정 가능하나
파일명 기본 사양이 2021-07-21_LOG001_00001.CSV 형태이므로
시분초를 추가하게 될 경우 2021-07-21_LOG001_00001_110925.CSV 로 저장이 됩니다.
방법은 [분할 저장]의 [문자]로 선택 후 [문자 개수]는 6개로 하시고
([문자]는 설정한 주소의 데이터를 [문자 개수]만큼 문자열로 읽어서 파일명에 포함시켜줌)
사용하지 않는 SYS 내부주소를 설정 하시면 로그 설정은 완료됩니다.
이후 해당 SYS 주소에 시분초가 입력되는 스크립트를 작성해 주셔야 합니다.
TDS 스크립트 기능은 JavaScript 기반 이므로 아래 예시는 참고만 부탁드리겠습니다.
var today = new Date();
var hours = ('0' + today.getHours()).slice(-2);
var minutes = ('0' + today.getMinutes()).slice(-2);
var seconds = ('0' + today.getSeconds()).slice(-2);
var a = hours + minutes + seconds;
[@SYS:00000:6:ASCII] = a; // SYS00000 주소에 변수 a 시분초 데이터를 대입
수고하세요.
|
|||
답변 첨부파일 | 다운로드 |
상담 전 [자주찾는질문]을 먼저 확인하여 보세요. 빠르게 조치할 수 있습니다.
자주찾는질문