SF_GetStatus関数

安全機能の状態ビットを返します。

書式
SF_GetStatus (インデックス)

パラメーター

インデックス
検索する情報のインデックスを整数値で指定します。

戻り値
指定したインデックスの情報を整数値で返します。

解説
戻り値のビット情報は次の表のとおりです。

インデックス ビット 解説
0 0-6 - 予約済
7 &H80 Safety基板の故障検知
1 0 &H1 SLS_1機能有効
1 &H2 SLS_2機能有効
2 &H4 SLS_3機能有効
3-7 - 予約済
2 0 &H1 SLP_A機能有効
1 &H2 SLP_B機能有効
2 &H4 SLP_C機能有効
3-6 - 予約済
7 &H80 ソフト軸制限機能有効 (常時有効)
3 0 &H1 SAFETY_IN1信号High (機能オフ) *1
1 &H2 SAFETY_IN2信号High (機能オフ) *1
2 &H4 SAFETY_IN3信号High (機能オフ) *1
3 &H8 SAFETY_IN4信号High (機能オフ) *1
4 &H10 SAFETY_IN5信号High (機能オフ) *1
5 &H20 非常停止スイッチ (ティーチペンダント) High (機能オフ) *1
6 &H40 非常停止スイッチ (コントローラー接続) High (機能オフ) *1
7 &H80 Enable信号High (機能オフ) *1
4 0 &H1 SAFETY_OUT1信号High (機能オフ) *2
1 &H2 SAFETY_OUT2信号High (機能オフ) *2
2 &H4 SAFETY_OUT3信号High (機能オフ) *2
3-7 - 予約済
5 0 &H1 SLP_A *3
1 &H2 SLP_B *3
2 &H4 SLP_C *3
3-6 - 予約済
7 &H80 SLP_J *3
6~11 0-7 - 予約済
12 0-7 - STF_ID
13 0-7 - STF_DET_L
14 0-7 - STF_DET_U
15 0-7 - 予約済
*1. 安全入力信号は負論理 (Active Low)です。
安全入力に信号レベルHighが入力されると、本関数は1を返し、安全入力に割り当てた機能は動作しません。
安全入力に信号レベルLowが入力されると、本関数は0を返し、安全入力に割り当てた機能が動作します。安全入力に機器を接続しないと、この状態になります。
*2 安全出力信号は負論理 (Active Low)です。
安全出力に割り当てたいずれかの機能が動作状態の場合、安全出力が有効になり、安全出力の信号レベルはLowになり、本関数は0を返します。
安全出力に割り当てたいずれの機能も動作状態ではない場合、安全出力が無効になり、安全出力の信号レベルはHighになり、本関数は1を返します。
安全出力にいずれの機能も割り当てない場合、安全出力の信号レベルはLowになり、本関数は0を返します。
*3 安全入力にSLP機能が割り当てられているか割り当てられていないかにかかわらず、また入力信号が有効か無効にかかわらず、監視位置に入った場合は1となります。

STF_ID, およびSTF_DET_L, STF_DET_Hを使用するとエラー発生原因を確認できます。 SPEL+を使った確認方法は後述します。 STF_ID, およびSTF_DET_L, STF_DET_Hの情報は次の通りです。

STF_ID エラー名 STF_DET_L STF_DET_U
100

停止通知

安全入力

安全入力ポート

SAFETY_IN1 &H01

SAFETY_IN2 &H02

SAFETY_IN3 &H04

SAFETY_IN4 &H08

SAFETY_IN5 &H10

不使用
101

停止通知

SLS_1 速度超過

関節

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
102

停止通知

SLS_1 速度超過

部位

部位

ハンド &H01 / 肘 &H02*1

手首 &H04 / 肩 &H08 *1

不使用
103

停止通知

SLS_2 速度超過

関節

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
104

停止通知

SLS_2 速度超過

部位

部位

ハンド &H01 / 肘 &H02*1

手首 &H04 / 肩 &H08 *1

不使用
105

停止通知

SLS_3 速度超過

関節

関節番号

J1 &H01 / J2 &H02

J3 &H04/ J4 &H08

J5 &H10 / J6 &H20

不使用
106

停止通知

SLS_3 速度超過

部位

部位

ハンド &H01 / 肘 &H02*1

手首 &H04 / 肩 &H08 *1

不使用
107

停止通知

SLS_T 速度超過

関節

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
108

停止通知

SLS_T 速度超過

部位

部位

ハンド &H01 / 肘 &H02*1

手首 &H04 / 肩 &H08 *1

不使用
109

停止通知

SLS_T2 速度超過

関節

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
110

停止通知

SLS_T2 速度超過

部位

部位

ハンド &H01 / 肘 &H02*1

手首 &H04 / 肩 &H08 *1

不使用
115

停止通知

SLP_A位置違反

監視位置

監視位置

YL &H01 / YU &H02

XL &H04 / XU &H08

ZL &H10 / ZU &H20 *2

関節番号

J6 &H08

J5 &H04

J3 &H02

J2 &H01

116

停止通知

SLP_B位置違反

監視位置

監視位置

