Siemens S 7 -1200 PLC用Modbus RTUレジスタマッピングテーブルCommand

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

Siemens S 7 -1200 PLC用Modbus RTUレジスタマッピングテーブルCommand

1. Modbus RTUCommandの使用

Siemens S 7 -1200 PLC用Modbus RTUレジスタマッピングテーブル命令插图

2. Modbus RTUマスタープログラミング

  • マスタープログラムが必要です。Modbus Comm_Loadそして、Modbus_MasterCommand
  • Modbus_Comm_LoadCommandはModbus RTUプロトコルを介してCommunicationモジュールを構成する;
  • Modbus Masterコマンドは、Modbus Comm Loadリファレンスで設定されたポートを介してModbus MasterとしてCommunicationできます。

Modbus RTUマスターCommandModbus Comm Loadパラメータ

ピンピン説明書は
REQ上昇エッジトリガー
PORTCommunicationポートのハードウェア識別子
BAUDボーレート:36 00、6000、12000、2400、48 0 0、96 00、19200、38 400、57 6 00、76 8 0 0、115200
PARITYパリティ选択0-なし、1-奇、2-偶
FLOW_CTRLフロー制御の選択0-デフォルトフロー制御なし
RTS_ON_DLYRTS遅延の選択0-デフォルト

III.詳細な説明

Modbus RTUマスタープログラミング

1. Modbus RTUマスターCommandModbus Comm_Loadパラメータ

RESP_TOレスポンス·タイムアウト-デフォルト= 1000 ms。Modbus_Masterは、スレーブが応答するために使用できる時間ミリ秒単位。
MB_DBModbus_MasterまたはModbus_SlaveCommandのバックグラウンドデータブロックへの参照。MB_DBパラメータは、Modbs_MasterまたはModbs_Slaveの静的変数MB_DBパラメータに接続する必要があります。
DONE最後のリクエストがエラーなしで完了した場合、DONEビットはTRUEに変わり、1期間保持されます。
ERROR最後の要求がエラーで完了した場合、ERRORビットはTRUEに変わり、1サイクル保持されます。STATUSパラメータのエラー·コードは、ERROR=TRUEの期間中のみ有効です。
STATUSポート構成エラーコードについては、TIAPortalソフトウェアオンラインヘルプまたはS 7 -1200システムマニュアルを参照してください。

2.Modbus RTUマスターCommandModbus Masterパラメータ

ピンピン説明書は
ENEnable Endシングル
REQTRUE= Modbusスレーブへのデータ送信要求、立ち上がりエッジトリガーを推奨
MB_ADDRModbus RTUスレーブアドレス。デフォルトのアドレス範囲0 ~ 247、拡張アドレス範囲~ 65535。値0はすべてのModbusスレーブにメッセージをブロードキャストするために予約されている。
MODEモード選択:リクエストのタイプ(読み取りまたは書き込み)を指定します。
DATA ADDRスレーブ内の開始アドレス-Modbusスレーブ内のアクセス可能なデータの開始アドレスを指定します。
DATA_LEN“データ長”-要求でアクセスする桁数またはワード数を指定します。
DATA PTR“データ·ポインタ”-データの書き込みまたは読み取りの対象となるM領域またはデータ·ブロック·アドレスを指します。
DONE完了ビット:最後の要求がエラーなしで完了した後、DONEビットは1スキャン期間TRUEのままです。
その間に
BUSYFALSE-Modbus Masterアクティブ化コマンドなしTRUE -Modbus Masterコマンド実行中。
ERROR最後の要求がエラーで完了した場合、ERRORビットはTRUEに変わり、1サイクル保持されます。STATUSパラメータのエラー·コードは、ERROR=TRUEの期間中のみ有効です。
STATUSポート構成エラーコードについては、TIA PortalソフトウェアオンラインヘルプまたはS 7 -1200システムマニュアルを参照してください。

MB MODE、MB DATA ADDR、MB DATA LEN、Modbus RTU関数コードの関係

