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:
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.
Yazımızda endüstrinin can damarı sayılabilecek PLC’yi inceleyeceğiz.

Forum istatistikleri

Konular
128,198
Mesajlar
915,779
Kullanıcılar
449,981
Son üye
Muhammeddt

Yeni konular

Geri
Üst