Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロード

Paid ¥4.99Paid ¥4.99

该内容已接入现有会员/付费系统,解锁后可查看完整资料或下载附件。

查看解锁方式
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロード
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure

無料で利用できるミニプログラム!!

Modbus Pollの概要

Modbus Pollは、さまざまな目的のために特別に開発された使いやすいModbusマスターシミュレータです。

以下を含む。

  • Modbusスレーブデバイス設計者がプロトコルインタフェースを迅速かつ簡単にテスト
  • Modbusデバイスやネットワークをフィールドでテストするオートメーションエンジニア
  • デバイスから特定のサービスデータを読み取りおよび/または変更したいサービスエンジニア
  • スレーブのModbusレジスタの変更
  • Modbusデバイスからのデータの記録
  • トラブルシューティングとコンプライアンステスト

Modbus Pollのシステム要求

ハードウェア要件

プロセッサー。1 GHz以上の1 GB RAMを推奨
5 MBのハードディスク空き容量
1,024 x 768ディスプレイ解像度オペレーティングシステム要件

Windows 7からWindows 11までのすべてのバージョンのWindowsをサポートします。

Modbus Pollの機能

接続する。

Modbus Pollは、スレーブデバイスへのデータの読み書きを行います。

  • RS 232またはRS 485ネットワーク上のModbus RTUまたはASCII。(USB/RS232/485ドングル)
  • TCP/IPベースのModbus。(Modbus RTU/ASCI IをTCPパケットにカプセル化)
  • UDP/IPベースのModbus。(Modbus RTU/ASCI IをUDPパケットにカプセル化)

サポートされるModbus機能

  • 0 1(0 x 0 1)リードコイル
  • 0 2(0 x 0 2)離散入力の読み取り
  • 0 3(0 x 0 3)リードホールドレジスタ
  • 0 4(0 x 0 4)入力レジスタの読み込み
  • 0 5(0 x 0 5)シングルコイルへの書き込み
  • 0 6(0 x 0 6)単一レジスタに書き込む
  • 08 0 x 08 Diagnosticsシリアル回線のみ
  • 11 (0 x 0B)Communicationイベントカウンタの取得(シリアル回線のみ)
  • 15 (0 x 0F)複数のコイルに書き込む
  • 16 (0 x 10)複数のレジスタに書き込む
  • 17 (0 x 11)レポートサーバー ID(シリアル行のみ)
  • 22 (0 x 16)マスク書き込みレジスタ
  • 23 (0 x 17)複数のレジスタの読み書き
  • 43 / 14 0 x 2 B/0 x 0EデバイスIDの読み取り

データ·レコード

  • テキストファイルへのデータの記録
  • データをExcelに直接記録する

表示フォーマット

各セルは個別にフォーマットできます。

中国語の説明英語での説明
16ビット符号付きレジスタSigned 16-bit register
16ビット符号なしレジスタUnsigned 16-bit register
16進法Hex
BinaryシングルBinary
任意のワード/バイト順序の32ビット符号付き整数32-bit signed integer with any word/byte order
任意のワード/バイト順序の32ビット符号なし整数32-bit unsigned integer with any word/byte order
任意のワード/バイト順序の64ビット符号付き整数64-bit signed integer with any word/byte order
任意のワード/バイト順序の64ビット符号なし整数64-bit unsigned integer with any word/byte order
任意のワード/バイト順序の32ビット浮動小数点数32-bit float with any word/byte order
任意のワード/バイトの64ビット倍精度小数点数64-bit double float with any word/byte order

その他の機能

  • Excel、VBA、Pythonなどとのインターフェース用のOLE/Automation。
  • データトラフィックの監視
  • 印刷と印刷プレビュー
  • フォントの選択
  • 条件付き色
  • ズーム/Zoom
  • リアルタイムグラフ
  • ワークスペースの保存/オープン
  • アドレススキャン

Modbus Pollの概要

Modbus Pollはマルチウィンドウインタフェースを使用する。つまり、複数のウィンドウを開くことができます。それぞれが異なるスレーブデバイスから異なるデータコンテンツを同時に持っています。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure1

いつでもどこでも支援

F 1を参照。 現在選択されているアイテムに関連付けられているトピックのコンテキスト依存ヘルプを取得します。

SHIFT + F1 カーソルがヘルプカーソル(矢印+疑問符)に変わる特別な“ヘルプモード”を呼び出します。次に、ユーザーは、メニュー項目、ツールバーボタン、またはウィンドウなどのユーザーインターフェイス内で表示されるオブジェクトを選択することができる。これにより、選択したアイテムを説明するトピックに関するヘルプが開きます。

セルの名前

ここでは、任意のテキストを入力して値セルを指定できます。Excelのセルからテキストをコピー/ペーストすることもできます。

値のセル

Modbusレジスタのデータ値を表示する。値のセルをダブルクリックすると、新しい値をスレーブデバイスに書き込むダイアログが表示されます。値のセルに数値を入力すると、ダイアログボックスも表示されます。値の書き込みに使用するModbus関数を選択できます。

[応答が正常なときにダイアログを閉じる]チェックボックスは、値が正常に送信されたときに自動的にダイアログを閉じるために使用します。これは、多くの値を変更したい場合に便利です。これにより、新しいセルをすばやく选択して、新しい値を再度入力できます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure2

フォントの変更

フォントを変更するには、2つのオプションがあります。

  • 変更するセルを選択し、右クリックします。
  • 変更したいセルを選択し、メニュー →ディスプレイ→フォントを選択します。
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure3

条件付き色

条件付きカラーを使用すると、特定の範囲内の値を視覚的に表示できます。3色から選択

  • デフォルト色:trueと評価された条件色がない場合に使用されます。
  • ルール1:式がtrueと評価された場合、この色選択が使用されます。ルール1はルール2よりも優先される。
  • ルール2:式がtrueと評価された場合、この色選択が使用されます。

7つの比較演算子

中国語の説明英語での説明
未使用。not used
等しい。equal to
より大きい。greater than
より小さい。less than
以上に等しいgreater than or equal to
以下のようにless than or equal to
と、and

データ型が浮動小数点型または32ビット長型の場合、and演算子は使用できません。“and”を選択すると、条件値が16進数として入力されます。セルと条件値のどちらかのビットが1の、はtrueと评価されます。

色の例

セル値が0より大きいは绿、0より小さいは赤になります。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure4

ズーム/Zoom

スケーリングを使用すると、元の値を人間が読める値にスケーリングできます。スケーリングは、符号付きおよび符号なしの16/32ビット整数にのみ適用されます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure5

(X 1,Y 1)と(X 2,Y 2)

2点X1 Y1とX2 Y2を通る

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure6

線の方程式

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure7

精度は

小数点以下の桁数。

makeする

Modbusサーバ/スレーブから値をスケーリングするには、有効にする必要があります。それ以外の場合は、ズーム選択16/32ビット整数表示形式が自動的に無効になります。

リアルタイムグラフ

グラフは、最大100,000点の12系列をリアルタイムで描画できます。

アドレススキャン

アドレス範囲をスキャンして、デバイス内のすべての有効なアドレスのリストを取得します。

新しいウィンドウを開く。

別のウィンドウを開くには、3つのオプションがあります。

  • Ctrl+Nキー
  • “ファイル”メニューから“新規”を選択
  • 圧力をかける。Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure8“Toolbar”

接続ダイアログ

接続ダイアログを開くには、2つのオプションがあります。

  • 略称はF 3。
  • 接続メニューから接続を選択します
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure9

接続する。(Connection)

接続には5種類あります。

  1. Serialより:
    シリアルライン上のModbus。RS 232またはRS 485 USBシリアルコンバータが使用できる。
  2. Modbus TCP/IP:
    MODBUS TCP/IPネットワークとCommunicationする場合は、“TCP/IP”を選択します。この例では、スレーブIDはMODBUS TCP/IPで使用されるデバイスIDと同じです。
    ポート番号は502です。
    接続に失敗した場合は、コマンド·プロンプトでデバイスにPINGを実行してみてください。pingコマンドが失敗すると、Modbusのポーリングも失敗します。
  3. Modbus UDP/IP:
    MODBUS UDP/IPネットワークとCommunicationする場合は、UDP/IPを選択します。これはModbusと同じTCP/IPですが、接続の少ないUDPプロトコルに置き換えられます。
  4. Modbus RTU/ASCII over TCP/IP:
    これは、シリアル回線ではなくTCP/IPネットワークを介して送信されるRTUまたはASCIIメッセージです。
  5. Modbus RTU/ASCII over UDP/IP:
    これは、シリアル回線ではなくUDP/IPネットワークを介して送信されるRTUまたはASCIIメッセージです。

注:接続タイプ3-5はありません。 www.modbus.org 標準Modbusが指定されているが、便宜上追加されている。

選択に応じて、その他の設定はグレー表示されます。

シリアルポートの設定(Serial Settings)

これらのパラメータを使用して、シリアルポート設定を設定します。接続タイプがある場合のみ。シリアルポート”といった時にのみ利用可能になる。

モデルは

このオプションを使用して選択します RTU または ASCII モデルです。略称はRTU。

レスポンス·タイムアウト

Modbusポーリングが破棄されるまで、スレーブデバイスからの応答を待つ時間を指定します。デフォルト値は1000msです。

ポーリング间の最小遅延

この設定により、スキャン·レートに関係なく、次のリクエストが転送されるまでのレイテンシが最小限に抑えられます。この設定の解像度は約15 msです。一部のコンピュータではより良い解像度が得られますが、すべてではありません。

注意点:

1.この値を20ミリ秒未満に設定すると、レスポンスと新しいリクエストの間の3.5文字の間隔は保証されません。これは、Windowsスケジューラが10 ~ 20ミリ秒ごとにタスクを切り替えるためです。

