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

JAKA通信使用マニュアル

JAKA約427分

JAKA通信使用マニュアル

紹介

ユーザーがJAKAの通信機能をよりよく利用できるようにするために、本マニュアルでは、JAKAが市場に出回っている主流のPLCとどのようにデータをやり取りするかを紹介します。本マニュアルの例では一部のモデルのみを選定しています。同じメーカーのPLCでも、通信パラメータやデバージョンの違いにより使用方法が完全には一致しないため、本マニュアルは初歩的な参考資料としてご利用ください。さらに詳細な使用については、各PLCブランドの現地サプライヤーにお問い合わせください。

本検証は以下のPLCモデルに基づいており、表には使用したファームウェアバージョンと上位ソフトウェアバージョンを示しています。検証済みのバージョンまたはそれ以降のバージョンでの使用を推奨します。

PLCモデルファームウェアバージョンソフトウェアバージョン
ロックウェル5370 L3 1769-L33ER20.18RSLogix 5000 V20.00.00 (CPR 9 SR 5)
シーメンス6ES7317-2EK14-0AB03.2.18TIA Portal V16
三菱CPU:FX5U-80MT/DSS1.2450GX Works3 Version 1.090U EtherNetIP Configuration Tool for FX5-ENET IP V1.00A
拡張: FX5-ENET/IP1.1
シュナイダーTM241CE24R5.1.10.10EcoStruxure Machine Expert Version 2.1
オムロンCPU:CP1H-X40DT-D1.3CX-Programmer 9.50
拡張:CJ1W-EIP213.0
キーエンスCPU:KV-80002.602KV STUDIO 11.62
拡張:KV-XLE021.400
デルタAS228T-A1.12.50ISPSoft バージョン 3.15COMMGR 1.12
インオビスEasy522/0808TN5.67.0.0Autoshop V4.8.1.0

JAKAデバイスのEtherNet/IPサポートはアダプターとして使用され、PROFINETサポートはデバイスとして使用されます。いずれも一般的な意味でのスレーブであり、Modbus機能はマスターおよびスレーブの両方をサポートします。Modbus RTUとModbus TCPの主な違いは接続パラメーターにあるため、現時点ではModbus TCPのみを検証しています。さらに、多くのPLCメーカーではModbusマスター通信をラダープログラムによってトリガーするため、各メーカーごとの重複検証は行っていません。チュートリアルで特定のPLCモデルにおける通信機能が言及されていない場合でも、それはJAKAがサポートしていないことを意味するものではなく、PLCが該当機能を統合していないか、または検証が困難なためです。

環境構築

JAKAコントロールキャビネットとPLCが通信を確立すると、PLCはロボットの各種性能パラメータをリアルタイムで読み取ることができます。例えば、ロボットの状態、各関節の角度・速度・温度、TCPの位置・速度・力の値などです。同時に、PLCは異なる種類のデータレジスタを介してコントロールキャビネットとデータをやり取りすることもできます。

PROFINETおよびEtherNet/IPを使用する前に、以下のファイルをダウンロードする必要があります:

**コントローラーバージョン 1.7.0_46~1.7.1_26_rc: **JAKARobot.eds

**コントローラーバージョン 1.7.1_27_rc~1.7.2_8_rc: **JAKARobot.eds

**コントローラーバージョン1.7.2_9_rc以降のバージョンでは、MiniCab向けに認証とEDSファイルの更新が行われており、標準キャビネットのEDSファイルとは互換性がありません。使用時に区別する必要があります: ** CabV2.1:JAKA_CAB.eds MiniCabJAKA_MiniCab.eds

備考:

  • GSDMLファイル(General Station Description Markup Language)は、PROFINETプロトコルに基づく産業用ネットワーク機器の特性を記述するためのファイル形式です。これは通常、産業用イーサネット機器の構成および管理に使用されます。GSDMLファイルには、デバイスのパラメータ、機能、および通信特性などの情報が含まれており、JAKAのPROFINET機能を使用する前に、このファイルをマスターステーションにインポートする必要があります。

  • EDSファイル(Electronic Data Sheet)は、Ethernet/IPプロトコル機器の通信プロトコル、オブジェクト辞書、およびパラメータ設定を記述するためのファイル形式です。これは通常、フィールドバス機器の設定に使用されます。EDSファイルはデバイスの詳細な説明を提供し、JAKAのEtherNet/IP機能を使用する前にマスターステーションにこのファイルをインポートする必要があります。

デバイス間の簡易接続図は以下のとおりです。PLC、上位コンピュータ、および制御キャビネットが同一ネットワークセグメント内にあることを確認してください。以下で説明する使用方法と手順は、三者間が相互にアクセス可能であることを前提としています。

image-20230220170602938
image-20230220170602938

JAKA制御キャビネットの通信機能には、キャビネット底部のネットワークポートを使用することを推奨します。JAKA Zu App(以下、Appと称する)も底部ポートを介して制御キャビネットに接続できますが、Appと制御キャビネット間のデータ転送が通信機能に影響を及ぼすのを避けるため、Appはパネル上のポートまたはWi-Fiを使用して制御キャビネットに接続することを推奨します。

注:底部ポートはアクティブ状態(コンピュータまたはルーターに接続)である必要があり、関連する通信機能を使用するためにはこの状態でなければなりません。

EtherNet/IP、PROFINETを有効化する

EtherNet/IPおよびPROFINETの有効化手順は基本的に同一のため、併せて説明します。

デフォルトでは、EtherNet/IPおよびPROFINET機能は無効状態です。有効化の具体的な手順は以下のとおりです。

手順1:最新バージョンのJAKA Zu Appを開き、App右上の「未接続」アイコンをタップしてロボット接続画面に入ります。

image-20230221094819134
image-20230221094819134

手順2:接続したいロボットをタップし、管理者パスワード(デフォルトパスワード:jakazuadmin)を入力してAppを制御キャビネットに接続します。

image-20230221094852245
image-20230221094852245

手順3:App画面で「設定」→「ハードウェアと通信」→「Ethernet/IP設定」または「PROFINET設定」を選択し、有効化スイッチをオンにして「確認」をタップし、手動で制御キャビネットを再起動します。制御キャビネットの再起動手順は以下のとおりです。

a. メイン画面に戻り、「本体電源をオフ」→画面右上の「オフ」ボタンをタップして制御キャビネットをシャットダウンします。

b. 制御キャビネットがシャットダウンした後、ハンドルの電源ボタンを短く押し、ブザー音が鳴ったらキャビネットが起動します。

c. JAKA Zu Appを開き、再度ロボットに接続します。具体的な操作は手順1および手順2を参照してください。

d. メイン画面に入り、「本体電源をオン」をタップします。

制御キャビネットを再接続した後、「EtherNet/IP設定」または「PROFINET設定」画面でステータスを確認できます。ステータスが「マスターステーションに未接続」と表示されている場合、EtherNet/IPは正常に有効化され、マスターステーション接続を待機しています。

image-20230221094909935
image-20230221094909935

Modbus TCP/IP、Modbus RTUを有効化する

Modbus TCP/IPおよびModbus RTUの有効化手順は基本的に同一であるため、併せて説明します。

デフォルトでは、Modbus TCP/IPおよびModbus RTU機能は有効な状態になっており、有効化の具体的な手順は次の通りです:

手順1:最新バージョンのJAKA Zu Appを開き、App右上の「未接続」アイコンをタップしてロボット接続画面に入ります。

image-20230221094819134
image-20230221094819134

手順2:接続したいロボットをタップし、管理者パスワード(デフォルトパスワード:jakazuadmin)を入力してAppを制御キャビネットに接続します。

image-20230221094852245
image-20230221094852245

ステップ3:アプリのホーム画面で、「設定」→「ハードウェアと通信」→「Modbus設定」をクリックします。

a. Modbus TCP/IPを有効にする場合は、Modbus TCP/IPの前のラジオボタンを選択し、ポート番号(0~65535)を入力して「確認」をクリックします;

b. Modbus RTUを有効にする場合は、Modbus RTUの前のラジオボタンを選択し、スレーブノード番号(1~128)を入力し、ボーレート、データビット長、ストップビット長、パリティ方式を選択して「確認」をクリックします。

image-20230901094852245
image-20230901094852245

IO数の設定説明

EtherNet/IP

アドレス割り当て表では、データ型の並び順はDIOブール型、AIO整数型、AIO浮動小数点型の順です。内訳:

DIO:ブール型で1ビット(bit)を占有し、8個のDIOで1バイトを構成します。そのため、DIおよびDOのIO数設定は8×n個(nは正の整数)でなければならず、対応するDIおよびDOデータ長が整数バイトになります。

AIO:整数型および浮動小数点型はいずれも4バイト(byte)を占有します。

使用シーンに応じて、EtherNet/IPのIO数は設定可能です。usersetting内で、Mode = 0の場合はEIPが標準のIO数を使用し、Mode = 1の場合はIO数を設定できます。

スキャナーは、コントローラのアダプタに一致させるためにedsファイルをインポートする必要があります。現在、JAKAは以下のedsファイルを提供しており、それぞれの意味と適用シーンは次の通りです:

JAKARobot.eds

標準版のedsファイルは、パラメータを設定・変更できず固定値となっており、IO数の定義はusersetting内にあります:

[EIP]

Enable = 1

Mode = 0

DI_NUM = 64

DO_NUM = 64

AI_INT_NUM = 24

AI_FLOAT_NUM = 24

AO_INT_NUM = 24

AO_FLOAT_NUM = 24

その中で、DOとAOの出力データ長の合計は最大204バイト、DIとAIの入力データ長の合計は最大492バイトです。

JAKARobotSetup.eds

カスタムバージョンのedsファイルで、IO数は設定可能です。コントローラ内でusersettingのmodeを1に変更し、その後IO数を修正する必要があります。

その中で、DOとAOの出力データ長の合計は最大492バイト、DIとAIの入力データ長の合計は最大492バイトです。

PROFINET

JAKAロボットのPROFINET IOデータ転送操作については、JAKAロボットアドレス割り当て表を参照してください。この表は、表説明、Robot2PLC、PLC2Robot、スクリプト関数の4つの表で構成されています。Robot2PLCおよびPLC2Robotの表で定義された各データは4バイトを占有し、すなわちビット0〜31の範囲です。主な内容は次のとおりです:

転送タイプ: R->P(Robot->PLC)またはP->R(PLC->Robot)であり、データ転送の方向を示します。

ユニットモジュール(Unit Group):データタイプおよび所属モジュールを示します。データタイプには「ロボット状態」「安全設定」があり、これらは第1モジュールに属します。例:1_R->P_Robot_Safetyは、データモジュール番号が1で、転送方向がR->P(Robot->PLC)であり、Robotはロボット状態を、Safetyは安全設定を表します。32バイトは使用済みアドレス、4バイトは予約アドレスです。その他のユニットモジュールの内容もこれに類似しています。

