1. TOP
  2. OMRON
  3. 上位アプリケーション
  4. メッセージ通信
  5. FINSコマンド

FINSコマンドとは

FINSコマンドはオムロン共通のネットワークメッセージサービスのコマンド体系です
FinsコマンドをEthernetまたはControllerLinkまたは上位リンクなどで接続しているオムロン製機器に送信することでコマンドに対するレスポンスを受信することができます
また、CPUユニット以外にも高機能ユニットにも送信出来ます
ネットワーク中継機能を使って3階層のネットワークを超えてアクセスすることが可能です


ここではPCからEthernet経由でのCPUユニットにFINSコマンドを送信する方法を説明します
finscmd00

マニュアル

FINSマンドの説明は
通信コマンドリファレンスマニュアルを参照してください

FINS/UDPとFINS/TCPでの送信の仕方は
Ethernetユニットユーザーズマニュアル(アプリケーション構築編)の 「第7章FINS 通信上位アプリケーション作成」を参照してください

FINSフレーム

FINSコマンドフレーム
FINSヘッダFINSコマンド
ICFRSVGCT DNA DA1 DA2 SNA SA1 SA2 SID MRCSRCTEXT
(例) 800002000100000A0001
FINSレスポンスフレーム
FINSヘッダFINSコマンド
ICFRSVGCTDNADA1DA2 SNASA1SA2SIDMRCSRCMRESSRESTEXT
(例) C00002000A0000010001

FINSヘッダで変更が必要な個所

FINSレスポンスフレーム
ICF送信時は0x80
RSV0x00固定
GCT0x02固定
相手先
FINS
アドレス
DNA相手先ネットワークアドレス(自ネットワークの場合は0x00)
DA1相手先ノードアドレス
DA2相手先号機アドレス(CPU宛て=0x00)
発信元
FINS
アドレス
SNA発信元ネットワークアドレス(自ネットワークの場合は0x00)
SA1発信元ノードアドレス(01-FEで送信先と被らなければよさそう)
SA2発信元号機アドレス(0x00固定)
SID任意のサービスID (通常は通信毎にカウントアップした値を入れる)

FINSアドレス

FINSアドレスは3バイトで構成されていて次のような意味があります

FINSレスポンスフレーム
1バイト目2バイト目3バイト目
ネットワークアドレスノードアドレス号機アドレス

FINSアドレスの詳細

FINSコマンド

代表的なコマンド

FINSレスポンスフレーム
コマンド
MRC SRC
内容オペランド
0101メモリ読出アドレス, 要素数
0102メモリ書込アドレス, 要素数, 書込みデータ
0103一括書込アドレス, 要素数, 書込みデータ
0104複合読出複数の読出しアドレス
0401運転開始モニタ または 運転
0402運転停止
0501CPUユニット情報
0601CPUステータス読出し
0620サイクルタイムイニシャライズ または 読出し
0701時間情報読出
0702時間情報書込
2101異常解除故障コード
2102異常履歴開始レコードNo, レコード数
2103異常履歴クリア

メモリ種別とアドレスの指定方法


FINS/UDPとFINS/TCP

比較

  • FINS/UDP

  • FINS/TCP

  • ・ コネクションレスのためコネクション数に制限がない

    ・ 一斉同報が使用できる

    ・ TCPと比べて信頼性が落ちる
    多階層のIPネットワーク(例:インターネット)を経由する場合は通信の信頼性が落ちる

    ・ 高速
    接続の手続きが無いため手続きに掛かる時間を短縮できる

  • ・ コネクション数に制限がある

    ・ 一斉同報が使用できない

    ・ 信頼性が高い
    多階層のIPネットワーク(例:インターネット)を経由する場合でも通信の信頼性が高い

    ・ UDPに比べて速度が落ちる
    接続の手続きがあるためUDP/IPより処理時間が掛かる

    ・ 接続制限ができる
    サーバ側の設定で接続できるクライアントを制限できる

  • フレーム構造
    Ethernet2 IP UDP FINS FCS

  • フレーム構造
    Ethernet2 IP TCP FINS/TCP
    ヘッダ
    FINS FCS

FINS/UDPとFINS/TCPの比較

この記事へのコメント