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

通信コマンドリファレンスマニュアルを参照してください
FINS/UDPとFINS/TCPでの送信の仕方は
Ethernetユニットユーザーズマニュアル(アプリケーション構築編)の 「第7章FINS 通信上位アプリケーション作成」を参照してください
FINSフレーム
FINSヘッダ | FINSコマンド | ||||||||||||
ICF | RSV | GCT | DNA | DA1 | DA2 | SNA | SA1 | SA2 | SID | MRC | SRC | TEXT | |
(例) | 80 | 00 | 02 | 00 | 01 | 00 | 00 | 0A | 00 | 01 |
FINSヘッダ | FINSコマンド | ||||||||||||||
ICF | RSV | GCT | DNA | DA1 | DA2 | SNA | SA1 | SA2 | SID | MRC | SRC | MRES | SRES | TEXT | |
(例) | C0 | 00 | 02 | 00 | 0A | 00 | 00 | 01 | 00 | 01 |
ICF | 送信時は0x80 | |
RSV | 0x00固定 | |
GCT | 0x02固定 | |
相手先 FINS アドレス |
DNA | 相手先ネットワークアドレス(自ネットワークの場合は0x00) |
DA1 | 相手先ノードアドレス | |
DA2 | 相手先号機アドレス(CPU宛て=0x00) | |
発信元 FINS アドレス |
SNA | 発信元ネットワークアドレス(自ネットワークの場合は0x00) |
SA1 | 発信元ノードアドレス(01-FEで送信先と被らなければよさそう) | |
SA2 | 発信元号機アドレス(0x00固定) | |
SID | 任意のサービスID (通常は通信毎にカウントアップした値を入れる) |
FINSアドレスは3バイトで構成されていて次のような意味があります
1バイト目 | 2バイト目 | 3バイト目 |
ネットワークアドレス | ノードアドレス | 号機アドレス |
FINSアドレスの詳細
FINSコマンド
コマンド MRC SRC |
内容 | オペランド |
---|---|---|
0101 | メモリ読出 | アドレス, 要素数 |
0102 | メモリ書込 | アドレス, 要素数, 書込みデータ |
0103 | 一括書込 | アドレス, 要素数, 書込みデータ |
0104 | 複合読出 | 複数の読出しアドレス |
0401 | 運転開始 | モニタ または 運転 |
0402 | 運転停止 | |
0501 | CPUユニット情報 | |
0601 | CPUステータス読出し | |
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