LABORATORY熱の実験室

◎ 通信-要求メッセージ

 HAPコントローラーへの書き込み要求メッセージの構成(メッセージフレーム)は、以下のようになっています。
 16進数は先頭に[0x]を付けて表記しています。
例)スレーブアドレスが “1” のHAPコントローラーに対して、設定温度(SV値)を100℃にするよう書き込みを要求します。
 メッセージ:0x01 10 0002 0002 04 03E8 0000 06F2
・書き込み要求メッセージ(シーケンサ ⇒ HAPコントローラー)
(a)
スレーブ
アドレス
(b)
ファンクション
コード
(c)
レジスタ
アドレス
(d)
レジスタの数
(固定)
(f)
バイト数
(固定)
(g)*
データ部
(e)
CRC-16
上位 下位 上位 下位 上位 下位 上位 下位 上位 下位
0x01 0x10 0x00 0x02 0x00 0x02 0x04 (3) (4) (1) (2) 0x06 0xF2
0x03 0xE8 0x00 0x00
  • (a) スレーブアドレス : 1 [0x01]
     SET.6 通信設定のパラメータ[Adr:スレーブアドレス設定]で設定される、スレーブ個別のアドレスを指定します。
  • (b) ファンクションコード : 書き込み[0x10]
     書き込みを要求する場合は[0x10]、読み出しを要求する場合は[0x03]を指定します。
  • (c) レジスタアドレス : 設定温度のアドレス[0x0002]
     HAPコントローラーの各パラメータに、個別に割り付けられているアドレスです。
     書き込みを行うパラメータのアドレスを指定します。
  • (d) レジスタの数 : 2 個固定[0x0002]
     [0x0002]を指定します。(固定値)
  • (f) バイト数 : レジスタの数×2[0x04]
     [0x04]を指定します。(固定値)
  • (g) データ部 : データ構成(1) (2) (3) (4)[0x0000 03E8]⇒ 1000 ⇒ 100.0℃
     書き込みする値を指定します。
     メッセージフレームと、実際のデータ構成では並び順が異なります。
     SV値を指定する場合、小数第一位までの値を指定します。
  • (e) CRC-16 :エラーチェックコード
     送信するメッセージから都度計算し、メッセージの末尾に付加します。
     HAP コントローラーで使用されるCRC-16 の生成多項式は、[ X16 + X15 + X2 + 1]です。
 今回のプログラムパターンでは、ファーストSVと、1~8ステップの各ステップ時間・運転状態・目標温度・送風機の周波数設定で合計33項目の設定値書き込みを行います。
 HAPコントローラーでは、1メッセージにつき1パラメータの書き込み要求を行うため、[設定書込]キーを1度押すことで、書き込み要求メッセージが33回送信されることになります。
・モニター画面
 21項目のパラメータを確認できる読出し画面と、現在温度をトレンド表示するロギング画面を作成しました。
 読出し画面は、画面中央下部の、[読出し開始(赤)]キーを押すと各パラメータのモニターが開始されます。
 ロギング画面は、プログラム運転を実行すると現在温度がトレンド表示されます。今回は、サンプリング時間を10秒としました。取得したデータは、三菱電機社製GOTのSDメモリーカードに、CSV形式で記録することが可能です。

モニター画面

ロギング画面
 HAPコントローラーへの読出し要求メッセージの構成は、以下のようになっています。
例)スレーブアドレスが“1”のHAPコントローラーに対して、現在温度(PV値)の読み出しを要求し、現在温度が25℃との応答メッセージを受信。
 メッセージ:0x01 03 0000 0002 0BC4