PLC設定:各ユニットモジュールに対応するスロット、サブスロット番号およびPLC上のアドレスを含みます。例えば、1_R->P_Robot_Safetyはスロット1、サブスロット1に対応し、PLC入力Iアドレスは0〜35バイトです。

image-20230901170602938
image-20230901170602938

PLC通信例

ロックウェル5370 L3 1769-L33ER

必要なソフトウェア:RsLinx Classic、BOOTP-DHCP Server、RsLinx Classic Launch Panel、RsLogix 5000、JAKA Zu App、Wireshark(必須ではありません)

EtherNet/IP

  1. PLCの現在のIPアドレスが不明な場合は、Wiresharkを使用してPLCのIPアドレスを確認できます。Windows標準のcmdツールでデバイスをpingし、PLCがネットワークに接続されているかをテストします。コントローラおよび上位コンピュータが同一ネットワークセグメント内にない場合は、ステップ2に進み、PLCのIPアドレスを変更してください。同一ネットワークセグメント内にある場合は、ステップ4に進み実行を続けます。

  2. RsLinx Classicソフトウェアを開き、「Configure Drivers」メニューをクリックします。表示されるダイアログで「Ethernet/IP Driver」を選択し、「Add New」をクリックします。デフォルト設定のまま完了したら「OK」をクリックします。image-20230221093844646

  3. ネットワークノードアイコンをクリックすると、WRWhoダイアログボックスが表示されます。ABETHIP_1をクリックすると、PLCおよびEthernet/IPモジュール情報が更新されます。接続が正常であれば、ネットワーク構成が正しく行われたことを意味します。PLCを右クリックすると、そのIPアドレスを変更でき、コントローラや上位コンピュータと同じサブネット内に設定できます。

image-20230221093902444
image-20230221093902444
  1. BOOTP-DHCP Serverソフトウェアを開くと、コンピュータに接続されているデバイスが自動的に検索されます。
image-20230221093943306
image-20230221093943306

注:自動検索でPLCのMACアドレスが見つからない場合は、パソコンのファイアウォールを無効にし、MACアドレスを手動で入力してください。下部の欄でIPアドレスを選択し、「Disable BOOTP/DHCP」をクリックします。

  1. RsLinx Classic Launch Panelソフトウェアを開き、「Start」をクリックします。
image-20230221094002051
image-20230221094002051
  1. メニューバーの「Tools」をクリックし、EDSファイルをインストール・登録します。「次へ」をクリックし続け、設定が完了するまで進めます。
image-20230221094022980
image-20230221094022980
image-20230221094036396
image-20230221094036396
  1. RsLogix 5000ソフトウェアを開き、新しいプロジェクトを作成します。使用するPLCのモデルを選択し、プロジェクト名を入力して保存場所を指定し、「確認」をクリックします。
image-20230221094054717
image-20230221094054717
  1. 左側の欄でイーサネットを右クリックし、「新しいモジュール」を選択します。表示されたウィンドウで「JAKA Ethernet/IP Adapter」モジュールを見つけ、「作成」をクリックしてモジュール名を入力します。このとき、IPアドレスは制御キャビネットのEthernet/IPアドレスと同一である必要があります。
image-20230221094147644
image-20230221094147644
image-20230221094158456
image-20230221094158456
image-20230221094206931
image-20230221094206931
  1. 「変更」ボタンをクリックすると、データタイプを設定できます。データ表示を容易にするため、ここではDINTタイプを選択します。
image-20230221094219019
image-20230221094219019

注:カスタムバージョンを使用し、EIPモジュールを手動で設定する必要がある場合は、以下のように設定してください。

PLCからEIPへの出力IDは100です。

EIPからPLCへの入力IDは101です。

PLCの出力最大バイト数は492バイトです。

PLC入力の最大バイト数は492バイトです。

  1. ネットワークノードをクリックすると、アクティブページのダイアログボックスが表示されます。PLCモジュールを選択し、オンラインをクリックすると、ダイアログボックスが表示され、プログラムをダウンロードします。
image-20230221094234010
image-20230221094234010
  1. オンラインを選択してPLCを実行モードにし、接続状態が正常になった後、コントローラタブを右クリックし、「Tagのモニタ」を選択すると、PLCがロボットから一部のデータを読み取ったことが確認できます。
image-20230221094252406
image-20230221094252406
image-20230221094417189
image-20230221094417189
  1. アプリ上でEthernet/IPデジタル出力DO1とDO2のボタンをオンにし、整数AO1を123に設定します。
image-20230221094348426
image-20230221094348426
  1. RsLogix 5000の対応するデータを確認すると、[I.Data72]および[I.Data75]に正しいデータが表示されます。データのアドレスは、節卡ロボットのEthernetIPアドレス割り当て表のファイルを参照して確認できます。
image-20230221094452237
image-20230221094452237

Modbus TCP

マスタ

AB社のPLC自体はModbus TCP通信をサポートしていないため、AB PLCを使用する場合は、サードパーティのプロトコル変換ゲートウェイを使用して、ModbusTCPプロトコルをAB独自のEthernet/IPプロトコルに変換する必要があります。したがって、ロックウェルPLCはまずEtherNet/IPプロトコルを備えたイーサネットインターフェースを有している必要があります。

Logix5000プログラミングソフトウェアのバージョン15以降(実際に確認済みの20バージョン以上)では、CompactLogixおよびControllogixシリーズのPLCが、PLCプログラムによって記述されたModbusTCPプロトコル通信をサポートし、MasterおよびSlaveとして他のサードパーティ機器と通信できます。AB公式が提供するサンプルはMasterとSlaveの2つの部分に分かれており、必要に応じてそれぞれ使用できます。Master機能部分はPLC内の200~230Kの記憶領域を使用し、Slave機能部分は280~300Kの領域を使用する可能性があります。

以上のことから、ロックウェルは標準のModbus TCPプロトコルをネイティブにはサポートしておらず、EtherNet/IPのイーサネットポートを通して実現する必要があります。

ModbusをサポートするPLCプログラムを自作することも、ロックウェルのサイトからサンプルプログラムをダウンロードすることも可能です。以下では、公式サイトに掲載されているサンプルプログラムを簡単に検証します。

  1. 新しいプロジェクトを作成し、MainRoutineを選択し、右側の空白部分を右クリックして「Import Rungs」を選択します。
image-20230518092658960
image-20230518092658960
  1. サンプルプログラムの.L5Xファイルをインポートし、TagsタブのFinal Nameオプションを通じてプログラム内のパラメータ名を変更できます。

    image-20230518092750982
    image-20230518092750982
  2. OKをクリックしてインポートし、Modbus TCP Clientブロック内を右クリックして「モニター」を選択します。

image-20230518092829622
image-20230518092829622
  1. 5370シリーズの場合、LocalSlotの値は0となります。他の項目、例えばEtherNet/IPのポートアドレス、ModbusスレーブのIPアドレスおよびポート番号などは実際の状況に合わせて入力してください。
image-20230518092950596
image-20230518092950596
  1. MainRoutineタブに戻り、inp_Enableを1に設定します。これはModbusクライアント機能を起動することを意味します。RSLogix 5000の場合、プログラムをコンパイルしてPLCにダウンロードし、最後に実行状態に切り替える必要があります。
image-20230518093017397
image-20230518093017397
  1. モニターテーブルでは、Pollinterval(更新間隔)、Transtype(機能コード)、Stationid(スレーブID)、BeginAddress(開始アドレス)、Count(アドレス数)などの基本パラメータを設定できます。さらに、LocalAddressを設定する必要があります。このパラメータは、Modbusスレーブの開始アドレスに対応するModbusクライアントの開始アドレスを示します。
image-20230518093037433
image-20230518093037433
  1. Modbusクライアントも同様に4つのレジスタを使用してデータを保存します。開始アドレスのマッピングが完了した後、レジスタ内のデータを直接編集できます。ここではスレーブの開始アドレスを40に設定し、coils下のデータを変更すると、コントローラ内部が正常に更新されたことを確認できます。
image-20230518093105083
image-20230518093105083

シーメンス 6ES7317-2EK14-0AB0

必要なソフトウェア:TIA Portal V15、JAKA Zu App

PROFINET

  1. TIA Portal V15ソフトウェアを開き、「新しいプロジェクトを作成」をクリックします。新規プロジェクトウィンドウが表示されたら、プロジェクト名(例:jakaPNIO)を変更し、「参照」ボタンをクリックして保存場所を選択して確定します。次に「作成」をクリックすると、新しいプロジェクトが指定したパスに作成されます。
image-20230518094544786
image-20230518094544786
  1. 作成したプロジェクトウィンドウで、「デバイスとネットワーク」→「新しいデバイスを追加」→「コントローラ」を順にクリックし、PLCの型式を選択して「追加」をクリックします。image-20230518094635931

  2. PLCモジュールをダブルクリックし、「一般」メニューで「イーサネットアドレス」をクリックして、PLCのIPアドレスを変更します。

image-20230518102245415
image-20230518102245415
  1. PLC S7-300を使用する場合は、IOアドレスマッピングのサイズを変更し、マッピング値を688バイトより大きくする必要があります。IOアドレスマッピングが小さいとデータ損失が発生する可能性があります。これはPROFINET IOの最大アドレス範囲が0〜688バイトであるためです。
image-20230518104643528
image-20230518104643528
  1. メニューバーのオプションメニューで「一般ステーション記述ファイル(GSD)の管理」をクリックし、対応するウィンドウが表示されたら「参照」ボタンをクリックしてGSDML-V2.41-JAKA-JAKARobot-20210722.xmlファイルのパスを見つけます。ロード後、そのファイルを選択してインストールを実行し、インストール完了を待ってウィンドウを閉じます。
image-20230518102831965
image-20230518102831965
image-20230518103105653
image-20230518103105653
  1. 左側の欄で「デバイスとネットワーク」をダブルクリックし、右側の欄のハードウェアディレクトリで「その他のフィールドデバイス」をクリックし、「PROFINET IO」を選択します。「JAKA_V1.0」を見つけて、ダブルクリックまたは画面にドラッグします。
image-20230518103207811
image-20230518103207811
  1. PROFINETデバイスの「未割り当て」をクリックし、「PLC_1.PROFINETインターフェース_1」を選択します。
image-20230518103927603
image-20230518103927603
  1. PROFINETデバイスのDP-NORMアイコンをクリックし、下部のメニューバーで「イーサネットアドレス」を選択し、PROFINETデバイスのIPアドレスを変更します。(注意:変更するのはPROFINETデバイスのアドレスであり、JAKAのコントロールキャビネット下部のポートアドレスではありません。そのため、設定するIPはコントロールキャビネットと同じセグメント内で、かつ重複しないアドレスにしてください。)
