メインコンテンツへスキップ

SRCI

JAKA約9分

名詞の説明

名詞説明
SRCIStandard Robot Command Interface、標準ロボットコマンドインターフェース。
EDKEasy Development Kit、シーメンスが提供するSRCIプロトコルパーサー。
RIRobot Interface、その状態は通常、SRCI通信が確立されているかどうかを示すために使用されます。
RARobot Arm、ロボット本体。
RCRobot Controller、ロボットコントローラ。
TCPTool Center Point、ツールセンターポイント。
TCSTool Coordinate System、ツール座標系。
UCSUser Coordinate System、ユーザー座標系。
WCSWorld Coordinate System、世界座標系。
WCPWrist Center Point、ロボット本体の肩・肘・手首の姿勢パラメータを設定するために使用されます。
M/OMandatory/Optional、SRCIマニュアルで要求される必須および任意の機能。

前書き

SRCIはPLCでロボットを制御するための新しい標準インターフェースであり、このインターフェースによりPLC内でロボットのプログラミングと制御が直接可能になります。

SRCIの目的は、データパケットとPLCライブラリ機能を標準化することです。これにより、ユーザーはどのロボット間でもコードを再記述することなく切り替えることができます。

picrobot
インターフェース コンセプト

注意

異なる時期にリリースされたバージョンでは、SRCI機能のサポート度合いが調整される場合があります。次の内容をよくお読みください。特にリスク項目に関する説明をご確認ください。

