MODBUS

説明

ここでは、MODBUS クライアント(マスター)信号を設定できます。 指定されたIPアドレス上のMODBUSサーバー(またはスレーブ)への接続は、入出力信号(レジスタまたはデジタル)で作成できます。 各シグナルには一意の名前が付いているため、プログラムで使用できます。

 

更新

このボタンを押すと、すべてのMODBUS接続が更新されます。 更新すると、すべてのモッドバスユニットが切断され、再び接続されます。 すべての統計がクリアされます。

 

ユニットを追加

このボタンを押して、新しいMODBUSユニットを追加します。

 

ユニットを削除

このボタンを押すと、MODBUSユニットとそのユニットのすべての信号が削除されます。

 

ユニットIPを設定

ここにMODBUSユニットのIPアドレスが表示されます。 ボタンを押して変更します。

 

シーケンシャルモード

[詳細設定を表示] が選択されている場合のみ使用可能です。このチェックボックスを選択すると、Modbus クライアントは次のリクエストを送る前に応答を待たなければなりません。 このモードは、一部のフィールドバスユニットで必要です。 このオプションをオンにすると、複数の信号がある場合に役立ち、要求周波数を増やすと信号が切断される可能性があります。

実際の信号周波数は、複数の信号がシーケンシャルモードで定義されているときに要求されるよりも低くなり得る。 実際の信号の頻度は、信号統計より確認することができます。 実際の信号周波数が 周波数 ドロップダウンリストから選択した値の半分未満である場合、信号インジケータは黄色に変わります。

 

シグナルを追加

このボタンを押すと、対応するMODBUSユニットに信号が追加されます。

 

シグナルを削除

対応するModbusユニットからMODBUS信号を削除するには、このボタンを押します。

 

信号タイプを設定

このドロップダウンメニューを使用して、信号タイプを選択します。

利用可能なタイプは次のとおりです。

デジタル入力
デジタル入力(コイル)は、信号のアドレスフィールドで指定されたコイル上のMODBUSユニットから読み取られる1ビット量です。 機能コード0 x 02 (離散入力の読み取り)が使用されます。
デジタル出力
デジタル出力(コイル)は、高または低のいずれかに設定できる1ビット量です。 この出力の値がユーザーによって設定される前に、値はリモートMODBUSユニットから読み取られます。 これは、機能コード0 x 01 (リードコイル)が使用されていることを意味します。 ロボットプログラムによって、または [set signal value] ボタンを押して出力が設定されている場合、機能コード 0x05(単一コイル書き込み)がそれ以降は使用されます。
入力を登録する
レジスタ入力は、アドレスフィールドで指定されたアドレスから読み取られた16ビットの量です。 機能コード0 x 04 (入力レジスタの読み取り)が使用されます。
出力を登録する

レジスタ出力は、ユーザーが設定できる16ビットの量です。 レジスタの値が設定される前に、その値はリモートMODBUSユニットから読み取られます。 これは、機能コード0 x 03 (保持レジスタの読み取り)が使用されることを意味します。 出力がロボットプログラムによって設定されている場合、または 設定信号値 フィールドに信号値を指定することによって、機能コード0 x 06 (書き込みシングルレジスタ)を使用してリモートMODBUSユニットに値を設定します。

 

信号アドレスの設定

このフィールドには、リモートMODBUSサーバー上のアドレスが表示されます。 画面上のキーパッドを使用して、別の住所を選択します。 有効なアドレスは、リモートMODBUSユニットのメーカーと構成によって異なります。

 

シグナル名の設定

画面上のキーボードを使用して、ユーザーは信号に名前を付けることができます。 この名前は、信号がプログラムで使用されるときに使用されます。

 

信号値

ここでは、信号の現在値を示しています。 レジスタ信号の場合、値は符号なし整数として表されます。 出力信号の場合、ボタンを使用して希望の信号値を設定できます。 繰り返しになりますが、レジスタ出力の場合、ユニットに書き込む値は符号なし整数として指定する必要があります。

 

シグナル接続ステータス

このアイコンは、信号が正しく読み書きできるかどうか(緑色)、またはユニットが予期しない応答をするかどうか(灰色)を示します。 MODBUS 例外応答を受信すると、応答コードが表示されます。 MODBUS - TCP例外応答は次のとおりです。

E 1
不正な関数( 0 x 01 )クエリで受信した関数コードは、サーバー(またはスレーブ)に対して許容されるアクションではありません。
E 2
不正なデータアドレス( 0 x 02 )クエリで受信した機能コードは、サーバー(またはスレーブ)に対して許容されるアクションではありません。入力された信号アドレスがリモートMODBUSサーバーのセットアップに対応していることを確認してください。
E 3
不正データ値(0x03)。クエリーデータフィールドに含まれる値は、サーバー(またはスレーブ)で許可されていません。入力した信号値がリモート MODBUS サーバー上の指定アドレスにとって有効かどうかを確認してください。
E 4
スレーブデバイスの障害( 0 x 04 )サーバー(またはスレーブ)が要求されたアクションを実行しようとしているときに、回復不能なエラーが発生しました。
E 5
確認応答( 0 x 05 )リモートMODBUSユニットに送信されたプログラミングコマンドと併せて特殊な使用。
E 6

スレーブデバイスビジー( 0 x 06 )リモートMODBUSユニットに送信されたプログラミングコマンドと併せて特別に使用すると、スレーブ(サーバー)は現在応答できません。

 

詳細オプションを表示

このチェックボックスは、各信号の詳細オプションを表示/非表示にします。

 

詳細オプション
更新頻度
このメニューを使用して、信号の更新頻度を変更できます。 これは、信号値の読み取りまたは書き込みのために要求がリモートMODBUSユニットに送信される頻度を意味します。 頻度が0に設定されている場合、MODBUSの要求は modbusgetsignalstatusmodbussetoutputregister、および modbussetoutputsignal スクリプトの機能を使ってオンデマンドで開始されます。
スレーブアドレス
このテキストフィールドは、特定の信号に対応する要求の特定のスレーブアドレスを設定するために使用できます。 値は両方とも0 ~ 255の範囲でなければなりません。デフォルトは255です。 この値を変更する場合は、スレーブアドレスを変更する際に、リモートMODBUSデバイスのマニュアルを参照してその機能を確認することをお勧めします。
再接続回数
TCP接続が閉じられ、再び接続された回数。
接続状態
TCP接続ステータス。
応答時間 [ms]
Modbus要求が送信され、応答が受信されるまでの時間-通信がアクティブな場合にのみ更新されます。
Modbusパケットエラー
エラー(すなわち、無効な長さ、欠落しているデータ、TCPソケットエラー)を含む受信パケットの数。
タイムアウト
応答を取得しなかったmodbus要求の数。
リクエストに失敗しました
無効なソケットステータスのために送信できなかったパケットの数。
実際の周波数

クライアント(マスター)信号のステータス更新の平均頻度。 この値は、信号がサーバ(またはスレーブ)から応答を受信するたびに再計算される。

すべてのカウンターは65535までカウントされ、0まで折り返されます。