デバイス定義
デバイスの定義を変更するには、OverviewビューでDevice definitionを選択します。
プロジェクトに初めてモジュールを追加すると、Device Definitionダイアログには、デフォルトでChannel 0がDisabledに設定されたOverviewビューのみが表示されます。 Channel 0パラメータに何を選択したかに応じて、追加のパラメータが表示される場合があります。
Channel 0をModbus Masterに設定すると、Channel 0 – Modbus Masterビューが表示されます。 詳細は、Channel 0 – Modbus Masterビューを参照してください。
OverviewビューでChannel 0をModbus Slaveに設定すると、Channel 0 – Modbus Slaveビューが表示されます。 詳細は、Channel 0 – Modbus Slaveビューを参照してください。
Overviewビュー
デバイスを定義したり、デバイス定義を変更したりするには、Device DefinitionダイアログのOverviewビューを使用します。
Device Definitionダイアログ - Overviewビュー

Overviewビューには、以下のパラメータがあります。
パラメータ | 定義 | 選択肢 |
---|---|---|
Device Type (デバイスタイプ) | デバイスのカタログ番号とタイプが表示されます。 | デバイス固有 |
Name (名前) | IEC 61131準拠のデバイス名を 入力します。 このフィールドに無効な文字を入力した場合、または名前が40文字を超えている場合は、ソフトウェアによってその文字が無視されます。 | すべての有効な値 |
Description (説明) | デバイスの説明を入力します。 | すべての有効な値 |
Slot (スロット) | デバイスが取付けられているスロット番号を指定します。 プラットフォームに応じて、1からI/Oデバイスの最大数までのスロットのみが有効です。 デバイスが作成されると、スロット番号は使用可能な最初のスロット位置にデフォルトで設定されます。 最大I/O点数の少ないコントローラに変更すると、現在のスロット値が無効になる場合があります。 | 1~32 |
Series (シリーズ) | デバイスのシリーズを指定します。 | デバイス固有 |
Revision (リビジョン) | デバイスのメジャーリビジョンとマイナーリビジョンを指定します。 マイナーリビジョンの有効な範囲は1~255です。 | デバイス固有 |
Electronic Keying (電子キーイング) | デバイスに使用される電子キーイングを定義します。 電子キーイングでは、プロジェクト内で定義されたデバイスと取付けられたデバイスを比較します。 キーイングに失敗した場合、フォルトが発生します。 電子キーイングの詳細は、『Electronic Keying in Logix 5000 Control Systems Application Technique』(Pub.No. LOGIX-AT001)を参照してください。 |
注意:
Disabled Keying
オプションの使用には特に注意が必要です。使い方を誤ると、人身傷害や死亡、物的損害、経済的損失につながる可能性があります。 当社では、ユーザがDisable Keyingを使用しない ことを強くお奨めします。 Disable Keyingの使用に
あたっては、使用するデバイスがアプリケーションの機能要件を満たすかどうかを十分に理解した上でお客様の責任において使用してください。 |
Connection (コネクション) | デバイスとコントローラの間で転送されるデータのタイプを指定します。 | データ(デフォルト) |
Channel 0 (チャネル0) | シリアルデバイスとの間でデータを送受信するためにチャネルで使用されるプロトコルを指定します。 |
詳細は、表 2を参照してください。 |
通信モード | 定義 |
---|---|
Disabled (無効) | チャネルは使用されず、コントローラとシリアルモジュール間の物理的接続が有効ではありません。 |
Generic ASCII (汎用ASCII) | 通信であらゆるユーザデータを送受信するように定義できる一般的なシリアル通信モード。 |
Modbus Master (Modbusマスタ) | デバイスは、接続されているスレーブデバイスにModbusクエリまたは書込みコマンドを送信します。 |
Modbus Slave (Modbusスレーブ) | デバイスは、外部マスタのスレーブとして動作し、マスタからのコマンドを待機します。 |
Channel 0 – Modbus Masterビュー
Modbus Masterビューでは、Modbus Masterデバイスを定義できます。
Channel 0 – Modbus Masterビューの例