YL &H01 / YU &H02

XL &H04/ XU &H08

ZL &H10 / ZU &H20 *2

関節番号

J6 &H08

J5 &H04

J3 &H02

J2 &H01

117

停止通知

SLP_C 位置違反

監視位置

監視位置

YL &H01 / YU &H02

XL &H04 / XU &H08

ZL &H10 / ZU &H20 *2

関節番号

J6 &H08

J5 &H04

J3 &H02

J2 &H01

118

停止通知

ソフト軸制限

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
121

停止通知

スイッチ入力

スイッチ番号

イネーブルスイッチ &H01

非常停止スイッチ(ティーチペンダント) &H02

非常停止スイッチ(コントローラー接続) &H04

不使用
122

停止通知

モード制御

モード

パラメーター通信許可 &H08

安全機能 (Safety基板) 無効化 &H04

操作モード切替 &H02

パラメーター設定 認証済み &H01

不使用
123

停止通知

減速監視

検出異常

減速異常&H08, &H04

減速完了 &H02

監視時間経過 &H01

不使用
124

停止通知

関節角度監視

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
131

故障停止通知

エンコーダー通信異常

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
132

故障停止通知

位置異常

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
133

故障停止通知

入力二重化異常

異常検出部位

安全入力ポート

SAFETY_IN 1 &H01

SAFETY_IN 2 &H02

SAFETY_IN 3 &H04

SAFETY_IN 4 &H08

SAFETY_IN 5 &H10

イネーブルスイッチ &H20

非常停止スイッチ(ティーチペンダント) &H40

非常停止スイッチ(コントローラー接続) &H80

不使用
134

故障停止通知

出力二重化異常

異常検出部位

安全出力ポート

SAFETY_OUT 1 &H01

SAFETY_OUT 2 &H02

SAFETY_OUT 3 &H04

STO &H80

不使用
135

故障停止通知

Safety基板異常

異常検出部位

通信バス &H20

電源(3.3V) &H08

電源(5V) &H04

ウォッチドックタイマー検知 &H02

リレー溶着 &H01

不使用
136

故障停止通知

Safety基板

MCU異常

異常検出部位

シーケンスモニタ &H10

CPU &H08

RAM &H04

プログラムROM &H02

データROM &H01

DET_L = &H01のとき

(データROM)

&H00 - &HFE

データ故障箇所

&HFF

パラメーターの故障

137

故障停止通知

Safety基板

二重化内部異常

異常検出部位

TCP位置不一致 &H02

状態不一致 &H01

不使用
138

故障停止通知

エンコーダー

内部異常

関節番号

J1 &H01 / J2 &H02

J3 &H04 / J4 &H08

J5 &H10 / J6 &H20

不使用
139

故障停止通知

コントローラー

内部異常

異常検出部位

操作モード受信エラー &H01

不使用

*1 安全機能マネージャーの安全速度監視の監視部位J2, J3, J5と、本マニュアルで扱う速度超過部位ハンド, 手首, 肘, 肩との対応は以下のとおりです。

  • 水平多関節型
    • J2: 肘
    • J3: 該当なし
    • J5: 該当なし
    • Hand: ハンド
  • 垂直6軸型
    • J2: 肩
    • J3: 肘
    • J5: 手首
    • Hand: ハンド

*2 安全機能マネージャーの安全位置監視の監視位置X1, X2, Y1, Y2, Z1, Z2と、本マニュアルで扱う監視位置XL, XU, YL, YU, ZL, ZUとの対応は以下のとおりです。

  • 監視位置で「壁」選択時
    • X1 = XL, X2 = XU
    • Y1 = YL, Y2 = YU
    • Z1 = ZL, Z2 = ZU (垂直6軸型のみ)
  • 監視位置で「制限領域」選択時
    • X1 = XU, X2 = XL
    • Y1 = YU, Y2 = YL
    • Z1 = ZL, Z2 = ZU (垂直6軸型のみ)

STF_ID、およびSTF_DET_L、STF_DET_Hを使用したエラー発生原因の確認方法

コマンドウィンドウ等で以下の順番でコマンドを入力、確認します。

> SF_GetStatus (12)
115    '「停止通知 SLP_A 位置違反」によるエラーを表します。
> SF_GetStatus (13)
1    '「YL」方向の監視位置を越えたことを表します。(STF_ID: 115の内容を確認します。)
> SF_GetStatus (14)
1    '「J2軸」が超えたことを表します。(STF_ID: 115の内容を確認します。)

以上の情報をまとめると、「J2軸がSLP_AのYLの監視位置を越えた」ためエラーが発生したことがわかります。

エラー情報はEpson RC+のシステムヒストリーにも記録されます。エラー発生原因は「追加情報」に記録されます。SPEL+ランゲージリファレンスのSPEL+ エラーメッセージを参照してください。

本コマンドは、Safety基板を搭載したコントローラーで使用できます。

SF_GetStatus関数使用例

If (SF_GetStatus(3) And &H1) = &H1 Then
Print "SAFETY_IN1 is High"
Else
Print "SAFETY_IN1 is Low"
EndIf