#품질인증서#PLC품질인증서#PLCS시리즈인증서#PLCS인증서#CE인증서#인증서#제품인증서#인증서
[글쓴이:] 관리자
[PLC-CP/XP] CP 시리즈 CE 인증서 (2013.06.13)
#품질인증서#PLC품질인증서#PLC CP#CE인증서#CP시리즈품질인증서#인증서#제품인증서#CP시리즈인증서#인증서
[PLC-BP] BP 시리즈 CE 인증서 (2013.06.13)
#품질인증서#PLC품질인증서#PLC BP#CE인증서#BP시리즈품질인증서#인증서#제품인증서#BP시리즈인증서#인증서
[XPANEL] XT12CD 모델의 IP65 시험성적서 (2013.06)
안녕하십니까?
감사합니다.
#XT12CD시험성적서#Xpanel#시험성적서
[XPANEL] XT10CD 모델의 IP65 시험성적서 (2013.06)
안녕하십니까?
감사합니다.
#XT10CD시험성적서#Xpanel#시험성적서
[XPANEL] XT08CD 모델의 IP65 시험성적서 (2013.06)
안녕하십니까?
1. XT08 모델의 IP65 시험성적서
감사합니다.
#XT08CD시험성적서#Xpanel#시험성적서
[XPANEL] XT07CD 모델의 IP65 시험성적서 (2013.06)
안녕하십니까?
감사합니다.
#XT07CD시험성적서#Xpanel#시험성적서
[XPANEL] XT04CD 모델의 IP65 시험성적서 (2013.06)
안녕하십니까?
1. XT04 모델의 IP65 시험성적서
감사합니다.
#XT04CD시험성적서#Xpanel#시험성적서
[SCADA][스크립트] 경보 경과시간 기록 예제
안녕하세요.
CIMON 입니다.
경보가 울리고 난 후 경과한 시간을 기록하는 예제입니다.
[ 이럴 때 사용하시면 됩니다 ]
하루 사이에 경보 태그가 ON 되어있던 시간을 구하고 싶을 때 활용할 수 있습니다.
[ 프로젝트 예제 작성 버전 및 주의사항 ]
SCADA Ver 3.04(R160224)
v3.04에서 작성된 프로젝트는 하위버전에서 열리지 않습니다.
[ 예제 설명 ]
1. 예제의 UI의 구성은 간단합니다. 시간정보와 경고 정보를 태그값으로 표현해주고 경보 상태에 따라 램프를 점등해주며 터치로 경보를 켜고 끌 수 있습니다.
위와 같인 초록색 부분이 터치 입력을 받으면 경보 태그 ALARM을 Toggle 시켜줍니다.
경보 알람이 ON 되면 경보 태그의 가동 시간이 기록됩니다. 동시에 램프에 불이 들어와 경보를 알립니다.
현재 시간 태그는 TIME을 표현하는데 이 TIME 태그는 스크립트에서 설정됩니다.
작동시간 태그는 TC의 태그값을 표현하는데 TimeCount의 의미를 지닙니다. 이 태그도 마찬가지로 스크립트 상에서 제어됩니다.
알람태그는 터치 동작을 가지고 있고 터치 시에 ALARM 태그를 Toggle 시켜줍니다.
또한 ALARM태그는 경보 태그로 설정이 되어있기 때문에 CimonX에서 이 태그가 1로 ON될 시에 경보 알람 또한 기록됩니다.
스크립트는 위와 같습니다. 시간에 관한 내부함수는 전부 TimeStr로 처리했습니다.
TimeStr의 표현 형식이 65가지나 되기 때문에 모든 시간표현은 TimeStr 내부함수로 구현가능합니다.
또한 이 스크립트에서 중요하게 쓰인 함수는 TimeConvert 함수입니다.
TimeConvert 함수가 경보 태그가 ON 되어있는 동안 올라가는 COUNT 태그의 숫자 정보를 시간형식으로 바꾸어주기 때문입니다.
또한 If 문의 조건인 SecValue <> NowSec을 눈 여겨 보셔야합니다.
아무 의미 없어 보이지만 이 스크립트가 단순한 숫자 카운팅을 시간 정보로 바꾸어주는 역할을 합니다.
SecValue와 NowSec이 다를 때 즉, 이전 while문에서 설정한 SecValue의 값이 현재의 시간 값과 차이가 날 때 조건문을 만족합니다.
이 조건이 없을 때, 많은 초가 지났을 때는 상관없지만 1초가 지나기 전에 경고 태그가 ON 되어있다면 sleep(300)로 인해 1초 사이에 while문은 3번 돌고 counting이 세 번 됩니다.
하지만 SecValue <> NowSec 이 조건에 의해 1초 안에 경고 태그가 ON 되어있어도 시스템 시간으로 1초 지날 때만 가동시간을 1 카운팅 해주게 되는 겁니다.
[ 적용 방법 ]
이 예제에서는 경보 태그를 터치로 입력을 받아 직접 켜고 껐지만 실제 현장에서 사용하실 때는 PLC 장비들과 연결되어 있는 실제 경보 태그와 연동을 하시면 됩니다.
작업자가 없는 사이에 장비가 위험에 노출되면 경보 태그를 ON 시키고 ON 된 시간을 또한 태그를 통해 원격지에 전송, 감시할 수 있습니다.
스크립트는 매일 12시에 가동시간이 리셋되게 되어있는데 이를 바꿔주려면
![](http://www.cimon.co.kr/wp-content/uploads/2013/05/스크립트-수정.png)
이처럼 ResetTime 정보를 바꿔주면 됩니다.
#경보시간#시간카운팅#TimeStr#TimeConvert#타이머카운트#경보#경과시간#프로젝트예제#샘플프로젝트#SCADA프로젝트예제#SCADA샘플프로젝트#SCADA스크립트사용예제#SCADA스크립트사용방법#SCADA스크립트사용샘플#SCADA스크립트
[Xpanel][스크립트][기능] 스케줄 기능 매뉴얼 및 예제
안녕하세요.
CIMON 입니다.
Xpanel에서 스케줄 기능 관련 함수와 기능 사용 방법에 대한 예제입니다.
[이럴 때 사용하시면 됩니다]
특정 스케줄에 따라 동작을 실행시키고 싶을 때 사용하시면 됩니다.
[프로젝트 예제 작성 버전 및 주의사항]
Xpanel Ver 2.33(R130814)
Ver 2.33 프로젝트는 하위버전에서 프로젝트가 열리지 않습니다. 상위버전 사용자들은 프로젝트 업그레이드로 사용 하실 수 있습니다.
[예제 설명]
이 예제는 스케줄 관련 함수와 기능들을 모두 사용합니다.
스케줄 시간 설정에서 시간과 반복을 선택한 후 스케줄을 등록할 수 있습니다.
시스템메모리 데이터 설정의 시간 데이터는 미리 설정된 시간을 불러옵니다.
등록된 모든 스케줄에 대해 일괄적으로 같은 시간을 등록할 수도 있습니다.
특정 시간을 특정 번호의 스케줄에만 적용할 수도 있습니다.
스케줄 활성/비활성을 각각의 스케줄에 대해 설정할 수 있습니다.
1. 스케줄 변경 예제 프로젝트의 화면을 설명하겠습니다.
- 스케줄 선택 : 버튼을 클릭하여 등록된 스케줄 번호를 선택합니다. (SCHEDULE_INDEX 태그)
- 시간 설정 : 반복/년/월/일/시/분/요일버튼을 클릭하면 시간 데이터를 임의로 설정 할 수 있습니다.
(스케줄에 임의의 시간 설정을 하기 위해서는 SYSTEM MEMORY 태그 7개를 연속하여 등록하여야 합니다.) - 시스템 메모리 데이터 설정
A. 시간데이터(1) : 임의의 시간 지정된 데이터 입력 버튼
B. 시간데이터(2) : 임의의 시간 지정된 데이터 입력 버튼
(각 변수에 대한 값을 명령식에 직접 입력하여 사용하는 경우입니다.) - 스케줄 목록 창 열기 : 스케줄 목록이 표시되는 창을 엽니다.(ScheduleConfig() 함수를 실행하여 스케줄 목록 창을 엽니다.)
- 시간정보 일괄 적용 : 시간설정에 입력된 시간 데이터를 등록된 모든 스케줄의 시간정보에 동일하게 적용시킵니다.
(반복문과 SetScheduleSysMem(R1, R2) 함수를 활용합니다. R1: 스케줄번호, R2: SYSTEM MEMORY 시작주소) - ??? 번 항목에 적용 : 사용자가 선택한 항목의 스케줄 시간정보를 시간 설정에 입력된 시간 데이터로 변경 합니다. (SetScheduleSysMem(R1, R2) 함수를 이용합니다.)
- 모든 항목 활성화 : 등록된 모든 스케줄 항목을 활성화 시킵니다.
(반복문과 SetScheduleState(R1, R2) 함수를 사용합니다. R1: 스케줄번호, R2: [0]비활성화/[1]활성화) - 모든 항목 비활성화 : 등록된 모든 스케줄 항목을 비 활성화 시킵니다. (반복문과 SetScheduleState(R1, R2) 함수를 사용합니다.)
- ???번 활성화 : 사용자가 선택한 항목의 스케줄을 활성화 시킵니다. (SetScheduleState(R1, R2) 함수를 사용합니다.)
- ???번 비활성화 : 사용자가 선택한 항목의 스케줄을 비활성화 시킵니다. (SetScheduleState(R1, R2) 함수를 사용합니다.)
- ???번 활성화 상태 : 사용자가 선택한 항목의 스케줄 활성화 상태를 얻어옵니다. (GetScheduleState(R1) 함수를 사용합니다.)
- ???번 활성화 상태 결과 : 1 활성화 상태, 0 비활성화 상태입니다. (GetScheduleState(R1, R2) 함수의 결과를 ENABLE_SC에 입력되며 태그값으로 표시됩니다.)
2. 스케줄 기능에 대해 설명하겠습니다.
스케줄에 따른 작업 설정이나 태그값 설정은 XpanelDesigner에서만 가능합니다. Run 상태에서는 스케줄의 시간정보, 황성화 상태만 변경 가능합니다.
스케줄의 동작 설정은 프로젝트를 Xpanel에 다운로드 하기 전에 설정해야 합니다.
스케줄 설정은 도구-스케줄-스케줄목록 에서 스케줄 번호에 따라 설정 가능합니다.
3. 각 함수의 적용방법에 대해 설명하겠습니다.
도구-시뮬레이터로는 ‘스케줄 목록 창 열기’가 동작하지 않으므로 Xpanel에 다운로드 하셔서 확인하셔야 합니다.
SetScheduleSysMem(R1,R2) GetScheduleSysMem(R1,R2) 함수를 사용하기 위해 System Memory의 연속된 어드레스 7개를 태그로 등록하여야 합니다.(자세한 사항은 도움말-함수일람을 참고하세요.)
태그 이름과 어드레스 시작번호는 임의로 정할 수 있습니다.
예제 프로젝트는 이해가 쉽도록 System Memory 태그 이름을 적용범위와 일치시켰으며, System Memory 태그의 시작어드레스를 0으로 하였습니다.
R1은 스케줄번호, R2는 System Memory의 시작번호 입니다.
해당 태그들을 임의로 값을 변경하고 SetScheduleSysMem(R1, R2) 함수를 사용하여 특정 스케줄 번호의 시간정보를 변경할 수 있습니다.
다음과 같이 스케줄의 System Memory 태그값을 데이터입력 기능으로 변경할 수 있게 합니다.
한 번 클릭으로 지정된 시간값이 System Memory 태그값으로 설정되도록 버튼을 만들 수도 있습니다.
스케줄 목록 창을 여는 함수 ScheduleConfig() 를 사용합니다.
Xpanel Run 상태에서 스케줄 목록창을 통해 각각의 스케줄 활성화/비활성화, 시간정보가 변경 가능합니다.
스크립트를 활용하여 스케줄 시간정보를 변경할 수도 있습니다.
SetScheduleState(R1, R2) 함수로 해당 스케줄 번호(SCHEDULE_INDEX 태그값)의 스케줄을 활성화/비활성화 시킬 수 있습니다.
GetScheduleState(R1) 함수는 활성화/비활성화 상태를 반환하므로 ENABLE_SC 태그에 값을 저장하도록 합니다. 0(비활성화 상태) 또는 1(활성화 상태)을 반환합니다.
예제를 Xpanel에 다운로드 하셔서 스케줄 기능을 파악할 수 있도록 합시다.
예제 설명으로 충분하지 않으시다면 첨부된 ‘Schedule_메뉴얼’ 을 참고하시기 바랍니다.
[적용 방법]
기존 프로젝트에 사용하시려면 다음과 같이 작업하시면 됩니다.
기존 프로젝트에 ‘’도구-스케줄-목록창’ 에서 스케줄을 등록합니다.
스케줄의 동작을 설정합니다.
스케줄의 동작은 스케줄 번호와 함께 따로 정리해놓도록 합니다.
(Xpanel 상에서 스케줄 동작이 무엇인지 표시되지 않습니다.)
스케줄 시간을 임의로 자주 조정하신다면 예제프로젝트의 페이지를 복사하여 사용합니다.
스케줄을 자주 조정하지 않으신다면 ScheduleConfig() 함수로 스케줄 목록창을 이용하여 설정하는 것으로 충분합니다.
첨부 1. ScheduleV233.zip
첨부 2. Schedule_매뉴얼.pdf
감사합니다.
#스케줄메뉴얼#스케줄기능#XPANEL스케줄기능#XPANEL스케줄#프로젝트예제#샘플프로젝트#XPANEL프로젝트예제#XPANEL샘플프로젝트#엑스판넬프로젝트예제#엑스판넬샘플프로젝트