image-20230518104002066
image-20230518104002066
  1. 「IOサイクル」をクリックし、「更新時間」ブロックで「手動設定の更新時間」を選択します。ドロップダウンメニューからPROFINETデータの更新時間を選びます。本デバイスの最小更新時間は8msのため、選択する値は8ms以上に設定してください。
image-20230518104602841
image-20230518104602841
  1. 「jaka」という名前のPROFINETデバイスをダブルクリックし、「ハードウェアデバイス概要」ページに切り替えます。ハードウェアディレクトリのモジュール欄で定義された各IOデータブロックを確認できます。データブロックを対応するスロットにドラッグします。
image-20230518104431792
image-20230518104431792
image-20230518104445644
image-20230518104445644
  1. 「デバイスとネットワーク」画面に切り替え、PLCを選択し、順に「コンパイル」と「ダウンロード」アイコンをクリックします。
image-20230518104522946
image-20230518104522946
  1. 左側の欄で「オンラインと診断」をダブルクリックし、以下のようにオンラインアクセスを設定します。その後、「オンラインへ移動」をクリックすると、PLCとPROFINETの接続状況を確認し、PLCとPROFINET間のリアルタイムデータ転送を監視できます。
image-20230518104545379
image-20230518104545379
  1. 左のメニュー欄の「監視と強制リスト」で新しい監視テーブルを作成し、PROFINET IOアドレス割り当て表に基づいてDI、AI、DO、AOに対応するアドレスを操作することで、コントローラとPLC間のデータ転送を実現します。
image-20230518104918585
image-20230518104918585

Modbus TCP

マスタ

シーメンスも同様に、プログラミングによってModbus TCPプロトコルを実現できます。S7-300はMODBUSPNモジュールを使用できます。

  1. テクノロジーオブジェクト内にMB_PN_PARAMを挿入します。
image-20230518093906080
image-20230518093906080
  1. 構成画面に入り、接続設定を行い、IPアドレスやポート番号などのパラメータを設定します。
image-20230518093934377
image-20230518093934377
  1. Modbusのデータ領域を設定する
image-20230518105611813
image-20230518105611813
  1. プロセスオブジェクトのデータ領域に基づいて、4つの領域ブロックを追加する image-20230518105629778

  2. データブロックを作成

image-20230518105705600
image-20230518105705600
  1. 通信命令を呼び出し、対応するパラメータを設定する
image-20230518105726538
image-20230518105726538
image-20230518105736115
image-20230518105736115

後続の操作はロックウェルと類似しており、命令内でパラメータを変更することでModbus TCP通信が可能だが、この機能にはシーメンスのライセンスキーが必要。

三菱 FX5U-80MT/DSS

必要なソフトウェア:MELSOFT GX Works3、EtherNet/IP Configuration Tool for FX5-ENET/IP、JAKA Zu App

EtherNet/IP

FX5UのデフォルトIPは192.168.3.250;FX5 ENET/IPのデフォルトIPは192.168.3.251

EtherNet/IP機能を有効にするには拡張モジュールFX5-ENT/IPを使用する必要がある。この機能にはソフトウェアEtherNet/IP Configuration Tool for FX5-ENET/IPが必要で、三菱の公式サイトまたは販売業者から入手可能。

  1. GX Works3を使用してFX5-ENET/IPの設定ファイルにログインする
image-20230518105910148
image-20230518105910148
image-20230518105927689
image-20230518105927689
  1. 新しいプロジェクトを作成し、対応する型式のPLCを選択する
image-20230518105953323
image-20230518105953323
  1. 情報モジュールからFX5-ENET/IPをドラッグしてFX5Uに結合する
image-20230518110033512
image-20230518110033512
  1. 三菱EtherNet/IP Configuration Tool for FX5-ENET/IPツールを開き、Description欄で「add」をクリックして設定モジュールを追加し、アドレスを変更する。モジュールのIPアドレスと同じネットワークセグメントであることに注意。
image-20230518110108093
image-20230518110108093
  1. device libraryを選択してedsファイルを追加する。
image-20230518110127399
image-20230518110127399
  1. edsファイルをTCP/IPの下に直接ドラッグし、IPがモジュールと同じネットワークセグメントになるように設定してください。
image-20230518110154849
image-20230518110154849
  1. 設定画面のping機能を使用して、接続が成功したかどうかをテストできます。
image-20230518110211474
image-20230518110211474
  1. 「オンライン」をクリックし、設定をモジュールにダウンロードします。
image-20230518110240349
image-20230518110240349
  1. 三菱モジュールはプログラムを介して動作する必要があり、さらに機能ブロックの有効化が必要なため、設定のダウンロード完了後にメイン画面へ戻ってEtherNet/IP機能をトリガーするプログラムを作成する必要があります。FX5-ENET/IPの設定ファイルをインストールすると、部品ライブラリに標準の機能ブロックが追加されます。モジュールタグを追加してください。
image-20230518110300653
image-20230518110300653
  1. 「オンライン」-「現在の接続対象」をクリックして接続画面に入ります。
image-20230518110328253
image-20230518110328253
  1. 「その他の接続方法」をクリックして、接続対象指定画面を開きます。
image-20230518110348372
image-20230518110348372
  1. デバイスネットワークをダブルクリックしてFX5UのIP設定を行います。
image-20230518110409610
image-20230518110409610
  1. 「検索」をクリックし、検索されたデバイスをダブルクリックして「確認」をクリックします。
image-20230518110426467
image-20230518110426467
  1. 「通信テスト」をクリックすると、この時点で正常に接続されたことが表示されます。
image-20230518110443487
image-20230518110443487
  1. M+FX5ENETIP_Class1SetOutputdata_01Aモジュールを追加してデータ送信機能をテストします。テストプログラムは次のように作成します。
image-20230518110510258
image-20230518110510258
  1. この時点でEtherNet/IP Configuration Tool for FX5-ENET/IPの設定が完了しています。「すべて変換」をクリックしてFX5Uに書き込みます。
image-20230518110529816
image-20230518110529816
  1. すべて選択して書き込みを実行し、その後PLCをリセットします。電源を切ることでリセットを行ってもかまいません。このときLANケーブルはFX5Uユニットに接続されている必要があります。
image-20230518110550181
image-20230518110550181
  1. 再起動後、LANケーブルをFX5Uから抜き、FX5-ENET/IPに接続します。同様に「オンライン」-「現在の接続対象」に入り、EIPモジュールとの通信が正常であることを確認し、その後モニタを開きます。
image-20230518110654282
image-20230518110654282
  1. カーソルをM1001スイッチに合わせ、Shift+Enterを使用して入力信号を変更し、この関数ブロックをトリガーします
image-20230518110711675
image-20230518110711675
  1. モジュールでEIP機能をトリガーした後、App側にはマスターステーションへの正常な接続が表示されるはずです
image-20230518110608603
image-20230518110608603
  1. EtherNet/IP Configuration Tool for FX5-ENET/IPで診断を行うと、デバイスが正常にオンラインであることが表示されます
image-20230518110636975
image-20230518110636975
  1. 関数ブロックを右クリックし、「オンライン - ソフト要素/バッファメモリ一括モニタ」を開きます
image-20230518110726137
image-20230518110726137
  1. D1015を監視して更新すると、データがDIおよびAIに更新されるはずです
image-20230518110747795
image-20230518110747795
  1. 浮動小数点数も同様に、監視ウィンドウで対応するソフト要素の値を確認できます。注意すべき点は、ソフト要素メモリが16ビット単位でデータを格納しており、符号付き整数や浮動小数点数は高位・低位の組み合わせによって正確な32ビットデータを構成する必要があることです。
image-20230518110812748
image-20230518110812748
  1. M+FX5ENETIP_Class1Getinputdate_01Aモジュールをドラッグして受信データ機能をテストし、以下のようにテストプログラムを作成します。コンパイルして書き込むたびに、LANケーブルをCPUユニット(FX5U)に接続する必要がありますが、実際にEIP機能を使用する際はLANケーブルをFX5-ENET/IPに戻して接続します。
image-20230518110832871
image-20230518110832871
  1. AppでDOとAOの値を変更し、値の更新を確認します
image-20230518110853851
image-20230518110853851
  1. 浮動小数点数も同様です
image-20230518110910926
image-20230518110910926

Modbus TCP

スレーブ
  1. イーサネット設定内のModbus/TCP設定を開き、対象デバイス接続設定をダブルクリックします
image-20230518162141616
image-20230518162141616
  1. Modbus/TCP接続デバイスをネットワークトポロジーにドラッグし、設定を反映させて閉じます
image-20230518111007916
image-20230518111007916
  1. この時点でModbus/TCP設定が「使用中」と表示されるはずです。詳細設定をダブルクリックしてソフト要素の割り当てを行い、完了後に「確認」をクリックし、「適用」をクリックします。
image-20230518111025673
image-20230518111025673
  1. 変更後のモジュールパラメータをPLCに書き込み、その後PLCをリセットします。
image-20230518111042541
image-20230518111042541
  1. この時点でAppは拡張IOモジュールを実行でき、ソフト要素バッファの一括モニタを開いて、値が対応するアドレスに更新されているかを確認します。
image-20230518111057725
image-20230518111057725
image-20230518111111202
image-20230518111111202
image-20230518111122339
image-20230518111122339
マスタ
  1. モジュールパラメータのイーサネットポートをクリックし、対象機器接続設定の詳細設定をダブルクリックして設定ページに入り、Active接続機器をドラッグし、通信手段を通信プロトコルに選択し、ポート番号やIPなどの情報を設定します。設定完了後、設定を反映して閉じ、「適用」をクリックします。
image-20230518111135968
image-20230518111135968
  1. 「ツール」→「通信プロトコル対応機能」をクリックします。
image-20230518111150850
image-20230518111150850
  1. イーサネットを選択し、「OK」をクリックします。
image-20230518111203910
image-20230518111203910
  1. 「追加」をクリックし、「Modbus/TCP」を選択し、プロトコル名を追加します。
image-20230518111220121
image-20230518111220121
  1. プロトコル名は複数追加可能で、最大64個のプロトコル番号をサポートします。
image-20230518111236492
image-20230518111236492
  1. ソフト要素の割り当て方法に詳しくない場合は、データパケットのソフト要素を自動割り当てすることもできます。空白領域を右クリックし、「ソフト要素一括設定」をクリックします。
image-20230518111250414
image-20230518111250414
  1. ソフト要素のプロトコル番号範囲と開始ソフト要素番号を指定し、「OK」をクリックします。
image-20230518111306694
image-20230518111306694
  1. この時点で変数設定が完了しており、「ツール」→「ソフト要素一覧表示の設定」をクリックして具体的な割り当て方法を確認することもできます。
