Wincc sistem mesaj dan tag değiştirme

ta2mix

Üye
Katılım
23 Eyl 2006
Mesajlar
231
Puanları
1
Merhaba

bir projemde 16 adet sistem mesajını kullanıyorum. sistem mesajlarını message tag a girdiğimiz bir tag ile aktif edebiliyoruz ancak tersini bulmalıyım. sistem mesajlarından biri aktif olduğunda eğer o mesajın özelliklerinde "trigger action" tık varsa "GMsgFunction"otomatik çalışıyor. code bilgim pek yok.

Örneğin 1000204 "PLC bağlantısı koptu" gelirse M0.0 bitini 1 yapmak istiyorum. "GMsgFunction" içinde SetTagBit("m00",1); girersem m0.0 tagınıda ekrandaki herhangi bir objenin display özelliğine atarsam Obje PLC bağlantısı koptuğunda görünmez oluyor.

BOOL GMsgFunction( char* pszMsgData)
{
MSG_RTDATA_STRUCT mRT;
memset( &mRT, 0, sizeof( MSG_RTDATA_STRUCT ) );


if( pszMsgData != NULL )
{
printf( "Meldung : %s \r\n", pszMsgData );

// Meldungsdaten einlesen
sscanf( pszMsgData, "%ld,%ld,%04d.%02d.%02d,%02d:%02d:%02d:%03d,%ld, %ld, %ld, %d,%d",
&mRT.dwMsgNr, // Meldungsnummer
&mRT.dwMsgState, // Status MSG_STATE_COME, .._GO, .._QUIT, .._QUIT_SYSTEM
&mRT.stMsgTime.wYear, // Jahr
&mRT.stMsgTime.wMonth, // Monat
&mRT.stMsgTime.wDay, // Tag
&mRT.stMsgTime.wHour, // Stunde
&mRT.stMsgTime.wMinute, // Minute
&mRT.stMsgTime.wSecond, // Sekunde
&mRT.stMsgTime.wMilliseconds, // Millisekunde
&mRT.dwTimeDiff, // Zeitdauer der anstehenden Meldung
&mRT.dwCounter, // Interner Meldungszähler
&mRT.dwFlags, // Flags( intern )
&mRT.wPValueUsed,
&mRT.wTextValueUsed );
// Prozesswerte lesen, falls gewünscht
SetTagBit("m00",1); //Return-Type: BOOL

}

printf("Nr : %d, St: %x, %d-%d-%d %d:%d:%d.%d, Dur: %d, Cnt %d, Fl %d\r\n" ,
mRT.dwMsgNr, mRT.dwMsgState, mRT.stMsgTime.wDay, mRT.stMsgTime.wMonth, mRT.stMsgTime.wYear,
mRT.stMsgTime.wHour, mRT.stMsgTime.wMinute, mRT.stMsgTime.wSecond, mRT.stMsgTime.wMilliseconds, mRT.dwTimeDiff,
mRT.dwCounter, mRT.dwFlags ) ;

Ancak SetTagBit("m00",1); codunu GMsgFunction içinde yazdığımızdan başka sistem mesajlarındada aktif oluyor.
1000204 geldiğinde m0.0
1000205 geldiğinde m0.1 aktif olsun nasıl yapılır.
 
Son düzenleme:
Yazımızda endüstrinin can damarı sayılabilecek PLC’yi inceleyeceğiz.
KNX Standardı, küçük bir rezidansın içerisindeki aydınlatma, perde panjur, klima kontrolünden, Dünya’nın en büyük havalimanlarındaki aydınlatma otomasyonu gibi çözümler için tercih edilen bir Dünya standardıdır.

Forum istatistikleri

Konular
129,168
Mesajlar
923,880
Kullanıcılar
451,517
Son üye
sunucum

Yeni konular

Geri
Üst