Profibus
表示
(PROFIBUSから転送)
![]() |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/0x-pb-stecker-verschieden.jpg/220px-0x-pb-stecker-verschieden.jpg)
PROFIBUS (Process Field Bus) はファクトリーオートメーションにおけるフィールドバス︵en:Fieldbus︶通信の標準の1つで、ドイツ連邦教育・研究省が1989年に助成を開始した。産業用イーサネットの規格であるPROFINETとは異なる。
始まり[編集]
PROFIBUSの歴史は、ドイツで1987年に21の企業や研究所が集まってフィールドバスの開発計画を策定し、政府が助成したことに始まる。目標は、フィールドバスインタフェースの基本的な要求に基づいた、ビットシリアルフィールドバスを実装しその使用を広めることであった。この目的のため、各参加企業はファクトリオートメーションとプロセスオートメーション[1]に共通する技術的コンセプトのサポートに合意した[2]。まず複雑な通信プロトコル Profibus FMS (Field bus Message Specification) が策定された。そして1993年、より単純でより高速な PROFIBUS DP (Decentralized Peripherals) が FMS の後継として完成した。使用法[編集]
PROFIBUS には2つのバリエーションがある。よく使われているのはDPで、PAの利用は少ない。 ●PROFIBUS DP (Decentralized Peripherals) は生産現場で集中制御装置がセンサ群やアクチュエータ群を操作・運用するのに使われる。多くの標準診断オプションがある。他にも︵Profibus FMS と同様︶制御装置同士を接続したネットワークでの通信でも使われる。転送レートは、ツイストペアケーブルや光ファイバーを使って最大12Mbit/sが可能である。 ●PROFIBUS PA (Process Automation) はプロセス制御システムの測定装置の監視に使われる。防爆エリア︵Ex-zone 0 および1︶での使用に最適である。バスの導線上には弱い電流しか流れないため、誤動作が起こっても爆発の誘引となるようなスパークを発生しない。ただし、そのためにデータ転送レートが低く、31.25kbit/s である。 PROFIBUS は組み立てラインのオートメーションにもプロセスオートメーションにも使われている。世界中で2000万台以上のPROFIBUS機器が使われている︵2007年現在︶。テクノロジー[編集]
OSIレイヤー | PROFIBUS | ||||||
---|---|---|---|---|---|---|---|
7 | アプリケーション層 | DPV0 | DPV1 | DPV2 | マネジメント | ||
6 | プレゼンテーション層 | -- | |||||
5 | セッション層 | ||||||
4 | トランスポート層 | ||||||
3 | ネットワーク層 | ||||||
2 | データリンク層 | FDL | |||||
1 | 物理層 | EIA-485 | 光 | MBP |
アプリケーション層[編集]
様々なサービスレベルに対応したDPプロトコルが定義されている。
●DP-V0 は、データと診断の周期的交換を行う。
●DP-V1 は、周期的/非周期的データ交換と警報処理を行う。
●DP-V2 は、等時間隔モードとデータ交換ブロードキャストが可能︵スレーブ同士の通信︶。
セキュリティ層︵データリンク層︶[編集]
セキュリティ層 FDL (Field bus Data Link) は、トークン・パッシングとマスタースレーブを組み合わせたような方式で働く。PROFIBUS DP では、制御装置やプロセス制御システムがマスターで、センサ群やアクチュエータ群がスレーブとなる。 メッセージにはいくつかの型があり、開始デリミタ (SD) で識別される。 データ無し: SD1 = 0x10SD1 | DA | SA | FC | FCS | ED |
可変長データ: SD2 = 0x68
SD2 | LE | LEr | SD2 | DA | SA | FC | DSAP | SSAP | PDU | FCS | ED |
固定長データ: SD3 = 0xA2
SD3 | DA | SA | FC | PDU | FCS | ED |
トークン: SD4 = 0xDC
SD4 | DA | SA | ED |
肯定応答(ACK): SC = 0xE5
SC |
- SD: 開始デリミタ
- LE: PDUの長さ(DA,SA,FC,DSAP,SSAPを含む)
- LEr: PDUの反復(ハミング距離 = 4)
- FC: 機能コード
- DA: 送信先アドレス
- SA: 発信元アドレス
- DSAP: 送信先SAP
- SSAP: 発信元SAP
SAP(十進) | サービス |
---|---|
デフォルト 0 | Cyclical Data Exchange (Write_Read_Data) |
54 | Master-to-Master SAP (M-M Communication) |
55 | Change Station Address (Set_Slave_Add) |
56 | Read Inputs (Rd_Inp) |
57 | Read Outputs (Rd_Outp) |
58 | Control Commands to a DP Slave (Global_Control) |
59 | Read Configuration Data (Get_Cfg) |
60 | Read Diagnostic Data (Slave_Diagnosis) |
61 | Send Parameterization Data (Set_Prm) |
62 | Check Configuration Data (Chk_Cfg) |
注: SAP55 はオプションであり、アドレスを書き換えられない装置ではサポートしていない。
PDU: Protocol Data Unit︵プロトコルデータ︶
FCS: Frame Check Sequence
ED: 終了デリミタ (= 0x16 !)
FCSは単純に指定された長さにある各バイトを加算して計算される。オーバーフローは無視される。各バイトには偶パリティが付けられ、スタートビットとストップビット付きで非同期に転送される。メッセージ転送中は、あるバイトのストップビットと次のバイトのスタートビットの間は空けないことが多い。また、メッセージの前に33ビットぶんのSYNポーズ︵"1" がバスのアイドル状態︶を置く。