MB_MODEMB_DATA ADDRMB_DATA_LENModbus RTU関数コードオペレーションとデータ
01-99991-200001出力ビットの読み取り
リクエストごとに1-2000ビット
010001-199991-200002入力ビットの読み取り
リクエストごとに1-2000ビット
0.40001-49999(400001 ~ 40999)
.400001-465535
1 - 12503リードホールドレジスタ
リクエストごとに1-125ワード
030001-399991 - 12504入力ワードの読み取り
リクエストごとに1-125ワード
110001 - 19999105出力ビットの書き込み
リクエストごとに1つ。
1.40001-49999(400001 ~ 40999)
.400001-465535
106書き込み保持レジスタ
リクエストごとに1単語
110001 - 199992 -196815複数の出力ビットを書き込む
リクエストごとに2-1968ビット
140001 -49999(400001-409999と同じ)
.400001-465535
2-12316複数の保持レジスタに書き込む
リクエストごとに2-123ワード
210001 - 199991 - 196815出力ビットの書き込み
リクエストごとに1-1968ビット
240001 -49999(400001-409999と同じ)
.400001-465535
1 -12316书き込み保存レジスタ
リクエストごとに1-123ワード
1111詳細は下記を参照。
80108詳細は下記を参照。
81108詳細は下記を参照。
1040-655351-12504入力ワードの読み取り
リクエストごとに1-125ワード

11オペレーションとデータ:サーバーのステータスワードとイベントカウンタを読み取り

1.ステータスワードは処理のステータスを反映します0-未処理、0 x FFFFF-処理中。

2.Modbusリクエストが正常に実行されると、イベントカウンタがインクリメントされます。Modbus機能の実行中にエラーが発生すると、サーバはイベントカウンタをインクリメントせずにメッセージを送信します。
80オペレーションとデータコード0x0000によるサーバーのステータスの

各単語の呼び出し。
81オペレーションとデータコード0x000Aでサーバのイベントカウンタをリセット
各単語の呼び出し。

Modbus RTUスレーブプログラミング

ピンピン説明書は
MB ADDRModbusスレーブの標準アドレス指定(標準アドレス範囲(1 ~ 247)、拡張アドレス範囲(0 ~ 65535)
MB_HOLD_REGModbus 保持レジスタのアドレスを指すデータポインタ。Modbus 保持レジスタはMメモリまたはDBデータ領域になります。
NDR利用可能な新しいデータ:
>FALSE新しいデータがありません。
>TRUE新しいデータがModbusマスタによって書き込まれたことを示し、最後の要求がエラーなしで完了した場合、NDRビットはTRUEに変わり、1サイクル保持されます。
DRデータの読み取り:
>FALSE新しいデータがありません。
>TRUECommandがModbusマスタが受信したデータをターゲット領域に格納したことを示す。最後のリクエストがエラーなしで完了した場合、DRビットはTRUEに変わり、1期間保持されます。
ERROR最後の要求がエラーで完了した場合、ERRORビットはTRUEに変わり、1サイクル保持されます。実行がエラーで終了した場合、STATUSパラメータ内のエラーコードはERROR=TRUEの期間中のみ有効です。
STATUSエラーコード

2. Modbus RTUスレーブデータ領域定義

アドレスエリア住所Definitionより説明書は
Output bitシングルQ 0.0スタートQ0.0はアドレス1,Q0.1はアドレス2,Q0.7はアドレス8,Q1.0はアドレス9である.
入力ビット。I 0.0スタートI 0.0はアドレス10001、I 0.1はアドレス10002、I 0.7はアドレス10008、I 1.0はアドレス10009である。
入力レジスタ。0から始まる。IW0はアドレス30001、IW2はアドレス30002、IW4はアドレス30003。
レジスタを保持する。MB_HOLD_REGによる定義ポインタが指す最初のワードは40001で、2番目のワードは40002です。
1.例えば:MB_HOLDがP#M100.0 WO8であると、100は40001であり、102は40002であり、104は40003である。MW114から40008へ
2.たとえば、MB_HOLD_REGは最適化DBのINT配列[0..。7]と、配列名が“XXX”AAの場合、“XXX”.AA[0]は40001、“XXX”AA[1]は40002、“XXX”.AA[2]は40003である。XXX.AA [7]は40008です。
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

Leave a Reply

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