FB_ASI_SlaveDiag

FB_ASI_SlaveDiag 1:

VAR_IN_OUT

VAR_IN_OUT
    stParameterBuffer:      ST_ParameterBuffer; 
END_VAR

stParameterBuffer: Datenpuffer für die Hintergrundkommunikation

VAR_INPUT

VAR_INPUT
    iSlaveaddress       :BYTE;
    iCounter            :INT;       (*1:PhysicalFaultCounter,  2:TimeoutCounter,  3:ResponseCounter,  4:Leave-DataExchCounter,  5:DataExch-FailedCounter *)
    bCounterReset       :BOOL;
    bReadLES            :BOOL;      (*Read List of all detected Slaves*)
    bReadLAS            :BOOL;      (*Read List of all activated Slaves*)
    bStart              :BOOL;
END_VAR

iSlaveaddress: Slaveadresse

iCounter: 1:PhysicalFaultCounter, 2:TimeoutCounter, 3:ResponseCounter, 4:Leave-DataExchCounter, 5:DataExch-FailedCounter

bCounterReset: Rücksetzen des aktuellen Zählers

bReadLES: Liste der erkannten ASI-Slaves(LES)

bReadWrite: 0=READ, 1=WRITE

bReadLAS: Liste der aktivierten ASI-Slaves(LAS)

bStart: Mit einer positiven Flanke an diesem boolschen Eingang wird der entsprechende Auftrag ausgeführt

VAR_OUTPUT

VAR_OUTPUT
    bBusy               :BOOL;
    bErr                :BOOL;
    iErrornumber        :DWORD;     (*errorcode of ASI-Master*)
    iCounterValue       :WORD;      (*Counter of a slave*)
    iSlaveList          :DWORD;     (*LES or LAS of all Slaves*)
END_VAR

bBUSY: Dieser Ausgang bleibt so lange auf TRUE, bis der Baustein eine Befehlsanforderung ausführt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. Bitte beachten Sie, dass nicht die Ausführung des Dienstes, sondern nur dessen Annahme zeitlich überwacht wird.

bErr: Dieser Ausgang zeigt den Fehlerstatus an

iErrornumber: Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt.

iCountervalue: Zählerstand

iSlaveList: LES bzw. LAS

Voraussetzungen

Entwicklungsumgebung

Zielplattform

IO-Hardware

Einzubindende SPS-Bibliotheken

TwinCAT Version >= 2.8.0 Build > 739

PC (i386)

ASI-Master-Klemme

TcIoFunctions.Lib ( Standard.Lib; TcBase.Lib; TcSystem.Lib; TcUtilities.Lib werden automatisch eingebunden )