|
![]() |
|||||||
![]() |
![]() |
![]() |
BUG 수정 1) @CloseModule을 사용할 때 마우스 눌렀을 때 스크립트에서 사용하게 되면 잘 닫기지 않는 문제를 해결하였다. 2) Popup Window일 때 String태그의 디스프레이가 잘되지 않는 문제를 해결 하였다. 3) 아날로그 출력 설정에서 비례출력 시 plc_base 값이 0이 아닐 때 출력이 틀리게 되는 문제 해결 4) 태그편집기에서 태그 작성 후 저장을 하고 윈도우를 닫으면 저장하지 않았다는 메시지가 자꾸 나오는데 이것을 수정하였다.
프로그램 구조 수정 1) 태그를 읽어오는 시간이 23%정도 속도가 빨라지도록 프로그램을 수정 하였다.
감시 프로그램 수정 1) 아날로그 사각형 Object에서 범위가 full/base를 가지고 계산하였는데 새로운 View Full/Base 를 사용할 수 있도록 하였다. 2) Mdi 그래픽 모듈 발생 시 개수가 Default로 5개로 고정되어 있었는데 사용자가 임의로 1~5까지 변경할 수 있도록 하였다. (설정은 "감시 프로그램|환경 설정|기타 환경" 에서 한다) 3) 태그정보 윈도우가 나타날 때 윈도우 버튼 메뉴에 설명 없는 박스가 나타났었는데 이것을 나타나지 않게 하였다. 4) 감시프로그램과 통신프로그램 간의 통신을 개선하여 통신이 좀 더 빠르고 유연하게 흐를 수 있도록 하였다. 많은 태그를 사용하는 시스템에서 효과를 볼 수 있다. 5) 1분마다 자료가 저장되는 방식을 각 태그별로 1~10분에 한번에 저장할 수 있는 구조로 바꾸었다. 이것으로 인해 어떤 태그의 시간 자료는 매시간 10분이 되어야 모든 태그의 자료가 생성되므로 리포트 자동출력을 하는 Application은 매시간 10분 후에 자동 출력을 하도록 설정해야 정확한 자료를 얻을 수 있다. 이 자료 저장 방식은 많은 태그를 사용하는 시스템에서 속도 향상을 볼 수 있다. 6) 각 화면 윈도우의 MDI제한 개수가 이전에는 5개였는데 3개로 줄였다.
통신 프로토콜 추가/수정 1) SAMSUNG의 FARA-N 시리즈 PLC 프로토콜을 추가 하였다. 2) duTec I/O PLEXER Protocol 을 추가하였다. (OPTO22 Protocol 과 유사) 3) ㈜동영 DYS-MDC.DLL 프로토콜 지원 4) Light Star DPM 프로토콜 지원 5) Mentor II DC Driver 프로토콜 지원
스크립트 프로그램 수정 1) 기존의 스크립트에서 문자열을 사용할 때 디렉토리 이름 등을 사용할 때 c:\dir\file 형식으로 사용되었다. 5.05부터는 문자열에서 \를 사용할 때는\\를 사용하여야 한다 이것은 c:\\dir\\file 형식처럼 기존에 프로그램 되어있는 부분을 고쳐야 한다.
스크립트 함수 추가/수정 1) DWORD handle = @FileOpen(“filename”, “r”); - 파일을 연다. 파일 읽기 목적일 때는 “r”, 쓰기 목적일 때는 “w”, 파일 끝에 추가 목적일 때는 “a”, 읽고 쓰기를 할 때는 “rw” 를 사용하면 된다. handle이 0이면 파일을 열지 못했다. 2) @FileRead(handle, buf, size); - buf에 파일의 내용을 size만큼 읽어온다. 3) @FileWrite(handle, buf, size); - 파일에 buf의 내용을 size만큼 기록한다. 4) @FileSeek(handle, offset, origin); 파일의 현재 위치에서 주어진 offset만큼 이동한다. (Origin 값은 기준 값으로 0 = 현재위치에서 이동 , 1 = 파일의 처음에서 이동, 2 = 파일의 맨 끝에서 이동) 5) @FileClose(handle); - 파일 읽기나 쓰기 작업이 모두 끝나면 파일을 닫아주어야 한다. 6) DWORD handle = @FileOpenLPT(“LPT1”); - LPT 포트를 연다. 사용할 수 있는 포트는 LPT1, LPT2, LPT3를 사용할 수 있다. Handle 이 0이면 프린터 포트를 열지 못했다. 이 경우는 프린터 포트를 다른 프로그램에서 사용 중이거나 프린터 포트가 존재하지 않을 경우이다. 프린터 포트에 출력할 때는 @FileWrite 함수를 사용하면 된다. 7) retn = @CreateDirectory(“directory”); - 새로운 디렉토리를 만든다. Return값이 1 이면 새로 만들었거나 이미 존재하는 경우이고 return 값이 0 이면 디렉토리를 새로 만들지 못했다. 8) DWORD count = @GetDayCount(year, mon, day); 주어진 날짜를 원년부터 날짜를 더한 값이다. (윤년 등이 계산되었다.) 9) char limit = @GetLastDay(year, mon); 주어진 달의 마지막 날짜를 구한다. (윤달 등이 정확히 계산된다.) |