2.シリアルRS 485ネットワーク内の複数のスレーブをポーリングする場合は、この値を20ミリ秒未満に設定しないでください。これは3.5文字間隔を確保するためです。

3. TCP/IPネットワークでは、20ミリ秒未満でも構いません。

4. 1つのスレーブデバイスへのシリアル接続のみが20ミリ秒未満で十分です。

ユーザーボーレート

デフォルトのボーレートが使用できない場合は、カスタムボーレートを指定します。

リモートサーバ

リモート·サーバの設定は、Ethernet接続を使用している場合にのみ使用できます。

IPアドレス

サーバーのIPアドレスデフォルト値は127.0.0.1です。

ポートポートポート

サーバーのポート番号デフォルト50 2

接続タイムアウト

接続を確立するために使用される最大時間。デフォルト値1000

高度な設定

RTS切り替え

RTS Toggleは、バイトが転送可能な場合、RTS行がハイレベルになることを指定します。すべてのバッファバイトが送信されると、RTS 行はローレベルになります。
自動方向切り替えがない232/485コンバータをお持ちの場合は、方向を切り替えるために使用できます。

注意点:

可能な限り、RTS制御RS 232/RS 485コンバータの使用は避けてください。WindowsやLinuxなどのオペレーティングシステムが非リアルタイムで送信機をシャットダウンした正確な時間を決定することは困難です。早期にシャットダウンすると、文字がFIFOまたはUARTの送信レジスタに残り、文字が失われる可能性があります。奴隷はメッセージを認識できなかった。一方、シャットダウンが遅すぎると、スレーブのメッセージが破損し、マスターはメッセージを認識できなくなります。

DSR形式

DSRは、出力フロー制御のためにDSR Data Set Ready信号を監視するかどうかを指定します。このメンバーがTRUEで、がオフの、が再送信されるまで出力は保留されます。

CTSサービス

CTSは、出力フロー制御のためにCTS clear-to-send信号を監視するかどうかを指定します。このチェックボックスをオンにしてCTSをオフにすると、CTSが再度送信されるまで出力が一時停止されます。

DTRコーポレーション

DTRは、ポートを開くときにDTRを有効にするか無効にするかを指定します。

エコーの削除

お使いのデバイスまたはRS 232/RS 485コンバータが送信した文字をエコーする場合。

Read/Write Definition

このコマンドを使用して、監視するアクティブなウィンドウのデータを定義します。

Read/Write Definitionダイアログを開くには、3つのオプションがあります。

  • 略称はF 8。
  • [設定]メニューから[読み取り/書き込み定義]を選択します。
  • 圧力をかける。Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure10“Toolbar”
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure11

ステーションIDから。

1から255までの範囲。(MODBUSプロトコル仕様は247です。値0は、MODBUS/TCPまたはMODBUS/UDPデバイスと直接通信するためにも使用できます。

関数コードの機能

8つの機能コードから1つを選択できます。

読み込み関数

read関数から返されたデータがグリッドウィンドウに表示されます。

  • 0 1:リードコイル(0 x)
  • 0 2:離散入力の読み取り(1 x)
  • 0 3:リードホールドレジスタ(4 x)
  • 0 4:入力レジスタの読み取り(3 x)

関数の記述

write関数はグリッドウィンドウに表示されるデータを書き込みます。

  • 05単一コイルへの书き込みコイル
  • 0 6:単一レジスタに書き込む(書き込み保持レジスタ)
  • 15複数のコイルに書き込むコイルに書き込む
  • 16:複数のレジスタに書き込む(書き込み保持レジスタ)

アドレス:address

Modbusプロトコルのアドレスは紛らわしい!プロトコル/メッセージアドレスを使用するプロトコル仕様もあれば、デバイスアドレスを使用するプロトコル仕様もある。

プロトコル/メッセージアドレス

一部のプロトコル仕様では、0から655 3 5までのプロトコル/メッセージアドレスと関数コードを使用します。これは新しいModbus仕様でも使用されています。これは、ネットワーク経由で送信されるメッセージ内のアドレスです。

Modbus Pollはプロトコル/メッセージアドレスカウントを0から655 3 5まで使用する。

デバイスアドレス

一部のプロトコル仕様はデバイスアドレス/レジスタを使用する。レジスタカウントは1から始まります。最初の数字は使用する関数を記述します。つまり、デバイスアドレス40101はアドレス100で識別されます。“4”は保持レジスタを示し、4 xレジスタは1からカウントを開始します。したがって、“4 XXX X”参照は暗黙的です。さらに紛らわしいのは、4 xが関数コード03、3 xが関数コード04です。

5桁の数字と6桁のアドレス指定

アドレス形式4 xは40001から49999までカウントされます。次のアドレス。いいえ。 5万人だ以前は9999アドレスで十分でした。しかし、9999では不十分です。そしてゼロを追加します。40101は400101になります。これを8ビット·アドレス指定または拡張アドレス指定と呼びます。

Modbus Pollではありません。410001は10000になります“4”は捨てられ、残りの10001は1ではなく0から数え始めると1が減る。

アドレスの例

これらの例は、デバイスアドレスを指定した場合にModbus Pollを設定する方法を示しています。

リードホールドレジスタ

デバイスアドレス40011の20個のレジスタを1000ミリ秒ごとにスレーブID 2から読み出すようにします。“4”から、これが関数03“read hold registers”であることがわかります。

  • ステーションID = 2
  • Function = “0 3 Read Hold Register(4 x)”
  • アドレス:10(11マイナス1)
  • サイズ= 20
  • スキャン速度= 1000
離散入力の読み取り

アドレス110201からID 5から500ミリ秒ごとに1,000個のコイルを読み出すようにします。“1”から、関数02“離散入力を読み取る”であることがわかります。

  • ステーションID = 5
  • Function = “0 2 read離散入力(1 x)”
  • アドレス:10200 (10201 - 1)
  • Quantity = 1,000
  • スキャン率 = 500

スキャンレート

スキャンレートは0 ~ 3600000msまで設定できます。スキャンレートをトランザクション時間よりも低く設定することは意味がないことに注意してください。9600ボーのシリアル接続を使用し、125レジスタを要求する場合、トランザクション時間は約8 + 2 + 250 + 2 = 262ms +リクエストとレスポンスの間の間隔(3.5文字時間)になります。この場合、トランザクション時間が少なくとも262ミリ秒+スレーブ遅延(ギャップ)+ポーリング間の最短時間であるため、スキャンレートを100msに設定しても意味がありません。(接続ダイアログF 3で設定)。

読み取り/書き込みの禁止

“読み取り/書き込みを無効にする”チェック·ボックスを使用すると、Communicationのこのウィンドウを一時的に有効または無効にできます。その後、テキストDisabledとTxおよびErrorカウンタが表示されます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure12
[読み取り/書き込み]が無効の場合は、[読み取り/書き込みOnce]ボタンを使用するか、F6キーを押して1つのリクエストを発行できます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure13
“Read/Write Once”ボタン

エラー時の無効化

エラーが発生したは、読み取り/书き込みを无効にします。

名前列の非表示

すべての名前列を非表示にします。それらを使用しない場合は、より多くのスペースを解放することができます。

セル内のアドレス

有効にすると、アドレスは値セルにも表示されます。例2000 = 0000

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure14

PLCアドレス(基数1)

このオプションを選択すると、アドレスがデバイスアドレスとして表示されます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure15

エンロン/ダニエルモデル

EnronまたはEnron/Daniels Modbusは、いくつかの“ベンダー拡張”を備えた標準Modbusです。これらの拡張の正確な影響はコンテキストに依存するが、ほとんどの一般的なModbusコマンドは期待通りに動作する。いくつかのカスタムベンダー定義関数が利用可能ですが、ユーザーが期待したり使用したりすることはほとんどありません。最大の影響は、32ビットのデータ値の読み書き方法に関係しています。

Enron-Modbusは2つの特別な4 x保持レジスタ範囲を定義している。

  • 4 x 5001 ~ 4 x 5999は、32ビットの長整数(レジスタあたり4バイト)を想定しています。
  • 4 x 70 0 1 ~ 4 x 7999は32ビット浮動小数点(レジスタあたり4バイト)を想定しています。

Modbusでの32ビット値の処理はEnron-MBに特有のものではない。しかし、Enron-MBは、Modbus仕様の“保持レジスタ”という用語である2バイトではなく4バイトをレジスタごとに返す必要があります。つまり、Enron-Modbusの4 x 5001と4 x 5002は8バイトまたは2つの32ビット整数を返すのに対し、Standard Modbusは4バイトまたは32ビット整数を返し、2つの16ビット整数として扱われる。さらに、Enron-MBのポーリングレジスタ4 x 5010は10番目の32ビット長整数を返しますが、標準のModbusはこの範囲の5番目の32ビット長整数の1/2を考慮します。

OKです。

グリッド内の任意の行数を指定します。

リアルタイムグラフ

このコマンドを使用すると、最大12個のデータ系列をリアルタイムでグラフに描画できます。
リアルタイムチャートは高速で、新しいデータを受信するとすぐに新しい線を描画できます。

注意点:

すべてのチャート設定はワークスペースファイルに保存されます。ワークスペースの保存/オープン

[ライブ·チャート]ダイアログ·ボックスを開くには、次の2つのオプションがあります。

  • Alt + Rキー
  • 表示メニューから“ライブ·チャート”を选択
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure16

X軸には、グラフの起動からの秒数が表示されます。

ポイントがグラフの最後に到達すると、3つのオプションがあります。

  • 最後にStop:グラフが止まる。
  • 最後の再起動:グラフ再開です。
  • 続きを読む:最大ポイントに達するか、Stopキーを押すまで続けます。

セットアップ

デフォルトでは、12個の系列すべてが左のY軸にリンクされています。シーケンスを右Y軸にリンクする場合は、[右Y軸]チェックボックスをチェックします。

指定する

  • 色は
  • 右のY軸
  • タイトルは。タイトルが空の場合は、読書ウィンドウの名前で初期化されます
  • オフセットオフセット

表示する。

  • ファイル名:File Name
  • アドレス:address

オフセットを使用して、同じY軸上でデータポイントを整列できます。例えば、データポイントが0または1であれば、互いに重なり合わないようにオフセットすることができます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure17

ズーム機能

より詳細な情報を表示したい場合は、グラフを拡大すると便利です。ズームはマウスの左ボタンで制御されます。チャートの特定の部分を拡大·縮小するには、チャート上でマウスの左ボタンをクリックし(これが拡大·縮小長方形の左上隅になります)、右下隅にドラッグします。長方形が現れます。マウスボタンを放すと、選択した領域に合わせて軸が自動的に調整されます。

グラフを左クリックした場合(ズームを開始するなど)、左上隅に移動すると、ズームおよびパン機能を使用して行ったすべての変更がキャンセルされます(グラフはパンおよびズームOperationを使用する前の状態になります)。

パンニング機能

コントロールをパンするには、コントロール上の場所を右クリックしてマウスを動かします。マウスの下の点はマウスの動きに追従します。

Modbusデータユニットを12シリーズのいずれかにリンクしない限り、チャートは使用するデータを知りません。これを行うには、値のセルを選択し、メニュー →表示から“チャートにリンク”を選択します。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure18

Exportシリーズ

シリーズ·データをディスクに保存するか、クリップボードにコピーします。データをExcelに直接貼り付けて、さらに処理します。
カンマ以外のフィールド区切り文字を使用していますが、ファイルの拡張子は.csvです。

区切り文字:テキスト·ファイルの値を区切る文字を選択します。Excelにコピー/ペーストするときは、タブ区切り文字を使用します。さらに、いくつかの追加情報が提供されます。

  • ポイント数ポイント
  • 最大値の値
  • 最小値の値
  • 平均得点率は
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure19

アドレススキャン

アドレス範囲をスキャンして、デバイス内のすべての有効なアドレスのリストを取得します。アドレスを1つずつ読み出し、読み出し結果がリストに表示されます。

注意点:

65,535アドレスすべてをスキャンするには、接続の種類、サーバデバイスなどによって時間がかかります。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure20

アドレススキャンのエクスポート

アドレススキャンデータをディスクに保存するか、クリップボードにコピーします。データをExcelに直接貼り付けて、さらに処理します。
カンマ以外のフィールド区切り文字を使用していますが、ファイルの拡張子は.csvです。

区切り文字:テキスト·ファイルの値を区切る文字を選択します。Excelにコピー/ペーストするときは、タブ区切り文字を使用します。

表示フォーマット

書式設定するセルをマークします。表示メニューから、28種類の表示形式のいずれかを選択します。

Native Modbusレジスタ

16ビットModbusレジスタは4つの異なるモードで表示できます。

  • 署名済み。
  • 符号なし。
  • 16進法
  • ASCII -16进数
  • 二元性の

32ビット符号付き整数

2つの16ビットModbusレジスタを搭載している。4つの異なるワード/バイト順序で表示できます。

  • 符号付き整数 Big-Endian
  • 符号付き整数 Little-Endian
  • 符号付き整数ビッグエンディアン·バイト·スワップ
  • 符号付き整数リトルエンディアンバイト交換例バイト順序:AB CD(ビッグサイズ)
    10進数 123456789または16進数 07 5B CD 15 Modbusメッセージで回線を通す
    並べた時の順序:07 5B CD 15

32ビット符号なし整数

2つの16ビットModbusレジスタを搭載している。4つの異なるワード/バイト順序で表示できます。

  • 符号なし整数 Big-Endian
  • 符号なし整数 Little-Endian
  • 符号なし整数ビッグエンディアン·バイト·スワップ
  • 符号なし整数リトルエンディアンバイト交換例バイト順序:AB CD(ビッグサイズ)
    10進数 123456789または16進数 07 5B CD 15 Modbusメッセージで回線を通す
    並べた時の順序:07 5B CD 15

64ビット符号付き整数

4つの16ビットModbusレジスタを搭載している。4つの異なるワード/バイト順序で表示できます。

  • 符号付き整数 Big-Endian
  • 符号付き整数 Little-Endian
  • 符号付き整数ビッグエンディアン·バイト·スワップ
  • 符号付き整数リトルエンディアンバイト交換例バイト順序:AB CD EF GH (Big-endian)
    10進数-1,23 4,56 7,890,123,45 6,78 9または16進数 EE DD EF 0B 82 16 7E EB
    Modbusメッセージでネットワーク経由で表示される順序:EE DD EF 0B 82 16 7E EB

64ビット符号なし整数

4つの16ビットModbusレジスタを搭載している。4つの異なるワード/バイト順序で表示できます。

  • 符号なし整数 Big-Endian
  • 符号なし整数 Little-Endian
  • 符号なし整数ビッグエンディアン·バイト·スワップ
  • 符号なし整数リトルエンディアンバイト交換例バイト順序:AB CD EF GH(Big-endian)
    10進数1,23 4,56 7,890,123,456,789または16進数 11 22 10 F4 7D E9 81 15 Modbusメッセージでネットワークを経由する
    順序付け:11 22 10 F4 7D E9 81 15

32ビット浮動小数点数

2つの16ビットModbusレジスタを搭載している。4つの異なるワード/バイト順序で表示できます。

  • 浮動小数点ビッグエンディアン
  • 浮動小数点リトルエンディアン
  • 浮動小数点ビッグエンディアンバイトスワップ
  • Float Little-Endianバイト交換の例バイト順序:AB CD(ビッグサイズ)
    浮動小数点数123456.00または16進数 47 F1 20 00 Modbusメッセージで回線を通す
    配列の順序:47 F1 20 00

64ビット倍精度小数点数

4つの16ビットModbusレジスタを搭載している。4つの異なるワード/バイト順序で表示できます。

  • ダブルビッグエンド
  • ダブルリトルエンディアン
  • デュアルビッグエンディアンバイトスワップ
  • ダブルリトルエンディアンバイト交換例バイト順序:AB CD EF GH(大端順序)
    浮動小数点数123456 7 8 9.0 0または16進数 41 9D 6F 34 54 00 00 00 Modbusメッセージで回線を通す
    順序付け:41 9D 6F 34 54 00 00 00

ワークスペースの保存/オープン

関連するModbusウィンドウが多数開いている場合、開いて配置されているModbusウィンドウの現在のレイアウトスナップショットを1つのワークスペースに簡単に保存できます。

ワークスペース *mbwは、开いているすべてのウィンドウの表示とファイル名を含むファイルです。実際の内容じゃないこれを行うには、“ファイル→ワークスペースを保存”に移動します。

[接続]と[チャート]の設定はワークスペースファイルに保存されます。

ワークスペースファイルを開くと、Modbus PollはすべてのModbusウィンドウを開き、保存したレイアウトに表示します。

csvへのエクスポート

名前と値をカンマ、セミコロン、またはタブ区切り値ファイルにエクスポートします。“ファイル”ダイアログから選択

  • コンマ区切り値ファイル *.csv
    “temperature”“19.7”
  • セミコロン区切り値ファイル *.csv
    “temperature”(19.7)
  • タブ区切り値ファイル *.txt
    気温は19.7

使用しているシステムによっては、カンマまたはピリオドが小数点以下の区切りに使用されます。

Modbus Slaveへのエクスポート

名前、値、および形式をModbus Slaveファイルにエクスポートします。*. mbsの

ファイルを開くにはModbus Slaveバージョン7.4.0以上が必要です。

試験センター試験

このテストダイアログの目的は、MODBUSスレーブデバイス開発者が独自に作曲した文字列を使用できるようにすることです。
リストボックスには、送信データと受信データが表示されます。
ドロップダウン·リスト·ボックスに複数のテスト文字列を含めることができます。文字列を入力したら、リストに追加ボタンを押して、リストに文字列を追加します。
送信ボタンが押されたときに選択した文字列を送信します。

リストを開く

テスト文字列をファイルから保持します。

リストの保存

テスト文字列をファイルに保存します。

クリアする。

テストリストをクリア。

リストに追加。

現在のテスト文字列をリストに追加します。

チェックの追加

入力文字列の最後にCRCまたはLRCを追加します。

テストセンターを使用する場合は、他のウィンドウからのCommunicationを無効にする必要があります。[読み取り/書き込み定義]ダイアログボックスの[読み取り/書き込み無効]チェックボックスをオンにします。Read/Write Definitionを設定する

ASCIIの例

コンボボックス内の文字列:3 A 30 31 30 33 30 30 30 30 30 30 30 30 41

LRCが追加された場合、送信される文字列3 A 30 31 30 33 30 30 30 30 30 30 41 46 32 0D 0 A

CR LFペアも追加されました。

TCP/IPの例

10予約レジスタを読み込む。0 0 0 0 0

最初の6バイトはTCP/IPヘッダです。

テストセンター文字列ファイル

メモ帳などのテキストエディタを使用すると、テストで使用する文字列を準備できます。
ファイルの最初の行は、文字列“Test Center”でなければなりません。これはModbus Pollが正しいファイル形式を知る方法です。“リストを開く”を押して準備したテキストファイルを開きます。

文字列リストの内容

TestCenter 3A 30 31 30 33 30 30 30 30 30 30 30 41 3A 30 32 30 33 30 30 30 30 30 30 30 41 3A 30 33 30 33 30 30 30 30 30 30 30 41

レプリケーション

[コピー]ボタンを使用して、選択したTx/Rx文字列をクリップボードにコピーします。
ShiftキーとCtrlキーをマウスとともに使用して、文字列の選択と選択解除、文字列グループの選択、隣接していない文字列の選択を行うことができます。

注意点:

他のコマンドを実行している間は、このウィンドウを開いたままにします。

Modbusデータログ

データをテキストファイルに記録することも、Microsoft Excelに直接記録することもできます。

テキストファイル

設定メニューから“ログ”を選択するか、ショートカットキーを使用しますAlt+L

各Modbusウィンドウは別々のテキストファイルに記録されます。

データロギングをStopする場合は、設定メニューのログアウトコマンドを選択します。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure21

ログレート

すべての読み取り。

すべてのModbusリクエストのログを作成する。周波数をスキャンレートとして記録します。

選択する。

ログレートを秒単位で指定します。スキャン速度に関係ない。

注意点:

スキャン·レートが10000ミリ秒の場合、データは新しいデータの準備ができたときにのみ記録されるため、1 秒のログレートを設定しても意味がありません。

セパレータ

区切り文字として、次のいずれかのオプションを使用できます。

固定幅の設定

値が列ごとに整理されていることを示します。

komoです。

カンマで区切られた値。

Labelsラベル

タブで区切られた値。

データが変更された場合のみログ

最後のログ以降にデータが変更された場合にのみ、新しいログ行が書き込まれるように指定します。

ログエラー

ログのタイムアウトなどのエラーを指定します。

ログの日付

現在の日付をログ時刻に追加するよう指定します。

区切り文字として“T”を使用する

時刻と日付は、ISO 86 0 1で指定された文字“T”で区切られます。

ログミリ秒

ログ時間にミリ秒を追加するよう指定します。

ログアドレス:Log Address

Modbusアドレスをログに追加するよう指定します。

OKから録音を開始。

okボタンが押されたときにログを開始するよう指定します。それ以外の場合、ログ設定は *mbpファイルを保存するときにのみ保存されます。

*mbpをオンにしたときに記録を開始

*.mbpファイルを開いたときにロギングが自動的に開始されるように指定します。

すぐにファイルに更新

これにより、ログラインはファイルシステムにキャッシュされず、物理的に即座に書き込まれます。

追加の追加

選択したファイルにログを追加するように指定します。それ以外の場合は、新しいファイルが作成されます。

真夜中の新規ログファイル

現在のログファイルを閉じ、真夜中に新しいファイルを開始します。ファイル名にタイムスタンプが追加されます。

ヘッダーファイル情報

  • タイトルを挿入:情報がログファイルの先頭に挿入されます。
    • 一番上の行のセルに名前を付ける名前を挿入。
    • 投票の定義:ID、機能などを挿入します。
    • お名前:ログの名前を挿入します。

固定幅のテキストファイルの例22:28:13 <40001> 17395 0 0 0 0 0 0 0 0 22:28:14 <40001> 17396 1 0 0 0 0 0 0 0 22:28:15 <40001> 17394 1 0 0 2 55 0 0 0 22:28:16 <40001> 13350 1 0 0 4 0 0 0 0

Excelスプレッドシートにデータをインポートできます。

Microsoft Excel

この機能には、Microsoft Excelが必要です。Excel 2003のログは、Excelワークシートの最大行数であるため、65,53 5ログに制限されています。Excel 2007以降では1,048,576行に制限されています。各Modbusウィンドウは、別々のExcelワークシートに記録されます。

設定メニューから[Excelログ]を選択するか、ショートカットキーを使用しますAlt+X

ロギング中はExcelワークシートに触れないでください。ロギングが中断されます。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure22

ログレート

  • それぞれの内容はこう書く。すべてのModbusリクエストのログを作成する。周波数をスキャンレートとして記録します。
  • 選択する:ログレートを秒単位で指定します。ログはスキャン·レートに依存しません。
    コメント:スキャン·レートが10000ミリ秒の場合、データは新しいデータの準備ができたときにのみ記録されるため、1 秒のログレートを設定しても意味がありません。
  • 以下の時間停止:ログの行数を指定します。Excel 2003では65,536行、Excel 2007では1,048,576行に制限されていることに注意してください。

ヘッダーファイル情報

  • タイトルを挿入:情報は、Excelワークシートの一番上の3 行に挿入されます。
    • 一番上の行のセルに名前を付ける3 行目に名前を挿入します。
    • 投票の定義:2 行目にID,機能などを挿入する.
    • お名前:1 行目にログ名を挿入します。
Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure23

ヘッダー情報を含むExcelログ。

Communicationトラフィックvalue

メニュー“表示→Communication”を選択して、シリアルラインまたはイーサネットケーブルのトラフィックを表示します。Stopボタンを使用して、チェックのため更新を一時的にStopします。

“コピー”ボタンを使用して、選択した行をクリップボードにコピーします。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure24

注意点:

このウィンドウにはModbus Pollが送受信するデータのみが表示されます。データスニファとしては使用できません。

他のコマンドを実行している間は、このウィンドウを開いたままにします。

OLE/オートメーション

オートメーション(旧OLEオートメーション)は、あるアプリケーションが別のアプリケーションで実装されたオブジェクトをOperationできるようにします。

オートメーションクライアントは、別のアプリケーションに属する公開オブジェクトをOperationできるアプリケーションです。オートメーションコントローラとも呼ばれます。

オートメーションサーバは、プログラム可能オブジェクトを他のアプリケーションに公開するアプリケーションです。Modbus Poll 自動化されたサーバーです。

つまり、Visual Basic、ExcelなどのVBA(Visual Basic for Applications)をサポートする任意のプログラムを使用して、特定の要件に応じてmodbusデータを解釈して表示できます。

Excelの例

マクロを記述するときは、“開発者”タブを表示するか、開発者モードで実行する必要があります。

Excel 2007の

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure25
  1. “Microsoft Office”ボタンをクリックし、“Excelオプション”をクリックします。
  2. [人気]をクリックし、リボンの[開発者を表示]タブチェックボックスをオンにします。
    リボンはMicrosoft Fluentユーザーインターフェイスの一部であることに注意してください。

Excel 2010、2016

  1. [ファイル]タブをクリックします。
  2. オプションをクリック。Excelオプションウィンドウが開きます。
  3. 左側のペインで、[リボンをカスタマイズ]をクリックします。
  4. 右側のペインの[メインタブ]で、[開発者]チェックボックスをオンにします。
  5. “OK”をクリック。[开発者]タブがリボン一番右のタブに表示されるはずです。

Excelサンプル·コード

この例では、2つのウィンドウを開きます。1つはレジスタを読み取り、もう1つはコイルを読み取ります。
Modbus Pollは非表示ですが、“ShowWindow”行のコメントを解除することで表示できます。いずれかのウィンドウが表示されます。

Modbus Pollのインストールには例も含まれています。
スタート→すべてのプログラム→Modbus Poll → Excelの例

Excel VBAの例

パブリックドキュメント1オブジェクトとして
パブリックドキュメント2オブジェクト
オブジェクトとしてのパブリックアプリ
DIM RES As Integerシングル
DIM N As Integerシングル
Private Sub StartModbusPoll_Click
   'Modbus Pollアプリケーションオブジェクトと2つのドキュメントオブジェクトを作成する
   Set app = CreateObject Mbpoll.Application
   Set doc1 = CreateObject Mbpoll.Document
   Set doc2 = CreateObject Mbpoll.Document
   '10個の保持レジスタを読み出し、1000msごとに読み出す
   res = doc1.ReadHoldingRegisters 1,0,1000
   '10個のコイル状態を1000msごとに読み取る
   res = doc2.ReadCoils 1,0,1000
   'ドキュメントウィンドウを表示しますこの行はコメントされています。必要に応じてコメントを解除します
   ' doc1.ShowWindow
   'Modbus TCP/IPへの接続の設定
   app.connection = 1 
   'IPアドレスをローカルホストに設定する
   app.IPAddress = 127.0.0.1" 
   'サーバポートを502に設定する
   app.ServerPort = 502
   '接続タイムアウト時間を1000msに設定します。
   app.ConnectTimeout = 1000
   接続を開く。
   res = app.OpenConnection
End Subの
Private Sub Read_Click
   要求の結果を表示する
   Cells 5,7 = doc1.ReadResult '保持レジスタの読み出し結果を表示
   Cells 6,7 = doc2.ReadResult 'コイル状態の読み取り結果を表示
   'ループは、保持レジスタの値を読み取り、表示します。
   N = 0から9まで
      Cells 5 + n 2 = doc1.SRegisters n
   次のn
   ループはコイルの状態を読み取り、表示します。
   n = 0から9まで
      Cells 18 + n 2 = doc2. Coils n
   次のn
End Subの

Pythonの例

このPythonの例はウィンドウを開き、可能なすべてのデータ形式を設定します。

Pythonの例

Win 32 com.clientをWin 32としてインポート
#データフォーマットの定義
SIGNED = 0
UNSIGNED = 1
ヘックス= 2
BINARY = 3
FLOAT_LE_BS = 4
FLOAT_BE = 5
DOUBLE_LE_BS = 6
DOUBLE_BE = 7
S32_LE_BS = 8
S 32-BE = 9
FLOAT_LE = 10
FLOAT_BE_BS = 11
DOUBLE_LE = 12
DOUBLE_BE_BS = 13
S 32_LE = 14
S32_BE_BS = 15
U 32_BE = 17
U32_LE_BS = 18
U 32_BE_BS = 19
U 32_LE = 20
S 64_BE = 21
S64_LE_BS = 22
S64_BE_BS = 23
S 64_LE = 24
U 64_BE = 25
U64_LE_BS = 26
U64_BE_BS = 27
U 64_LE = 28
#順序の定義
BE = 0です。
LE = 3です。
BE_BS = 2
LE_BS = 1
#Modbus Pollアプリケーションの作成
App = win32. Dispatch 'Mbpoll. Application'
#接続パラメータを設定する
App.Connection = 1 #Modbus TCP/IPの使用
App.IPAddress = 127.0.0.1 #ローカルアドレス
App.ServerPort = 502 # Modbusポート
App.OpenConnection #接続を开く
#Modbusディスプレイウィンドウの作成
Win1 = win32. Dispatch Mbpoll.Document
#スレーブID 1のデバイスから100個の保持レジスタを読み出し、アドレスは0 40001から始まり、1000msごとに読み出す
Win1. ReadHoldingRegisters 1、0、100、1000
Modbusウィンドウを表示する
Win1.ShowWindow
#表示される行の数
Win1. Rows 1
#高速化のためにリフレッシュを無効にする
Win 1. EnableRefresh = False
異なるデータ形式を設定する
Win1.SetFormat 0、SIGNED
Win1.SetFormat 1、UNSIGNED
Win1.SetFormat 2、HEX
Win1.SetFormat 3、BINARY
Win1.SetFormat 4、S32_BE
Win1.SetFormat 6、S32_LE
Win1.SetFormat 8、S32_BE_BS
Win1.SetFormat 10、S32_LE_BS
Win1.Set12、U32_BE
Win1.SetFormat 14、U32_LE
Win1.SetFormat 16、U32_BE_BS
Win1.SetFormat 18、U32_LE_BS
Win1. SetFormat 20、S64_BE
Win1.SetFormat 24、S64_LE
Win1.SetFormat 28、S64_BE_BS
Win1.SetFormat 32、S64_LE_BS
Win1. SetFormat 40、U64_BE
Win1.SetFormat 44、U64_LE
Win1.SetFormat 48、U64_BE_BS
Win 1。Set52、U64_LE_BS
Win1.Set60、FLOAT_BE
Win1.SetFormat 62、FLOAT_LE
Win1.SetFormat 64、FLOAT_BE_BS
Win1.SetFormat 66、FLOAT_LE_BS
Win1.SetFormat 80、DOUBLE_BE
Win1.SetFormat 84、DOUBLE_LE
Win1.Set88、DOUBLE_BE_BS
Win 1. SetFormat(92、DOUBLE_LE_BS)
#さまざまな形式のデータの表示名を設定する
Win1.SetName 0、SIGNED
Win1.SetName 1 UNSIGNED
Win1.SetName 2 HEX
Win1.SetName 3、BINARY
Win1.SetName 4、S32_BE
Win1.SetName 6、S32_LE
Win1.SetName 8、S32_BE_BS
Win1.SetName 10、S32_LE_BS
Win1.SetName 12、U32_BE
Win1.SetName 14、U32_LE
Win1.SetName 16、U32_BE_BS
Win1.SetName 18、U32_LE_BS
Win1.SetName 20、S64_BE
Win1.SetName 24、S64_LE
Win1.SetName 28、S64_BE_BS
Win1.SetName 32、S64_LE_BS
Win1. SetName 40、U64_BE
Win1.SetName 44、U64_LE
Win1.SetName 48、U64_BE_BS
Win1.SetName 52、U64_LE_BS
Win1.SetName 60、FLOAT_BE
Win1.SetName 62、FLOAT_LE
Win1.SetName 64、FLOAT_BE_BS
Win1.SetName 66、FLOAT_LE_BS
Win1.SetName 80、DOUBLE_BE
Win1.SetName 84、DOUBLE_LE
Win1.SetName 88、DOUBLE_BE_BS
Win 1. SetName(92、DOUBLE_LE_BS)
#リフレッシュを再開する
Win1. EnableRefresh = True
#内容に合わせてすべての列のサイズを変更
Win1. ResizeAllColumns
コンテンツに合わせてウィンドウをサイズ変更
Win 1。ResizeWindow()
#設定をファイルに保存し、ファイルパスを指定する
result = Win1. Save C\\Users\\UserName\\Desktop\\t estfile.mbp
#保存結果の印刷
print
#例として2番目のフォーマット名を印刷する
print Win1.GetName 1
ユーザーがEnterキーを押して終了するのを待ち、ウィンドウを直接閉じないようにする
_ = input Press to quit

接続機能/プロパティ

The following properties and functions do the same as you setup in the connection dialog (F3).

接続する。

“接続”Connection目的の接続を選択します。シリアルポートまたはイーサネット接続のいずれかを選択できます。

プロパティ接続する。整数のために

値の範囲

0 = Serial port
1 = Modbus TCP/IP
2 = Modbus UDP/IP
3 = Modbus ASCII/RTU over TCP/IP
4 = Modbus ASCII/RTU over UDP/IP

例えば、

Connection = 0

ボーレート

接続のみ= 0

プロパティボーレート長さとは

300
600
1200
2400
4800
9600(デフォルト)
14400
19200
38400
56000
57600
115200
128000
153600
230400
256000
460800
921600

例えば、

BaudRate = 9600

データ·ビット

接続のみ= 0

プロパティ DataBits 整数として

値の範囲

7
8既定の

例えば:

DataBits = 8

チェックビット

接続のみ= 0

整数としての属性パリティ·スクールテストは

値の範囲

0 =なし
1 = 奇数。
2 = 偶数(デフォルト)

例えば:

Parity = 2

ストップ·ビット

接続のみ= 0

プロパティ StopBits as Integer値の範囲

1 (デフォルト)
2

例えば:

StopBits = 1

シリアルポート

接続のみ= 0

プロパティ SerialPort as Integer値の範囲

1...255

デフォルト値= 1

例えば:

SerialPort = 1

モデルは

接続のみ= 0

プロパティモデルは整数のために

値の範囲

0 = RTUモード
1 = ASCIIモード

例えば:

Mode = 1

エコーの削除

接続のみ= 0
お使いのデバイスまたはRS 232/RS 485コンバータが送信した文字をエコーする場合。

プロパティ RemoveEcho as Integer

値の範囲

0(デフォルト)
1(エコーを削除)

例えば:

RemoveEcho = 1

レスポンス·タイムアウト

ResponseTimeoutは、Modbus Pollがスレーブからの応答を破棄するまで待機する時間をミリ秒単位で指定します。

プロパティ ResponseTimeout 整数として値をとる範囲

50...100000

デフォルト値= 1000

例えば:

ResponseTimeout = 1000

DelayBetweenPolls

プロパティ DelayBetweenPolls 整数として値をとる範囲

0...1000

デフォルト= 20

例えば:

DelayBetweenPolls = 20

サーバーのポート

Connection = 1の場合のみ使用できます。.. 4

プロパティ ServerPort as Long値の範囲

0...65535

デフォルト= 50 2

例えば:

ServerPort = 502

15.3.12. ConnectTimeout

ConnectTimeoutは、Modbus PollがTCP/IP接続の成功を待機する時間を指定します。

Connection = 1の場合のみ使用できます。.. 4

プロパティ ConnectTimeout as Integer

値の範囲

100... 3万ミリ秒

デフォルト値= 1000ms

例えば:

ConnectTimeout = 1000

IPバージョン

Connection = 1の場合のみ使用できます。.. 4

プロパティ IPVersion as Integer

値の範囲

4 = IPバージョン4(デフォルト)
IPバージョン6

例として

IPVersion = 4

オープン·コネクション

Connectionプロパティーで選択した接続を開きます。

関数の機能 OpenConnection()は整数

パラメータ

この関数にはパラメータはありません。

戻り値は

エラー 3-5:最新のシリアルドライバがあることを確認してください。

エラーです。説明する。
0成功する。
1シリアルポートが使用できません
3Serial Portです。ポートドライバから現在の設定を取得できません。
4Serial Portです。シリアルポートドライバはポート設定を受け付けません。
5Serial Portです。シリアルポートドライバはタイムアウト設定を受け付けません。
12TCP/UDP接続に失敗しました。WSA開始。
13TCP/UDP接続に失敗しました。接続エラー
14TCP/UDP接続に失敗しました。タイムアウト
15TCP/UDP接続に失敗しました。IOCTL
17TCP/UDP接続に失敗しました。ソケットエラー
21TCP/UDP接続に失敗しました。アドレス情報の提供
255接続が開いた。

Excelの例Modbus TCP/IP接続を開く方法

オブジェクトとしてのパブリックアプリ
DIM RES As Integerシングル
'Modbus Pollを指すオブジェクトを作成する
Set app = CreateObject Mbpoll.Application
Modbus TCP/IPプロトコルの選択
app.connection = 1
'IPプロトコルバージョンをIPv4に設定する
app.IPVersion = 4
'ターゲット·デバイスのIPアドレスを設定する
app.IPAddress = 192.16 8.1.27"
'サーバーポートを設定します。デフォルトは502です。
app.ServerPort = 502
'接続タイムアウトを1000ミリ秒に設定します。
app.ConnectTimeout = 1000
'レスポンス·タイムアウトを1000ミリ秒に設定
app.onseTimeout = 1000
'接続を開こうとし、結果を変数resに格納します。
res = app.OpenConnection

Pythonの例:シリアル接続の設定方法

Win 32 com.clientをWin 32としてインポート
#Modbus Pollアプリケーションオブジェクトの作成
App = win32.Dispatch 'Mbpoll.Application'
#シリアル接続に設定
App.Connection = 0            
#COMポート3を選択
App.SerialPort = 3            
#9600に設定
Baudrate = 96 00の場合           
#パリティをなしに設定
App.Parity = 0                
#RTUの設定
App.Mode = 0                  
応答タイムアウト時間を1000msに設定する
App.onseTimeout = 1000    
リクエスト間の最小間隔を20msに設定します。
App.DelayBetweenPolls = 20    
#コネクションを開く
App.OpenConnection
#Modbusディスプレイウィンドウオブジェクトの作成Win1
Win1 = win32.Dispatch Mbpoll.Document
#スレーブID 1のデバイスから10個の保持レジスタを読み出し、アドレスは0 40001から始まり、1000msごとに読み出す
Win1. ReadHoldingRegisters 1、0、10、1000
Modbusウィンドウを表示する
Win1.ShowWindow
#表示される行数を10に設定する
Win1. Rows 0
#高速化のためにリフレッシュを無効にする
Win 1. EnableRefresh = False
#レジスタに名前を付ける
Win1. SetName 0、Register 0
#リフレッシュを再開する
Win1. EnableRefresh = True
#内容に合わせてすべての列のサイズを変更
Win1. ResizeAllColumns
コンテンツに合わせてウィンドウをサイズ変更
Win1. ResizeWindow
#ユーザーがEnterキーを押して終了するまで待つ
_ = input Press to quit

タイト·コネクション

関数の機能 CloseConnection()は整数

パラメータ

この関数にはパラメータはありません。

戻り値は

成功した場合はゼロ。失敗すると、値はゼロ以外になります。

ShowCommunicationTraffic

トラフィックウィンドウを表示します。

関数の機能 ShowCommunicationTraffic()

パラメータ

この関数にはパラメータはありません。

戻り値は

いいえ。

CloseCommunicationTraffic

表示された場合は、トラフィック·ウィンドウを閉じます。

関数の機能 CloseCommunicationTraffic()

パラメータ

この関数にはパラメータはありません。

戻り値は

いいえ。

読み込み関数

次の関数の動作は、読み取り/書き込み定義ダイアログ(F 8)で設定したものと同じです。読み取り関数はModbus Pollドキュメントに関連付けられています。(データのあるウィンドウ)

例えば:

最初にModbus Pollドキュメントオブジェクトを作成します。
オブジェクトとしての公開ドキュメント
'Modbus Pollドキュメントオブジェクトインスタンスの作成
Set doc = CreateObject Mbpoll.Document
'100個のコイル状態をスレーブID 1のデバイスから読み取り、アドレスは0から始まり、1000ミリ秒ごとに読み取ります。
res = doc.ReadCoils 1 0 100 1000 '1000msごとに100個のコイルを読み取る

注属性を使用してデータを取得するには、Readを作成する必要があります。

リードコイルReadCoils

Modbus機能コード0 1

関数の機能 ReadCoils(SlaveIDは整数、アドレスはロング、数は整数、ScanRateはロング)は整数

パラメータ

奴隷のID:アドレス1から255まで
住所:アドレス:データ·アドレス0
Quantity:より:データのvalue。1 〜 2000年
スキャン速度:0から3600000 msリターン値

True if success. False if not success

離散入力の読み取りReadDiscreteInputs

Modbus関数コード0 2

关数読み取り入力スレーブID As整数、アドレスAs Long整数、Quantity As int、スキャンレートAs Long整数As int

パラメータ

  • スレーブID-スレーブアドレス1 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0
  • value-データのvalue。1 〜 2000年
  • スキャンレート0 ~ 360000ms

戻り値は

  • Trueを返します。失敗はFalseを返します。

リードホールドレジスタReadHoldingRegisters

Modbus関数コード0 3

关数読み込み保持レジスタスレーブID As整数アドレスAs Long整数数量 As整数スキャンレートAs Long整数As int

パラメータ

  • スレーブID-スレーブアドレス1 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0
  • value-データのvalue。1から125まで
  • スキャンレート0 ~ 360000ms

戻り値は

  • Trueを返します。失敗はFalseを返します。

読み取り入力レジスタReadInputRegisters

Modbus関数コード0 4

关数読み取り入力レジスタスレーブID As整数アドレスAs Long整数数量 As intスキャンレートAs Long int As int

パラメータ

  • スレーブID-スレーブアドレス1 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0
  • value-データのvalue。1から125まで
  • スキャンレート0 ~ 360000ms

戻り値は

  • Trueを返します。失敗はFalseを返します。

自動書き込み関数

write関数は、プロパティで埋められた配列に格納されている値を書き込みます。次の書き込み関数はデータウィンドウを作成しません。データウィンドウを作成するには、WriteMultipleRegistersWinなどのWin関数を使用します。

シングルコイルを書く。WriteSingleCoil

Modbus関数コード0 5。
書き込み配列の最初のコイルに書き込みます。

関数単一コイルの書き込みスレーブID As intアドレスAs long As int As int

パラメータ

  • スレーブID-スレーブアドレス0 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0

戻り値は

  • 書き込み配列の準備ができてデータが送信された場合はTrueを返します。配列が空であるか、パラメータが間違っている場合は、Falseを返します。
  • 制御アプリケーションは、書き込まれた値をリードバックすることで、書き込みOperationを検証する責任があります。

単一レジスタの書き込みWriteSingleRegister

Modbus関数コード0 6。
書き込み配列の最初のレジスタに書き込みます。

関数単一レジスタの書き込みスレーブID As intアドレスAs long As int

パラメータ

  • スレーブID-スレーブアドレス0 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0

戻り値は

  • 書き込み配列の準備ができてデータが送信された場合はTrueを返します。配列が空であるか、パラメータが間違っている場合は、Falseを返します。
  • 制御アプリケーションは、書き込まれた値をリードバックすることで、書き込みOperationを検証する責任があります。

複数のコイルを書く。WriteMultipleCoils

Modbus関数コード15。
書き込み配列に格納されたコイルを書き込みます。

关数コイル书き込みスレーブID As整数、アドレスAs Long整数、Quantity As整数As整数

パラメータ

  • スレーブID-スレーブアドレス0 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0
  • value-データのvalue。1968年まで

戻り値は

  • 書き込み配列の準備ができてデータが送信された場合はTrueを返します。配列が空であるか、パラメータが間違っている場合は、Falseを返します。
  • 制御アプリケーションは、書き込まれた値をリードバックすることで、書き込みOperationを検証する責任があります。

複数のレジスタを書く。WriteMultipleRegisters

Modbus関数コード16。
書き込みは

配列に格納されたレジスタを書き込みます。

関数複数のレジスタを書き込むスレーブID As intアドレスAs longQuantity As int As int As int

パラメータ

  • スレーブID-スレーブアドレス0 ~ 255
  • アドレスあどれすデータアドレス基数 0でーたあどれす基数 0
  • value-データのvalue。1から12 3

戻り値は

  • 書き込み配列の準備ができてデータが送信された場合はTrueを返します。配列が空であるか、パラメータが間違っている場合は、Falseを返します。
  • 制御アプリケーションは、書き込まれた値をリードバックすることで、書き込みOperationを検証する責任があります。

Pythonの例

アドレス0(40001)から10個のレジスタを読み込み、5個のレジスタを書き込むウィンドウを作成する方法を示すPythonの例。

sysのインポート
輸入時間の延長
Win 32 com.clientをWin 32としてインポート
#Modbus Pollアプリケーションのインスタンスを作成する
App = win32. Dispatch 'Mbpoll. Application'
接続タイプをTCP/IPに設定する
App.Connection = 1            
App.IPAddress = 127.0.0.1 #IPアドレスの設定
App.onseTimeout = 1000    #応答タイムアウトを1000ミリ秒に設定する
App.DelayBetweenPolls = 20    リクエスト間の最小間隔を20ミリ秒に設定する
App.ConnectTimeout = 500      #接続タイムアウト時間を500ミリ秒に設定する
App.ServerPort = 502 #サーバポートを502に設定する
result = App.OpenConnection #接続を開こうとする
もし結果が出たら! 0 nCloth
   print Connection failed. Error result #接続が失敗した場合にエラーメッセージを出力する
   sys.exit #プログラムの終了
Win1というModbusディスプレイウィンドウを作成する。
Win1 = win32. Dispatch Mbpoll.Document
#ステーションID 1のアドレス0(40001)から1000msごとに10個の保持レジスタを読み出す
Win1. ReadHoldingRegisters 1、0、10、1000
Modbusウィンドウを表示する
Win1.ShowWindow
#10行を表示
Win1. Rows 0
#グリッドに合わせてウィンドウをサイズ変更
Win1. ResizeWindow
time.sleep 1.0 #読み込み完了を待つ
if Win1.ReadResult == 0    #読み取り結果の確認
   print Modbus register 0 40001 = Win1.SRegisters 0
else nParticle
   print Read ed error = Win1. Read
print Tx count = %d Rx count = %d % Win1.GetTxCount Win1.GetRxCount
#Modbus Pollの内部配列に書き込むデータを準備する
Win1.SRegisters 0、1   ここで1はModbusアドレスではなく、配列のインデックスです。
Win1. SRegisters 1、10
Win1.SRegisters 2、100
Win1.SRegisters 3,1000
Win1.SRegisters 4 10000
#レジスタに書き込む。Modbus Pollではウィンドウを作成しません。
#WriteMultipleRegistersWin関数を使用してデータウィンドウを作成する
Win1.WriteMultipleRegisters 1 0 5
_ = input Wait for write Press ENTER #書き込みを待ち、Enterキーを押して続行
Win 1の場合。Write== 0    #書き込み結果の確認
   print Modbus write success
else nParticle
   print ed error = Win1.Write
_ = input Press ENTER to quit #Enterキーを押して終了

15.6.様々な機能

Modbus Pollドキュメントに関連付けられた機能。(データのあるウィンドウ)

15.6.1. ShowWindow

デフォルトでは、Modbusドキュメントウィンドウは非表示です。ShowWindow関数はModbus Pollを可視化し、データ内容を含むドキュメントを表示します。

関数ShowWindow {{かんすうShowWindow}}ViewCube ViewCubeパラメータ

この関数にはパラメータはありません。戻り値は

いいえ。

15.6.2. GetTxカウント

リクエスト数を取得。

関数の機能 GetTxCount(a)パラメータのみ

この関数にはパラメータはありません。戻り値は

リクエストの数。

受信数の取得

応答数を取得する。

関数受信カウントの取得As long

パラメータ

この関数にはパラメータはありません。

戻り値は

応答の数。

名前の取得

値の名前を取得します。

関数名前インデックスAs int As文字列の取得{{かんすうめいIndex As int Asもじれつのしゅとく}}

パラメータ

インデックス:インデックス0は最初のModbusアドレスに対応します。

戻り値は

名前です。

名前の設定

値の名前を変更します。関数設定名インデックスAs int、名前As文字列

パラメータ

インデックス:インデックス0は最初のModbusアドレスに対応します。
名前値セルの名前。

戻り値は

なしなし。

全てフォーマット。

選択した書式を使用して、すべての値のセルを書式設定します。

関数“すべてをフォーマット”Format As Integer

パラメータ

書式値のセルの書式。

戻り値は

なしなし。

フォーマットの取得

Modbus値の表示形式を取得します。

関数取得フォーマット索引 As int As int As int

パラメータ
インデックス:インデックス0は最初のModbusアドレスに対応します。

戻り値は

IDフォーマットFormat中国語の解説
0Signed記号付き。
1Unsigned符号なし。
2Hex16進法
3BinaryBinaryシングル
4Float little-endian byte swap浮動小数点数リトルエンバイトスワップ
5Float big-endian浮動小数点数ビッグエンディアン
6Double little-endian byte swap倍精度リトルエンディアン·バイトスワップ
7Double big-endian倍精度大端
832-bit Signed little-endian byte swap32ビット符号付きリトルエンド·バイトスワップ
932-bit Signed big-endian32ビット符号付きビッグサイズ
10Float little-endian浮動小数点数リトルエンド
11Float big-endian byte swap浮動小数点数ビッグエンディアン·バイト·スワップ
12Double little-endian倍精度の小さな端
13Double big-endian byte swap倍精度ビッグエンディアンバイト交換
1432-bit Signed little-endian32ビット符号付きリトルエンド
1532-bit Signed big-endian byte swap32ビット符号付きビッグエンディアン·バイト·スワップ
1732-bit Unsigned big-endian32ビット符号なしビッグエンド
1832-bit Unsigned little-endian byte swap32ビット符号なしリトルエンバイトスワップ
1932-bit Unsigned big-endian byte swap32ビット符号なしビッグエンディアン·バイト·スワップ
2032-bit Unsigned little-endian32ビット符号なしリトルエンド
2164-bit Signed big-endian64ビット符号付きビッグサイズ
2264-bit Signed little-endian byte swap64ビット符号付きリトルエンディアン·バイト·スワップ
2364-bit Signed big-endian byte swap64ビット符号付きビッグエンディアン·バイト交換
2464-bit Signed little-endian64ビット符号付きリトルエンド
2564-bit Unsigned big-endian64ビット符号なしビッグエンド
2664-bit Unsigned little-endian byte swap64ビット符号なしリトルエンバイトスワップ
2764-bit Unsigned big-endian byte swap64ビット符号なしビッグエンディアン·バイト·スワップ
2864-bit Unsigned little-endian64ビット符号なしリトルエンド

注意点:

この設定は、表示のみに使用されます。Get/Set値関数を使用する場合は、正しいエンディアンを取得するためにbyteOrderを使用する必要があります。

15.6.8. SetFormat

Modbus値の表示形式を変更します。上記の書式値を参照してください。

関数の機能 SetFormat[インデックスは整数、フォーマットは整数]パラメータ

INDEX:インデックス0は最初のModbusアドレスに対応します。
フォーマット:値のセルのフォーマット。戻り値は

いいえ。

15.6.9. ResizeWindow

開いているウィンドウのサイズをグリッドに合わせて調整します。

関数の機能 ResizeWindowViewCube ViewCubeパラメータ

この関数にはパラメータはありません。戻り値は

いいえ。

15.6.10. ResizeAllColumns

すべての列のサイズをセル内の値に合わせて変更します。

関数の機能 ResizeAllColumnsViewCube ViewCubeパラメータ

この関数にはパラメータはありません。戻り値は

いいえ。

15.6.11. OKです。

グリッド内の行数を指定します。

関数の機能OKです。 NumberRows

数字の行:グリッド内の行数

ナンバーナンバーナンバー説明する。
0 10行(デフォルト)
120 行。
250 行。
3100 行。
4適切なvalue

戻り値は

いいえ。

結果の読み取り

このプロパティを使用して、読み取りOperationとのCommunicationが正常に確立されたかどうかをチェックします。

プロパティの読み込み結果As int {{ぷろぱてぃのよみこみAs int}}

パラメータ

この関数にはパラメータはありません。

戻り値は

ErrorDescription
0成功する。SUCCESS
1タイムアウトエラーTIMEOUT ERROR
2CRCエラーCRC ERROR
3レスポンスエラーレスポンスが意図したスレーブID、ファンクションコード、アドレスではないRESPONSE ERROR (The response was not the expected slave id, function or address)
4書き込みエラーWRITE ERROR
5読み取りエラーREAD ERROR
6ポートが開いていないエラーPORT NOT OPEN ERROR
10データが初期化されないDATA UNINITIALIZED
11受信したバイトが足りないINSUFFICIENT BYTES RECEIVED
16バイト数エラーBYTE COUNT ERROR
19トランザクションIDエラーTRANSACTION ID ERROR
81h違法な機能ILLEGAL FUNCTION
82h違法なデータアドレスILLEGAL DATA ADDRESS
83h不正なデータ値ILLEGAL DATA VALUE
84hサーバーデバイスの失敗SERVER DEVICE FAILURE
85h確認済み。ACKNOWLEDGE
86hサーバー機器がビジーSERVER DEVICE BUSY
87hNAK-ネガティブな確認NAK-NEGATIVE ACKNOWLEDGMENT
8Ahゲートウェイパスが使用できませんGATEWAY PATH UNAVAILABLE
8Bhゲートウェイターゲットデバイスが応答しませんGATEWAY TARGET DEVICE FAILED TO RESPOND
この表は、ModbusCommunicationで発生する可能性のあるエラーコードとその説明を示し、トラブルシューティングとステータスフィードバックに使用します。

結果の書き込み

この関数を使用して、書き込みOperationが成功したかどうかを確認します。
値は、スレーブから結果を取得するまでデータが初期化されていません。可能な値のリストを取得するために結果を読み込む。

プロパティ

結果を整数として書き込む

戻り値は
書き込み結果を整数で返します。

保存する。

現在のウィンドウを保存。関数保存かんすうほぞんパス名 As文字列ぱすめいAsもじれつAsブール型As

パラメータ
パス名:保存するファイルの完全修飾パス。

戻り値は
Booleanブール値

例:例

まず、Modbus Pollドキュメントが必要です。
オブジェクトとしての公開ドキュメント
Set doc = CreateObject Mbpoll.Document
res = doc.ReadCoils 1 0 100 1000 #1000ミリ秒ごとに100個のコイルを読み取る
res = doc.Save C\\Users\\UserName\\Desktop\\testfile.mbp    #デスクトップのtestfile.mbpファイルにドキュメントを保存する

オートメーションのデータプロパティ

以下のプロパティは、Modbus Pollの内部書き込み/読み取り配列で値を設定または取得するために使用されます。使用されるインデックスはModbusアドレスではない。インデックスは、使用するアドレスに関係なく常に0からカウントを開始します。データプロパティはModbus Pollドキュメントに関連付けられています。(データ付きのウィンドウ)

各データ属性には、次の2つのバージョンがあります。

SRegistersのようなサフィックスのないものは、内部の書き込み/読み取り配列から値を設定または取得するために使用されます。

SRegistersWinのようなWinサフィックスを持つものは、データウィンドウから直接値を設定または取得するために使用されます。これは、書き込みOperationにデータウィンドウを使用する場合に使用されます(WriteMultipleRegistersWinなど)。

例1

最初にDocを作成したとします。Excelの例を参照。
#後の書き込みOperationに使用するデータ配列で、インデックス0に1を書き込む
doc.SRegisters 0 = 1
doc.SRegisters 1 = 10
doc.SRegisters 2 = 1234
#Modbus Pollの内部配列に格納される3つのレジスタ
Modbusアドレス100(40101)を書き込む
窓を作らない
res = doc.WriteMultipleRegisters 1 100 3
上記の例はデータウィンドウを作成せず、Modbus書き込みを1回実行します。

例2、浮動小数点数の値
3つの浮動小数点数値を書き込みます。

最初にDocを作成したとします。Excelの例を参照。
doc.Floats 0 = 1.3
doc.Floats 2 = 10.5
doc.Floats 4 = 1234.12
Modbus Pollに6つのレジスタを書き込む
res = doc.WriteMultipleRegisters 1 0 6
浮動小数点値は32ビット幅なので、6つのレジスタに書き込みます。

例3
1000msごとに3つのレジスタを書き込むウィンドウを作成します。

最初にDocを作成したとします。Excelの例を参照。
#1000msごとにコンテンツを書き込むウィンドウを作成する
res = doc.WriteMultipleRegistersWin 1,100,3,1000
#データウィンドウの最初のセルに1を書き込む
doc.SRegistersWin 0 = 1
doc.SRegistersWin 1 = 10
doc.SRegistersWin 2 = 1234
#1000msごとに3つのレジスタをスレーブID 1アドレス100に書き込むようになりました。

このコード例では、docModbus Pollドキュメントのインスタンスであり、レジスタへの書き込みなどの様々なModbusOperationを実行するために使用される。使用方法を示す例。Win接尾辞のプロパティは内部配列を直接操作し、バンドの使い方を教えます。Winサフィックスの属性操作は、データウィンドウに関連付けられた値です。

コイル、CoilsWin

Property Coils(Index As Integer) As IntegerDescription

Sets a coil in the write array structure or return a coil from the read array.Syntax

Coils(Index) [=newvalue]

Shortレジスタ、SRegistersWin

Property SRegisters(Index As Integer) As IntegerDescription

Sets a register in the write array structure or return a register from the read array.Syntax

SRegisters(Index) [=newvalue]

ロングレジスタ、URegistersWin

プロパティ URegistersIndex As Integer

書き込み配列構造体にレジスタを設定するか、読み取り配列からレジスタを返します。構文

URegistersインデックス

32ビット整数、Ints_32Win

プロパティ Ints_32Index As Integer

write配列構造体に32ビット整数を設定するか、read配列から整数を返します。構文

Ints_32インデックス

32ビット符号なし整数、UInts_32Win

プロパティ UInts_32index as integer

write配列構造体に32ビットの符号なし整数を設定するか、read配列から符号なし整数を返します。構文

UInts_32(インデックス) [=新しい値]

64ビット整数、Ints_64Win

プロパティ Ints_64Index As Integer

write配列構造体に64ビット整数を設定するか、read配列から整数を返します。構文

Ints_64(インデックス) [=新しい値]

64ビット符号なし整数、UInts_64Win

プロパティ UInts_64Index As Integer

64ビットの符号なし整数をwrite配列構造体に設定するか、読み出し配列から符号なし整数を返します。構文

UInts_64(インデックス) [=新しい値]

浮動小数点、FloatsWin

プロパティ floatsindex as integer

書き込み配列構造体に浮動小数点数を設定するか、読み出し配列から浮動小数点数を返します。構文

浮動小数点数インデックス[=新しい値]

倍精度浮動小数点数、DoublesWin

プロパティ doublesindex as integer

write配列構造体にdouble値を設定するか、読み出し配列からdouble値を返します。構文

ダブルダブル。インデックス

バイト順序

プロパティ ByteOrder Integerの説明

Ints_32、UInts_32、Ints_64、UInts_64、Floats、Doublesの各プロパティで使用されるバイト順序を設定します。
Winバージョンではこのプロパティは使用されません ByteOrder

ナンバーナンバーナンバーバイトエンディアン
0ビッグエンディアンデフォルトBig-endian Default
1リトルエンディアン·バイト·スワップLittle-Endian byte swap
2ビッグエンディアン·バイト·スワップBig-Endian byte swap
3リトル·エンディアンLittle Endian

Ints_32の例:
バイト順序:Big-endian
10進数123456 7 8 9または16進数0 7 5B CD 15 Modbusメッセージでラインを通過
ソート07 5B CD 15構文

ByteOrder (新しい価値観)

15.8.書き込み関数データウィンドウの作成

次の関数の動作は、読み取り/書き込み定義ダイアログ(F 8)で設定したものと同じです。
これらの関数はデータウィンドウを作成し、スキャンレートに応じてデータウィンドウ内のデータ内容を書き込みます。

15.8.1. WriteSingleCoilWin

Modbus機能コード0 5。

関数の機能 WriteSingleCoilWinSlaveID As Integer

奴隷のID:アドレス1から255まで
住所:アドレス:データアドレス(ベース0)
スキャン速度:0 ~ 3600000msの戻り値

成功すれば、それは真実です。成功しなかった場合はfalse

15.8.2. WriteSingleRegisterWin

Modbus機能コード0 6。

関数の機能 WriteSingleRegisterWinSlaveID As Integer

奴隷のID:アドレス1から255まで
住所:アドレス:データアドレス(ベース0)
スキャン速度:0から3600000 msリターン値

True if success. False if not success

Python Example how to open a window and write a single register every 1000 ms

15.8.3. WriteMultipleCoilsWin

Modbus機能コード15.

関数の機能 WriteMultipleCoilsWin(SlaveIDは整数、アドレスはロング、Quantityは整数、ScanRateはロング)は整数パラメータ

奴隷のID:アドレス1から255まで
住所:アドレス:データ·アドレス0
Quantity:より:データのvalue。1968年まで
スキャン速度:0から3600000msの戻り値

成功すれば、それは真実です。成功しなかった場合はfalse

15.8.4. WriteMultipleRegistersWin

Modbus機能コード16.

関数の機能 WriteMultipleRegistersWin(SlaveIDは整数、アドレスはロング、Quantityは整数、ScanRateはロング)は整数パラメータ

奴隷のID:アドレス1から255まで
住所:アドレス:データ·アドレス0
Quantity:より:データのvalue。1から12 3
スキャン速度:0から3600000msの戻り値

成功すれば、それは真実です。成功しなかった場合はfalse

16.例外とエラーメッセージ

Modbusの例外とエラーメッセージが赤いテキストで表示されます2ネオジムOKです。

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure26

16.1. Modbus例外コード

Modbus例外は、デバイスから返されるエラーです。

コードコードコード名前は意味がある。
01違法な機能クエリで受信された関数コードは、サーバ(またはスレーブ)が許可するOperationではありません。これは、関数コードが新しいデバイスでのみ動作し、選択したユニットに実装されていないためです。また、サーバ(またはスレーブ)がそのような要求を処理するエラー状態にあることを示すこともあります。例えば、設定されておらず、レジスタ値を返すよう求められているためです。
02違法なデータアドレスクエリで受信したデータアドレスは、サーバの許可されたアドレスではありません。具体的には、参照番号と伝送長の組み合わせは無効です。レジスタが100個のコントローラの場合、PDUは最初のレジスタを0に、最後のレジスタを99にアドレスする。リクエストが送信されたレジスタアドレスが96で、レジスタ数が4であれば、リクエストは(少なくともアドレスに関しては)レジスタ96、9 7、9 8、99で正常に実行される。要求がレジスタアドレス96でレジスタ数5で開始された場合、この要求はレジスタ96、9 7、9 8、9 9、100で実行しようとしており、アドレス100のレジスタがないため、例外コード0 x 0 2“不正なデータアドレス”で失敗します。
03違法データの価値クエリデータフィールドに含まれる値は、サーバーまたはスレーブの許可された値ではない。これは、複雑なリクエストの残りの部分の構造にエラーがあることを示します。たとえば、暗黙の長さが間違っているなどです。具体的には、MODBUSプロトコルは特定のレジスタの特定の値の重要性を認識していないため、レジスタに格納されたデータ項目がアプリケーションが期待する値を超える値を持つことを意味しません。
04サーバーデバイスの障害サーバ(またはスレーブ)が要求されたOperationを実行しようとしたときに、回復不能なエラーが発生しました。
05承認する特にプログラミングコマンドと組み合わせて使用されます。
サーバー(またはスレーブサーバー)がリクエストを受け入れ、処理していますが、その処理には長い時間がかかります。この応答は、クライアント(またはマスター)でタイムアウトエラーが発生しないようにするために返されます。クライアントまたはプライマリクライアントは、次に、処理が完了したかどうかを判断するために、“ポーラー完了”メッセージを発行することができる。
06サーバー·デバイスがビジー状態特にプログラミングコマンドと組み合わせて使用されます。
サーバー(またはスレーブサーバー)が長時間のプログラムコマンドを処理している。クライアント(またはマスター)は、後でサーバ(またはスレーブ)がアイドル状態になったときにメッセージを再送信する必要があります。
0アンペア。ゲートウェイパスが使用できませんゲートウェイと組み合わせて使用すると、ゲートウェイが要求を処理するために入力ポートから出力ポートへの内部通信パスを割り当てることができないことを示します。通常、ゲートウェイの設定エラーまたは過負荷を表します。
0 Bさんゲートウェイターゲットデバイスが応答できませんゲートウェイと組み合わせて使用すると、ターゲット·デバイスから応答が得られないことを示します。通常は、デバイスがネットワーク上にないことを示します。

16.2. Modbus Pollエラーメッセージ

エラーメッセージの表示意味がある。
タイムアウトエラー予想された時間内に応答がありませんでした。次の内容を確認します。シリアル接続ボーレート、パリティ、データビット、ストップビットなどのシリアル設定。Modbusモード、RTUまたはASCIIスレーブID応答タイムアウトTCP/IP接続応答タイムアウトホストおよびポートがスレーブと一致しているかどうかを確認する
応答エラー応答は期待された応答ではない。異なる従属ID。
CRCエラー受信した応答のCRC値が正しくありません。
書き込みエラーこれはシリアルドライバからされるエラーです。USB/RS232/485ドングルを使用してUSBケーブルを取り外した場合に発生することがあります。4つのタイプがあります。破損状態I/Oエラーシリアル接続エラー出力バッファオーバーフロー TCP/IP接続を使用した書き込みエラーは、通常、接続の喪失が原因です。
読み取りエラーこれはシリアルドライバからされるエラーです。フレームエラー文字バッファオーバーフローパリティエラー入力バッファオーバーフロー I/Oエラーブレークアウト条件TCP/IP接続を使用した読み取りエラーは、通常、接続の損失によって引き起こされます。
受信バイト数が不十分応答が期待される長さではない。
バイト数エラー応答のバイト数が正しくありません。予想と比べると。
トランザクションIDエラーこれは、MODBUSサーバがリクエストのトランザクション識別子をレスポンスでコピーするトランザクションペアリングに使用されます。

無料で利用できるミニプログラム!!

Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロードFigure
Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC verification and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

《 “Modbus Poll中国語版ユーザーマニュアルとソフトウェアダウンロード” 》 有 141 条评论

Leave a Reply

Your email address will not be published. Required fields are marked *.