・読み出し要求メッセージ(シーケンサ ⇒ HAPコントローラー)
(a)
スレーブアドレス
(b)
ファンクションコード
(c)レジスタアドレス (d)レジスタの数(固定) (e)CRC-16
上位 下位 上位 下位 上位 下位
0x01 0x03 0x00 0x00 0x00 0x02 0x0B 0xC4
  • (a) スレーブアドレス : 1 [0x01]
  •  SET.6 通信設定のパラメータ[Adr:スレーブアドレス設定]で設定される、スレーブ個別のアドレスを指定します。
  • (b) ファンクションコード : 読み出し[0x03]
  •  書き込みを要求する場合は[0x10]、読み出しを要求する場合は[0x03]を指定します。
  • (c) レジスタアドレス : 現在温度のアドレス[0x0000]
  •  HAPコントローラーの各パラメータに、個別に割り付けられているアドレスです。
  •  読み出しを行うパラメータのアドレスを指定します。
  • (d) レジスタの数 : 2 個固定[0x0002]
  •  [0x0002]を指定します。(固定値)
  • (e) CRC-16 :エラーチェックコード
     送信するメッセージから都度計算し、メッセージの末尾に付加します。
     HAP コントローラーで使用されるCRC-16 の生成多項式は、[ X16 + X15 + X2 + 1]です。
    ・読み出し要求メッセージに対する応答メッセージ(HAPコントローラー ⇒ シーケンサ)
     メッセージ:0x01 03 04 0019 0000 F42B
    (a)
    スレーブアドレス
    (b)
    ファンクションコード
    (f)
    バイト数(固定)
    (g)*データ部 (e)CRC-16
    上位 下位 上位 下位 上位 下位
    0x01 0x03 0x04 (3) (4) (1) (2) 0xF4 0x2B
    0x00 0x19 0x00 0x00
  • (f) バイト数 : レジスタの数×2[0x04]
  •  [0x04]を指定します。(固定値)
  • (g) データ部 : データ構成(1) (2) (3) (4)[0x0000 0019]⇒ 25℃
  •  要求した読み出しパラメータのデータが格納されます。
  •  この例では、現在温度(PV値)の[25℃]という情報がここに送られてきます。
 書き込み要求メッセージと同様に、HAPコントローラーでは、1メッセージにつき1パラメータの読み出し要求を行います。  モニターを行う場合、数秒毎に読み出し要求メッセージを送信します。

◎ プログラム運転の実行

 タッチパネルからプログラムパターンを設定し、運転を実行しました。
 青色のグラフが設定温度、緑色のグラフが設定周波数(送風機の風量調節)の推移、オレンジ色のグラフが実際に測定した温度の結果を表しています。
 設定周波数(風量)が変化するタイミングで測定温度の乱れがありますが、設定温度に対して測定温度が追従したプログラム運転となりました。

パラメータ ファーストSV ステップ1 ステップ2 ステップ3 ステップ4 ステップ5 ステップ6 ステップ7 ステップ8
ステップ時間設定 10分 5分 10分 5分 5分 5分 5分 5分
運転状態設定 熱風 熱風 熱風 熱風 熱風 熱風 熱風 熱風
温度設定 30℃ 60℃ 60℃ 100℃ 100℃ 70℃ 70℃ 50℃ 50℃
周波数設定 40Hz 40Hz 30Hz 30Hz 50Hz 50Hz 50Hz 50Hz

◎ まとめ

 以下の内容で、HAPコントローラーと三菱電機製のシーケンサとの通信確認を行いました。
  • 通信規格はRS-485、通信プロトコルは Modbus RTUを使用
  • シーケンサ(マスター)とHAPコントローラー(スレーブ)を各1台使用し、1対1の通信
  • タッチパネルを使用し、HAPコントローラーへの設定値書込みや運転中のモニターを行う
  • HAPコントローラーのプログラム運転機能のデモを行う
 今後、三菱電機社製以外のPLCとの通信確認や、接続台数を増やした1対nでの通信確認を実施したいと思います。
 HAPコントローラーと三菱電機製のシーケンサとの、RS-485通信にご興味のある方は、お問合せください。

  • 1
  • 2