ハードウェアおよびソフトウェアのサポート

  • JAKA K1
    • ロボットハードウェア:全シリーズ共通(PROFINETサポートを有効化
    • PROFINETのGSDMLファイルバージョンをGSDML-V2.41-JAKA-JAKARobot-20231017.xmlに更新する必要があります。
    • ロボットコントローラ:1.7.1_25以上(コントローラのバージョンとSRCI AddOnのバージョンを一致させる必要があり、X64バージョンでなければなりません
    • アプリ:1.7.1_22以上
    • AddOn:1.6.27以上
  • シーメンスPLC部分
    • PLC 1500シリーズ以上、例:1516-3 PN/DP
    • PLCはPROFINET機能をサポートする必要があります。
コントローラバージョンAddOn
171.26rc1.6.28

バージョン情報

SRCIは3つの機能グループを定義しており、これら3つのグループにはすべてのインターフェース機能が含まれています:

プロファイル コアプロファイル 拡張プロファイル オプション
インターフェースの基本機能と
基本命令を含む
すべてのコアプロファイルに定義されていない必須命令を含むすべてのオプション機能を含む
picfeatureGroup
picfeatureGroup

JAKAは主に制限付きのCoreをサポートします。

縮小範囲のCore

以下は縮小範囲のCoreでサポートされる機能です:

Core全体の実装は、Core機能内の一部の基本命令の実装に依存しています。これらの基本命令は、Core動作を支える前提命令として理解され、顧客が個別に使用する必要はないため、ここでは列挙していません。

一部のコマンドのサポート度は異なり、別途説明されます。

  • 速度変更オーバーライド

  • ロボット有効化

  • グループ継続

  • グループ割り込み

  • グループジョグ

  • グループリセット

  • グループ停止

  • 軸絶対移動

  • 直接絶対移動

  • 直線絶対移動

  • 実際位置の読み取り

  • ツールデータの読み取り

  • フレームデータの読み取り

  • 負荷データの読み取り

  • ロボット既定の動特性の読み取り

  • ロボット参照動特性の読み取り

  • ロボットソフトウェア制限の読み取り

  • ツールデータの書き込み

  • フレームデータの書き込み

  • 負荷データの書き込み

  • ロボット既定の動特性の書き込み

  • ロボット参照動特性の書き込み

制限

SRCIコマンドを使用する前に、以下の制限を明確に理解する必要があります。

  • OperationModeの設定は現在未対応であり、SRCIは使用時に常にOperationMode=4(外部自動)の状態で動作します。

  • PLCでロボットを制御する際、ロボットは動作に関連するエラーのみを報告します。エラーが発生した場合は、PLC側のTIAソフトウェア内のRobot_UserData->SystemLogでロボットの詳細なエラーコードを確認してください。

  • 現在未対応の機能:

    • SYNC機能。PLCとロボット側の情報は自動的に同期されません。対応する読み書き関数を使用して手動で同期する必要があります。

    • ReturnToPrimary

    • LogLevel

    • EnableRobot 内の StepMode

    • 一部のUserData項目:DelayTime、InterpreterCycleTime、Accelerating、ConstantVelocity、IsBlending

リスク項目

SRCI命令を使用する前に、以下のリスク項目を十分に理解する必要があります。

  • MoveDirectAbsoluteおよびMoveLinearAbsolute命令を使用する際は、PLC側のConfigMode設定に特に注意してください。協働ロボットの機構構造は従来の産業用ロボットと多少異なるため、SRCIにおけるShoulder、Elbow、Wristの定義に完全には一致しません。ConfigModeを手動設定した後のロボットの動作軌跡が不確実な場合は、できるだけ使用前に次のように設定を変更してください:

    • ConfigMode.Shoulder=1 ("変更なし")

    • ConfigMode.Elbow=1 ("変更なし")

    • ConfigMode.Wrist=1 ("変更なし")

  • いかなる動作命令を実行する前にも、グローバルな動作速度と命令速度が安全で受け入れ可能な範囲に収まっていることを確認してください。

  • AppとSRCIのAddOnを同時に使用すると「単一点制御」の要件を満たさず、意図しないリスク(予期せぬ動作やエラー情報の欠落など)を引き起こす可能性があります。そのため、同時使用は避けてください。

  • コントローラのバージョンとSRCIのAddOnバージョンは厳密に対応させる必要があります。混在使用すると予期せぬリスクを引き起こす恐れがあります。

JAKA安全設定の使用

JAKAの安全機能を組み合わせて使用し、作業者の安全を確保します。JAKAは次の安全機能を提供します(外部IOトリガー):

  1. 追加非常停止
  2. 追加保護停止入力
  3. 減速モード(エンドエフェクタ速度、ロボット出力などを設定可能) picsafetyIO

命令の説明

記号の説明:

√ は、SRCI を実行する際、このパラメータの定義と動作が SRCI 標準と一致することを意味します。 × は、現在サポートされていないことを意味します。 ! は、条件付きでサポートされることを意味します。

速度変更オーバーライド

  • ChangeSpeedOverride は、GroupJog と FreeDrive を除くすべての動作コマンドの実行速度を変更します。
  • このコマンドは動作中の変更をサポートしており、動作中に設定した実行速度が有効になります。
  • RI 初期化後、実行速度を 5% に変更します。

コマンドパラメータ

パラメータデータ型単位M/O備考
OverrideREAL[%]M

ロボット有効化

  • JAKA ロボットでは、Power On/Off(ロボットアームの通電/遮断)と Enable/Disable(ロボットアームの有効化/無効化)を個別に操作できます。これは他の一般的な産業用ロボットとは異なります。
  • Enable の前に必ず Power On を行う必要があり、Power Off の前に必ず Disable を行う必要があります。
  • Enable(有効化)は、ロボットが動作コマンドを受信できることを意味します。

operationmode=4(外部自動)の場合のみサポートします。

通常、EnableRobot コマンドを使用すると、約 5 秒でロボットを有効化して操作できるようになります。

ただし、特別な状況、たとえば衝突や非常停止後に再度このコマンドを送信する場合、時間が最大 20 秒に延びることがあります。これは、ロボットを Enable(有効化)する前提として Power On(通電)が必要なためです。通常、Power On の処理は AddOn プログラムによってすでに完了しているため、ユーザーは直接 Enable コマンドを送信するだけで操作できます。しかし、特殊な状況として、非常停止後にロボットが電源断(Power Off)状態にある場合、AddOn は引き続き実行されますが、ロボットを再通電しません。したがって、この状態で再度 Enable コマンドを送信すると、ロボットはまず自分自身を通電(Power On)します(約 15 秒)。その後、Enable コマンドを実行します(約 5 秒)。

パラメータデータ型単位M/O備考
HoldToRunBOOL-M
StepModeUSINT-M! 0のみサポート
手動ステップBOOL-O×

応答パラメータ

パラメータデータ型単位M/O備考
有効BOOL-M

グループ継続

この関数は、「中断された」状態の動作コマンドを再開し、動作コマンドが中断された場合に動作を回復します。

グループ割り込み

この機能はすべてのアクティブな動作コマンドを中断し、動作コマンドの動作中に動作を停止し、すべての関節を停止させます。ただし、計画済みの経路はクリアされず、GroupContinueによって再開できます。

JAKAはGroupInterrupt中にjogロボットをサポートしており、この場合、自動的に第2シーケンスに切り替わります

GroupStopの優先度はGroupInterruptより高く、呼び出すとGroupInterruptを終了させます。

グループジョグ

GroupJogモードにはJogFrame、JogTool、およびJogAxesがあり、JAKAはすべてをサポートしています。

グループリセット

  • groupresetを使用すると、ReadMessagesで読み取った情報(エラー、警告など)をすべてクリアします。
  • 主な使用シーンは次のとおりです:
    • コントローラーのエラー(例:pstop(保護停止))
    • addonのSRCI機能が異常に動作する場合

グループ停止

現在アクティブなシーケンスの動作コマンドをクリアし、動作コマンドのキャッシュを消去します。

軸絶対移動

この関数は、絶対位置に到達する未定義経路の動作を指定します。

コマンドパラメータ

パラメータデータ型単位M/O備考
関節位置ロボット関節位置-M!外部軸はサポートされていません
速度倍率REAL[%]M
加速度倍率REAL[%]M
減速度倍率REAL[%]O×
ジャーク倍率REAL[%]O×
ツール番号USINT-M0〜15をサポート、デフォルトの0はフランジ座標系です
中止モードUSINT-M
ブレンディングモードUSINT-M!個別のブレンディング説明を参照
ブレンディングパラメータREAL の配列[0..1]-M

直接絶対移動

与えられたデカルト位置から、最も早く目標位置(関節位置)に到達する経路を計算します。目標位置は ConfigMode の ConfigParameters に基づいて計算されます。

コマンドパラメータ

パラメータデータ型単位M/O備考
位置ロボットカーティジアン位置-M!外部軸はサポートされていません
速度倍率REAL[%]M
加速度倍率REAL[%]M
減速度倍率REAL[%]O×
ジャーク倍率REAL-O×
ツール番号USINT-M0~15 をサポートし、デフォルトの 0 はフランジ座標系を表します。-1 は現在を示します。
フレーム番号USINT-M0~15 をサポートし、デフォルトの 0 はワールド座標系を表します。-1 は現在を示します。
中止モードUSINT-M
ブレンディングモードUSINT-M!個別のブレンディング説明を参照
構成モード構成パラメータ-M!個別の構成説明を参照
ターンモードUSINT-M! 2 のみサポート

直線絶対移動

この関数は、指定された座標系に基づく実際のデカルト位置に到達するための補間直線運動経路を示し、ConfigMode の ConfigParameters により目標位置を明確にできます。

コマンドパラメータ

パラメータデータ型単位M/O備考
位置ロボットカーティジアン位置-M!外部軸はサポートされていません
速度倍率REAL[%]M
加速度倍率REAL[%]M
減速度倍率REAL[%]O×
ジャーク倍率REAL-O×
ツール番号USINT-M0〜15をサポート、デフォルトの0はフランジ座標系です
フレーム番号USINT-M0~15 をサポートし、デフォルトの 0 はワールド座標系です。
中止モードUSINT-M
ブレンディングモードUSINT-M!個別のブレンディング説明を参照
構成モード構成パラメータ-M!個別の構成説明を参照
ターンモードUSINT-M!2 のみサポート

実際位置の読み取り

指定された座標系に基づく現在の(TCP)位置を読み取ります。

コマンドパラメータ

パラメータデータ型単位M/O備考
ツール番号整数型 (INT)-M!0~15 をサポートし、-1 は現在を示します。
フレーム番号整数型 (INT)-M!0~15 をサポートし、-1 は現在を示します。

応答パラメータ

パラメータデータ型単位M/O備考
位置ロボット位置-M

フレームデータの読み取り

FrameNumber に基づくユーザー座標系設定を読み取ります。

コマンドパラメータ

パラメータデータ型単位M/O備考
フレーム番号整数型 (INT)-M!0~15 をサポートし、-1 は現在を示します。

負荷データの読み取り

LoadNo に基づく荷重データを読み取ります。

コマンドパラメータ

パラメータデータ型単位M/O備考
負荷番号整数型 (INT)-M!1~15をサポート、-1は現在を示す

応答パラメータ

パラメータデータ型単位M/O備考
LoadDataLoadData-M!X、Y、Zおよび質量(Mass)の読み取りをサポート

ロボット既定の動特性の読み取り

ロボットのデフォルト動力学パラメータを読み取る

応答パラメータ

DefaultDynamicsを返す。構造は以下の通り:

パラメータデータ型単位M/O備考
速度倍率REAL[%]M
加速度倍率REAL[%]M
減速度倍率REAL[%]O×、-1を返す
ジャーク倍率REAL[%]O×、-1を返す

ロボット参照動特性の読み取り

ロボットの参照動力学パラメータを読み取る

応答パラメータ

ReferenceDynamicsを返す。構造は以下の通り

パラメータデータ型単位M/O備考
VelocityReferenceREAL[mm/s]M
AccelerationReferenceREAL[mm/s²]M
DecelerationReferenceREAL[mm/s²]O×
JerkReferenceREAL[mm/s³]O×

ロボットソフトウェア制限の読み取り

ロボット関節の正負ソフトリミットを読み取る

応答パラメータ

SWLimitsを返す。構造は以下の通り

パラメータデータ型単位M/O備考
J1LowerLimit,
J1UpperLimit~J6LowerLimit
, J6UpperLimit
REAL[mm/s]M
E1LowerLimit,
E1UpperLimit~E6LowerLimit
, E6UpperLimit
REAL[mm/s]M×

ツールデータの読み取り

ToolNumberに基づくツール座標系設定を読み取る

コマンドパラメータ

パラメータデータ型単位M/O備考
ツール番号USINT-M!1~15のみサポート

応答パラメータ

パラメータデータ型単位M/O備考
ToolDataToolData-M

フレームデータの書き込み

FrameNoに基づいてユーザー座標系データを書き込む

コマンドパラメータ

パラメータデータ型単位M/O備考
フレーム番号USINT-M!1~15のみサポート
FrameDataFrameData-M

referenceFrameは、すでにreferenceFrame(0以外)が使用されている座標系にはできません

負荷データの書き込み

LoadNoに基づいて負荷データを書き込む

コマンドパラメータ

パラメータデータ型単位M/O備考
負荷番号USINT-M!1~15のみサポート
LoadDataLoadData-M!X、Y、ZおよびMassの書き込みのみをサポート

ロボット既定の動特性の書き込み

ロボットのデフォルト動力学パラメータを書き込む

コマンドパラメータ

パラメータデータ型単位M/O備考
速度倍率REAL[%]M
加速度倍率REAL[%]M
減速度倍率REAL[%]O×
ジャーク倍率REAL[%]O×

ロボット参照動特性の書き込み

ロボットの参照動力学パラメータを書き込む

パラメータデータ型単位M/O備考
速度倍率REAL[%]M
加速度倍率REAL[%]M
減速度倍率REAL[%]O×
ジャーク倍率REAL[%]O×

ツールデータの書き込み

ToolNoに基づいてユーザー座標系データを書き込む

コマンドパラメータ

パラメータデータ型単位M/O備考
ツール番号USINT-M!1~15のみサポート
ToolDataToolData-M

展開手順

認可を申請する

  1. 現地のシーメンス営業チームに連絡し、ライセンス、デモ、マニュアルなどの資料を申請してください;
  2. 現地のJAKA営業チームに連絡し、SRCI(ロボット側)のAddOn、デモ、マニュアル、およびGSDMLファイルなどの資料を申請してください;

AddOnの準備

  1. コントローラのPROFINETが有効になっているか確認する; picenable profinet
  2. (https://jakacobot.github.io/guide/addOn/1.1-AboutAddOn.html)を参照してAddOn関連情報を確認してください;
  3. 対応するバージョンのTool-Kitをインストールする;
  4. SRCIに対応するAddOnをインストールし、そのAddOnを有効化する(しばらく待つと、コントローラが自動的にPower Onします)。

PLCの準備

  1. SDカードの初期化(PLCが新しいSDカードにプログラムをダウンロードする際には、まずストレージ領域をリセットしてからダウンロードする必要があります。そうでない場合、パスワードを要求されることがあります);
  2. JAKA提供のGSDMLファイルをインポートする;
  3. PROFINET構成の準備; picPLC
  4. PROFINET通信周期を設定(8ms); picprofinet time
  5. サイクル中断時間を設定(8ms); picPLC
  6. SRCIデータを設定する際は、データの開始アドレスとRobTaskの開始アドレスを一致させる必要があります。そうしないと初期化できない場合があります; picaddress
    picaddress

故障診断

一般的なトラブルシューティングの順序

  1. ロボットコントローラのバージョンとSRCI AddOnのバージョンが対応しているか確認する;
  2. AddOnが実行中であるか確認する;
  3. ロボットとPLCのPROFINET通信が確立されているか確認する(PLC機能でJAKAの正しいGSDMLファイルが使用されているか);
  4. PLCのPROFINETデータフレームが設定されているか確認する;
  5. それでも解決しない場合は、JAKAアフターサポートに連絡する(またはSRCI.Support@jaka.com にメールを送り、AddOnのエクスポートファイルを添付してください)。
picexport

SRCI通信が確立できない場合のトラブルシューティング順序:

  1. JAKA側のPROFINETが正常に動作し、PLCと接続されているか確認する;
  2. PLC側の設定情報に誤りがないか確認する;
  3. 頻繁に切断される場合は、スイッチがPROFINET要件を満たしているか確認するか、スイッチを介さずにPLCと制御キャビネットを直接接続する;
  4. PROFINETが正常に接続されている場合、SRCI通信の問題である;
  5. HMIシミュレーションが必要な場合は、「PG/PCインターフェース」を設定する必要があります(詳細はシーメンスにお問い合わせください)。

指令を送信してもロボットが動かない場合:

  1. overridespeed の設定を確認する;
  2. defaultDynamic および referenceDynamic 内の Velocity に関する設定を確認する;
  3. 動作指令内の速度と加速度設定を確認する;
  4. Interrupted 状態になっていないか確認する。

付録

JAKAロボットアーム SEW 説明

パラメータデータ型単位M/O備考
ショルダーUSINT-M(デフォルト 0 をサポート、設定を使用)0-設定を使用 と 1-移動時に設定を変更しない をサポート
エルボーUSINT-M同上
手首USINT-M同上

協働ロボットの構成は一般的に産業用ロボットとは異なり、特に4-5-6軸は一点に交差せず、つまり産業用ロボットにおける従来のWCP(リストセンターポイント)が存在しません。通常は4-5軸または5-6軸の交点を代わりに使用します。

  • 肩の

  • 肘の

  • 手首 w = sin(axis5)

JAKA軌道ブレンディング説明

複数の動作セグメント間の接続方式は以下の通りです:
接続の

現在サポートされている接続シナリオ:

  • ジョイントからジョイント
  • ジョイントから直線
  • 直線から直線
  • 直線からジョイント

接続機能を実現するには、usersetting.iniで以下の設定パラメータを設定する必要があります(デフォルトでは変更不要):

  • MOVEJ_MOVEL_BLEND = 1
  • MOVEJ_MOVEJ_BLEND = 1

現在サポートされているBlendingMode:0(Exact Stop)および4(MaxCornerDeviation)

最終更新日: