Funzione che rende il contenuto della status word della workstation indicata.
NOTA: Da RTE 34.03.06 sono disponibili le keyword fb_stsw e fb_ctrlw.
|
i32 co_statusword (i32 nWs [, i32 flgCw=FALSE])
|
|
ID stazione Robox (workstation logica 1-:-64).
NOTA: Se si specifica 0 come ws allora si intende per tutte.
|
|
Parametro per abilitare anche la lettura anche della control word. (opzionale, default FALSE).
|
|
Rende:
|
|
|
flgCw = 0
|
Valore della status word.
|
Valore reso in w0 (parte bassa, prima word).
|
0
|
Valore reso in w1 (parte alta, seconda word).
|
flgCw <> 0
|
Valore della status word.
|
Valore reso in w0.
|
Valore della control word.
|
Valore reso in w1.
|
|
|
Rule, Task.
|
|
|
|
|
|
0
|
0x00000001
|
Ready to switch ON.
|
1
|
0x00000002
|
Switched ON.
|
2
|
0x00000004
|
Operation enabled.
|
3
|
0x00000008
|
Fault.
|
4
|
0x00000010
|
Voltage enabled.
|
5
|
0x00000020
|
Quick stop.
|
6
|
0x00000040
|
Switch on disabled.
|
7
|
0x00000080
|
Warning.
|
8
|
0x00000100
|
Manufacturer specific.
|
9
|
0x00000200
|
Remote.
|
10
|
0x00000400
|
Target reached.
|
11
|
0x00000800
|
Internal limit active.
|
12
|
0x00001000
|
Operation mode specific.
|
13
|
0x00002000
|
Operation mode specific.
|
14
|
0x00004000
|
Manufacturer specific.
|
15
|
0x00008000
|
Manufacturer specific.
|
La figura è stata estrapolata da CiA Draft Standard Proposal 402.
|
Esempio di utilizzo:
int stws[33]
for(i= 1 , i<=32 , i++)
stws[i] = co_statusword(i)
end_for
|
Esempio di utilizzo:
reso = co_statusword(ws,true)
r(1000) = w0(reso)
r(1001) = w1(reso)
|
|