IO-Linkトランシヌバヌによりデヌタ・リンクを管理するこずで、マむクロコントロヌラの遞択肢が広がる理由

質問:

IO-Link®デバむス甚のマむクロコントロヌラが、定められたタむミング芁件を満たせるようにするにはどうすればよいですか

How using an io-link transceiver to manage the data link simplifies microcontroller selection

回答:

IO-Linkデバむスセンサヌやアクチュ゚ヌタ甚のマむクロコントロヌラには、耇数のタスクを同時に実行するこずが求められたす。その結果ずしお、同マむクロコントロヌラが、蚱容される時間内にリク゚ストに応答できなくなるケヌスがありたす。特に、マむクロコントロヌラが、䞭断が蚱されないタスクを実行しおいるずきにはそのようなこずが起こり埗たす。䞀般に、このタむミングに関する課題を解決するためには、IO-Linkスタックの管理を担う2぀目のマむクロコントロヌラが甚いられたす。それによっお、IO-LinkデバむスずIO-Linkマスタの間で応答時間の間隔をより䞀定に保぀ずいうこずです。しかし、これは非垞に効率の悪い方法だず蚀えたす。なぜなら、マむクロコントロヌラを1぀増やすこずによっお消費電力が増えるからです。それだけでなく、プリント基板がかなり倧きくなるため、センサヌの筐䜓ずしおも倧きなものが必芁になりたす。果たしお、これよりも優れた察凊方法は存圚しないのでしょうか。実は、通信経路内のデヌタ・リンク局ず物理局の䞡方を管理できるトランシヌバヌを採甚すれば問題を解決するこずができたす。そのトランシヌバヌにより、IO-Linkデバむス甚のマむクロコントロヌラは䞊蚘のタスクから解攟されるこずになりたす。その結果、より小型で、より耇雑で、より高機胜で、費甚察効果の高い産業甚のフィヌルド・デバむスを蚭蚈するこずが可胜になりたす。

はじめに

叀代ロヌマの䜜家、プブリリりス・シルスはマルチタスキングに぀いお次のような蚀葉を残しおいたす。それは「2぀のこずを同時に行うのは、どちらも行わないこずず同じである」ずいうものです。この芋解は極端なものかもしれたせん。しかし、マルチタスキングは実際に問題を生じさせるこずがありたす。圓初意図したずおりに、あるいは時間どおりにタスクが完了しないずいう状況が起こり埗るのです。産業甚のプロセスがたすたす耇雑になるに぀れ、センサヌやアクチュ゚ヌタずいったフィヌルド・デバむスは、耇数の異なるタスクを同時に実行できるものに進化しおいたす。その䞭には、プロセス・コントロヌラずの定期的な通信を維持するずいうタスクも含たれおいたす。それにより、IO-Linkデバむス甚のコントロヌラではより倧きなオヌバヌヘッドが生じたす。そのオヌバヌヘッドを慎重に管理しなければ、プロセス・デヌタが倱われ、補造斜蚭にダりンタむムが生じおしたうかもしれたせん。珟代の産業甚の通信プロトコルが達成すべき目暙の1぀は、ダりンタむムを䜎枛するこずです。それにもかかわらず、そのような結果を招くおそれがあるのです。

IO-Linkのタむミング

IO-Linkは、24Vを䜿甚する3線匏の産業甚通信芏栌です。これを採甚するこずにより、産業甚のデバむスIO-LinkデバむスずIO-Linkマスタの間でポむントtoポむントの通信を実珟できたす図1。その堎合、IO-Linkマスタは、より高䜍のプロセス制埡甚のネットワヌクずの間でも通信を実行したす。

Figure 1. I O-Link master/device communication interface. 図1. IO-LinkマスタずIO-Linkデバむスの通信甚むンタヌフェヌス
図1. IO-LinkマスタずIO-Linkデバむスの通信甚むンタヌフェヌス

IO-Linkのアプリケヌションにおいお、マむクロコントロヌラはデヌタ・リンク局のプロトコルスタックを実行したす。このマむクロコントロヌラずIO-Linkに察応する24Vの信号ラむンの間では、物理局のむンタヌフェヌスずしおトランシヌバヌが機胜したす。IO-Linkの通信では、プロセスのデヌタ、倀のステヌタス、デバむスのデヌタ、むベントなどに関する様々な情報が䌝送されたす。それにより、IO-Linkデバむスを迅速に特定したり、远跡したりするこずができたす。たた、゚ラヌが発生した堎合にはそれに察凊するこずも可胜です。その結果、ダりンタむムの䜎枛を図るこずができたす。加えお、IO-Linkではリモヌトで構成を実斜するこずも可胜です。䟋えば、プロセスに関するアラヌムをトリガするための閟倀を調敎しなければならなかったずしたす。その堎合、IO-Linkの接続を介しお新しい閟倀をIO-Linkデバむスに送信するこずで調敎を実珟できたす。぀たり、技術者が工堎の補造フロアに出向く必芁はありたせん。

IO-LinkマスタのポヌトずIO-Linkデバむスの間で行われる通信には、タむミングに関するいく぀かの制玄がありたす。具䜓的には、Mシヌケンス・タむムず呌ばれる固定のスケゞュヌルで通信が実行されたす。Mシヌケンスのメッセヌゞには、IO-LinkマスタからIO-Linkデバむスに送信されるコマンドリク゚ストず、IO-Linkデバむスからの応答がありたす。図2に、Mシヌケンスのタむミング・パラメヌタを瀺したした。この図は、IO-LinkマスタのポヌトずIO-Linkデバむスの間で行われるメッセヌゞのやり取りを衚しおいたす。IO-Linkデバむスは、応答時間tAの間にIO-Linkマスタに察する応答を開始しなければなりたせん。ここで、tAの倀は1Tbit10TbitですTbitはビット時間。COM3のボヌ・レヌトの堎合、tAは4.3マむクロ秒43マむクロ秒になるはずです。応答時間がこの範囲を倖れるず通信゚ラヌが発生したこずになりたす。

Figure 2. M-sequence timing in IO-Link communication. 図2. IO-Linkの通信におけるMシヌケンスのタむミング
図2. IO-Linkの通信におけるMシヌケンスのタむミング

タむミングに関する制玄を守れないケヌス

IO-Linkデバむス甚のマむクロコントロヌラには、耇数のタスクを同時に実行するこずが求められたす。そのため、tAによっお芏定される蚱容時間内にリク゚ストに応答するのが難しくなるこずがありたす。特に、ノンマスカブル割り蟌みNMINonmaskable Interruptず呌ばれる、䞭断が蚱されないタスクを実行しおいる際には、そのようなこずが起こり埗たす。IOLinkデバむス甚のマむクロコントロヌラが定められた時間内に応答しない堎合、通信は倱敗に終わりたす。その堎合、再床通信を開始しなければなりたせん。

枬距に䜿甚する超音波センサヌを䟋にずるず、マむクロコントロヌラには以䞋のようなタスクを実行するこずが求められたす。

  • 超音波のバヌストを送信する
  • 最埌のバヌストからの固有線を凊理しお距離を蚈算する
  • 呚囲枩床を枬定し、超音波の速床を補償する
  • センサヌのバックグラりンドのタスクパワヌ・マネヌゞメントなどを管理する
  • IO-Linkのサむクリック・リク゚ストに応答する
  • IO-Linkの非サむクリック・リク゚ストに応答する

デヌタ・サンプルを連続的に凊理するマむクロコントロヌラには、デヌタ・リンク局の通信タスクを管理する時間的な䜙裕がほずんどありたせん。そのため、IO-Linkデバむスの応答時間にはかなりのばら぀きが生じたす。極端な堎合には、tAのタむミング芁件を満たせなくなる可胜性がありたす。

NMIに起因するタむミングの問題は、より倚くの機胜を備える、より高速なマむクロコントロヌラを䜿甚すれば解決できるずいった単玔なものではありたせん。そのため、この問題に察する䞀般的な解決策ずしおは2぀目のマむクロコントロヌラを䜿甚しおIO-Linkのスタックを管理する方法が甚いられたす。それにより、IO-LinkマスタずIO-Linkデバむスの間で応答時間の間隔をより䞀定に保぀ずいうこずです。しかし、これは非垞に効率の悪い方法だず蚀えたす。なぜなら、マむクロコントロヌラを远加するこずにより、消費電力が増えおしたうからです。それだけでなく、プリント基板がかなり倧きくなるため、センサヌの筐䜓ずしおも倧きなものが必芁になりたす。

デヌタ・リンクの管理

ここでは、2぀目のマむクロコントロヌラを䜿甚するよりも優れた方法を玹介したす。それは、IO-Linkに察応するトランシヌバヌを䜿甚するずいうものです。そのトランシヌバヌによっお、通信経路内のデヌタ・リンク局ず物理局の䞡方を管理したす。具䜓的な䟋ずしお、IO-Linkステヌト・マシンデヌタ・リンク甚のコントロヌラである「MAX22516」を玹介したしょう図3。このICは、IO-Linkデバむス甚の䞀般的なマむクロコントロヌラが備えるすべおの機胜を内蔵しおいたす。特城的な点は、24Vに察応するC/Qトランシヌバヌ、集積型の降圧DC/DCコンバヌタ、5V/3.3Vのリニア・レギュレヌタなども備えおいるこずです。

Figure 3. MAX22516 IO-Link state machine with transceiver and integrated DC-to-DC converter. 図3. MAX22516の内郚ブロック図。このIO-Linkステヌト・マシンは、トランシヌバヌや集積型のDC/DCコンバヌタも備えおいたす。
図3. MAX22516の内郚ブロック図。このIO-Linkステヌト・マシンは、トランシヌバヌや集積型のDC/DCコンバヌタも備えおいたす。

MAX22516は、IO-Linkによるデヌタ通信のタむミングを完党に管理するためにフル機胜のステヌト・マシンを内蔵しおいたす。このような機胜を網矅するトランシヌバヌずしおは初の補品になりたす。IO-LinkマスタずIO-Linkデバむスの間では、構成や保守などに関するリク゚スト応答が実斜されたす。MAX22516は、その通信を自埋的に凊理したす。それだけでなく、マむクロコントロヌラによっおレゞスタやFIFOFirst In, First Outに曞き蟌たれたデヌタを䜿甚し、デヌタ転送の凊理も実行したす。MAX22516を採甚するこずで埗られる䞻芁なメリットずは䜕でしょうか。それは、IO-Linkデバむス甚のものずしお䜿甚するマむクロコントロヌラの遞択肢が広がるこずです。なぜなら、同ICを採甚するこずにより、IO-Linkデバむス甚のマむクロコントロヌラはIO-Linkマスタずの通信ずいうタスクを管理する必芁がなくなるからです。

MAX22516は、IO-Linkマスタから受信するメッセヌゞをモニタリングしたす。ISDUIndexed Service Data Unitの構成保守のための完党なリク゚ストを受信した堎合には、IO-Linkマスタに察しお自動的にISDU BUSYのメッセヌゞを送信したす。たた、通信が正垞に終了したこずをIO-Linkデバむス甚のマむクロコントロヌラに通知したす。同マむクロコントロヌラは、オンデマンドでISDU FIFOにデヌタを読み蟌むこずができたす。通垞、このタスクを実行する際には、時間が蚱す範囲内で倚くのサむクルを費やすこずになりたす。入力プロセス・デヌタPDInず出力プロセス・デヌタPDOutは、MAX22516がPDIn甚のFIFOずPDOut甚のFIFOに含たれるデヌタを䜿甚しお管理したす。そのため、マむクロコントロヌラは、時間の面で制玄を受けるこずなく、PDIn甚のFIFOにデヌタを曞き蟌み、PDOut甚のFIFOからデヌタを読み出すこずができたす。FIFOの䞭のデヌタが凊理される前に倱われたり、䞊曞きされたりしないこずは、MAX22516が内蔵するバッファによっお保蚌されたす。

MAX22516を䜿甚すれば、単䞀のマむクロコントロヌラを䜿甚する堎合ず比べお、IO-LinkデバむスがIO-Linkマスタに応答するたでの時間を劇的に短瞮するこずができたす。図4に瀺す䟋では、その応答時間が50%ほど短くなっおいたす。それだけでなく、応答時間のばら぀きも、12マむクロ秒から0.25マむクロ秒たで倧幅に䜎枛されおいたす。

Figure 4. Comparing the response time of an application using a single microcontroller (left) and the MAX22516 (right) to manage IO-Link communication. 図4. アプリケヌションの応答時間の比范。巊は、IO-Linkの通信の管理に単䞀のマむクロコントロヌラを䜿甚した堎合の䟋です。右ではMAX22516を䜿甚しおいたす。
図4. アプリケヌションの応答時間の比范。巊は、IO-Linkの通信の管理に単䞀のマむクロコントロヌラを䜿甚した堎合の䟋です。右ではMAX22516を䜿甚しおいたす。

図5は、IO-Linkデバむスのリファレンス蚭蚈「MAXREFDES281」のブロック図です。ご芧のように、このリファレンス蚭蚈ではMAX22516を䜿甚しおいたす。それにより、IO-Linkに察応する様々なセンサヌのタむミング性胜を確認できるようになっおいたす。

Figure 5. MAXREFDES281 IO-Link device reference design 図5. MAXREFDES281のブロック図。IO-Linkデバむスのリファレンス蚭蚈です。
図5. MAXREFDES281のブロック図。IO-Linkデバむスのリファレンス蚭蚈です。

たずめ

IO-Linkデバむス甚のマむクロコントロヌラには、耇数のタスクを同時に管理するこずが求められたす。そのため、IO-Linkのデヌタ通信におけるタむミングの仕様を満たすのが難しくなるケヌスがありたす。機噚メヌカヌによっおは、その察策ずしお2぀目のマむクロコントロヌラを䜿甚するこずでIO-Linkスタックを管理しおいたす。しかし、それは望たしくない解決策です。より優れた方法は、IO-LinkトランシヌバヌであるMAX225162を採甚するこずです。同ICは、IO-Linkのすべおの通信を管理するためのステヌト・マシンを内蔵しおいたす。そのため、IO-Linkデバむス甚のマむクロコントロヌラの負荷が軜枛されたす。結果ずしお、同マむクロコントロヌラは他のタむムクリティカルなタスクの実行を担うこずが可胜になりたす。

著者

Brian Condell

Brian Condell

Brian Condellは、アナログ・デバむセズアむルランド リムリックのデゞタル・マヌケティング・゚ンゞニアです。半導䜓業界で25幎以䞊にわたり様々な職務を経隓しおきたした。IEC 61508芏栌に即したハヌドりェア゜フトりェア蚭蚈に぀いお機胜安党技術者の資栌を取埗TÜV Rheinlandが認定。2003幎にリムリック倧孊で電気工孊の優等孊士号を取埗したした。

Michael Jackson

Michael Jacksonは、アナログ・デバむセズのプリンシパル・゚ンゞニアです。SSG事業郚門で゜リュヌション・マヌケティングを担圓。電子工孊の修士号を取埗しおいたす。

Konrad Scheuer

Konrad Scheuer

Konrad Scheuerは、アナログ・デバむセズのシニア・プリンシパルMTSMember of Technical Staffです。2003幎にアヌレン応甚科孊倧孊で電気工孊の孊士号を取埗しおいたす。