Modbus Masterビューには、以下のパラメータがあります。
パラメータ | 定義 | 選択肢 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Command (コマンド) | 構成するコマンドのインデックスが表示されます。 | 0~49 | ||||||||||||||||||
Communication Method (通信方法) | コマンドの通信方法を指定します。
ヒント:
Communication Methodが
Disabledになっている場合、パラメータは使用できません。
|
| ||||||||||||||||||
Data Type (データタイプ) | コマンドのデータタイプを指定します。 |
| ||||||||||||||||||
Function Code (ファンクションコード) | コマンドの機能を指定します。 各ファンクションコードの選択の説明については、表 4を参照してください。 | コマンドの機能を指定します。 有効な値はData Typeによって 異なります。 Data TypeがBOOLの場合:
Data TypeがINTの場合:
Data TypeがREALの場合:
| ||||||||||||||||||
Slave (スレーブ) | ModbusSlaveデバイスのノードアドレスを指定します。 | 特定のModbus Slaveデバイスの有効なアドレスは1~247です。
ブロードキャストコマンドの場合は、Slaveを0に設定します。ブロードキャストコマンドは、書込みコマンドのみが可能です。 | ||||||||||||||||||
Register Start Address (レジスタ開始アドレス) | 読取りまたは書込み中のレジスタの開始アドレスを指定します。 | 0~65,535 | ||||||||||||||||||
Data Count (データカウント) | 読取りまたは書込み中のデータタイプのデータ数を指定します。 REALが使用されている場合、各データは2つのレジスタを使用します。 読取り/書込みが行われる連続レジスタの数は以下の通りです。
データカウントで決定される終了アドレスが、最大アドレス65,535を超えてはなりません。
終了アドレスは(レジスタ開始アドレス + レジスタ数 - 1)として 計算されます。 | 有効なデータ長の値は、Data TypeとFunction Codeによって異なります。
| ||||||||||||||||||
Poll Interval (ポーリング間隔) | 連続モードのときコマンドが実行される間の秒数を指定します。 例えば、Poll Intervalが10に 設定されている場合、Modbus
Masterはコマンドを再度実行するまで10秒待機します。Poll Intervalが 0に 設定されている場合、
Modbus Masterはコマンドの送信をできるだけ速く繰返します。
ヒント:
Communication Methodが
Conditionalの場合、このパラメータは使用できません。
| 0~32,767 | ||||||||||||||||||
Swap Mode (スワップモード) | Modbus Slaveとの間で送受信される 4バイトごとのデータの配列を指定します。 |
ヒント:
A、B、C、Dは、受信/送信データ内の4つの隣接するバイトを表しています。
| ||||||||||||||||||
Fault Enable (フォルト有効) | 読取りコマンドが失敗したときに、受信したデータをフォルト値で上書きするかどうかを指定します。 受信したデータをフォルト値で上書きするには、このチェックボックスをオンにします。
ヒント:
ファンクションコードが書込みコマンドの場合、このパラメータは使用できません。
| – | ||||||||||||||||||
Fault Value (フォルト値) | 読取りコマンドが失敗したときに、受信したデータと置き換える値を指定します。 | – | ||||||||||||||||||
Connection 1/Connection 2 (コネクション1/コネクション2) | コマンド通信では、デフォルトでコネクション1が使用されます。 コマンドのデータサイズがコネクション1で使用可能な残りのデータ量を超えた場合は、代わりにコネクション2が使用されます。 | – | ||||||||||||||||||
Input (入力) | そのコネクションの残りの読取りデータ量を示します。 | – | ||||||||||||||||||
Output (出力) | そのコネクションの残りの書込みデータ量を示します。 | – |
データタイプ | ファンクションコード | 説明 |
---|---|---|
BOOL | Read Coil (ファンクションコード01) | スレーブデバイスのコイルの1~2000の連続ステータスを読取ります。 |
Read Discrete Inputs (ファンクションコード02) | スレーブデバイスのディスクリート入力の1~2000の連続ステータスを読取ります。 | |
Write Single Coil (ファンクションコード05) | スレーブデバイスのオンまたはオフに1つの出力を書込みます。 | |
Write Multiple Coils (ファンクションコード15) | スレーブデバイスのオンまたはオフに1~1968の連続出力を書込みます。 | |
INT | Read Holding Registers (ファンクションコード03) | スレーブデバイスのINT保持レジスタの1~125の連続ブロックを読取ります。 |
Read Input Registers (ファンクションコード04) | スレーブデバイスのINT入力レジスタの1~125の連続ブロックを読取ります。 | |
Write Single Register (ファンクションコード06) | スレーブデバイスの1つの保持レジスタに書込みます。 | |
Write Multiple Registers (ファンクションコード16) | スレーブデバイスのINT保持レジスタの1~123の連続ブロックに書込みます。 | |
REAL | Read Holding Registers (ファンクションコード03) | スレーブデバイスのREAL保持レジスタの1~62の連続ブロックを読取ります。 |
Read Input Registers (ファンクションコード04) | スレーブデバイスのREAL入力レジスタの1~62の連続ブロックを読取ります。 | |
Write Multiple Registers (ファンクションコード16) | スレーブデバイスのREAL保持レジスタの1~61の連続ブロックに書込みます。 |
マスタ・コマンド・リストの制限事項
マスタ・コマンド・リストの制限事項は以下の通りです。
- 作成できるコマンド数は最大で50個です。 コマンド数は、使用可能なコネクションメモリによって変わります。
- 各Modbus Masterは、最大2つのデータコネクションをサポートします。
- コネクション1は、最大464バイトの読取りデータと最大476バイトの書込みデータをサポートします。
- コネクション2は、最大472バイトの読取りデータと最大488バイトの書込みデータをサポートします。
- 各コマンドでは、以下を使用します。
- 読取る保持レジスタまたは入力レジスタごとに、2バイトの入力データ。
- 読取る1~8個のコイルまたはディスクリート入力ごとに、1バイトの入力データ。
- 書込む保持レジスタごとに、2バイトの出力データ。
- 書込む1~8個のコイルごとに、1バイトの出力データ。
- コネクションメモリの限度を超えると、エラーメッセージが表示されます。
マスタコマンドのメモリ使用量
以下に、マスタコマンドのメモリ使用量の例を示します。
- レジスタの場合の最大の単一コネクション構成:
- 223ワード * 2バイト/読取るワード = 446入力バイト
- 241ワード * 2バイト/書込むワード = 482出力バイト
- コイルの場合の最大の単一コネクション構成:
- 3576ビット/8ビット/読取るバイト = 447入力バイト
- 3856ビット/8ビット/書込むバイト = 482出力バイト
Channel 0 – Modbus Slaveビュー
Modbus Slaveビューでは、Modbus Slaveデバイスを定義できます。
Channel 0 – Modbus Slaveビューの例

