[SCADA] [스크립트] 태그를 10초 단위로 스캔하여 30초평균값을내는방법을 알고 싶습니다.
2014.06.25

안녕하세요.

CIMON입니다.

 

 

스크립트를 이용하면 10초 단위로 태그를 스캔하고 30초마다 평균값을 출력하는 것이 가능합니다.

 

1. 데이터베이스에서 아날로그 태그 4개(순시값, 평균값, 카운트, B평균값)를 생성합니다.

2. [도구]-[스크립트]에 진입하여 다음과 같이 스크립트를 작성 및 등록합니다.

Sub Main()

While 1

‘현재시간을 구함

CurTime# = Now()

CurVal# = GetTagVal(“순시값”)

AvrVal# = GetTagVal(“평균값”)

Count% = GetTagVal(“카운트”)

Avr   = GetTagVal(“B평균값”)

’10초 단위로 스캔하여 순시값을 평균값에 더함

If ((Second(CurTime#) mod 10) = 0) Then

SetTagVal “평균값”, CurVal# + AvrVal#

SetTagVal “카운트”, Count% + 1

end if

sleep(500)

If Count% = 3 Then

SetTagVal “B평균값”, AvrVal#/3

SetTagVal “카운트”, 0

SetTagVal “평균값”, 0

End If

Sleep(500)

Wend

End Sub

===================================

위 스크립트는 다음과 같은 형식으로 등록됩니다.

3. CimonX를 실행하였을 때, 10초마다 아날로그 태그의 값변화를 스캔하고, 30초 경과 시 카운트가 초기화되고 해당 카운트의 평균값이 출력됩니다.

 

언제나 고객을 먼저 생각하는 CIMON이 되겠습니다.

감사합니다.