Shinko JIR-301-M ユーザーマニュアル

タイプ
ユーザーマニュアル
- 1 -
通信取扱説明書 JIR-301-M, C5 No. JIR32CJ5 2023.11
この通信取扱説明書(以下,本書)は,JIR-301-M(以下,本器)の通信機能について説明したものです。
誤った取扱いなどによる事故防止の為に,本書は最終的に本器をお使いになる方のお手もとに,確実に届けら
れるようお取り計らいください。
1. システム構成
1.1 USB 通信ケーブル CMC-001-1(別売り)を使用した場合のシステム構成例
(1.1-1)
1.2 通信変換器 IF-400(別売り)を使用した場合のシステム構成例
(1.2-1)
配線等の作業を行う時は,本器への供給電源を切った状態で行ってください。
で作を行と,のた人命重大にかわる故のる可性がりま
通信変換器 IF-400
RS-232C RS-485
ホストコンピュータ
JIR-301-M (最大 31 )
JIR-301-M
No.0
JIR-301-M
No.1
JIR-301-M
No.30
USB 通信ケーブル
CMC-001-1(別売り)
ホストコンピュータ
JIR-301-M
No.0
JIR-301-M
No.1
JIR-301-M
No.30
- 2 -
Dサブ 9ピンコネクタ
シールド線
ホストコンピュータ
シールド線
シールド線
11 YA(-)
14 YB(+)
17 SG
11 YA(-)
14 YB(+)
17 SG
11 YA(-)
14 YB(+)
17 SG
4
3
1
6
JIR-301-M(最大 31 )
CDM を介して
JIR-301-M
シールド線
ホストコンピュータ
Dサブ 25 ピンコネクタ
FG
FG
USB 通信ケーブル
CMC-001-1(別売り)
ホストコンピュータ
USB ポート
11 YA(-)
14 YB(+)
17 SG
11 YA(-)
14 YB(+)
17 SG
11 YA(-)
14 YB(+)
17 SG
シールド線
シールド線
YA(-)
YB(+)
COM
JIR-301-M(最大 31 )
2.
2.1 USB 通信ケーブル CMC-001-1(別売り)を使用した場合の配線例
(2.1-1)
2.2 通信変換器 IF-400(別売り)を使用した場合の配線例
Dサブ25ピンコネクタの場合 Dサブ9ピンコネクタの場合
(2.2-1)
シールド線について
シールド部に電流が流れないように,シールド線の片側のみFGに接続してください。
シールド部の両側をFGに接続すると,シールド線と大地の間で閉回路ができ,シールド線に電流が流れ
て,ノイズの影響を受けやすくなります。
FGは,必ず接地処理を行ってください。
推奨ケーブル: オーナンバ株式会社 OTSC-VB 2PX0.5SQ または同等品 (ツイストペアシールド線
をご使用ください)
- 3 -
終端抵抗(ターミネータ)について
通信変換器 IF-400 (別売り)は,終端抵抗を内蔵しています。
終端抵抗とは,ターミネータともいい,パソコンに周辺機器を数珠繋ぎにした時,配線の終端に取り付
ける抵抗のことで,終端での信号の反射を防ぎ,信号の乱れを防ぎます。
本器は,プルアップ抵抗およびプルダウン抵抗を内蔵していますので,通信ライン上に終端抵抗は必要
ありません。
3. 通信パラメータ設定
PV/SV 表示モードでダウンキーとモードキーを同時に約 3秒間押し続けると,補助機能設定モード 1に移
行します。
モードキーを 3回押してください。
通信プロトコル選択項目に移行します。
各設定(選択)項目の設定(選択)は,アップキーまたはダウンキーで行い,設定(選択)値の登録はモードキー
で行います。
キャラクタ
工場出荷初期値
称,機能説明,設定範囲
通信プロトコル選択
・通信プロトコルを選択してください。
: 神港標準
: MODBUS ASCII モード
: MODBUS RTU モード
: 神港標準(ブロックリード/ライト対応)
: MODBUS ASCII モード(ブロックリード/ライト対応)
: MODBUS RTU モード(ブロックリード/ライト対応)
機器番号設定
・シリアル通信において,本器を複数台接続して通信を行う場合,各計器に個別
の機器番号を設定してください。
095
通信速度選択
・ホストコンピュータ側の通信速度に合わせて,通信速度を選択してください。
: 2400 bps
: 4800 bps
: 9600 bps
: 19200 bps
: 38400 bps
パリティ選択
・パリティを選択してください。
通信プロトコル選択で MODBUS ASCII モードもしくは MODBUS RTUモードを
選択した場合,表示します。
: 無し
: 偶数
: 奇数
ストップビット選択
・ストップビットを選択してください。
通信プロトコル選択で MODBUS ASCII モードもしくは MODBUS RTUモードを
選択した場合,表示します。
: 1ビット
: 2 ビット
モードキーを押してください。
PV/SV表示モードに戻ります。
以上で設定終了です。
- 4 -
4. 通信手順
ホストコンピュータ (マスター)のコマンド送出で始まり,本器 (スレーブ)からの応答で終わります。
マスター スレーブ
・データを伴う応答
読み取りコマンドでは,そのコマンドに対応する設定値または動作状態な
どのデータを応答として返します。
・肯定応答
設定コマンドでは,その処理終了後,応答として肯定応答を返します。
・否定応答
存在しないコマンドまたは設定範囲を超える値などの時は,応答として否
定応答を返します。
・無応答
以下の場合,応答を返しません。
・グローバルアドレス (神港標準)設定時
(4-1) ・ブ (MODBUS)設定時
・通信エラー (フレーミングエラー,パリティエラー)
(神港標準)LRCの不一致 (MODBUS ASCII)CRC-16
の不一致 (MODBUS RTU)
RS-485 (オプション: C5)の通信タイミング
マスター側について (プログラム作成上の注意)
マスターは,RS-485規格の通信回線に送信する際,受信側の同期を確実にするため,コマンドの送
出前に1キャラクタ伝送時間以上のアイドル状態(マーク状態)を設けてください。
コマンド送出後,スレーブからの応答の受信に備えて1キャラクタ伝送時間以内にトランスミッタを
通信ラインから切り離してください。
マスターからの送信とスレーブからの送信が衝突するのを避けるため,マスターが確実に応答を受信
したことを確認し,次のコマンドを送信してください。
通信エラーにより,コマンドに対する応答を得られない場合,コマンドを送り直すリトライ処理を組
み込んでください。(2回以上のリトライを推奨)
スレーブ側について
スレーブは,RS-485規格の通信回線に送信する際,受信側の同期を確実にするため,応答データの
送出前に1キャラクタ伝送時間以上のアイドル状態 (マーク状態)を設けています。
応答データ送出後,1キャラクタ伝送時間以内にトランスミッタを通信ラインから切り離します。
コマンド
データ
コマンド
肯定応答
コマンド
否定応答
コマンド
無応答
- 5 -
5. 神港標準プロトコル
5.1 伝送モード
神港標準プロトコルはASCIIコードを使用します。
コマンド中の8ビットバイナリデータを上位下位4ビットに分けた16進数 (09AF)
ASCII文字として送信します。
データ構成 スタートビット: 1ビット
データビット: 7ビット
パリティビット: 偶数
ストップビット: 1ビット
エラー検出: チェックサム方式
5.2 コマンドの構成
コマンドは,すべて ASCII コードで構成します。
コマンド下の数字は,キャラクタ数を表しています。
データ(設定値)は,10 進数を 16 進数に変換します。負の数は,2の補数で表します。
(1) 書き込みコマンド
・単一データ書き込み
ヘッダ
(02H)
機器番号
サブアド
レス(20H)
コマンド
種別(50H)
データ
項目
データ
チェック
サム
デリミタ
(03H)
1
1
1
1
4
4
2
1
・複数データ書き込み
ヘッダ
(02H)
機器番号
サブアド
レス(20H)
コマンド
種別(54H)
データ
項目
1
1
1
1
4
データ
チェック
サム
デリミタ
(03H)
4×n
2
1
n: データ数
(2) 読み出しコマンド
・単一データ読み出し
ヘッダ
(02H)
機器番号
サブアド
レス(20H)
コマンド
種別(20H)
データ
項目
チェック
サム
デリミタ
(03H)
1
1
1
1
4
2
1
・複数データ読み出し
ヘッダ
(02H)
機器番号
サブアド
レス(20H)
コマンド
種別(24H)
データ
項目
読み出し
データ数 n
チェック
サム
デリミタ
(03H)
1
1
1
1
4
4
2
1
(3) データを伴う応答
・単一データ読み出しの応答
ヘッダ
(06H)
機器番号
サブアド
レス(20H)
コマンド
種別(20H)
データ
項目
データ
チェック
サム
デリミタ
(03H)
1
1
1
1
4
4
2
1
- 6 -
・複数データ読み出しの応答
ヘッダ
(06H)
機器番号
サブアド
レス(20H)
コマンド
種別(24H)
データ
項目
1
1
1
1
4
データ
チェック
サム
デリミタ
(03H)
4×n
2
1
n: データ数
(4) 肯定応答
ヘッダ
(06H)
機器番号
チェック
サム
デリミタ
(03H)
1
1
2
1
(5) 否定応答
ヘッダ
(15H)
機器番号
エラー
コード
チェック
サム
デリミタ
(03H)
1
1
1
2
1
ヘッダ: コマンド,応答の始めを表す制御コードで,ASCIIコードを使用します。
書き込みコマンド,読み出しコマンドの場合,STX (02H)固定です。
データを伴う応答,肯定応答の場合,ACK (06H)固定です。
否定応答の場合,NAK (15H)固定です。
機器番号: マスターが各々のスレーブを識別する為の番号です。
機器番号094とグローバルアドレス95で,機器番号095 (00H5FH)20Hを加算し
ASCIIコード (20H7FH)を使用します。
95 (7FH)をグローバルアドレスといい,接続されている全てのスレーブに同じコマンド
を送りたい時に使います。ただし,応答は返しません。
サブアドレス: 20H固定です。
コマンド種別: 書き込み,読み出しを識別するためのコードです。
コマンド種別
20H
単一データ読み出し
単一データの読み出しを行います。
24H
複数データ読み出し
連続する複数のデータに対して読み出しを
行います。(データ数 最大100)
50H
単一データ書き込み
単一データの書き込みを行います。
54H
複数データ書き込み
連続する複数のデータに対して書き込みを
行います。(データ数 最大100)
複数データ読み出し,複数データ書き込みの注意点
複数データ読み出し,複数データ書き込みを行う場合,スレーブが応答データの送
出までに時間が掛かるため,マスターはコマンド送出後,下記のタイムアウト時間
を目安に無応答の判定を行ってください。
タイムアウト時間の計算方法
6 ms×データ数
データ項目: コマンドの対象となるデータ分類です。
4桁の16進数をASCIIコードで表します。
7. 通信コマンド一覧(P.2431)参照してください。
データ: 書き込みコマンドにより,データ (設定値)の内容が異なります。
4桁の16進数をASCIIコードで表します。
7. 通信コマンド一覧(P.2431)参照してください。
チェックサム: 通信誤り検出の為の,2文字のデータです。
5.3 チェックサムの計算方法(P.7)を参照してください。
- 7 -
デリミタ: コマンドの終わりを表す制御コードで,ASCIIコードETX(03H)固定です。
エラーコード: エラーの種類を表し,以下の数値をASCIIコードで表します。
エラーコード
1 (31H)
存在しないコマンドの場合
2 (32H)
未使用
3 (33H)
設定値の範囲を超えた場合
4 (34H)
設定できない状態の場合
5 (35H)
キー操作による設定モード中の場合
5.3 チェックサムの計算方法
チェックサムは,コマンドまたはデータの受信誤りを検出するために用います。
マスター側にも,スレーブからの応答データのチェックサムを計算するプログラムを作成して,通信誤
りがないことを確認するようにしてください。
チェックサムは,機器番号からチェックサムの前の文字までのASCIIコードを加算し,その合計値の2
補数を16進数で表現した下位2桁をASCIIコード化したものです。
1の補数は,2進数の01を反転させた数です。
2の補数は,1の補数に1を加えた数です。
[チェックサムの計算例]
A1動作点設定(0001H)600 (0258H)を書き込む場合の計算例を示します。
機器番号を0 (20H)とします。
STX ETXP 0 0 0 1 0 2 5 8
02H 20H 20H 50H 30H 30H 30H 31H 30H 32H 35H 38H 03H
[上記をASCIIコードで表すと]
チェックサム
チェックサムの計算範囲
E
45H 30H
0
20H
20H
50H
30H
30H
30H
31H
30H
32H
35H
38H
0010 0000
0010 0000
0101 0000
0011 0000
0011 0000
0011 0000
0011 0001
0011 0000
0011 0010
0011 0101
0011 1000
10 0010 0000
[16進数][2進数]
1101 1111
1
1110 0000
E 0
45H 30H
[1の補数]
[2の補数]
[16進数]
[ASCIIコード]
- 8 -
5.3 コマンド例
コマンド下の数字は,キャラクタ数を表しています。
(1) 機器番号 1PV(0080H)読み出し
・マスター側からの読み出しコマンド
ヘッダ
(02H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(20H)
データ項目
[0080H]
(30H 30H 38H 30H)
チェック
サム
(44H 37H)
デリミタ
(03H)
1
1
1
1
4
2
1
・正常時のスレーブ側の応答 [PV 25 (0019H)の場合]
ヘッダ
(06H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(20H)
データ項目
[0080H]
(30H 30H 38H 30H)
データ
[0019H]
(30H 30H 31H 39H)
チェック
サム
(30H 44H)
デリミタ
(03H)
1
1
1
1
4
4
2
1
(2) 機器番号 1A1 動作点設定(0001H)の読み出し
・マスター側からの読み出しコマンド
ヘッダ
(02H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(20H)
データ項目
[0001H]
(30H 30H 30H 31H)
チェック
サム
(44H 45H)
デリミタ
(03H)
1
1
1
1
4
2
1
・正常時のスレーブ側の応答 [A1 動作点設定が 600 (0258H)の場合]
ヘッダ
(06H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(20H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ
[0258H]
(30H 32H 35H 38H)
チェック
サム
(30H 46H)
デリミタ
(03H)
1
1
1
1
4
4
2
1
(3) 機器番号 1A1 動作点設定(0001H)の書き込み
・マスター側からの書き込みコマンド [A1 動作点設定に 600 (0258H)を書き込む場合]
ヘッダ
(02H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(50H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ
[0258H]
(30H 32H 35H 38H)
チェック
サム
(44H 46H)
デリミタ
(03H)
1
1
1
1
4
4
2
1
・正常時のスレーブ側の応答
ヘッダ
(06H)
機器番号
(21H)
チェック
サム
(44H 46H)
デリミタ
(03H)
1
1
2
1
- 9 -
(4) 機器番号 1,入力種類選択から 25 コマンドの読み出し
・マスター側からの読み出しコマンド
ヘッダ
(02H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(24H)
データ項目
[0001H]
(30H 30H 30H 31H)
読み出しデータ数
25[0019H]
(30H 30H 31H 39H)
チェック
サム
(31H 30H)
デリミタ
(03H)
1
1
1
1
4
4
2
1
・正常時のスレーブ側の応答
ヘッダ
(06H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(24H)
データ項目
[0001H]
(30H 30H 30H 31H)
1
1
1
1
4
データ
[00000000055A・・・0000]
(30H 30H 30H 30H 30H 30H 30H 30H 30H 35H 35H 41H・・・30H 30H 30H 30H)
チェック
サム
(41H 38H)
デリミタ
(03H)
100(4×25)
2
1
応答のデータ部は,以下のようになります。
データ項目
データ
データ(16 進数に変換した値)
0001H
入力種類選択
K [-2001370 ]
0000H
0002H
スケーリング上限設定
1370
055AH
0003H
スケーリング下限設定
-200
FF38H
0004H
小数点位置選択
小数点無し
0000H
0005H
A1 動作選択
警報動作無し
0000H
0006H
A2 動作選択
警報動作無し
0000H
0007H
A3 動作選択
警報動作無し
0000H
0008H
A4 動作選択
警報動作無し
0000H
0009H
A1 動作点設定
0
0000H
000AH
A2 動作点設定
0
0000H
000BH
A3 動作点設定
0
0000H
000CH
A4 動作点設定
0
0000H
000DH
A4 上限動作点設定
0
0000H
000EH
A1 動作すきま設定
1.0
000AH
000FH
A2 動作すきま設定
1.0
000AH
0010H
A3 動作すきま設定
1.0
000AH
0011H
A4 動作すきま設定
1.0
000AH
0012H
A1 動作励磁/非励磁選択
励磁
0000H
0013H
A2 動作励磁/非励磁選択
励磁
0000H
0014H
A3 動作励磁/非励磁選択
励磁
0000H
0015H
A4 動作励磁/非励磁選択
励磁
0000H
0016H
A1 動作遅延タイマ設定
0
0000H
0017H
A2 動作遅延タイマ設定
0
0000H
0018H
A3 動作遅延タイマ設定
0
0000H
0019H
A4 動作遅延タイマ設定
0
0000H
- 10 -
(5) 機器番号 1,入力種類選択から 25 コマンドの書き込み
入力種類選択から 25 コマンドのデータ例を以下に示します。
データ項目
データ
データ(16 進数に変換した値)
0001H
入力種類選択
K [-200.0400.0 ]
0001H
0002H
スケーリング上限設定
400.0
0FA0H
0003H
スケーリング下限設定
0.0
0000H
0004H
小数点位置選択
xxx.x(小数点以下 1)
0001H
0005H
A1 動作選択
上限警報
0001H
0006H
A2 動作選択
上限警報
0001H
0007H
A3 動作選択
下限警報
0002H
0008H
A4 動作選択
上下限範囲警報
0005H
0009H
A1 動作点設定
250.0
09C4H
000AH
A2 動作点設定
300.0
0BB8H
000BH
A3 動作点設定
150.0
05DCH
000CH
A4 動作点設定
180.0
0708H
000DH
A4 上限動作点設定
220.0
0898H
000EH
A1 動作すきま設定
1.0
000AH
000FH
A2 動作すきま設定
1.0
000AH
0010H
A3 動作すきま設定
1.0
000AH
0011H
A4 動作すきま設定
1.0
000AH
0012H
A1 動作励磁/非励磁選択
励磁
0000H
0013H
A2 動作励磁/非励磁選択
励磁
0000H
0014H
A3 動作励磁/非励磁選択
励磁
0000H
0015H
A4 動作励磁/非励磁選択
励磁
0000H
0016H
A1 動作遅延タイマ設定
0
0000H
0017H
A2 動作遅延タイマ設定
0
0000H
0018H
A3 動作遅延タイマ設定
0
0000H
0019H
A4 動作遅延タイマ設定
0
0000H
・マスター側からの書き込みコマンド(上記データを書き込む場合)
ヘッダ
(02H)
機器番号
(21H)
サブ
アドレス
(20H)
コマンド
種別
(54H)
データ項目
[0001H]
(30H 30H 30H 31H)
1
1
1
1
4
データ
[00010FA00000・・・0000]
(30H 30H 30H 31H 30H 46H 41H 30H 30H 30H 30H 30H・・・30H 30H 30H 30H)
チェック
サム
(44H 34H)
デリミタ
(03H)
100(4×25)
2
1
・正常時のスレーブ側の応答
ヘッダ
(06H)
機器番号
(21H)
チェック
サム
(44H 46H)
デリミタ
(03H)
1
1
2
1
- 11 -
6.
MODBUS プロトコル
6.1 伝送モード
MODBUSコル2の伝モー(ASCII RTUード)下のからりま
6.1.1 ASCII モー
コマンド中の 8ビットバイナリデータを上位下位 4ビットに分けた 16 進数(09AF)をそれぞれ
ASCII 文字として送信します。
データ構成 スタートビット: 1 ビット
データビット: 7 ビット
パリティビット: 偶数(無し,奇数) 選択可能
ストップビット: 1 ビット(2 ビット) 選択可能
エラー検出: LRC(水平冗長検査)方式
6.1.2 RTU モード
コマンド中の 8ビットバイナリデータをそのまま送信します。
データ構成 スタートビット: 1 ビット
データビット: 8 ビット
パリティビット: 無し(偶数,奇数) 選択可能
ストップビット: 1 ビット(2 ビット) 選択可能
エラー検出: CRC-16(周期冗長検査)方式
6.2 データの通信間隔
6.2.1 ASCII モー
文字間の通信間隔は制限無し。
6.2.2 RTU モード
1.5 文字伝送時間以下(通信速度が,2400 bps4800 bps9600 bps19200 bps の場合 1.5 文字伝
送時間,38400 bps の場合 750 s)
1つのメッセージを構成するデータの通信間隔は,最大 1.5 文字伝送時間以上長くならないよう連続
して送信するようにしてください。
上記時間より長い場合,マスター側からの送信が終了したものと判断し,通信エラーとなり応答を返
しません。
6.3 メッセージの構成
6.3.1 ASCII モー
ASCII モードのメッセージは,ヘッダ[:(コロン)(3AH)]で始まり,デリミタ[CR(キャリッジリター
)(0DH)+LF(ラインフィード)(0AH)]で終わるように構成されています。
データ部は,最大 2×252 文字。
ヘッダ
(:)
スレーブ
アドレス
機能コード
データ
エラーチェック
LRC
デリミタ
(CR)
デリミタ
(LF)
6.3.2 RTU モード
RTU モードのメッセージは,3.5 文字伝送時間以上のアイドル後に始まり,3.5 文字伝送時間以上の
アイドル経過で終わるように構成されています。(通信速度が,2400 bps4800 bps9600 bps19200
bps の場合 3.5 文字伝送時間,38400 bps の場合 1.75 ms)
データ部は,最大 252 バイト。
アイドル
3.5 文字
スレーブ
アドレス
機能コード
データ
エラーチェック
CRC-16
アイドル
3.5 文字
- 12 -
(1) スレーブアドレス
スレーブアドレスは,スレーブ側個別の機器番号で 095(00H5FH)の範囲で設定します。
マスター側は,要求メッセージのスレーブアドレスによってスレーブ側を指定します。
スレーブ側は,応答メッセージに自身のスレーブアドレスをセットして,マスター側にどのスレー
ブが応答しているかを知らせます。
スレーブアドレス 00H は,ブロードキャストアドレスといい,接続されている全てのスレーブを指
定できます。ただし,スレーブ側は応答を返しません。
(2) 機能コード
機能コードは,スレーブ側に対する動作の種類を指示するコードです。(6.3-1)
(6.3-1)
機能コード
データ
アクセス
03(03H)
スレーブからの単一データまたは複数データ読み出し
(1 コマンドで 100 データまで可能)
04(04H)
スレーブからの状態読み出し
(1 コマンドで 100 データまで可能)
06(06H)
スレーブへの単一データ書き込み
16(10H)
スレーブへの複数データ書き込み
(1 コマンドで 100 データまで可能)
機能コードは,スレーブ側がマスター側に応答メッセージを返す時,正常な応答(肯定応答)または
何らかのエラー(否定応答)を示すのに用いられます。
肯定応答では,元の機能コードをセットして返します。
否定応答では,元の機能コードの最上位ビットに 1をセットして返します。
例えば,機能コードを誤って 10H をセットしてスレーブ側へ要求メッセージを送信した場合,存在
しない機能コードなので最上位ビットに 1をセットし,90H として返します。
また,否定応答では,マスター側にどの種のエラーが発生したかを知らせるため,応答メッセージの
データに(6.3-2)のような異常コードをセットして返します。
(6.3-2)
異常コード
1(01H)
Illegal Function(存在しない機能)
2(02H)
Illegal data address(存在しないデータアドレス)
3(03H)
Illegal data value(設定範囲外の値)
17(11H)
神港標準プロトコルのエラーコード 4同じです(設定できない状態)
18(12H)
神港標準プロトコルのエラーコード 5同じです(キー操作による設定モード)
(3) データ
データは,機能コードにより構成が異なります。
マスター側からの要求メッセージは,データ項目やデータ数,設定データで構成します。
スレーブ側からの応答メッセージは,要求に対するバイト数やデータ,否定応答時は異常コード等
で構成します。データの有効範囲は-3276832767(8000H7FFFH)です。
7. 通信コマンド一覧(P.2431)を参照してください。
- 13 -
(4) エラーチェック
ASCII モード
ASCIIモードのエラーチェックは,スレーブアドレスからデータの最後までの LRC(水平冗長検査)
を計算し,算出した 8ビットデータを ASCII 文字 2文字に変換してデータの後にセットします。
[LRC の計算方法]
RTU モードでメッセージを作成します。
スレーブアドレスからデータの最後までを加算し,Xに代入します。
X の補数(ビット反転)をとり,Xに代入します。
X 1足し,Xに代入します。
X LRC として,データの後にセットします。
メッセージを ASCII 文字に変換します。
RTU モード
RTU モードのエラーチェックは,スレーブアドレスからデータの最後までの CRC-16(周期冗長検
)を計算し,算出した 16 ビットデータを下位上位の順にデータの後にセットします。
[CRC-16 の計算方法]
CRC-16 方式は送るべき情報を生成多項式で割り,その余りを情報の後ろに付加して送信しま
す。(生成多項式: X16+X15+X2+1)
CRC-16 のデータ(X とする)を初期化します。(FFFFH)
1 つ目のデータと Xの排他的論理和(XOR)を取り,Xに代入します。
X を右に 1ビットシフトし,X代入します。
シフト結果でキャリーが出ればの結果 X固定値(A001H)XOR を取り,Xに代入しま
す。キャリーが出なければへ。
8 回シフトするまでを繰り返します。
次のデータと XXOR を取り,Xに代入します。
を繰り返します。
最後のデータまでを繰り返します。
X CRC-16 としてメッセージに下位上位の順でデータの後にセットします。
- 14 -
6.4 メッセージ例
6.4.1 ASCII モー
メッセージ下の数字は,キャラクタ数を表しています。
(1) スレーブアドレス 1PV(0080H)の読み出し
・マスター側からの要求メッセージ
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 33H)
データ項目
[0080H]
(30H 30H 38H 30H)
データ数
[0001H]
(30H 30H 30H 31H)
エラーチェック
LRC
(37H 42H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
4
4
2
2
・正常時のスレーブ側の応答メッセージ[PV 600 (0258H)の場合]
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 33H)
応答バイト数
[02H]
(30H 32H)
データ
[0258H]
(30H 32H 35H 38H)
エラーチェック
LRC
(41H 30H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
2
4
2
2
(2) スレーブアドレス 1A1 動作点設定(0001H)の書き込み
・マスター側からの要求メッセージ[A1 動作点設定に 600 (0258H)を書き込む場合]
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 36H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ
[0258H]
(30H 32H 35H 38H)
エラーチェック
LRC
(39H 45H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
4
4
2
2
・正常時のスレーブ側の応答メッセージ
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 36H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ
[0258H]
(30H 32H 35H 38H)
エラーチェック
LRC
(39H 45H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
4
4
2
2
・異常時のスレーブ側の応答メッセージ(設定範囲外の値を書き込んだ場合)
常時の応セーは,コーの最ビッ1をセ86H(38H 36H)返し
エラーの内容として,異常コード 03H(30H 33H 設定範囲外の値)を返します。
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(38H 36H)
異常コード
[03H]
(30H 33H)
エラーチェック
LRC
(37H 36H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
2
2
2
(3) スレーブアドレス 1A1 動作点設定(0001H)の読み出し
・マスター側からの要求メッセージ
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 33H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ数
[0001H]
(30H 30H 30H 31H)
エラーチェック
LRC
(46H 41H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
4
4
2
2
・正常時のスレーブ側の応答メッセージ[A1 動作点設定が 600 (0258H)の場合]
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 33H)
応答バイト数
[02H]
(30H 32H)
データ
[0258H]
(30H 32H 35H 38H)
エラーチェック
LRC
(41H 30H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
2
4
2
2
・異常時のスレーブ側の応答メッセージ(データ項目を間違えた場合)
常時の応セーは,コーの最ビッ1をセし,83H(38H 33H)す。
エラーの内容として,異常コード 02H(30H 32H 存在しないデータアドレス)を返します。
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(38H 33H)
異常コード
[02H]
(30H 32H)
エラーチェック
LRC
(37H 41H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
2
2
2
- 15 -
(4) スレーブアドレス 1,入力種類選択から 25 コマンドの読み出し
・マスター側からの要求メッセージ
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 33H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ数
[0019H]
(30H 30H 31H 39H)
エラーチェック
LRC
(45H 32H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
4
4
2
2
・正常時のスレーブ側の応答メッセージ
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(30H 33H)
応答バイト数
[32H]
(33H 32H)
1
2
2
2
データ
[0000055AFF38・・・0000]
(30H 30H 30H 30H 30H 35H 35H 41H 46H 46H 33H 38H30H 30H 30H 30H)
エラーチェック
LRC
(32H 32H)
デリミタ
CR+LF
(0DH 0AH)
100(4×25)
2
2
応答のデータ部は,以下のようになります。
データ項目
データ
データ(16 進数に変換した値)
0001H
入力種類選択
K [-2001370 ]
0000H
0002H
スケーリング上限設定
1370
055AH
0003H
スケーリング下限設定
-200
FF38H
0004H
小数点位置選択
小数点無し
0000H
0005H
A1 動作選択
警報動作無し
0000H
0006H
A2 動作選択
警報動作無し
0000H
0007H
A3 動作選択
警報動作無し
0000H
0008H
A4 動作選択
警報動作無し
0000H
0009H
A1 動作点設定
0
0000H
000AH
A2 動作点設定
0
0000H
000BH
A3 動作点設定
0
0000H
000CH
A4 動作点設定
0
0000H
000DH
A4 上限動作点設定
0
0000H
000EH
A1 動作すきま設定
1.0
000AH
000FH
A2 動作すきま設定
1.0
000AH
0010H
A3 動作すきま設定
1.0
000AH
0011H
A4 動作すきま設定
1.0
000AH
0012H
A1 動作励磁/非励磁選択
励磁
0000H
0013H
A2 動作励磁/非励磁選択
励磁
0000H
0014H
A3 動作励磁/非励磁選択
励磁
0000H
0015H
A4 動作励磁/非励磁選択
励磁
0000H
0016H
A1 動作遅延タイマ設定
0
0000H
0017H
A2 動作遅延タイマ設定
0
0000H
0018H
A3 動作遅延タイマ設定
0
0000H
0019H
A4 動作遅延タイマ設定
0
0000H
- 16 -
(5) スレーブアドレス 1,入力種類選択から 25 コマンドの書き込み
入力種類選択から 25 コマンドのデータ例を以下に示します。
データ項目
データ
データ(16 進数に変換した値)
0001H
入力種類選択
K [-200.0400.0 ]
0001H
0002H
スケーリング上限設定
400.0
0FA0H
0003H
スケーリング下限設定
0.0
0000H
0004H
小数点位置選択
xxx.x(小数点以下 1)
0001H
0005H
A1 動作選択
上限警報
0001H
0006H
A2 動作選択
上限警報
0001H
0007H
A3 動作選択
下限警報
0002H
0008H
A4 動作選択
上下限範囲警報
0005H
0009H
A1 動作点設定
250.0
09C4H
000AH
A2 動作点設定
300.0
0BB8H
000BH
A3 動作点設定
150.0
05DCH
000CH
A4 動作点設定
180.0
0708H
000DH
A4 上限動作点設定
220.0
0898H
000EH
A1 動作すきま設定
1.0
000AH
000FH
A2 動作すきま設定
1.0
000AH
0010H
A3 動作すきま設定
1.0
000AH
0011H
A4 動作すきま設定
1.0
000AH
0012H
A1 動作励磁/非励磁選択
励磁
0000H
0013H
A2 動作励磁/非励磁選択
励磁
0000H
0014H
A3 動作励磁/非励磁選択
励磁
0000H
0015H
A4 動作励磁/非励磁選択
励磁
0000H
0016H
A1 動作遅延タイマ設定
0
0000H
0017H
A2 動作遅延タイマ設定
0
0000H
0018H
A3 動作遅延タイマ設定
0
0000H
0019H
A4 動作遅延タイマ設定
0
0000H
・マスター側からの要求メッセージ(上記データを書き込む場合)
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(31H 30H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ数
[0019H]
(30H 30H 31H 39H)
バイト数
[32H]
(33H 32H)
1
2
2
4
4
2
データ
[00010FA0・・・0000]
(30H 30H 30H 31H 30H 46H 41H 30H・・・30H 30H 30H 30H)
エラーチェック
LRC
(41H 31H)
デリミタ
CR+LF
(0DH 0AH)
100(4×25)
2
2
・正常時のスレーブ側の応答メッセージ
ヘッダ
(3AH)
スレーブ
アドレス
(30H 31H)
機能コード
(31H 30H)
データ項目
[0001H]
(30H 30H 30H 31H)
データ数
[0019H]
(30H 30H 31H 39H)
エラーチェック
LRC
(44H 35H)
デリミタ
CR+LF
(0DH 0AH)
1
2
2
4
4
2
2
- 17 -
6.4.2 RTU モード
メッセージ下の数字は,キャラクタ数を表しています。
(1) スレーブアドレス 1PV(0080H)の読み出し
・マスター側からの要求メッセージ
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(03H)
データ項目
(0080H)
データ数
(0001H)
エラーチェック
CRC-16
(85E2H)
アイドル
3.5 文字
1
1
2
2
2
・正常時のスレーブ側の応答メッセージ[PV 600 (0258H)の場合]
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(03H)
応答バイト数
(02H)
データ
(0258H)
エラーチェック
CRC-16
(B8DEH)
アイドル
3.5 文字
1
1
1
2
2
(2) スレーブアドレス 1A1 動作点設定(0001H)の書き込み
・マスター側からの要求メッセージ[A1 動作点設定に 600 (0258H)を書き込む場合]
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(06H)
データ項目
(0001H)
データ
(0258H)
エラーチェック
CRC-16
(D890H)
アイドル
3.5 文字
1
1
2
2
2
・正常時のスレーブ側の応答メッセージ
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(06H)
データ項目
(0001H)
データ
(0258H)
エラーチェック
CRC-16
(D890H)
アイドル
3.5 文字
1
1
2
2
2
・異常時のスレーブ側の応答メッセージ(設定範囲外の値を書き込んだ場合)
異常時の応答メッセージは,機能コードの最上位ビットに 1をセットし,86H を返します。
エラーの内容として,異常コード 03H(設定範囲外の値)を返します。
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(86H)
異常コード
(03H)
エラーチェック
CRC-16
(0261H)
アイドル
3.5 文字
1
1
1
2
(3) スレーブアドレス 1A1 動作点設定(0001H)の読み出し
・マスター側からの要求メッセージ
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(03H)
データ項目
(0001H)
データ数
(0001H)
エラーチェック
CRC-16
(D5CAH)
アイドル
3.5 文字
1
1
2
2
2
・正常時のスレーブ側の応答メッセージ[A1 動作点設定が 600 (0258H)の場合]
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(03H)
応答バイト数
(02H)
データ
(0258H)
エラーチェック
CRC-16
(B8DEH)
アイドル
3.5 文字
1
1
1
2
2
・異常時のスレーブ側の応答メッセージ(データ項目を間違えた場合)
異常時の応答メッセージは,機能コードの最上位ビットに 1をセットし,83H を返します。
エラーの内容として,異常コード 02H(存在しないデータアドレス)を返します。
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(83H)
異常コード
(02H)
エラーチェック
CRC-16
(C0F1H)
アイドル
3.5 文字
1
1
1
2
- 18 -
(4) スレーブアドレス 1,入力種類選択から 25 コマンドの読み出し
・マスター側からの要求メッセージ
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(03H)
データ項目
(0001H)
データ数
(0019H)
エラーチェック
CRC-16
(D5C0H)
アイドル
3.5 文字
1
1
2
2
2
・正常時のスレーブ側の応答メッセージ
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(03H)
応答バイト数
(32H)
データ
(0000055AFF38・・・0000H)
エラーチェック
CRC-16
(15CDH)
アイドル
3.5 文字
1
1
1
50(2×25)
2
応答のデータ部は,以下のようになります。
データ項目
データ
データ(16 進数に変換した値)
0001H
入力種類選択
K [-2001370 ]
0000H
0002H
スケーリング上限設定
1370
055AH
0003H
スケーリング下限設定
-200
FF38H
0004H
小数点位置選択
小数点無し
0000H
0005H
A1 動作選択
警報動作無し
0000H
0006H
A2 動作選択
警報動作無し
0000H
0007H
A3 動作選択
警報動作無し
0000H
0008H
A4 動作選択
警報動作無し
0000H
0009H
A1 動作点設定
0
0000H
000AH
A2 動作点設定
0
0000H
000BH
A3 動作点設定
0
0000H
000CH
A4 動作点設定
0
0000H
000DH
A4 上限動作点設定
0
0000H
000EH
A1 動作すきま設定
1.0
000AH
000FH
A2 動作すきま設定
1.0
000AH
0010H
A3 動作すきま設定
1.0
000AH
0011H
A4 動作すきま設定
1.0
000AH
0012H
A1 動作励磁/非励磁選択
励磁
0000H
0013H
A2 動作励磁/非励磁選択
励磁
0000H
0014H
A3 動作励磁/非励磁選択
励磁
0000H
0015H
A4 動作励磁/非励磁選択
励磁
0000H
0016H
A1 動作遅延タイマ設定
0
0000H
0017H
A2 動作遅延タイマ設定
0
0000H
0018H
A3 動作遅延タイマ設定
0
0000H
0019H
A4 動作遅延タイマ設定
0
0000H
- 19 -
(5) スレーブアドレス 1,入力種類選択から 25 コマンドの書き込み
入力種類選択から 25 コマンドのデータ例を以下に示します。
データ項目
データ
データ(16 進数に変換した値)
0001H
入力種類選択
K [-200.0400.0 ]
0001H
0002H
スケーリング上限設定
400.0
0FA0H
0003H
スケーリング下限設定
0.0
0000H
0004H
小数点位置選択
xxx.x(小数点以下 1)
0001H
0005H
A1 動作選択
上限警報
0001H
0006H
A2 動作選択
上限警報
0001H
0007H
A3 動作選択
下限警報
0002H
0008H
A4 動作選択
上下限範囲警報
0005H
0009H
A1 動作点設定
250.0
09C4H
000AH
A2 動作点設定
300.0
0BB8H
000BH
A3 動作点設定
150.0
05DCH
000CH
A4 動作点設定
180.0
0708H
000DH
A4 上限動作点設定
220.0
0898H
000EH
A1 動作すきま設定
1.0
000AH
000FH
A2 動作すきま設定
1.0
000AH
0010H
A3 動作すきま設定
1.0
000AH
0011H
A4 動作すきま設定
1.0
000AH
0012H
A1 動作励磁/非励磁選択
励磁
0000H
0013H
A2 動作励磁/非励磁選択
励磁
0000H
0014H
A3 動作励磁/非励磁選択
励磁
0000H
0015H
A4 動作励磁/非励磁選択
励磁
0000H
0016H
A1 動作遅延タイマ設定
0
0000H
0017H
A2 動作遅延タイマ設定
0
0000H
0018H
A3 動作遅延タイマ設定
0
0000H
0019H
A4 動作遅延タイマ設定
0
0000H
・マスター側からの要求メッセージ(上記データを書き込む場合)
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(10H)
データ項目
(0001H)
データ数
(0019H)
バイト数
(32H)
1
1
2
2
1
データ
(00010FA00000・・・0000H)
エラーチェック
CRC-16
(0412H)
アイドル
3.5 文字
50(2×25)
2
・正常時のスレーブ側の応答メッセージ
アイドル
3.5 文字
スレーブ
アドレス
(01H)
機能コード
(10H)
データ項目
(0001H)
データ数
(0019H)
エラーチェック
CRC-16
(5003H)
アイドル
3.5 文字
1
1
2
2
2
- 20 -
6.5 診断機能
MODBUSプロトコルには,以下の診断機能があります。
・要求メッセージの読み返し
・機器識別情報の読み出し
6.5.1 メッセージの構成
ASCIIモード
ヘッダ
(:)
スレーブ
アドレス
機能
コード
データ
エラーチェック
LRC
デリミタ
(CR)
デリミタ
(LF)
RTUモード
アイドル
3.5 文字
スレーブ
アドレス
機能
コード
データ
エラーチェック
CRC-16
アイドル
3.5 文字
(1) スレーブアドレス
スレーブアドレスは,スレーブ側個々の機器番号で195(01H5FH)の範囲で設定します。
マスター側は,要求メッセージのスレーブアドレスによってスレーブ側を指定します。
スレーブ側は,応答メッセージに自身のスレーブアドレスをセットして,マスター側にどのスレ
ーブが応答しているかを知らせます。
ブロードキャストアドレス[0(00H)]の場合,診断機能は働きません。
(2) 機能コード
機能コードは,スレーブ側に対する動作の種類を指示するコードです。
機能コード
サブ機能コード
08(08H)
00(0000H)
要求メッセージの読み返し
(1コマンドで100データまで可能)
43(2BH)
14(0EH)
機器識別情報の読み出し
機能コードは,スレーブ側がマスター側に応答メッセージを返す時,正常な応答(肯定応答)または
何らかのエラー(否定応答)を示すのに用いられます。
肯定応答では,元の機能コードをセットして返します。
否定応答では,元の機能コードの最上位ビットに 1をセットして返します。
ば,機能43(2BH) 機器別情読みにおて,サブード誤っ0FHをセ
してレー側へメッージ送信合,在しサブードで最位ビ
トに 1セッし,ABHて返ます
否定応答では,マスター側にどの種のエラーが発生したかを知らせるため,応答メッセージのデ
ータに下記のような異常コードをセットして返します。
異常コード
1(01H)
Illegal function(存在しない機能)
サブ機能コードが間違っている。
2(02H)
Illegal data address(存在しないデータアドレス)
機能コード 43(2BH)の場合,Object ID 00, 01, 02 以外。
3(03H)
Illegal data value(設定範囲外の値)
機能コード 08(08H)の場合,データが 1未満または 100 を超えた。
機能コード 43(2BH)の場合,Read Device ID code 01, 04 以外。
(3) データ
機能コードにより構成が異なります。
機能コード08(08H)の場合,マスター側からの要求メッセージは,サブ機能コード2イト(0000H)
およびデータn×2バイトで構成します[n: データ数(最大100)]
スレーブ側からの応答メッセージは,正常な場合,要求メッセージと同じです。
機能コード
1バイト
08H
サブ機能コード
1バイト
0000H固定
データ
n×2バイト
任意値(最大100)
  • Page 1 1
  • Page 2 2
  • Page 3 3
  • Page 4 4
  • Page 5 5
  • Page 6 6
  • Page 7 7
  • Page 8 8
  • Page 9 9
  • Page 10 10
  • Page 11 11
  • Page 12 12
  • Page 13 13
  • Page 14 14
  • Page 15 15
  • Page 16 16
  • Page 17 17
  • Page 18 18
  • Page 19 19
  • Page 20 20
  • Page 21 21
  • Page 22 22
  • Page 23 23
  • Page 24 24
  • Page 25 25
  • Page 26 26
  • Page 27 27
  • Page 28 28
  • Page 29 29
  • Page 30 30
  • Page 31 31
  • Page 32 32
  • Page 33 33
  • Page 34 34
  • Page 35 35
  • Page 36 36

Shinko JIR-301-M ユーザーマニュアル

タイプ
ユーザーマニュアル