Modbus Slaveビューには、以下のパラメータがあります。
パラメータ | 定義 | 選択肢 |
---|---|---|
Register Mapping Number (レジスタマッピング番号) | レジスタマッピング番号が表示されます。 | 0~29 |
Register Type (レジスタタイプ) | レジスタのタイプを指定します。
ヒント:
レジスタタイプが無効な場合、パラメータは使用できません。
|
|
Data Type (データタイプ) | レジスタのデータタイプを指定します。 | 使用可能なオプションは、選択したレジスタタイプに基づいています。 CoilsとDiscrete Inputsの場合は、以下の オプションを使用できます。
Holding RegistersとInput Registersの場合は、 以下のオプションを使用できます。
|
Register Start Address (レジスタ開始アドレス) | レジスタの開始アドレスを指定します。 | 0~65,535 |
Data Count (データカウント) | データタイプのデータ数を指定します。 | 有効な値はData Typeによって 異なります。
読取り/書込みが行われる連続レジスタの数は以下の通りです。
同じレジスタタイプの2つのマッピングがある場合、それらのレジスタ範囲が重なってはなりません。 各マッピングのレジスタ範囲は、レジスタ開始アドレスからマッピングの終了アドレスまでです。 終了アドレスは(レジスタ開始アドレス + レジスタ数 - 1)として計算されます。 各マッピングの終了アドレスは、最大アドレス65,535を超えてはなりません。 |
Buffer Index (バッファインデックス) | 入力/出力タグのレジスタバッファのバッファインデックスを指定します。 これらのタグは、
HoldingRegister[y]、
Coil[z]、InputRegister[y]、およびDiscreteInput[z]です。ここで「y」と「z」はバッファインデックスです。 |
このレジスタマッピングで使用される連続バッファの数は、以下の通りです。
同じレジスタタイプの2つのマッピングがある場合、それらのバッファ範囲が重なってはなりません。 バッファ範囲は、バッファインデックスからデータカウントで決定される終了バッファインデックスまでです。 終了バッファインデックスは、(バッファインデックス + バッファ数 - 1)として計算されます。 各マッピングの終了バッファインデックスは、上記で定義されたバッファインデックスの有効な範囲を超えてはなりません。 |
バッファ・インデックス・エラーの例

Modbus Slaveのアドレステーブルの制限事項
使用可能なメモリに応じて、Moduleスレーブのアドレステーブルで最大30のデータポイント範囲を作成できます。
- 最大200バイトの保持レジスタ(INTは最大100、REALは最大50)
- 最大200バイトの入力レジスタ(INTは最大100、REALは最大50)
- 最大128個のコイル(8ビット境界でData Index 0~15)
- 最大128個のディスクリート入力(8ビット境界でData Index 0~15)
Modbus Slaveのデータマッピングの例
Modbus Slaveのデータマッピングの例

図 5に示されているデータは、以下のようにモジュールタグから解釈できます。
- v:2:O1.Slave.HoldingRegister[0~2] = 400003~400005
- v:2:O1.Slave.HoldingRegister[3~9] = 432000~432006
- v:2:O1.Slave.HoldingRegister[10~99] = 400999~410088
- v:2:O1.Slave.Coil[0].0~0.7 = 000000~000007
- v:2:O1.Slave.Coil[1].0 = 000010
- v:2:O1.Slave.Coil[2].0~[4].0 = 0320000~032016
- v:2:O1.Slave.Coil[5].0~[15].7 = 000999~001086

ご質問やご意見