Hallo,
ich habe gerade mal mit einer PN Diagnose angefangen, nur irgendwie bekomme ich keine Infos über den Status des PN gerätes.
Woran kann das liegen? Habe ich den falschen Mode ausgewählt ? Mein Ziel wäre eben das Kopfmodul einer zb Beckhof IO Baugruppe auszuwerten.
Die informationen die ich brauche wären
Status OK,wartungsanforderung,gestört, nicht vorhanden.
Gruß
ich habe gerade mal mit einer PN Diagnose angefangen, nur irgendwie bekomme ich keine Infos über den Status des PN gerätes.
Woran kann das liegen? Habe ich den falschen Mode ausgewählt ? Mein Ziel wäre eben das Kopfmodul einer zb Beckhof IO Baugruppe auszuwerten.
Die informationen die ich brauche wären
Status OK,wartungsanforderung,gestört, nicht vorhanden.
Code:
CASE GET_DIAG(LADDR:=#HW_Device,MODE := 1,CNT_DIAG=>#cnt_Diag ,DIAG:= #SSVisu.Info) OF
//
0: // get local slot infomation...
CASE LOG2GEO(LADDR:=#HW_Device,GEOADDR:=#GEOADDR) OF
0: //OK
;
ELSE //Error
ENO:= FALSE;
RETURN;
;
END_CASE;
// get name
#HW_Name(LADDR:= #IOSystem,
STATION_NR:= #GEOADDR.STATION,
DATA:=#SSVisu.Name);
IF #HW_Name.ERROR THEN
ENO:= FALSE;
RETURN;
END_IF;
// get info
IF NOT #readbyStart THEN
#HW_StationInfo(REQ:=TRUE,
LADDR:=#HW_Device,
MODE:=1,
DATA:=#SSVisu.IP);
END_IF;
// finish ???
IF #HW_StationInfo.ERROR OR #HW_StationInfo.STATUS = 16#7001 OR
#HW_StationInfo.STATUS = 16#7002 OR
#HW_StationInfo.STATUS = 16#7000
THEN
ENO:= FALSE;
RETURN;
END_IF;
#readbyStart := TRUE;
ELSE
ENO:= FALSE;
RETURN;
END_CASE;