テクセル

Modbus通信用DLL


本ソフトウエアは、Modbusプロトコルにおける通信用DLLです。シリアル通信及びModbus/TCPに対応します。 Modbus対応装置におけるビット、ワードデータの読み込み、書き込みが出来ます。

1.シリアル通信用DLL

1)基本仕様

本DLLは、Modbus通信のマスターとして動作します。

インターフェース シリアル通信(RS-232C、RS-422/485)
伝送フレーム RTUモード, ASCIIモード
伝送速度 300/600/1200/2400/4800/9600/14400/19200/38400/57600/115200 bps
伝送データ データ長8ビット、1スタートビット、パリティ 偶数、奇数またはなし
対応.NET .NET Framework4.5 32ビット、64ビット

2)関数一覧

a) modbus通信関数

関数名は、RTUモード、ASCIIモード共通です。

関数名 説明
Open シリアル通信ポートをオープンします。
Close シリアル通信ポートをクローズします。
SetAddress 通信を行うクライアントのアドレス(局番)を指定します。
ReadCoilStatus (01) DO(Discrete Output)のON/OFF状態を読み込みます。
ReadInputStatus (02) DI(Discrete Input)のON/OFF状態を読み込みます。
ReadHoldingRegister (03) 保持レジスタの内容を読み込みます。
ReadInputRegister (04) 入力レジスタの内容を読み込みます。
ForceSingleCoil (05)) 1つのDO(Discrete Output)へ書き込みを行います。
PresetSingleRegister (06) 1つの保持レジスタへ書き込みを行います。
ForceMultipleCoils (15)) 連続したDO(Discrete Output)へ書き込みを行います。
PresetMultipleRegisters (16) 連続した保持レジスタへ書き込みを行います。
SetWatchTime PLCからの応答監視時間をセットします。
Version 本DLLのバージョン情報を取得します。
コールバック関数 実行結果は、コールバック関数で取得します。

b)数値変換関数

modbus通信におけるクライアントとの読み込み、書き込みデータは、16ビット整数の配列データで行われます。 modbus通信にて32ビット整数、文字列、実数が使用されている場合は、以下の数値変換関数にて相互変換を行うことが出来ます。

関数名 説明
D2ToDW 2つのワード値(16ビット整数)をダブルワード値(32ビット整数)に変換します。
DWToD2 ダブルワード値(32ビット整数)を2つのワード値(16ビット整数)に変換します。
DarToStr ワード配列(16ビット整数)による文字列を文字列(string)に変換します。PLC側での文字コードは、Shift_JISとなります。
StrToDar 文字列(string)をワード配列(16ビット整数)による文字列に変換します。PLC側での文字コードは、Shift_JISとなります。
D2ToFloat 2つのワード値(16ビット整数)を実数(単精度)に変換します。
FloatToD2 実数(単精度)を2つのワード値(16ビット整数)に変換します。

履歴
Ver.1.03 2022.03 数値変換関数追加
Ver.1.02 2021.10 64ビット版追加
Ver.1.01 2021.07 ASCIIモード追加
Ver.1.00 2016.06

2.Modbus/TCP用DLL

1)基本仕様

本DLLは、Modbus/TCP通信のマスターとして動作します。(TCPクライアント)

インターフェース イーサネットTCP/IP通信
対応.NET .NET Framework4.5 32ビット、64ビット

2)関数一覧

a) modbus通信関数

関数名 説明
Connect 指定された機器へModbus/TCPで接続します。
DisConnect 接続を切断します。
setUnitID ユニット識別子をセットします。
ReadCoilStatus (01) DO(Discrete Output)のON/OFF状態を読み込みます。
ReadInputStatus (02) DI(Discrete Input)のON/OFF状態を読み込みます。
ReadHoldingRegister (03) 保持レジスタの内容を読み込みます。
ReadInputRegister (04) 入力レジスタの内容を読み込みます。
ForceSingleCoil (05)) 1つのDO(Discrete Output)へ書き込みを行います。
PresetSingleRegister (06) 1つの保持レジスタへ書き込みを行います。
ForceMultipleCoils (15)) 連続したDO(Discrete Output)へ書き込みを行います。
PresetMultipleRegisters (16) 連続した保持レジスタへ書き込みを行います。
Version 本DLLのバージョン情報を取得します。
コールバック関数 実行結果は、コールバック関数で取得します。

b)数値変換関数

modbus通信におけるクライアントとの読み込み、書き込みデータは、16ビット整数の配列データで行われます。 modbus通信にて32ビット整数、文字列、実数が使用されている場合は、以下の数値変換関数にて相互変換を行うことが出来ます。

関数名 説明
D2ToDW 2つのワード値(16ビット整数)をダブルワード値(32ビット整数)に変換します。
DWToD2 ダブルワード値(32ビット整数)を2つのワード値(16ビット整数)に変換します。
DarToStr ワード配列(16ビット整数)による文字列を文字列(string)に変換します。PLC側での文字コードは、Shift_JISとなります。
StrToDar 文字列(string)をワード配列(16ビット整数)による文字列に変換します。PLC側での文字コードは、Shift_JISとなります。
D2ToFloat 2つのワード値(16ビット整数)を実数(単精度)に変換します。
FloatToD2 実数(単精度)を2つのワード値(16ビット整数)に変換します。

履歴
Ver.1.02 2022.03
Ver.1.01 2021.11

3.開発、実行環境

本DLL(Modbus.dll,modbus/TCP.dll)の実行には、.NET Framework4.5 が必要です。

内容

4.購入方法等

  1. 税抜き価格 ¥35,000.-
  2. 銀行振り込み確認後、メールにて送付します。

購入、問い合わせ等は下記のお問い合わせよりお願いします。

お問い合わせ

©2016-2022 TEXCELL CORPORATION
テクセル株式会社