image-20230518111330610
image-20230518111330610
  1. 機能コード15の割り当て規則では、D304が接続番号、D305がモジュールID、D306が開始アドレス、D307が書き込み長、D308が可変長で、書き込むデータのバイト長を指定します。D309〜D1292が実際に書き込む具体的なデータです。
image-20230518111347364
image-20230518111347364
  1. 割り当てが完了したら、このモジュールをPLCに書き込みます。この設定は個別書き込みであることに注意してください。GX Works3のメイン画面から実行する書き込みでは、このモジュールの情報は書き込まれません。
image-20230518111403627
image-20230518111403627
  1. 書き込みが完了した後、この通信プロトコルをトリガーするプログラムを作成する必要があります。三菱PLCがModbusマスタとして動作する場合、主に3つの命令を使用します。詳細は「MELSEC iQ-F FX5ユーザーマニュアル(MODBUS通信編)」を参照してください。各命令の説明は、F1キーを押すことで公式のヘルプを確認できます。

  2. ここでは1つの通信方法を紹介します。論理的な要件に応じてプログラムを変更できます。SP.SOCOPENを使用して接続を開きます。

image-20230518111430357
image-20230518111430357
  1. 接続設定を行います。主に前述のソフト要素割り当て表のアドレスに基づきます。
image-20230518111503241
image-20230518111503241
  1. SP.ECPRTCLを使用して通信プロトコル番号を呼び出し、書き込みを行います。
image-20230518111517448
image-20230518111517448
  1. SP.SOCCLOSEを使用して接続を閉じます。
image-20230518111531756
image-20230518111531756
  1. 「プログラム変換」をクリックしてPLCに書き込みます。このプログラムロジックは通信プロトコル番号1を繰り返し使用します。SP.ECPRTCLは接続の開閉を行わないため、使用時にはSP.SOCOPENおよびSP.SOCCLOSEと組み合わせて使用する必要があります。[モニタ]をクリックし、ソフト要素/バッファメモリ一括モニタを開きます。
image-20230518111546412
image-20230518111546412
  1. 値が対応するレジスタに正しく更新されていることが確認できます。
image-20230518162249818
image-20230518162249818
  1. 02機能コードに対しても同様です。ソフト要素の割り当てを確認し、プログラムを修正すれば完了です。
image-20230518111616942
image-20230518111616942
  1. 主にプロトコル番号と連続読み取り番号を2に変更する必要があります。
image-20230518111637363
image-20230518111637363
  1. 同様にプログラムを変換してPLCにダウンロードすると、DOの値がD1307に更新されていることが確認できます。
image-20230518111657433
image-20230518111657433

シュナイダー TM241CE24R

必要なソフトウェア:Machine Expert、JAKA Zu App

EtherNet/IP

まず、TM241CE24RのファームウェアバージョンがMachine Expertと一致していることを確認する必要があります。一致していない場合は正常に動作しません。バージョンが異なる場合は、Controller Assistantを使用してファームウェアのバージョンをアップグレードまたはダウングレードしてください。

  1. Machine Expertを使用してEDSファイルを追加します。
image-20230518111842828
image-20230518111842828
image-20230518111916343
image-20230518111916343
image-20230518111927256
image-20230518111927256
  1. コントローラーをダブルクリックして更新すると、現在接続されているデバイスを確認できます。また、LANケーブルを使用して外部デバイスのIPアドレスを直接変更することもできます。
image-20230518111942759
image-20230518111942759
  1. 変更時に「永久保存」にチェックを入れます。
image-20230518111956473
image-20230518111956473
  1. この時点で変更は正常に完了しています。TM241CE24Rをスイッチに接続し、JAKAアプリとコントローラーも同じスイッチに接続し、同一のネットワークセグメント内にあることを確認します。
image-20230518112018441
image-20230518112018441
  1. Ethernet_1 を右クリックしてデバイスを追加します。
image-20230518112047746
image-20230518112047746
  1. Modbus TCP 内の「Industrial Ethernet Manager」を選択します。
image-20230518112116359
image-20230518112116359
  1. 続いて「Industrial Ethernet Manager」を右クリックし、JAKAデバイスを追加します。
image-20230518112139664
image-20230518112139664
  1. デバイスをコンパイルしてログインします。セキュリティに関する警告が表示された場合は無視し、ALT+F8を押してログインを続行します。
image-20230518112153726
image-20230518112153726
  1. 「常に有効」に変更した後、「開始」をクリックします。
image-20230518112222107
image-20230518112222107
  1. この時点で、アプリ側にはマスターステーションへの接続が成功したことが表示されます。
image-20230518112233861
image-20230518112233861
  1. DOおよびAOの値を変更すると、対応するInput Exclusive owner144[、]150[]、[154]の変化が確認できます。これは、ROBOTからPLCへのデータにROBOTの状態データが含まれているためです。そのため、DOはアドレス72から始まります。JAKAのEtherNet/IPは32ビットデータを使用し、Machine Expertは16ビットデータを使用するため、最終的にDOのアドレスは144から始まります。
image-20230518112249241
image-20230518112249241
  1. 出力では、Ctrl+F7を使用して値をロボットに送信し、値が正常に更新されることを確認します。
image-20230518112303178
image-20230518112303178

Modbus TCP

マスタ
  1. Ethernet_1を右クリックしてModbusスレーブデバイスを追加します
image-20230518112326838
image-20230518112326838
  1. マスタのIPアドレスなどの情報を設定します
image-20230518112340540
image-20230518112340540
  1. ログインして開始し、データを監視します
image-20230518112355272
image-20230518112355272
  1. TM241CE24RがサポートするModbusスレーブの保持レジスタのファンクションコードは03、06、および16であり、入力レジスタに対応するファンクションコードは17です。JAKAロボットのModbusマスタは現在このファンクションコードをサポートしていないため、使用前に公式ドキュメントを参照する必要があります。

オムロン CP1H-X40DT-D

必要なソフトウェア:CX-Programmer、JAKA Zu App

CP1HのCPUユニット自体にはEIP機能が搭載されていないため、拡張ユニットを取り付ける必要があります。その前に、CJ1W-EXT01拡張ユニットを追加して拡張に対応させる必要があります。取り付け後の製品は次の図の通りです:

image-20230518112534078
image-20230518112534078

オムロンのModbus通信はすべてプロトコルなし通信に分類され、ソフトウェアによって通信を実現します。さらに、追加のハードウェアが必要となり、たとえばCJ1W-ETN21でModbus TCPを、CP1W-CIF11でModbus RTUをサポートします。そのため、ここでは検証を行いません。

EtherNet/IP

  1. CX-Programmerを上位機として使用し、新しいプロジェクトを作成します
image-20230518112558888
image-20230518112558888
  1. PLCのデフォルトアドレスは192.168.250.1です。まずLANケーブルで直接接続し、オンラインモードに切り替えてプログラミングを有効にしてからパラメータを変更します。
image-20230518112611668
image-20230518112611668
  1. IOテーブルを作成し、CPUバスを初期化します
image-20230518112625082
image-20230518112625082
  1. この時点でEIPモジュールが追加されています
image-20230518112637340
image-20230518112637340
  1. EIP21モジュールのIPアドレスを変更後、パラメータをPCからユニットに転送し再起動します。変更後のIPアドレスを使用してPLCに接続します。
image-20230518112648277
image-20230518112648277
  1. 専用アプリケーションを起動し、起動を継承します
image-20230518112704443
image-20230518112704443
  1. 「Network Configurator」をクリックしてEIP設定を行います
image-20230518112716651
image-20230518112716651
  1. 「Install」をクリックしてedsファイルをインストールします
image-20230518112728140
image-20230518112728140
  1. 「Upload」をクリックします
image-20230518112746186
image-20230518112746186
  1. インポートしたデバイスをバスにドラッグし、「Change Node Address…」をクリックしてIPアドレスを変更します
image-20230518112807626
image-20230518112807626
  1. 接続の登録:「JAKA Robot Ethernet/IP Adapter」→「Connections」をクリックします
image-20230518112818721
image-20230518112818721
  1. 変数を設定します
image-20230518112841189
image-20230518112841189
  1. 設定が完了したら、パラメータをPLCに書き込みます
image-20230518112852640
image-20230518112852640
  1. 「Dowland」をクリックします
image-20230518112907042
image-20230518112907042
  1. 警告を無視して続行します
image-20230518112920804
image-20230518112920804
  1. ダウンロードが完了するとPLCが再起動します
image-20230518112933858
image-20230518112933858
  1. この時、アプリ側にはマスターステーションへの接続成功が表示され、PLCの動作モードをモニタリングに切り替えることで値の転送が可能になります
image-20230518112952130
image-20230518112952130
image-20230518113001361
image-20230518113001361

キーエンス KV-8000

必要なソフトウェア:KV STUDIO、JAKA Zu App

本例では、KV-8000をCPUユニットとして使用し、KV-XLE02を拡張ユニットとして使用します

EtherNet/IP

  1. KV STUDIOを使用して新しいプロジェクトを作成し、初めてイーサネットユニットを使用する場合は、ユニットエディタを開く必要があります。
image-20230518113104728
image-20230518113104728
  1. ユニットをKV-8000にドラッグします。すでにCPUユニットが接続されている場合は、PLCから直接ユニット構成を読み取ることもできます。
image-20230518113118159
image-20230518113118159
  1. ポートのプロトコルをscannerに設定します(ここで設定を行わないとEtherNet/IP設定は表示されません)。それぞれKV-8000とKV-XLE02のIPアドレスを設定し、最後に設定を適用します。
image-20230518113139022
image-20230518113139022
  1. KV-STUDIOに戻り、モニタ/シミュレータの通信設定を選択し、EtherNet/IPまたはUSBによるスキャンを選びます。PCとPLCをLANケーブルまたはUSBで接続しておく必要があります。EtherNet/IPを選択してスキャンを実行する場合は、ネットワークカードを選択して実行すると、対応するデバイスをスキャンできます。スキャン後、該当デバイスをクリックして選択します。
image-20230518113151146
image-20230518113151146
  1. 「PLCへ変換」をクリックし、「実行」を選択します。実行後、ユニットエディタ内のイーサネット設定も同時にPLCへ書き込まれます。ユニットエディタ内でKV-8000のIPアドレスやKV-XLE02の通信プロトコルを変更した場合、書き込み完了後にデバイスのネットワークパラメータも変更されます。また、KV-XLE02の2つのポートのネットワーク部分は異なる設定にする必要があります。
image-20230518113205943
image-20230518113205943
  1. JAKAのEDSファイルをインポートします。
image-20230518113220030
image-20230518113220030
  1. 本例ではport 1のIPアドレスを192.168.1.10に設定し、前述のデバイス選択の手順を繰り返します。LANケーブルをKV-XLE02に接続し、このデバイスを選択してユニットエディタに戻り、EtherNet/IP設定をクリックします。
image-20230518113234996
image-20230518113234996
  1. JAKAデバイスのIPアドレスをPLCと同じネットワークに設定します。本例では192.168.1.20/24とし、「自動設定」をクリックすると、ネットワークトポロジーが自動的にスキャンされます。
image-20230518113247405
image-20230518113247405
  1. KV STUDIOに戻り、EtherNet/IP設定とユニットエディタをPLCにダウンロードします。この時、アプリ側でマスタとの接続成功が表示されるはずです。
image-20230518113301551
image-20230518113301551
  1. ユニットエディタのEtherNet/IP設定に戻り、「Exclusive Owner」の「Edit」をクリックして、ソフト要素を自動割り当てまたは手動割り当てから選択できます。ここでは自動を選択します。キーエンスが定義するEtherNet/IPデバイスの通信データ型はビットとワードであり、データの表示形式はタイプによって異なります。キーエンス以外のデバイスに対しては、自動割り当てを使用し、ワードデバイスを選択します。
image-20230518113313000
image-20230518113313000
image-20230518113328040
image-20230518113328040
  1. 設定を保存します。JAKAのデータはデフォルトで32ビットを占有し、KV-STUDIOのデータ型はデフォルトでWORD(16ビット)であるため、WORDデータ型を使用する場合、JAKAのDIはPLCの[IN_101144]から、DOはOUT_1000[から対応]します。監視ウィンドウを開きます。
image-20230518113348198
image-20230518113348198
  1. AppとKV STUDIOでパラメータを変更し、各ソフト要素およびAppの値を確認します。KV STUDIOのデフォルトデータ型はWORDであるため、使用時には上位・下位ビットの結合処理が必要です。
image-20230518113405110
image-20230518113405110

Modbus TCP

スレーブ
  1. KV-XLE02をスレーブとして使用する場合、送受信用のラダー図プログラムは不要です。ユニットエディタに入り、PROTOCOL STUDIOスイッチをオンにします。
image-20230518113423247
image-20230518113423247
  1. ユニット設定でModbusに関するすべてのパラメータ(IPアドレス、Modbus TCPポート番号、コイルおよびレジスタアドレスなど)を構成します。デフォルト値では、読み取り専用のソフト要素(入力/入力レジスタ)は、読み書き可能なソフト要素(コイル/ホールディングレジスタ)と同じ割り当てに設定されています。
image-20230518113439809
image-20230518113439809
  1. ユニットエディタの設定をPLCに書き込み、監視モードを起動します。この時点でスレーブが正常に起動します。スレーブのレジスタアドレスを選択して監視します。注意すべき点として、デフォルトではKV-XLE02の読み取り専用ソフト要素(入力/入力レジスタ)は、読み書き可能なソフト要素(コイル/ホールディングレジスタ)と同じ割り当てに設定されていますが、必要に応じて自由に割り当てることができます。ここでは区別をつけるために一部変更を行いました。
image-20230518113452997
image-20230518113452997
  1. JAKA拡張IOを開き、「実行」をクリックし、パラメータを変更した後でKV STUDIOで対応するアドレスのパラメータを読み取りおよび送信します。パラメータが同期的に更新されることが確認できます。
image-20230518113506874
image-20230518113506874

デルタ AS228T-A

必要なソフトウェア:Delta ISPSoft、HWCONFIG、JAKA Zu App

EtherNet/IP

  1. デルタのASシリーズに対しては、HWCONFIGからEIP BUILDERを開く必要があります。そうしないとASシリーズのオプションが表示されません。新しいバージョンの場合は、HWCONFIG内で直接EIPの設定およびネットワークトポロジを完了できます。

    新しいプロジェクトを作成し、HWCONFIGをダブルクリックします。

image-20230518114351122
image-20230518114351122
  1. デバイス記述ファイル管理ツールをインストールします。
image-20230518114402845
image-20230518114402845
  1. PLCデバイスを右クリックし、通信ソフトウェアのEtherNet/IPを選択します。
image-20230518114417537
image-20230518114417537
  1. インポートしたJAKA記述情報を検索し、それを構成ネットワーク内にドラッグ&ドロップします。その後、JAKAデバイスをダブルクリックしてIPアドレスを変更します。
image-20230518114434556
image-20230518114434556
  1. 「クイック接続」をクリックし、デバイスを同一ネットワーク内に接続してから、デバイスにダウンロードします。
image-20230518114538549
image-20230518114538549
  1. 「データ交換の表示」をクリックし、マスターステーションのレジスタアドレスを設定し、最後に関連データをPLCにダウンロードします。
image-20230518114554764
image-20230518114554764
  1. ダウンロードが完了すると、マスターステーションへの接続が成功したことが表示されます。
image-20230518114606575
image-20230518114606575
  1. HWCONFIGを閉じて保存し、ISPSoftに戻って「オンラインモード」をクリックします。プロジェクトの比較が一致しないというメッセージが表示された場合、「はい」をクリックしてダウンロードを実行します。
image-20230518114622309
image-20230518114622309
  1. 「デバイスモニタテーブル」をクリックし、新しいモニタテーブルを作成し、新しいアドレス変数を追加します。
image-20230518114636722
image-20230518114636722
  1. DOおよびAOの変化を監視します。浮動小数点も同様です。
image-20230518114651737
image-20230518114651737
image-20230518114659624
image-20230518114659624
  1. DIおよびAIの値を監視し、設定に基づいてDIの値はD1000から開始します。浮動小数点も同様です。
image-20230518114717985
image-20230518114717985
image-20230518114731299
image-20230518114731299

Modbus TCP

スレーブ
  1. 公式サイトでデバイスの標準MODBUSアドレスを確認できます。これらのアドレスに直接アクセスすることで、デルタPLC Modbusスレーブへのアクセスを実現できます。ポート番号はデフォルトで502であり、MODBUSアドレスの最初の桁はアクセスするレジスタの種類を示します。
image-20230518114801539
image-20230518114801539
  1. デバイスモニタテーブルでデータを監視します。Y、M、Dへのアクセスを例にします。
image-20230518114815951
image-20230518114815951
image-20230518114825506
image-20230518114825506
マスタ
  1. HWCONFIGに入るためにダブルクリックし、ハードウェア構成をダブルクリックし、デバイスアイコンをダブルクリックします。
image-20230518114843299
image-20230518114843299
  1. データ交換のイーサネットに入り、ここではModbus TCPポートのトリガー方式を示しています。「常時実行」に変更すると、PLCの電源が入ると常に有効になります。変更が完了したらデータ交換ルールを追加し、リモートデバイスタイプを「標準Modbusデバイス」に設定します。IPアドレス、ローカル開始アドレス、リモート開始アドレス、および数量をそれぞれ設定します。リモート開始アドレスは16進数を使用することに注意してください。設定が完了したら、パラメータをデバイスにダウンロードします。
image-20230518114859097
image-20230518114859097
  1. HWCONFIGを閉じて、オンラインオプションを開き、データテーブルを監視すると、すべてのデータが更新されているのを確認できます。
image-20230518114912260
image-20230518114912260
  1. JAKA Modbusスレーブは浮動小数点数をビッグエンディアンで表示するため、上位バイトは下位バイトに格納され、デルタPLCの表示ルールに従うと次のようになります。
image-20230518114927755
image-20230518114927755

汇川 Easy522‑0808TN

必要なソフトウェア:AutoShop、JAKA Zu App

EtherNet/IP

  1. AutoShopを開き、新しいプロジェクトを作成してPLCモデルを選択し、ツールの通信設定に入ります。
image-20230518115022404
image-20230518115022404
  1. デバイスの検索をクリックします。
image-20230518115035421
image-20230518115035421
  1. edsファイルをインポートするを選択します。
image-20230518115049518
image-20230518115049518
  1. インポートが成功した後、デバイスをダブルクリックして構成を追加します。
image-20230518115102151
image-20230518115102151
  1. コンパイルしてデバイスにダウンロードし、デバイスを実行状態に切り替えます。
image-20230518115114620
image-20230518115114620
  1. この時点で、デバイスはマスターステーションとの接続成功を表示し、設定内のEtherNet/IPはすべて緑色で表示されるはずです。
image-20230518115128368
image-20230518115128368
  1. デジタル出力と符号付き出力を使用すると、正常にPLCへ更新できます。
image-20230518115145588
image-20230518115145588
  1. 浮動小数点数も正常に更新できます。
image-20230518115220157
image-20230518115220157
  1. PLCからロボットへのデータ出力
image-20230518115234702
image-20230518115234702
image-20230518115245433
image-20230518115245433

Modbus TCP

スレーブ
  1. Easy-522をスレーブとして使用する場合、IPアドレスを設定すると同時にModbusスレーブ機能が有効になり、通信プロトコルを設定する必要はありません。JAKAの拡張IOを構成し、ポート502を使用することでEasy-522と通信できます。
image-20230518115310208
image-20230518115310208
  1. Easy-522のドキュメントには、コイルおよびレジスタがアクセス可能なアドレスが定義されており、コイルとレジスタはアドレスを共有します。
image-20230518115327406
image-20230518115327406
image-20230518115338147
image-20230518115338147
マスタ
  1. Easy-522をマスタとして使用する場合、イーサネット設定を追加し、パラメータをJAKAロボットのアドレスとModbusポートに設定します。
image-20230518115355406
image-20230518115355406
  1. 右クリックして新しいスレーブIDを追加し、それぞれ設定を行い、マッピングアドレスを割り当てた後に「確認」をクリックします。
image-20230518115410000
image-20230518115410000
  1. ソフト要素テーブルを開き、D200~D240の値を監視します。上図の割り当てに従い、アドレスマッピングは次の通りです:

DO 0-9 : D200-209

DI 0-9 : D210-D219

AO 0-9 : D220-229

AI 0-9 : D230-D239

メモリの読み取りと書き込みをそれぞれ使用して、値の更新を確認できます。

image-20230518115425621
image-20230518115425621

Codesys

EtherNet/IP

  1. Codesysをダウンロードしてインストールすると、バックグラウンドでCODESYS Gateway Systray -x64とCODESYS Control Win Systray -x64が表示されます。前者はゲートウェイのスイッチ、後者は仮想PLCのスイッチであり、使用時には両方が実行中であることを確認する必要があります。
image-20230220181755889
image-20230220181755889
  1. Codesysを開いて新しいプロジェクトを作成し、「standard project」を選択します。初回使用時にはユーザー作成を求められ、その後PLCを使用する際にはこのユーザー情報でログインする必要があります。
image-20230220183201360
image-20230220183201360
image-20230220182339657
image-20230220182339657
  1. PLCモデルとして「CODESYS Control Win V3 x64」を選択し、2番目の欄はデフォルトのままで構いません。
image-20230220182401950
image-20230220182401950
  1. Codesysのメニューバーの「ツール」→「デバイスリポジトリ」を開き、「インストール」をクリックしてedsファイルをインポートします。インポート後、メッセージが表示され、同時にファイルがEthernetIPバスのリモートアダプタの下に表示されます。
image-20230220182205612
image-20230220182205612
image-20230220182610006
image-20230220182610006
  1. Codesysで、階層的にEtherNet->EtherNet_IP_Scannerを順に追加します。
image-20230220182807248
image-20230220182807248
  1. EtherNetをダブルクリックし、外部デバイスに接続されているネットワークポートを選択して「OK」をクリックします。ネットワーク内にこのedsファイルと一致するJAKAコントローラがすでにあり、EtherNet/IP機能が有効になっている場合、EtherNet_IP_Scannerを右クリックしてデバイススキャンを実行すると、条件に一致するデバイスが表示されます。「プロジェクトにコピー」をクリックします。スキャンが成功しなかった場合は、手動でデバイスを追加し、そのIPアドレスを設定できます。
image-20230220183555384
image-20230220183555384
image-20230220184201136
image-20230220184201136
  1. ログインボタンと実行ボタンを順にクリックし、デバイス欄のscannerとadapterが両方とも緑色になったら、デバイスが正常に接続されたことを意味します。このとき、App側でもマスターステーションへの接続が正常に表示されます。
image-20230220184343914
image-20230220184343914
image-20230220184357323
image-20230220184357323
image-20230220184636633
image-20230220184636633
image-20230220184522233
image-20230220184522233
image-20230220184803673
image-20230220184803673
  1. jaka adapterのIOマッピングを開き、「常に更新」を「有効化1」に変更します。このオプションを変更するには、先にPLCからログアウトする必要があります。再度ログインすると、データが同期して更新され始めていることが確認できます。
image-20230220185223933
image-20230220185223933
  1. コントローラからPLCへ、DOとAOのデータをそれぞれ変更すると、対応するアドレスのパラメータが更新されたことが確認できます。image-20230220185334508
image-20230220185419800
image-20230220185419800
  1. PLCからコントローラへ、準備値欄でDIとAIの値をそれぞれ変更し、Ctrl+F7を同時に押してデータを送信すると、対応するデータが更新されたことが確認できます。
image-20230220185633320
image-20230220185633320
image-20230220185713370
image-20230220185713370

まとめ

現在までに検証済みのPLC機種と対応する通信プロトコルの一覧は次の通りです:

型式メーカーModbus TCPEtherNet/IP(スキャナ)PROFINET(コントローラ)
5370 L3 1769-L33ERロックウェル
6ES7317-2EK14-0AB0シーメンス
FX5U-80MT、DSS三菱
TM241CE24Rシュナイダー
CP1H-X40DT-Dオムロン
KV-8000キーエンス
AS228T-Aデルタ
Easy522/0808TNインオビス

上記で確認されたPLC機種について、通信プロトコルはJAKAが現在サポートしているマスター/スレーブプロトコルと良好に互換性があり、正常に使用できます。注意すべき点として、各PLCメーカーによるデータ型や長さの規定により、完全な互換性を確保できない場合があり、データの結合などの処理が必要となることがあります。

トラブルシューティング

接続できない、または有効化できない場合は、以下の項目に従って初期分析と対応を行ってください。

デバイスのネットワークセグメントが同じか確認

デバイスが同一ネットワークセグメント上にあるか確認します。Wiresharkを使用してパケットキャプチャ分析を行うか、pingテストでネットワークを確認し、デバイス間の通信状態が良好であることを確かめます。

アプリからEtherNet/IPの状態を確認

EtherNet/IPの有効状態やネットワーク状態を変更した後は、設定を更新するためにコントローラを再起動する必要があります。PROFINETの場合も同様です。アプリの対応する設定画面で、マスターステーションとの通信状態や接続判定を確認してください。

配線が正常か確認

PLCと接続する際には、制御キャビネット下部のLANポートを使用することを推奨します。その際、アプリはWi-Fiまたは制御キャビネット前面のポートを介して接続し、通信品質を確保してください。

PLCから状態を確認

上位ソフトウェアを通じてPLCの状態を監視し、動作状態で正常に稼働していることを確認します。たとえば、Codesysでデータを更新するには、「有効化1」オプションをオンにする必要があります。

PLCを再起動

一部のPLC機種は通信設定やプログラムを書き込むためにコールドスタートが必要です。通信がどうしてもできない場合は、電源を切ってPLCを再起動し、再試行してください。

ターミナル画面の出力情報を確認

ターミナル画面で「jkzuc」コマンドを使用してコントローラを再起動し、EtherNet/IPに関連する出力情報を確認します。有効状態、IO設定モード、ネットワークインターフェース名、IPアドレス、マスターとの接続状態などを確認し、情報が一致しているか、正常であるかを確認してください。

image-20230220190231581
image-20230220190231581

バスアドレス表

Modbusアドレス表

 

 タイプ
PLC向け
名称(CAB1.0)名称名称(MiniCab)データ型機能コード説明単位レジスタタイプ
(CAB2.1)
8汎用デジタル入力DO1DO1DO1BOOL02  離散入力 読み取り可能 書き込み不可
9DO2DO2DO2
10DO3DO3DO3
11DO4DO4DO4
135DO128DO128DO128
136-CAB DI1CAB DI1
-
-
142-CAB DI7CAB DI7
143-CAB DI8-
--
--
151-CAB DI16-
152TOOL DI1TOOL DI1TOOL DI1
153TOOL DI2TOOL DI2TOOL DI2
40汎用デジタル出力DI1DI1DI1BOOL2001/05/15  コイル
41DI2DI2DI2
42DI3DI3DI3
43DI4DI4DI4
167DI128DI128DI128
168-CAB DO1CAB DO1
-
-
174-CAB DO7CAB DO7
175-CAB DO8-
--
--
183-CAB DO16-
184TOOL DO1TOOL DO1TOOL DO1
185TOOL DO2TOOL DO2TOOL DO2
96アナログ入力AO01AO01AO01UINT1604  入力レジスタ 読み取り
可能
書き込み不可
97AO02AO02AO02
98AO03AO03AO03
99AO04AO04AO04
111AO16AO16AO16
112AO17AO17AO17INT16
113AO18AO18AO18
114AO19AO19AO19
115AO20AO20AO20
127AO32AO32AO32
128AO33AO33AO33FLOAT32
(ビッグエンディアン表示)
129
130AO34AO34AO34
131
190AO64AO64AO64
191
192-CAB AI1-UINT16
193-CAB AI2-
194TOOL AI1TOOL AI1TOOL AI1
195TOOL AI2TOOL AI2TOOL AI2
100アナログ出力AI01AI01AI01UINT162003/06/16  保持レジスタ 読み取り・書き込み
可能
101AI02AI02AI02
102AI03AI03AI03
103AI04AI04AI04
115AI16AI16AI16
116AI17AI17AI18INT16
117AI18AI18AI18
118AI19AI19AI19
119AI20AI20AI20
131AI32AI32AI32
132AI33AI33AI33FLOAT32
(ビッグエンディアン表示)
133
134AI34AI34AI34
135
194AI64AI64AI64
195
196-CAB AO1-UINT16
197-CAB AO2-
ロボットデータ関連ビッグエンディアン表示
300ロボットデータサーボバージョン番号INT3204  入力レジスタ 読み取り
可能
書き込み不可
302ロボットシリアル番号  
304関節1 電圧Float32各関節の電圧V
306関節2 電圧
308関節3 電圧
310関節4 電圧
312関節5 電圧
314関節6 電圧
316関節1 温度Float32各関節の温度°C
318関節2の温度
320関節3の温度
322関節4の温度
324関節5の温度
326関節6の温度
328関節1のサーボエラーコードINT32各関節のサーボエラーコード 
330関節2のサーボエラーコード
332関節3のサーボエラーコード
334関節4のサーボエラーコード
336関節5のサーボエラーコード
338関節6のサーボエラーコード
340関節1のエラーステータスUINT16現在のサーボエラーステータス 
0
はエラーなしを示し、
1はエラーありを示す
 
341関節2のエラーステータス
342関節3のエラーステータス
343関節4のエラーステータス
344関節5のエラーステータス
345関節6のエラーステータス
346関節1のイネーブル状態UINT16現在のサーボイネーブル状態 
0は未イネーブルを示し、
1はイネーブルを示す
 
347関節2のイネーブル状態
348関節3のイネーブル状態
349関節4有効状態
350関節5有効状態
351関節6有効状態
352関節1衝突状態UINT16現在のサーボ衝突検出状態 
0
は衝突なし、
1衝突を示す
 
353関節2衝突状態
354関節3衝突状態
355関節4衝突状態
356関節5衝突状態
357関節6衝突状態
358関節1電流Float32各関節の電流A
360関節2電流
362関節3電流
364関節4電流
366関節5電流
368関節6電流
370センサーのトルクXFloat32力制御センサーのトルク
372センサーのトルクY
374センサーのトルクZ
376センサーのトルクRXNm
378センサーのトルクRY
380センサーのトルクRZ
382関節1位置Float32各関節の位置°
384関節2位置
386関節3の位置:
388関節4の位置:
390関節5の位置:
392関節6の位置:
394関節速度Float32各関節の速度°/s
396関節速度
398関節速度
400関節速度
402関節速度
404関節速度
406TCP位置XFloat32TCPmm
408TCP位置Y
410TCP位置Z
412TCP位置RX°
414TCP位置RY
416TCP位置RZ
418TCP速度制限Float32TCP速度制限mm/s
420TCP速度制限
422TCP速度制限
424TCP速度制限°/s
426TCP速度制限
428TCP速度制限
430TCPオフセットXFloat32ツール座標系mm
432TCPオフセットY
434TCPオフセットZ
436TCPオフセットRXFloat32ツール座標系°
438TCPオフセットRY
440TCPオフセットRZ
442ベースオフセットXFloat32ユーザー座標系mm
444ベースオフセットY
446ベースオフセット_Z
448ベースオフセット_RX°
450ベースオフセット_RY
452ベースオフセット_RZ
454衝突保護停止UINT16ロボットが衝突:
ロボットが未衝突:0
 
455緊急停止UINT16緊急停止 
456電源オンUINT16電源投入 
457ロボット有効UINT16有効化 
458ソフトリミットオンUINT16ソフトリミット 
459位置到達UINT16目標位置に到達 
460動作モードUINT16サーボ位置モード:
アドミッタンス制御モード:
ドラッグモード:
その他モード(ジョグなどの操作0
 
461倍率モードレベルUINT161
レベル倍率:1 第2
レベル倍率:保護停止:3
 
462速度倍率FLOAT32速度倍率 
464動作エラーコードINT32エラーコード 
466制御キャビネット温度FLOAT32制御キャビネットの温度 
468CAB_AVERAGEPOWER制御キャビネットの電力 
470CAB_AVERAGECURRENT制御キャビネットの電流 
472UHI_PULESINT32コンベヤのパルス 
474UHI_SPEEDコンベヤの移動速度 
476UHI_DIRUINT16コンベヤの移動方向 
477UHI_ORIGIN_PULESINT32コンベヤの原始パルス 
479ERROR_TRIGGEREDBOOLロボットがエラー発生:1 
ロボットがエラーなし:0
 
480TCP線速度FLOAT32ロボットのTCP線速度mm/s
482CHECKSUMUINT16ロボット安全パラメータのチェックサム 
484TCP角速度FLOAT32ロボットのTCP角速度°/s
486REDUCE_MODEロボットが縮小モードでない: 0 ロボットが縮小モード: 1
487予約済み 予約 
予約済み 予約 
555予約済み 予約 

Profinetアドレス表

説明

符号の説明:

  1. 各データモジュールにはデータ伝送方向の識別子があります。R->PはロボットからPLCへデータを送信することを、P->RはPLCからロボットへデータを送信することを示します。
  2. DIはデジタル入力を、DOはデジタル出力を、AIはアナログ入力を、AOはアナログ出力を示します。

表の説明:

  1. 行の数字はBIT位置を表し、合計32ビット(4バイト)で、0から31までのBitです。列の数字は使用しているBIT数を示します。
  2. 各行にはデータの種類、占有ビット数、単位が記載されています。
  3. ユニットモジュールの部分では、関連データをひとつのデータモジュールにまとめ、データモジュール名、モジュールコード、バイト数を含みます。
  4. 右側の2番目の表はPLCの設定を示し、各データモジュールに対応するメインスロット、サブスロット番号、開始位置を含みます。

Robot2PLC

 

伝送タイプ R->P ロボット->PLCPLC設定
ビットデータユニットモジュールスロットサブスロットI入力アドレス
0ロボットシリアル番号 (int32)ロボット状態、 安全設定 
1_R->P_Robot_Safety
 36バイト
110
32サーボバージョン番号 (int32)4
64CAB_AVERAGECURRENT (float) [A]8
96CAB_AVERAGEPOWER (float) [W]12
128CAB_TEMPERATURE (float) []16
160電源オン20.0
160+1ロボット有効20.1
160+2予約済み20.2
192MOTION_ERRCODE (int32)24
224動作モード uint828
224+8倍率モードレベル uint829
224+16緊急停止30.0
224+17衝突保護停止30.1
224+18ソフトリミットオン30.2
224+19REDUCE_MODE30.3
224+20予約済み30.4
256ロボット安全パラメータチェックサムint3232
288関節1電圧(float[V]ジョイントパラメータ 
2_R->P_ジョイント
 172+48 バイト
2136
320関節2電圧(float[V]40
352関節3電圧(float[V]44
384関節4電圧(float[V]48
416関節5電圧(float[V]52
448関節6電圧(float[V]56
480関節1電流(float[A]60
512関節2電流(float[A]64
544関節3電流(float[A]68
576関節4電流(float[A]72
608関節5電流(float[A]76
640関節6電流(float[A]80
672関節1位置(float[°]84
704関節2位置(float[°]88
736関節3位置(float[°]92
768関節4位置(float[°]96
800関節5位置(float[°]100
832関節6位置(float[°]104
864関節1速度(float[°/s]108
896関節2速度(float[°/s]112
928関節3速度(float[°/s]116
960関節4速度(float[°/s]120
992関節5速度(float[°/s]124
1024関節6速度(float[°/s]128
1088関節1温度(float[]132
1120関節2温度(float[]136
1152関節3温度(float[]140
1184関節4温度(float[]144
1216関節5温度(float[]148
1248関節6温度(float[]152
1280関節1トルク(float[Nm]156
1312関節2トルク(float[Nm]160
1344関節3トルク(float[Nm]164
1376関節4トルク(float[Nm]168
1408関節5トルク(float[Nm]172
1440関節6トルク(float[Nm]176
1472関節1サーボエラーコード(int32180
1504関節2サーボエラーコード(int32184
1536関節3サーボエラーコード(int32188
1568関節4サーボエラーコード(int32192
1600関節5サーボエラーコード(int32196
1632関節6サーボエラーコード(int32200
1664関節エラー状態(0: エラーなし、1: エラーあり) (uint8)204
1664+8関節イネーブル状態(0: 無効、1: 有効) (uint8)205
1664+16関節衝突状態(0: 未衝突、1: 衝突) (uint8)206
1664+24予約済み207
1696予約float48 バイト208
2048TCP位置X(float)[mm]TCPとBASEパラメータ
3_R->P_TCP_BASE
104+40 バイト
31256
2080TCP位置Y(float)[mm]260
2112TCP位置Z(float)[mm]264
2144TCP位置RX(float[°]268
2176TCP位置RY(float[°]272
2208TCP位置RZ(float)[°]276
2240TCP速度X(float)[mm/s]280
2272TCP速度Y(float)[mm/s]284
2304TCP速度Z(float)[mm/s]288
2336TCP速度RX(float)[°/s]292
2368TCP速度RY(float)[°/s]296
2400TCP速度RZ(float)[°/s]300
2432TCPオフセットXfloat[mm]304
2464TCPオフセットYfloat[mm]308
2496TCPオフセットZfloat[mm]312
2528TCPオフセットRXfloat[°]316
2560TCPオフセットRYfloat[°]320
2592TCPオフセットRZfloat[°]324
2624ベースオフセットXfloat[mm]328
2656ベースオフセットYfloat[mm]332
2688ベースオフセットZfloat[mm]336
2720ベースオフセットRXfloat[°]340
2752ベースオフセットRYfloat[°]344
2784ベースオフセットRZfloat[°]348
2816TCP線速度(float)[mm/s]352
2848TCP角速度(float)[°/s]356
2880予約 40バイト360
3200ブールレジスタ 0-31ブール出力レジスタ DO 0~63
4_R->P_DO
8+4 バイト
41400
3232ブールレジスタ 32-63404
3264予約4 バイト408
3296整数レジスタ 0整数出力レジスタ AO 0~31
5_R->P_AO_INT
128 バイト
51412
3328整数レジスタ 1416
3360整数レジスタ 2420
3392整数レジスタ 3424
3424整数レジスタ 4428
3456整数レジスタ 5432
3488整数レジスタ 6436
3520整数レジスタ 7440
3552整数レジスタ 8444
3584整数レジスタ 9448
3616整数レジスタ 10452
3648整数レジスタ 11456
3680整数レジスタ 12460
3712整数レジスタ 13464
3744整数レジスタ 14468
3776整数レジスタ 15472
3808整数レジスタ 16476
3840整数レジスタ 17480
3872整数レジスタ 18484
3904整数レジスタ 19488
3936整数レジスタ 20492
3968整数レジスタ 21496
4000整数レジスタ 22500
4032整数レジスタ 23504
4064整数レジスタ 24508
4096整数レジスタ 25512
4128整数レジスタ 26516
4160整数レジスタ 27520
4192整数レジスタ 28524
4224整数レジスタ 29528
4256整数レジスタ 30532
4288整数レジスタ 31536
4320浮動小数点レジスタ 0浮動小数点出力レジスタ AO 0~31
6_R->P_AO_FLOAT
128 バイト
61540
4352浮動小数点レジスタ 1544
4384浮動小数点レジスタ 2548
4416浮動小数点レジスタ 3552
4448浮動小数点レジスタ 4556
4480浮動小数点レジスタ 5560
4512浮動小数点レジスタ 6564
4544浮動小数点レジスタ 7568
4576浮動小数点レジスタ 8572
4608浮動小数点レジスタ 9576
4640浮動小数点レジスタ 10580
4672浮動小数点レジスタ 11584
4704浮動小数点レジスタ 12588
4736浮動小数点レジスタ 13592
4768浮動小数点レジスタ 14596
4800浮動小数点レジスタ 15600
4832浮動小数点レジスタ 16604
4864浮動小数点レジスタ 17608
4896浮動小数点レジスタ 18612
4928浮動小数点レジスタ 19616
4960浮動小数点レジスタ 20620
4992浮動小数点レジスタ 21624
5024浮動小数点レジスタ 22628
5056浮動小数点レジスタ 23632
5088浮動小数点レジスタ 24636
5120浮動小数点レジスタ 25640
5152浮動小数点レジスタ 26644
5184浮動小数点レジスタ 27648
5216浮動小数点レジスタ 28652
5248浮動小数点レジスタ 29656
5280浮動小数点レジスタ 30660
5312浮動小数点レジスタ 31664

PLC2Robot

 

 転送タイプ P->RPLC->ロボットPLC設定
ビットデータユニットモジュールスロットサブスロットQ出力アドレス
0ブールレジスタ 0-31ブール入力レジスタ DI 0~64 
7_P->R_DI
 8+4 バイト
710
32ブールレジスタ 32-634
64予約4 バイト8
96整数レジスタ 0整数入力レジスタ AI 0~31 
8_P->R_AI_INT
 128 バイト
8112
128整数レジスタ 116
160整数レジスタ 220
192整数レジスタ 324
224整数レジスタ 428
256整数レジスタ 532
288整数レジスタ 636
320整数レジスタ 740
352整数レジスタ 844
384整数レジスタ 948
416整数レジスタ 1052
448整数レジスタ 1156
480整数レジスタ 1260
512整数レジスタ 1364
544整数レジスタ 1468
576整数レジスタ 1572
608整数レジスタ 1676
640整数レジスタ 1780
672整数レジスタ 1884
704整数レジスタ 1988
736整数レジスタ 2092
768整数レジスタ 2196
800整数レジスタ 22100
832整数レジスタ 23104
864整数レジスタ 24108
896整数レジスタ 25112
928整数レジスタ 26116
960整数レジスタ 27120
992整数レジスタ 28124
1024整数レジスタ 29128
1056整数レジスタ 30132
1088整数レジスタ 31136
1120浮動小数点レジスタ 0浮動小数点入力レジスタ AI 0~31 
9_P->R_AI_FLOAT
 128 バイト
91140
1152浮動小数点レジスタ 1144
1184浮動小数点レジスタ 2148
1216浮動小数点レジスタ 3152
1248浮動小数点レジスタ 4156
1280浮動小数点レジスタ 5160
1312浮動小数点レジスタ 6164
1344浮動小数点レジスタ 7168
1376浮動小数点レジスタ 8172
1408浮動小数点レジスタ 9176
1440浮動小数点レジスタ 10180
1472浮動小数点レジスタ 11184
1504浮動小数点レジスタ 12188
1536浮動小数点レジスタ 13192
1568浮動小数点レジスタ 14196
1600浮動小数点レジスタ 15200
1632浮動小数点レジスタ 16204
1664浮動小数点レジスタ 17208
1696浮動小数点レジスタ 18212
1728浮動小数点レジスタ 19216
1760浮動小数点レジスタ 20220
1792浮動小数点レジスタ 21224
1824浮動小数点レジスタ 22228
1856浮動小数点レジスタ 23232
1888浮動小数点レジスタ 24236
1920浮動小数点レジスタ 25240
1952浮動小数点レジスタ 26244
1984浮動小数点レジスタ 27248
2016浮動小数点レジスタ 28252
2048浮動小数点レジスタ 29256
2080浮動小数点レジスタ 30260
2112浮動小数点レジスタ 31264

スクリプト関数

 

レジスタデータ型スクリプト関数インデックス
  (CAB 1.0 )
インデックス
  (CAB 2.1)
インデックス
  (Mini CAB)
DO 0〜63ブール値get_digital_output(type, index)
 set_digital_output(type, index, tarState, immed)
136 - 199144 - 207135 - 198
AO 0〜31整数(int)get_analog_output(type, index)
 set_analog_output(type, index, tarValue, immed)
64 - 9566 - 9765 - 96
AO 32〜63浮動小数点数(float)get_analog_output(type, index)
 set_analog_output(type, index, tarValue, immed)
96 - 12798 - 12997 - 128

 

レジスタデータ型スクリプト関数インデックス
  (CAB 1.0 )
インデックス
  (CAB 2.1)
インデックス
  (Mini CAB)
DI 0〜63ブール値get_digital_input(type, index)136 - 199144 - 207135 - 198
AI 0〜31整数(int)get_analog_input(type, index)72 - 10366 - 9764 - 95
AI 32〜63浮動小数点数(float)get_analog_input(type, index)104 - 13598 - 12996 - 127

EtherNet/IPアドレス表

説明

符号の説明:

  1. 各データモジュールにはデータ伝送方向の識別子があります。R->PはロボットからPLCへデータを送信することを、P->RはPLCからロボットへデータを送信することを示します。
  2. DIはデジタル入力を、DOはデジタル出力を、AIはアナログ入力を、AOはアナログ出力を示します。

表の説明:

  1. 行の数字はBIT位置を表し、合計32ビット(4バイト)で、0から31までのBitです。列の数字は使用しているBIT数を示します。
  2. 各行にはデータの種類、占有ビット数、単位が記載されています。
  3. ユニットモジュールの部分では、関連データをひとつのデータモジュールにまとめ、データモジュール名、モジュールコード、バイト数を含みます。

Robot2PLC

 

伝送タイプ R->P ロボット->PLCPLC設定 合計492バイト
ビットデータユニットモジュールI入力アドレス
0ロボットシリアル番号 (int32)ロボット状態、 安全設定 
1_R->P_Robot_Safety
 20バイト
0
32サーボバージョン番号 (int32)4
64電源オン8.0
64+1ロボット有効8.1
64+2予約済み8.2
96MOTION_ERRCODE (int32)12
128動作モード uint816
128+8倍率モードレベル uint817
128+16緊急停止18.0
128+17衝突保護停止18.1
128+18ソフトリミットオン18.2
128+19REDUCE_MODE18.3
128+20予約済み18.4
160関節1電流(float[A]ジョイントパラメータ 
2_R->P_Joints
 128バイト + 16バイト
20
192関節2電流(float[A]24
224関節3電流(float[A]28
256関節4電流(float[A]32
288関節5電流(float[A]36
320関節6電流(float[A]40
352関節1位置(float[°]44
384関節2位置(float[°]48
416関節3位置(float[°]52
448関節4位置(float[°]56
480関節5位置(float[°]60
512関節6位置(float[°]64
544関節1速度(float[°/s]68
576関節2速度(float[°/s]72
608関節3速度(float[°/s]76
640関節4速度(float[°/s]80
672関節5速度(float[°/s]84
704関節6速度(float[°/s]88
736関節1トルク(float[Nm]92
768関節2トルク(float[Nm]96
800関節3トルク(float[Nm]100
832関節4トルク(float[Nm]104
864関節5トルク(float[Nm]108
896関節6トルク(float[Nm]112
928関節1サーボエラーコード(int32116
960関節2サーボエラーコード(int32120
992関節3サーボエラーコード(int32124
1024関節4サーボエラーコード(int32128
1056関節5サーボエラーコード(int32132
1088関節6サーボエラーコード(int32136
1120関節エラー状態(0: エラーなし、1: エラーあり) (uint8)140
1120+8関節イネーブル状態(0: 無効、1: 有効) (uint8)141
1120+16関節衝突状態(0: 未衝突、1: 衝突) (uint8)142
1120+24予約済み143
1152ロボット安全パラメータチェックサムint32144
1184予約領域 16バイト148
1312センサーのモーメントxfloat[Nm]TCPパラメータ 
3_R->P_TCP
 80バイト + 44バイト
164
1344センサーのモーメントyfloat[Nm]168
1376センサー トルク zfloat[Nm]172
1408センサー トルク rxfloat[Nm]176
1440センサー トルク ryfloat[Nm]180
1472センサー トルク rzfloat[Nm]184
1504TCP位置X(float)[mm]188
1536TCP位置Y(float)[mm]192
1568TCP位置Z(float)[mm]196
1600TCP位置RX(float[°]200
1632TCP位置RY(float[°]204
1664TCP位置RZ(float)[°]208
1696TCPオフセットXfloat[mm]212
1728TCPオフセットYfloat[mm]216
1760TCPオフセットZfloat[mm]220
1792TCPオフセットRXfloat[°]224
1824TCPオフセットRYfloat[°]228
1856TCPオフセットRZfloat[°]232
1888TCP線速度(float)[mm/s]236
1920TCP角速度(float)[°/s]240
1952予約済み 44 バイト244
2304ブールレジスタ 0-31ブール出力レジスタ DO 0~63
4_R->P_DO
8+4 バイト
288
2336ブールレジスタ 32-63292
2368予約4 バイト296
2400整数レジスタ 0整数出力レジスタ AO 0~23
5_R->P_AO_INT
96 バイト
300
2432整数レジスタ 1304
2464整数レジスタ 2308
2496整数レジスタ 3312
2528整数レジスタ 4316
2560整数レジスタ 5320
2592整数レジスタ 6324
2624整数レジスタ 7328
2656整数レジスタ 8332
2688整数レジスタ 9336
2720整数レジスタ 10340
2752整数レジスタ 11344
2784整数レジスタ 12348
2816整数レジスタ 13352
2848整数レジスタ 14356
2880整数レジスタ 15360
2912整数レジスタ 16364
2944整数レジスタ 17368
2976整数レジスタ 18372
3008整数レジスタ 19376
3040整数レジスタ 20380
3072整数レジスタ 21384
3104整数レジスタ 22388
3136整数レジスタ 23392
3168浮動小数点レジスタ 0浮動小数点出力レジスタ AO 0~23
6_R->P_AO_FLOAT
96 バイト
396
3200浮動小数点レジスタ 1400
3232浮動小数点レジスタ 2404
3264浮動小数点レジスタ 3408
3296浮動小数点レジスタ 4412
3328浮動小数点レジスタ 5416
3360浮動小数点レジスタ 6420
3392浮動小数点レジスタ 7424
3424浮動小数点レジスタ 8428
3456浮動小数点レジスタ 9432
3488浮動小数点レジスタ 10436
3520浮動小数点レジスタ 11440
3552浮動小数点レジスタ 12444
3584浮動小数点レジスタ 13448
3616浮動小数点レジスタ 14452
3648浮動小数点レジスタ 15456
3680浮動小数点レジスタ 16460
3712浮動小数点レジスタ 17464
3744浮動小数点レジスタ 18468
3776浮動小数点レジスタ 19472
3808浮動小数点レジスタ 20476
3840浮動小数点レジスタ 21480
3872浮動小数点レジスタ 22484
3904浮動小数点レジスタ 23488

PLC2Robot

 

転送タイプ P->RPLC->ロボットPLC 設定 合計:492 バイト
ビットデータユニットモジュール(データグループQ出力アドレス
0ブールレジスタ 0-31ブール入力レジスタ DI 0~63
7_P->R_DI
8+4 バイト
0
32ブールレジスタ 32-634
64予約4 バイト8
96整数レジスタ 0整数入力レジスタ AI 0~23
8_P->R_AI_INT
96 バイト
12
128整数レジスタ 116
160整数レジスタ 220
192整数レジスタ 324
224整数レジスタ 428
256整数レジスタ 532
288整数レジスタ 636
320整数レジスタ 740
352整数レジスタ 844
384整数レジスタ 948
416整数レジスタ 1052
448整数レジスタ 1156
480整数レジスタ 1260
512整数レジスタ 1364
544整数レジスタ 1468
576整数レジスタ 1572
608整数レジスタ 1676
640整数レジスタ 1780
672整数レジスタ 1884
704整数レジスタ 1988
736整数レジスタ 2092
768整数レジスタ 2196
800整数レジスタ 22100
832整数レジスタ 23104
864浮動小数点レジスタ 0浮動小数点入力レジスタ AI 0~23
9_P->R_AI_FLOAT
96 バイト
108
896浮動小数点レジスタ 1112
928浮動小数点レジスタ 2116
960浮動小数点レジスタ 3120
992浮動小数点レジスタ 4124
1024浮動小数点レジスタ 5128
1056浮動小数点レジスタ 6132
1088浮動小数点レジスタ 7136
1120浮動小数点レジスタ 8140
1152浮動小数点レジスタ 9144
1184浮動小数点レジスタ 10148
1216浮動小数点レジスタ 11152
1248浮動小数点レジスタ 12156
1280浮動小数点レジスタ 13160
1312浮動小数点レジスタ 14164
1344浮動小数点レジスタ 15168
1376浮動小数点レジスタ 16172
1408浮動小数点レジスタ 17176
1440浮動小数点レジスタ 18180
1472浮動小数点レジスタ 19184
1504浮動小数点レジスタ 20188
1536浮動小数点レジスタ 21192
1568浮動小数点レジスタ 22196
1600浮動小数点レジスタ 23200
1632予約済み予約済み 288 バイト204
  
  
  
  
  
  
3904488

スクリプト関数

 

レジスタデータ型スクリプト関数インデックス
DO 0〜63ブール値get_digital_output(type, index)
 set_digital_output(type, index, tarState, immed)
0-63
AO 0-23整数(int)get_analog_output(type, index)
 set_analog_output(type, index, tarValue, immed)
0-23
AO 24-47浮動小数点数(float)get_analog_output(type, index)
 set_analog_output(type, index, tarValue, immed)
24-47

 

レジスタデータ型スクリプト関数インデックス
DI 0〜63ブール値get_digital_input(type, index)0-63
AI 0-23整数(int)get_analog_input(type, index)0-23
AI 24-47浮動小数点数(float)get_analog_input(type, index)24-47
最終更新日: