last update: 2024/04
Demo Sample Application Folder:
Application └ _Exclude ├ MB ..... MODBUS MASTER / SLAVE機能のデモサンプル
Sample | 説明 |
---|---|
MB_MASTER_TCPSample | MODBUS/TCP プロトコルを使用してLANポート経由でマスタモード通信を確認します |
MB_SLAVE_TCPSample | MODBUS/TCP プロトコルを使用してLANポート経由でスレーブモード通信を確認します |
Config |- MB_Conf.h ............ MODBUSコンフィグレーション設定ファイル |- OS | |- lib_embOSLayer_RXv3_L.lib ..... OSインターフェース設定ファイル | |- IO |- MB_ConfigIO.c ..... デバッグコンソールIOインターフェース設定ファイル
プロジェクト設定では「\Application\_Exclude\MB」フォルダはビルド対象外に設定しています。以下のどちらかの方法で動作確認を行うサンプルアプリケーションを選択します。
LAN Ethernetポート経由でMODBUS/TCPデータ通信を行いますので、LANドライバインターフェースを定義する「\BSP\Setup\IP_Config_RX72N_ETH.c」ファイルもビルド対象設定であることを確認してください。
評価ボードのLANポートをテスト用パソコンに接続して、TCP/IPネットワーク通信が正常にできることを確認してください。
パソコン側にMODBUSデモサンプルの動作確認用以下のプログラムを使用します。
Windows |- MB |- Modbus_Master | |- Modbus_Master.exe ..... MODBUS SLAVEデモ用テストプログラム | |- Modbus_Slave |- Modbus_Slave.exe ..... MODBUS MASTERデモ用テストプログラム
ネットワーク環境に合わせて評価ボード側のemNetスタックのコンフィグレーション設定を編集してください。
File: BSP\Setup\IP_Config_RX72N_ETH.c
#define USE_DHCP 1 // Use DHCP client or static IP configuration. // // The following parameters are only used when the DHCP client is not active. // #define IP_ADDR IP_BYTES2ADDR(192, 168, 11, 8) #define SUBNET_MASK IP_BYTES2ADDR(255, 255, 255, 0) #define GW_ADDR IP_BYTES2ADDR(192, 168, 11, 1) #define DNS_ADDR IP_BYTES2ADDR(192, 168, 11, 1)
#define SLAVE_IP_ADDR IP_BYTES2ADDR(192, 168, 11, 2) // IP addr. of slave to connect to.
File: MB_MASTER_TCPSample.c (MODBUS SLAVEのIPアドレス設定)
#define SLAVE_IP_ADDR IP_BYTES2ADDR(192, 168, 1, 3)
パソコン側の Modbus_Slave.exe プログラムのコンソール
パソコン側の Modbus_Master.exe プログラムのコンソール
SEGGER Modbus master V1.02 Compiled on Apr 15 2016 11:41:12 Enter interface type (1:TCP|2:RTU|3:ASCII) [TCP]: 1 Enter network address of Modbus/TCP slave [127.0.0.1]: 192.168.1.12 Enter slave address (dec.) [1]: 1 Enter base address of registers (dec.) [1000]: 1000 Executing blinky on slave addr. 1 by toggling coils on addr. 1000 & 1001 . Press any key to close.
圧縮・解凍機能のデモサンプル