(57)【要約】【課題】通信回路を介して接続された１または複数の機能ユニットにおいて、発生したイベントに応じた処理が可能な新規な構成を提供することを目的とする。【解決手段】制御装置を構成する演算装置は、通信線を介して１または複数の機能ユニットとデータを遣り取りするための通信回路と、１または複数の機能ユニットから取得されるデータを利用した演算処理、および、１または複数の機能ユニットへ送信するデータの生成処理、のうち少なくとも一方を実施するユーザプログラムを実行するためのプロセッサと、通信回路およびプロセッサに接続された監視回路とを含む。監視回路は、演算装置に発生するイベントを検知する検知部と、各イベントに関連付けられたメッセージを格納する記憶部と、検知部により検知されたイベントに応じて、通信回路に指令を与えて、記憶部に格納された、当該検知されたイベントに関連付けられたメッセージを通信回路から送信する起動部とを含む。【選択図】図２
2018060483.tif 000002
【特許請求の範囲】
【請求項１】
制御装置を構成する演算装置であって、
通信線を介して１または複数の機能ユニットとデータを遣り取りするための通信回路と、
前記１または複数の機能ユニットから取得されるデータを利用した演算処理、および、前記１または複数の機能ユニットへ送信するデータの生成処理、のうち少なくとも一方を実施するユーザプログラムを実行するためのプロセッサと、
前記通信回路および前記プロセッサに接続された監視回路とを備え、
前記監視回路は、
前記演算装置に発生するイベントを検知する検知部と、
各イベントに関連付けられたメッセージを格納する記憶部と、
前記検知部により検知されたイベントに応じて、前記通信回路に指令を与えて、前記記憶部に格納された、当該検知されたイベントに関連付けられたメッセージを前記通信回路から送信する起動部とを含む、演算装置。
【請求項２】
前記検知部は、前記プロセッサの動作の健全性を監視するウォッチドッグタイマを含む、請求項１に記載の演算装置。
【請求項３】
前記演算装置は、前記プロセッサが利用可能なメモリをさらに備え、
前記検知部は、前記メモリに発生した異常を検知する、請求項１または２に記載の演算装置。
【請求項４】
前記検知部は、前記通信回路における通信異常を監視する、請求項１〜３のいずれか１項に記載の演算装置。
【請求項５】
前記検知部は、前記演算装置への電力供給の遮断を検知する、請求項１〜４のいずれか１項に記載の演算装置。
【請求項６】
前記メッセージは、各機能ユニットの動作を制限する動作状態へ遷移するための命令を含む、請求項１〜５のいずれか１項に記載の演算装置。
【請求項７】
前記メッセージは、関連付けられたイベントの内容を示す情報を含む、請求項１〜６のいずれか１項に記載の演算装置。
【請求項８】
前記プロセッサは、プログラムを実行することで、前記ユーザプログラムの実行開始前に、前記メッセージを前記記憶部に格納する、請求項１〜７のいずれか１項に記載の演算装置。
【請求項９】
前記監視回路は、ＦＰＧＡまたはＡＳＩＣを用いて実装される、請求項１〜８のいずれか１項に記載の演算装置。
【請求項１０】
制御装置であって、
演算装置と、
１または複数の機能ユニットとを備え、
前記演算装置は、
通信線を介して１または複数の機能ユニットとデータを遣り取りするための通信回路と、
前記１または複数の機能ユニットから取得されるデータを利用した演算処理、および、前記１または複数の機能ユニットへ送信するデータの生成処理、のうち少なくとも一方を実施するユーザプログラムを実行するためのプロセッサと、
前記通信回路および前記プロセッサに接続された監視回路とを備え、
前記監視回路は、
前記演算装置に発生するイベントを検知する検知部と、
各イベントに関連付けられたメッセージを格納する記憶部と、
前記検知部により検知されたイベントに応じて、前記通信回路に指令を与えて、前記記憶部に格納された、当該検知されたイベントに関連付けられたメッセージを前記通信回路から送信する起動部とを含む、制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１または複数の機能ユニットを含む制御装置を構成する演算装置およびその制御装置に関する。
【背景技術】
【０００２】
様々なＦＡ（Factory Automation）を実現するための主たるコンポーネントとして、ＰＬＣ（プログラマブルコントローラ）などの制御装置が普及している。このような制御装置は、様々な機械や設備の動作を集中して制御するため、何らかの故障や異常などが発生した場合でも、制御動作を継続するといった耐故障性や、制御対象の機械や設備を安全に停止させるフェールセーフ機能などを備える必要がある。
【０００３】
このようなＰＬＣにおいては、故障や異常などのイベントが発生すると、外部へ通知するような機能が搭載されている。例えば、特開２０１５−０９０５４８号公報（特許文献１）は、ＣＰＵが監視プログラムを実行することによりイベント処理を行う構成を開示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−０９０５４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＰＬＣなどの制御装置は、入出力ユニット、カウンタユニット、温度調整ユニットといった様々な機能ユニットを含む。これらの機能ユニットは、ユーザプログラムなどを実行する演算装置（ＣＰＵ（Central Processing Unit）ユニットと称されることもある）と直接的に接続されることもあるし、フィールドネットワークなどを介して演算装置と接続されることもある。
【０００６】
演算装置に何らかの故障や異常などのイベントが発生すると、このような機能ユニットに対しても即座にそのイベントの発生を通知して、各機能ユニットにおいて必要な処理を実行させることが好ましい。しかしながら、上述したような特許文献１に開示された構成は、外部のサーバ装置などへイベントを通知することを想定したものであり、演算装置から各機能ユニットへのイベント通知を想定したものではない。
【０００７】
本発明は、通信回路を介して接続された１または複数の機能ユニットにおいて、発生したイベントに応じた処理が可能な新規な構成を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のある局面に従う制御装置を構成する演算装置は、通信線を介して１または複数の機能ユニットとデータを遣り取りするための通信回路と、１または複数の機能ユニットから取得されるデータを利用した演算処理、および、１または複数の機能ユニットへ送信するデータの生成処理、のうち少なくとも一方を実施するユーザプログラムを実行するためのプロセッサと、通信回路およびプロセッサに接続された監視回路とを含む。監視回路は、演算装置に発生するイベントを検知する検知部と、各イベントに関連付けられたメッセージを格納する記憶部と、検知部により検知されたイベントに応じて、通信回路に指令を与えて、記憶部に格納された、当該検知されたイベントに関連付けられたメッセージを通信回路から送信する起動部とを含む。
【０００９】
好ましくは、検知部は、プロセッサの動作の健全性を監視するウォッチドッグタイマを含む。
【００１０】
好ましくは、演算装置は、プロセッサが利用可能なメモリをさらに含み、検知部は、メモリに発生した異常を検知する。
【００１１】
好ましくは、検知部は、通信回路における通信異常を監視する。
好ましくは、検知部は、演算装置への電力供給の遮断を検知する。
【００１２】
好ましくは、メッセージは、各機能ユニットの動作を制限する動作状態へ遷移するための命令を含む。
【００１３】
好ましくは、メッセージは、関連付けられたイベントの内容を示す情報を含む。
好ましくは、プロセッサは、プログラムを実行することで、ユーザプログラムの実行開始前に、メッセージを記憶部に格納する。
【００１４】
好ましくは、監視回路は、ＦＰＧＡまたはＡＳＩＣを用いて実装される。
本発明の別の局面に従う制御装置は、演算装置と、１または複数の機能ユニットとを含む。演算装置は、通信線を介して１または複数の機能ユニットとデータを遣り取りするための通信回路と、１または複数の機能ユニットから取得されるデータを利用した演算処理、および、１または複数の機能ユニットへ送信するデータの生成処理、のうち少なくとも一方を実施するユーザプログラムを実行するためのプロセッサと、通信回路およびプロセッサに接続された監視回路とを含む。監視回路は、演算装置に発生するイベントを検知する検知部と、各イベントに関連付けられたメッセージを格納する記憶部と、検知部により検知されたイベントに応じて、通信回路に指令を与えて、記憶部に格納された、当該検知されたイベントに関連付けられたメッセージを通信回路から送信する起動部とを含む。
【発明の効果】
【００１５】
本発明に従えば、通信回路を介して接続された１または複数の機能ユニットにおいて、発生したイベントに応じた処理が可能になる。
【図面の簡単な説明】
【００１６】
【図１】本実施の形態に従うＰＬＣの要部構成を示す模式図である。
【図２】本実施の形態に従うＰＬＣにおけるメッセージ送信処理の概要を説明する模式図である。
【図３】本実施の形態に従うＰＬＣの監視回路の構成を示す模式図である。
【図４】本実施の形態に従うＰＬＣの監視回路に含まれるイベント検知部の構成例を示す模式図である。
【図５】本実施の形態に従うＰＬＣに実装されるメモリエラーを検知する構成例を示す模式図である。
【図６】本実施の形態に従うＰＬＣに実装される通信異常を検知する構成例を示す模式図である。
【図７】本実施の形態に従うＰＬＣに実装される電力供給の遮断を検知する構成例を示す模式図である。
【図８】本実施の形態に従うＰＬＣにおいて用いられる状態遷移フレームおよびその処理内容を説明するための模式図である。
【図９】本実施の形態に従うＰＬＣにおいて用いられる個別指定のメッセージの一例を示す図である。
【図１０】本実施の形態に従うＰＬＣにおいて用いられるイベントの内容を示す情報を含むメッセージの一例を示す図である。
【図１１】本実施の形態に従うＰＬＣにおけるメッセージの事前登録に係る処理を説明するための模式図である。
【図１２】本実施の形態に従うＰＬＣが提供するイベント発生の検知およびメッセージの送信の処理手順を示すシーケンス図である。
【図１３】本実施の形態に従うＰＬＣの別の要部構成を示す模式図である。
【発明を実施するための形態】
【００１７】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００１８】
以下の説明においては、「制御装置」の典型例として、ＰＬＣ（プラグラマブルコントローラ）を具体例として説明するが、ＰＬＣとの名称に限定されることなく、本明細書に開示された技術的思想は、任意の制御装置に対して適用可能である。
【００１９】
＜Ａ．装置構成＞
まず、本実施の形態に従うＰＬＣの装置構成について説明する。図１は、本実施の形態に従うＰＬＣの要部構成を示す模式図である。
【００２０】
図１を参照して、本実施の形態に従うＰＬＣ１は、典型的には、電源ユニット１３０と、ＣＰＵユニット１００と、１または複数の機能ユニット１５０とから構成される。ＣＰＵユニット１００と１または複数の機能ユニット１５０との間は、通信線の一例であるローカルネットワーク１２６を介して接続されている。
【００２１】
電源ユニット１３０は、ＣＰＵユニット１００などへ電力を供給する電源部であり、商用電源などの外部電源１３２からの電力の供給を受けて、所定電圧に変換した上で、その電力をＣＰＵユニット１００などへ供給する。典型的には、電源ユニット１３０には、１００Ｖ〜２４０Ｖの交流電力が入力され、５Ｖの直流電力がＣＰＵユニット１００などへ供給される。
【００２２】
機能ユニット１５０は、ＰＬＣ１による様々な機械や設備の制御を実現するための各種機能を提供するものであり、典型的には、Ｉ／Ｏユニット、通信ユニット、温度調整ユニット、ＩＤ（Identifier）センサユニットなどを包含し得る。
【００２３】
Ｉ／Ｏユニットとしては、例えば、デジタル入力（ＤＩ）ユニット、デジタル出力（ＤＯ）ユニット、アナログ出力（ＡＩ）ユニット、アナログ出力（ＡＯ）ユニット、パルスキャッチ入力ユニット、および、複数の種類を混合させた複合ユニットなどが挙げられる。
【００２４】
通信ユニットは、他のＰＬＣ、リモートＩ／Ｏ装置、機能ユニットなどとデータの遣り取りを仲介するものであり、例えば、ＥｔｈｅｒＣＡＴ（登録商標）、ＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）、ＤｅｖｉｃｅＮｅｔ（登録商標）、ＣｏｍｐｏＮｅｔ（登録商標）などのプロトコルに従う通信装置などを包含し得る。
【００２５】
温度調整ユニットは、温度計測値などを取得するアナログ入力機能と、制御指令などを出力するアナログ出力機能と、ＰＩＤ（Proportional Integral Differential）制御機能とを含む制御装置である。ＩＤセンサユニットは、ＲＦＩＤ（Radio Frequency IDentifier）などから非接触でデータを読出す装置である。
【００２６】
ＣＰＵユニット１００は、ＰＬＣ１を構成する一要素であり、ＰＬＣ１全体の処理を制御する演算装置に相当する。ＣＰＵユニット１００は、演算処理部１０１と、メモリ１０６と、通信マスタ回路１２０とを含む。
【００２７】
演算処理部１０１は、プロセッサ１０２および監視回路１０４を含む。説明の便宜上、図１には、プロセッサ１０２のみを描くが、複数のプロセッサを実装してもよい。なお、各プロセッサは、複数のコアを有していてもよい。監視回路１０４は、少なくとも主要部についてはハードワイヤードな構成を有することで、プロセッサ１０２より高速な処理を実現する。すなわち、監視回路１０４は、ハードウェアロジックを用いて実現される。例えば、監視回路１０４は、ＰＬＤ（Programmable Logic Device）の一例であるＦＰＧＡ（Field-Programmable Gate Array）や、ＩＣ（Integrated Circuit）の一例であるＡＳＩＣ（Application Specific Integrated Circuit）などを用いて実装されてもよい。
【００２８】
図１に示す構成において、演算処理部１０１は、プロセッサ１０２および監視回路１０４を同一のチップ上に実装したＳｏＣ（System on Chip）から構成される。但し、これに限られるものではなく、プロセッサ１０２および監視回路１０４をそれぞれ異なるチップとして実装してもよいし、あるいは、メモリ１０６および通信マスタ回路１２０の少なくとも一部をさらに同一のチップ上に実装してもよい。
【００２９】
メモリ１０６は、プロセッサ１０２でのプログラムの実行に必要なワーク領域を提供する部位（典型的には、揮発性メモリ）と、プロセッサ１０２で実行されるプログラム自体を格納する部位（典型的には、不揮発性メモリ）とを含む。揮発性メモリとしては、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）などを用いることができ、不揮発性メモリとしては、フラッシュメモリやハードディスクなどを用いることができる。
【００３０】
メモリ１０６は、システムプログラム１０８およびユーザプログラム１１０などを格納する。システムプログラム１０８は、プロセッサ１０２においてユーザプログラム１１０を実行するためのＯＳ（Operating System）およびライブラリなどを含む。ユーザプログラム１１０は、典型的には、１または複数の機能ユニット１５０から取得されるデータ（入力データ）を利用した演算処理（例えば、論理演算や数値演算）、および、１または複数の機能ユニット１５０へ送信するデータ（出力データ）の生成処理、のうち少なくとも一方を実施する命令群であり、制御対象の機械や設備に応じて任意に作成される。プロセッサ１０２がユーザプログラム１１０を実行することで、ＰＬＣ１による設備や装置などに対する制御が実現される。
【００３１】
監視回路１０４は、プロセッサ１０２および通信マスタ回路１２０に接続され、所定のイベントの発生を検知するとともに、何らかのイベントの発生が検知されると、当該発生したイベントに関連付けられたメッセージを通信マスタ回路１２０から送信する。監視回路１０４の構成および処理の詳細については後述する。
【００３２】
本実施の形態に従うＰＬＣ１において、ローカルネットワーク１２６は、一種の定周期ネットワークであり、ＣＰＵユニット１００の通信マスタ回路１２０の制御下において、１または複数の機能ユニット１５０の各々は、入力データのＣＰＵユニット１００への送信、および、ＣＰＵユニット１００からの出力データの受信を所定周期毎に繰返す。
【００３３】
通信マスタ回路１２０は、通信線であるローカルネットワーク１２６を介して、１または複数の機能ユニット１５０で収集または生成したデータ（入力データ）を受信し、ＣＰＵユニット１００により取得または生成されたデータ（出力データ）を１または複数の機能ユニット１５０へ送信する。出力データは、各機能ユニット１５０から制御対象の機械や設備などへ与えられる指令値に相当する。
【００３４】
このような定周期ネットワークとしては、ＥｔｈｅｒＣＡＴ（登録商標）、ＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）、ＤｅｖｉｃｅＮｅｔ（登録商標）、ＣｏｍｐｏＮｅｔ（登録商標）などの公知のプロトコルに従うネットワークを採用してもよい。
【００３５】
本実施の形態に従うＰＬＣ１において、ローカルネットワーク１２６上では、予め定められたデータ構造を有する通信フレームが所定周期で順次転送されており、ＣＰＵユニット１００および各機能ユニット１５０は、順次転送される通信フレームに対して、指定されたデータを指定された領域に書込み、および、必要なデータを対応する領域から読出す。
【００３６】
通信マスタ回路１２０は、送受信コントローラ１２２と、送受信ポート１２４とを含む。送受信ポート１２４は、ローカルネットワーク１２６と物理的に接続される部位であり、送受信コントローラ１２２からの指令に従って電気信号を生成して、ローカルネットワーク１２６上に送出するとともに、ローカルネットワーク１２６上に生じる電気信号をデジタル信号に変換して送受信コントローラ１２２へ出力する。送受信コントローラ１２２は、ローカルネットワーク１２６を介したデータの遣り取りに加えて、ローカルネットワーク１２６上を転送されるデータの到着時間を保証するための時間管理および送受信タイミング管理などを行う。
【００３７】
機能ユニット１５０の各々は、機能モジュール１５６と、Ｉ／Ｏインターフェイス１５８と、通信スレーブ回路１６０とを含む。
【００３８】
機能モジュール１５６は、各機能ユニット１５０の主たる処理を実行する部分であり、制御対象の機械や設備などからのフィールド情報の収集や、制御対象の機械や設備などへの指令信号の出力などを司る。
【００３９】
Ｉ／Ｏインターフェイス１５８は、制御対象の機械や設備などとの間の信号の遣り取りを仲介する回路である。
【００４０】
通信スレーブ回路１６０は、ローカルネットワーク１２６を順次転送される通信フレームを処理する。すなわち、通信スレーブ回路１６０は、ローカルネットワーク１２６を介して何らかの通信フレームを受信すると、当該受信した通信フレームに対するデータ書込みおよび／またはデータ読出しを行った後に、ローカルネットワーク１２６上において次に位置する機能ユニット１５０へ当該通信フレームを送信する。通信スレーブ回路１６０は、このようなフレームリレーの機能を提供する。
【００４１】
より具体的には、通信スレーブ回路１６０は、送受信コントローラ１６６と、送受信ポート１６２，１６４と、状態レジスタ１６８とを含む。
【００４２】
送受信ポート１６２，１６４は、ローカルネットワーク１２６と物理的に接続される部位であり、送受信コントローラ１６６からの指令に従って電気信号を生成して、ローカルネットワーク１２６上に送出するとともに、ローカルネットワーク１２６上に生じる電気信号をデジタル信号に変換して送受信コントローラ１６６へ出力する。
【００４３】
送受信コントローラ１６６は、ローカルネットワーク１２６上を転送される通信フレームに対するデータ書込みおよび／またはデータ読出しを行う。送受信コントローラ１６６は、通信マスタ回路１２０の送受信コントローラ１２２と同期したカウンタを有しており、この同期したカウンタに従って、ローカルネットワーク１２６上でのフレーム転送のタイミングなどを管理する。
【００４４】
状態レジスタ１６８は、各機能ユニット１５０における各種の状態を示すフラグを格納するレジスタであり、例えば、機能ユニット１５０自体の動作モードを示すフラグ、機能ユニット１５０で発生した異常の種別を示すフラグ、機能ユニット１５０での通信状態を示すフラグなどが格納される。
【００４５】
送受信コントローラ１６６は、さらに、特殊命令などを含む通信フレームを受信すると、当該受信した通信フレームに含まれる特殊命令にて指定された処理を実行する。このような特殊命令の一つとして、状態レジスタ１６８に格納されている状態値を更新する命令を含み得る。以下の説明するような、本実施の形態に従う処理は、このような特殊命令を利用して実現される。
【００４６】
＜Ｂ．メッセージ送信処理の概要＞
次に、本実施の形態に従うＰＬＣ１におけるメッセージ送信処理の概要について説明する。本実施の形態に従うＰＬＣ１のＣＰＵユニット１００は、ＣＰＵユニット１００に何らかのイベントが発生したことを検知すると、各機能ユニット１５０に対して、当該発生したイベントに関連付けられたメッセージを送信する監視回路１０４を有している。この監視回路１０４からのメッセージを送信する処理の詳細について説明する。なお、本明細書において「メッセージ」との用語は、イベントの発生、発生したイベントに応じて実行すべき処理の内容、発生したイベントの内容自体、などを含むデータの実体を包含するものであり、その伝送形態などについては、特に限定されるものではない。典型的には、上述したような通信フレームに格納されて送信されてもよい。
【００４７】
図２は、本実施の形態に従うＰＬＣ１におけるメッセージ送信処理の概要を説明する模式図である。図２（Ａ）には、ＣＰＵユニット１００と各機能ユニット１５０との間でのデータの遣り取りを模式的に示す。図２（Ａ）に示すように、ＣＰＵユニット１００と各機能ユニット１５０との間では、所定周期で、入力データおよび出力データが遣り取りされる。
【００４８】
図２（Ｂ）には、ＣＰＵユニット１００への電力供給が遮断されたときの処理を模式的に示す。ＣＰＵユニット１００の監視回路１０４は、ＣＰＵユニット１００に発生するイベントを検知すると、１または複数の機能ユニット１５０に対して、検知されたイベントに関連付けられたメッセージが送信される。このメッセージの送信は、監視回路１０４が通信マスタ回路１２０（図１）に指令を与えることにより実現される。各機能ユニット１５０は、受信したメッセージに応じた処理を実行する。
【００４９】
監視回路１０４が検知するイベントとしては、プロセッサ１０２での異常発生、メモリ１０６（図１）での異常発生、ローカルネットワーク１２６における通信異常（通信タイムアウトなど）、ＣＰＵユニット１００への電力供給の遮断などが想定される。
【００５０】
各機能ユニット１５０にて実行されるメッセージに応じた処理としては、任意の処理を規定できるが、例えば、機能ユニット１５０の動作を制限する動作状態へ遷移することを含む。以下の説明においては、図２（Ａ）に示すような、機能ユニット１５０の通常の動作状態を「通常オペレーション状態」と称し、機能ユニット１５０の動作を制限された動作状態を「セーフオペレーション状態」とも称す。これらの各状態の名称は、説明の便宜上のためのものであり、名称そのものに限定されるものではない。
【００５１】
＜Ｃ．監視回路の構成＞
次に、本実施の形態に従うＰＬＣ１に実装される監視回路の構成について説明する。
【００５２】
図３は、本実施の形態に従うＰＬＣ１の監視回路１０４の構成を示す模式図である。図３を参照して、監視回路１０４は、イベント検知部１０４２と、レジスタ１０４４と、起動部１０４８とを含む。
【００５３】
イベント検知部１０４２は、ＣＰＵユニット１００に発生するイベントを検知し、その検知したイベントを起動部１０４８へ出力する。
【００５４】
レジスタ１０４４は、各イベントに関連付けられたメッセージ１０４６を格納する。レジスタ１０４４には、１または複数のメッセージ１０４６が対応するイベントの識別情報に関連付けて格納されている。このメッセージ１０４６は、典型的には、後述するような処理に従って、予め登録されている。なお、異なるイベントの識別情報に対して、同一の内容のメッセージ１０４６が関連付けられることもある。すなわち、異なるイベントが発生した場合に、いずれの場合も同一の内容のメッセージ１０４６が送信されるようにしてもよい。
【００５５】
起動部１０４８は、イベント検知部１０４２により検知されたイベントに応じて、通信マスタ回路１２０に指令を与えて、レジスタ１０４４に格納された、当該検知されたイベントに関連付けられたメッセージを通信マスタ回路１２０から送信する。一例として、起動部１０４８は、イベント検知部１０４２からの検知されたイベントの識別情報に対応するメッセージ１０４６をレジスタ１０４４から読出し、当該読出したメッセージ１０４６とともに、通信マスタ回路１２０を起動させるためのトリガ信号を通信マスタ回路１２０へ与える。
【００５６】
通信マスタ回路１２０は、起動部１０４８からのトリガ信号に応答して、指定されたメッセージを含む通信フレームを作成して、ローカルネットワーク１２６を介して、各機能ユニット１５０へ送信する。
【００５７】
通信マスタ回路１２０は、プロセッサ１０２と各機能ユニット１５０との間での入力データおよび出力データの遣り取りを仲介する。
【００５８】
＜Ｄ．イベント検知＞
次に、イベント検知部１０４２により検知されるイベントの一例および各イベントを検知するための構成例について説明する。
【００５９】
（ｄ１：ウォッチドッグタイマ）
イベント検知部１０４２の一例として、プロセッサ１０２の動作の健全性を監視するウォッチドッグタイマを用いてもよい。プロセッサ１０２の動作が健全であるとは、予め与えられた命令を順次解釈・実行する処理が正常に行われている状態を意味する。そして、例えば、プロセッサ１０２による命令の順次解釈・実行に伴って生じる何らかの変化の有無などに基づいて、プロセッサ１０２の動作の健全性を監視することができる。
【００６０】
図４は、本実施の形態に従うＰＬＣ１の監視回路１０４に含まれるイベント検知部１０４２の構成例を示す模式図である。図４を参照して、イベント検知部１０４２は、ウォッチドッグタイマ（ＷＤＴ：Watch Dog Timer）１０５１と、判定部１０５２とを含む。ウォッチドッグタイマ１０５１は、所定周期でカウントアップするカウンタであり、プロセッサ１０２から周期的にリセットされることで、そのカウント値がリセットされる。プロセッサ１０２が適切に動作しなくなると、ウォッチドッグタイマ１０５１がリセットされず、カウントアップが継続する。判定部１０５２は、ウォッチドッグタイマ１０５１のカウント値が予め定められた値に到達すると、ＷＤＴ異常を出力する。つまり、イベント検知部１０４２は、プロセッサ１０２の動作の健全ではないと判断し、それを示すイベントを発生する。
【００６１】
なお、ウォッチドッグタイマ１０５１および判定部１０５２の実装形態は任意であり、例えば、ウォッチドッグタイマ１０５１を監視回路１０４の外部に配置し、監視回路１０４には判定部１０５２のみを配置することで、プロセッサ１０２の動作の健全性を監視するようにしてもよい。
【００６２】
（ｄ２：メモリエラー）
イベント検知部１０４２の別の一例として、プロセッサ１０２が利用可能なメモリ１０６メモリに発生する異常を検知する構成について例示する。
【００６３】
図５は、本実施の形態に従うＰＬＣ１に実装されるメモリエラーを検知する構成例を示す模式図である。図５を参照して、プロセッサ１０２がメモリ１０６にアクセスする場合にメモリ自己診断が実行される。メモリ自己診断機能は、記憶部のメモリ空間へ書込んだデータまたはメモリ空間から読出したデータに対するエラーの有無を診断する機能である。
【００６４】
例えば、プロセッサ１０２がメモリ１０６にアクセスして、あるデータをメモリ１０６に書込んだ後、当該書込んだデータを再度読出して、書込んだデータとの一致／不一致を判断する。例えば、データ「０１０１」をメモリ１０６に書込んだ後、メモリ１０６から当該書込んだデータを読出したときに、データ「０１０１」であれば、正しく書込みおよび読出しができていると判断できる。一方、データ「０１０１」をメモリ１０６に書込んだにもかかわらず、データ「０１００」が読出された場合には、データの書込みまたは読出しが適切に行われていないと判断できる。この場合、メモリエラー異常が出力される。つまり、イベント検知部１０４２は、メモリ１０６にメモリエラーが発生したと判断し、それを示すイベントを発生する。
【００６５】
なお、メモリエラーの検知方法については、上述したようなソフト的なエラー検知だけではなく、ＥＣＣ（Error Check and Correct）メモリを用いるなどして、ハード的なエラー検知を採用してもよい。また、これらのエラー検知の実装形態についても任意である。
【００６６】
（ｄ３：通信異常）
イベント検知部１０４２のさらに別の一例として、通信回路である通信マスタ回路１２０における通信異常を検知する構成について例示する。
【００６７】
図６は、本実施の形態に従うＰＬＣ１に実装される通信異常を検知する構成例を示す模式図である。図６を参照して、通信マスタ回路１２０は、送受信コントローラ１２２に接続された状態レジスタ１２３を含む。状態レジスタ１２３は、通信マスタ回路１２０における通信状態を示すフラグ値などを格納するレジスタであり、例えば、通信マスタ回路１２０自体の動作モードを示すフラグ、ローカルネットワーク１２６で発生した異常の種別を示すフラグ、ローカルネットワーク１２６に接続される各スレーブの状態を示すフラグなどが格納される。
【００６８】
監視回路１０４は、通信マスタ回路１２０の状態レジスタ１２３を定期的に参照し、何らかの異常を示すフラグ値が設定されていないかを判断する。すなわち、状態レジスタ１２３において、ローカルネットワーク１２６の異常を示すフラグが設定されていれば、監視回路１０４は、通信異常であると判断し、通信異常が出力される。
【００６９】
なお、通信異常の検知方法については、任意の方法を採用することができ、例えば、通信マスタ回路１２０が送信されたフレームが通信マスタ回路１２０に戻ってくるまでの時間を監視するような方法を採用してもよい。また、これらの通信異常検知の実装形態についても任意である。
【００７０】
（ｄ４：電力供給の遮断）
イベント検知部１０４２のさらに別の一例として、ＣＰＵユニット１００への電力供給の遮断を検知する構成について例示する。
【００７１】
図７は、本実施の形態に従うＰＬＣ１に実装される電力供給の遮断を検知する構成例を示す模式図である。図７を参照して、電源ユニット１３０（図１）は、商用電源などの外部電源から交流電力を受けて、直流電力を出力する交直変換回路を含む。具体的には、電源ユニット１３０は、整流部１３３と、スイッチング部１３４と、ダイオード１３５と、インダクタ１３６と、キャパシタ１３７とを含む。スイッチング部１３４、ダイオード１３５、インダクタ１３６、および、キャパシタ１３７は、一種のスイッチングレギュレータを構成する。すなわち、電界効果トランジスタなどによって構成されるスイッチング部１３４でのスイッチング動作によって、所定の電圧をもつ直流電力が出力される。
【００７２】
例えば、電源ユニット１３０の整流部１３３の出力側に分圧抵抗１３８を設けるとともに、分圧抵抗１３８の生じる電位と基準電位Ｖｒｅｆとをコンパレータ１３９で比較することで、外部電源からの電力供給の遮断を検知することができる。つまり、基準電位Ｖｒｅｆを適切に設定することで、何らかの原因で外部電源からの電力供給が遮断されると、分圧抵抗１３８に生じる電位が低下し、基準電位Ｖｒｅｆを下回ることになる。この状態において、コンパレータ１３９は、電力遮断検知信号を出力する。すなわち、分圧抵抗１３８に生じる電位が低下すれば、電力供給が遮断されたと検知される。
【００７３】
なお、図７に示すコンパレータ１３９を監視回路１０４に含めるようにしてもよい。図７には、電源ユニット１３０の構成例に応じて実際に生じる電圧または電位を計測することで、電力供給の遮断を検知する方法について例示したが、これに限らず、任意の回路構成および検知回路を採用できる。
【００７４】
＜Ｅ．メッセージの内容＞
次に、何らかのイベントが発生したときに送信されるメッセージの内容の一例について説明する。
【００７５】
（ｅ１：状態遷移通知）
イベントに関連付けられたメッセージとして、各機能ユニット１５０の動作を制限する動作状態（セーフオペレーション状態）へ遷移するための命令を含めてもよい。例えば、ＣＰＵユニット１００におけるウォッチドッグタイマの発動によるプロセッサ１０２の異常や、ＣＰＵユニット１００への電力供給の遮断などの場合、各機能ユニット１５０の動作状態を「通常オペレーション状態」から「セーフオペレーション状態」へ遷移させてもよい。
【００７６】
このとき、ＣＰＵユニット１００の監視回路１０４は、各機能ユニット１５０に対して、「通常オペレーション状態」から「セーフオペレーション状態」へ遷移させるための命令を含むメッセージを与え、各機能ユニット１５０は、このメッセージを受けて、動作状態を遷移させる。
【００７７】
また、各機能ユニット１５０は、様々な異常検知ロジックを有しており、このような異常検知ロジックは、ＣＰＵユニット１００での異常が発生すると異常ログを発生する。機能ユニット１５０の各々が異常ログを発生すると、異常ログが「溢れる」ことになり、運用上や保守上、問題を生じ得る。セーフオペレーション状態における制限された動作の一例として、このような異常検知ロジックを無効化して、不必要な異常ログをマスクする処理を含むことができる。すなわち、セーフオペレーション状態における制限された動作は、異常検知ロジックの一部または全部を無効化することを含む。
【００７８】
各機能ユニット１５０がセーフオペレーション状態へ遷移することによって、各機能ユニット１５０は、異常検知ロジックの全部または一部を無効化する。また、セーフオペレーション状態においては、機能ユニット１５０からの出力信号を予め定められた値に設定するようにしてもよい。例えば、ローカルネットワーク１２６に接続されている機能ユニット１５０の各々からの出力信号をすべてＦＡＬＳＥ（オフまたは「０」）に設定する、すなわち負荷遮断出力に設定するようにしてもよい。
【００７９】
図８は、本実施の形態に従うＰＬＣ１において用いられる状態遷移フレームおよびその処理内容を説明するための模式図である。状態遷移フレームは、上述したイベントに関連付けられたメッセージの一例として、各機能ユニット１５０をセーフオペレーション状態へ遷移するための命令を含むものに相当する。
【００８０】
図８（Ａ）には、状態遷移フレーム１８０のデータ構造の一例を示す。状態遷移フレーム１８０は、ヘッダ部として、データ種別部１８１と、宛先指定部１８２とを含み、データ本体部として、オフセット部１８３と、サイズ部１８４と、データ値部１８５とを含む。
【００８１】
データ種別部１８１は、フレームの種別を示す値を格納する領域であり、図８（Ａ）に示す例では、受信した機能ユニット１５０において指定された命令を実行すべきフレームであることを示す値が格納されている。宛先指定部１８２は、フレームの送信先を示す値を格納する領域であり、ユニキャストの場合にはネットワーク上のアドレスが指定され、マルチキャストの場合には複数の転送先を示す情報が指定され、ブロードキャストの場合には、特定の値が指定される。
【００８２】
図８（Ａ）に示すフレームのデータ本体部には、データを書込むための命令が格納される。具体的には、オフセット部１８３には、データが書込まれる領域の先頭位置を示すオフセット値が格納され、サイズ部１８４には、データが書込まれる領域のサイズが格納され、データ値部１８５には、実際に書込まれるデータの値が格納される。
【００８３】
図８（Ｂ）には、各機能ユニット１５０の通信スレーブ回路１６０に含まれる状態レジスタ１６８の一例を示す。本実施の形態に従うＰＬＣ１において、各機能ユニット１５０は、状態レジスタ１６８に設定されるフラグの値に応じて、動作状態を設定し、あるいは、異常の有無などを判断する。図８（Ｂ）に示す例においては、状態レジスタ１６８の下位から２ビット目（右側から２番目）のビットが、各機能ユニット１５０の動作状態を示すものとする。
【００８４】
各機能ユニット１５０は、図８（Ａ）に示す状態遷移フレーム１８０を受信すると、それに含まれた命令に従って、状態レジスタ１６８の内容を更新する。図８（Ｂ）に示す例では、各機能ユニット１５０において、状態レジスタ１６８の下位から２ビット目が更新される。これによって、各機能ユニット１５０は、「通常オペレーション状態」から「セーフオペレーション状態」へ動作状態を遷移させる。各機能ユニット１５０は、「セーフオペレーション状態」に遷移することで、異常検知ロジックの無効化、および／または、負荷遮断出力への設定を行う。
【００８５】
図８に示すように、各機能ユニット１５０の動作状態を示すフラグの値を更新する態遷移フレームをメッセージとして用いることで、ＣＰＵユニット１００の監視回路１０４から送出される通信フレームの構成や処理を簡素化できるとともに、ＣＰＵユニット１００側で各機能ユニット１５０における処理を管理する必要がない。すなわち、ＣＰＵユニット１００に対する何らかの重大なイベントが発生したときの処理を、ＣＰＵユニット１００側で管理する必要がないので、システムの設計および保守が容易化できる。
【００８６】
（ｅ２：個別指定）
イベントに関連付けられたメッセージとして、イベント毎に、特定の機能ユニット１５０だけを対象にする命令、および／または、特定の処理を実行させる命令を含めるようにしてもよい。
【００８７】
図９は、本実施の形態に従うＰＬＣ１において用いられる個別指定のメッセージの一例を示す図である。図９に示すように、例えば、ＩＤ１のイベントに関連付けて、すべての機能ユニット１５０をセーフオペレーション状態へ遷移させることを意味する、「全ユニット：セーフオペレーション状態」を設定し、ＩＤ２のイベントに関連付けて、ローカルネットワーク１２６に接続されている機能ユニット１５０のうち通信ユニットをセーフオペレーション状態へ遷移させることを意味する、「通信ユニット：セーフオペレーション状態」を設定し、ＩＤ３のイベントに関連付けて、ローカルネットワーク１２６に接続されている機能ユニット１５０のうちセーフティユニットからの出力信号をすべてＦＡＬＳＥ（オフまたは「０」）に設定した負荷遮断出力に設定することを意味する、「セーフティユニット：負荷遮断出力」が設定されている。
【００８８】
このように、発生するイベント毎に、メッセージの内容、および／または、対象となる機能ユニット１５０を異ならせるように設定できる。このような機能を利用することで、例えば、ローカルネットワーク１２６に接続されている複数の機能ユニット１５０のうち、特定種類の機能ユニット１５０に対してのみ、不必要な異常ログをマスクするように命令することができる。通信ユニットなどでは、上位ネットワークおよび下位ネットワークの通信状態を常に監視しているため、ＣＰＵユニット１００との通信ができなくなると、大量の異常ログを発生する可能性がある。そのため、このような特定種類の機能ユニット１５０に対してのみ、異常検知ロジックを無効化するような指令を与えるようにしてもよい。
【００８９】
通信フレームに機能ユニット１５０毎にそれぞれ異なる指令を含ませることで、制御対象の機械や設備に応じた処理を安全に実行させることができる。
【００９０】
（ｅ３：イベントの内容を示す情報）
イベントに関連付けられたメッセージとして、関連付けられたイベントの内容を示す情報を含めるようにしてもよい。
【００９１】
図１０は、本実施の形態に従うＰＬＣ１において用いられるイベントの内容を示す情報を含むメッセージの一例を示す図である。図１０に示すように、例えば、ＩＤ１のイベントとしてウォッチドッグタイマによるプロセッサ異常の検知が関連付けられている場合には、メッセージとして、「ウォッチドッグタイマ」およびそれを示すコード「Ｆ０００１」を含む。例えば、ＩＤ２のイベントとしてメモリエラーの検知が関連付けられている場合には、メッセージとして、「メモリエラー」およびそれを示すコード「Ｆ０００２」を含む。例えば、ＩＤ３のイベントとしてメモリエラーの検知が関連付けられている場合には、メッセージとして、「通信異常」およびそれを示すコード「Ｆ０００３」を含む。
【００９２】
このように、発生したイベントの内容を示す情報をメッセージに含めた場合には、発生したイベントに応じて実行すべき処理が各機能ユニット１５０において予め定められている。各機能ユニット１５０は、何らかのメッセージを受信すると、その受信したメッセージの内容に基づいて、発生したイベントを知ることができ、当該発生したイベントに対して予め定められている処理を実行する。
【００９３】
このように、発生したイベントの内容を示す情報をメッセージに含めることで、各機能ユニット１５０において発生したイベントの内容を知ることができ、当該発生したイベントに応じて、各機能ユニット１５０においてより最適な処理を実行することができる。
【００９４】
＜Ｆ．メッセージの事前登録＞
本実施の形態に従うＰＬＣ１においては、発生したイベントに予め関連付けられたメッセージを含む通信フレームが送信される。このような送信されるメッセージの自由度を高めるために、システム起動時などに、プロセッサ１０２がシステムプログラム１０８（一種のファームウェア）を実行することで、監視回路１０４が送信すべきメッセージを自由に設定できるようにしてもよい。
【００９５】
図１１は、本実施の形態に従うＰＬＣ１におけるメッセージの事前登録に係る処理を説明するための模式図である。図１１（Ａ）を参照して、ＣＰＵユニット１００の起動時において、プロセッサ１０２はシステムプログラム１０８を実行する。システムプログラム１０８の実行によって、ユーザプログラム１１０を実行するための環境が形成される。システムプログラム１０８の一部として、監視回路１０４のレジスタ１０４４に１または複数のメッセージ１０４６を登録する処理が含まれる。
【００９６】
図１１（Ｂ）に示すように、監視回路１０４のレジスタ１０４４にメッセージ１０４６が事前登録された状態で、プロセッサ１０２は、ユーザプログラム１１０を実行するとともに、監視回路１０４は、予め定められたイベントの発生を監視する。このように、プロセッサ１０２は、システムプログラム１０８（あるいは、ファームウェア）を実行することで、ユーザプログラム１１０の実行開始前に、通信マスタ回路１２０から送信されるメッセージを事前登録する。
【００９７】
上述したように、監視回路１０４は、何らかのイベントの発生を検知すると、当該発生したイベントに予め関連付けられたメッセージ（あるいは、当該メッセージを含む通信フレーム）を通信マスタ回路１２０から送信する。このように、ハードウェアロジックである監視回路１０４は、イベントの発生を監視する機能に加えて、通信フレームを送信する機能を有している。
【００９８】
本実施の形態においては、プロセッサ１０２により実行されるシステムプログラム１０８によって、監視回路１０４のレジスタ１０４４に任意のメッセージを登録できる。そのため、ＰＬＣ１の構成や用途などに応じたメッセージを登録することで、ＰＬＣ１の運転継続に影響を与えるイベントが発生した際の最適な処理などを設定することができる。
【００９９】
本実施の形態に従うＣＰＵユニット１００においては、イベント発生の検知機能および通信フレームの送信機能については、ハードウェアロジックを用いることで、高速化を実現するとともに、メッセージ自体については、システムプログラム１０８によって任意に設定できる構成を採用することで、自由度を高めたシステムを実現できる。
【０１００】
＜Ｇ．イベント発生検知およびメッセージ送信の処理手順＞
次に、本実施の形態に従うＰＬＣ１が提供するイベント発生の検知およびメッセージの送信の処理手順について説明する。図１２は、本実施の形態に従うＰＬＣ１が提供するイベント発生の検知およびメッセージの送信の処理手順を示すシーケンス図である。図１２には、図１に示すようなＣＰＵユニット１００および複数の機能ユニット１５０（図１２に示す例では、説明の便宜上、２つの機能ユニット）とからなるＰＬＣ１における処理手順を示す。
【０１０１】
何らかのイベントが発生する（シーケンスＳＱ２）と、ＣＰＵユニット１００の監視回路１０４は、その発生したイベントを検知する（シーケンスＳＱ４）。すると、監視回路１０４は、通信マスタ回路１２０に対して、通信起動を指示するとともに、監視回路１０４に予め登録されているメッセージ（あるいは、当該メッセージを含む通信フレーム）を送信するように指示する（シーケンスＳＱ６）。
【０１０２】
この指示に従って、通信マスタ回路１２０は、１または複数の機能ユニット１５０に対して、ローカルネットワーク１２６を介してメッセージ（あるいは、当該メッセージを含む通信フレーム）を送信する（シーケンスＳＱ８）。
【０１０３】
ローカルネットワーク１２６において最も通信マスタ回路１２０に近い位置に配置されている機能ユニット１５０（図１２の「機能ユニット１」）は、上流側からメッセージを受信すると、当該受信したメッセージを下流側へ転送する（シーケンスＳＱ１０）とともに、受信したメッセージに応じた処理（例えば、上述したようなセーフオペレーション状態への遷移）を実行する（シーケンスＳＱ１２）。
【０１０４】
転送されたメッセージを受信した次の機能ユニット１５０（図１２の「機能ユニット２」）についても同様に、当該受信したメッセージをさらに下流側へ転送する（シーケンスＳＱ１４）とともに、受信したメッセージに応じた処理を実行する（シーケンスＳＱ１６）。
【０１０５】
以下、上流側からのメッセージの受信、受信したメッセージの下流側への転送、および、受信したメッセージに応じた処理の実行が、各機能ユニット１５０においてそれぞれ実行される。
【０１０６】
なお、発生したイベントに応じては、監視回路１０４は、通信マスタ回路１２０に対する通信起動の指示から所定時間経過後に、通信マスタ回路１２０に対する電力供給を停止するようにしてもよい。
【０１０７】
このような一連の処理手順を採用することで、ＣＰＵユニット１００などにおいて何らかのイベントが発生した場合に、当該発生したイベントに応じて必要な処理などを迅速に開始することができる。
【０１０８】
＜Ｈ．その他の応用例＞
上述においては、ＣＰＵユニット１００とローカルネットワーク１２６を介して接続された１または複数の機能ユニット１５０に対して、発生したイベントに関連付けられたメッセージを送信する構成について主として説明した。しかしながら、フィールドネットワークを介して接続される１または複数の機能ユニット１５０に対しても、同様のスキームを適用可能である。
【０１０９】
図１３は、本実施の形態に従うＰＬＣの別の要部構成を示す模式図である。図１３を参照して、ＰＬＣ１のＣＰＵユニット１００は、ローカルネットワーク１２６を介して、１または複数の機能ユニット１５０に接続されているとともに、フィールドネットワーク１２８を介してリモートＩ／Ｏ装置（通信カプラユニット１７０および１または複数の機能ユニット１５０）にも接続されている。
【０１１０】
このような構成においても、ＣＰＵユニット１００の監視回路１０４は、何らかのイベント発生を検知すると、ローカルネットワーク１２６を介して、当該発生したイベントに関連付けられたメッセージを送信する。これらのメッセージに応答して、ローカルネットワーク１２６に接続されている１または複数の機能ユニット１５０の各々、ならびに、フィールドネットワーク１２８に接続されている１または複数の機能ユニット１５０の各々は、通知されたメッセージに応じた処理を実行する。
【０１１１】
このように、本実施の形態に従うメッセージ送信処理は、ＣＰＵユニット１００とローカルネットワーク１２６を介して接続されている機能ユニット１５０だけではなく、フィールドネットワーク１２８を介して接続されている機能ユニット１５０に対しても適用可能である。
【０１１２】
説明の便宜上、図８には、ローカルネットワーク１２６およびフィールドネットワーク１２８の両方を備えるＣＰＵユニット１００を例示するが、フィールドネットワーク１２８のみを備えるＣＰＵユニット１００に対しても、同様に適用可能である。
【０１１３】
＜Ｉ．利点＞
本実施の形態に従うＣＰＵユニット１００によれば、ＣＰＵユニット１００において、何らかのイベントの発生が検知されたときに、入力データおよび出力データを遣り取りする通信線を介して、当該発生したイベントに関連付けられるメッセージを含む送信フレームを１または複数の機能ユニット１５０に対して送信することができる。このメッセージを含む送信フレームにより、各機能ユニット１５０は、当該メッセージに応じた処理を実行する。このような構成を採用することで、メッセージを送信するための専用線などが必要ではなく、低コスト化を実現できるとともに、汎用的な通信プロトコルを採用する定周期ネットワークなどを採用した場合であっても、各機能ユニット１５０に対して、発生したイベントに応じた処理を実行させることができる。
【０１１４】
本実施の形態に従うＣＰＵユニット１００によれば、発生したイベントの検知および検知されたイベントに関連付けられたメッセージを含む通信フレームを送信する機能を、ハードウェアロジックを用いて実現しているので、何らかのイベントが発生してからメッセージを送信するまでに要する時間を短縮化できる。
【０１１５】
本実施の形態に従うＣＰＵユニット１００によれば、検知対象として複数のイベントを設定することができ、かつ、イベント毎にそれぞれ関連付けられたメッセージを任意に設定できるので、自由度を高めたシステムを実現できる。
【０１１６】
本実施の形態に従うＰＬＣ１においては、状態遷移フレームを送信することもでき、この状態遷移フレームを用いた場合には、各機能ユニット１５０をセーフオペレーション状態に移行させることができる。セーフオペレーション状態に移行させることで、各機能ユニット１５０の異常検知ロジックの一部または全部を無効化でき、ＣＰＵユニット１００が復帰したときなどに、異常ログで溢れるといった事態を回避できる。
【０１１７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１１８】
１  ＰＬＣ、１００  ＣＰＵユニット、１０１  演算処理部、１０２  プロセッサ、１０４  監視回路、１０６  メモリ、１０８  システムプログラム、１１０  ユーザプログラム、１２０  通信マスタ回路、１２２，１６６  送受信コントローラ、１２３，１６８  状態レジスタ、１２４，１６２，１６４  送受信ポート、１２６  ローカルネットワーク、１２８  フィールドネットワーク、１３０  電源ユニット、１３２  外部電源、１３３  整流部、１３４  スイッチング部、１３５  ダイオード、１３６  インダクタ、１３７  キャパシタ、１３８  分圧抵抗、１３９  コンパレータ、１５０  機能ユニット、１５６  機能モジュール、１５８  Ｉ／Ｏインターフェイス、１６０  通信スレーブ回路、１７０  通信カプラユニット、１８０  状態遷移フレーム、１８１  データ種別部、１８２  宛先指定部、１８３  オフセット部、１８４  サイズ部、１８５  データ値部、１０４２  イベント検知部、１０４４  レジスタ、１０４６  メッセージ、１０４８  起動部、１０５１  ウォッチドッグタイマ、１０５２  判定部。
【図１】
2018060483.tif 000003
【図２】
2018060483.tif 000004
【図３】
2018060483.tif 000005
【図４】
2018060483.tif 000006
【図５】
2018060483.tif 000007
【図６】
2018060483.tif 000008
【図７】
2018060483.tif 000009
【図８】
2018060483.tif 000010
【図９】
2018060483.tif 000011
【図１０】
2018060483.tif 000012
【図１１】
2018060483.tif 000013
【図１２】
2018060483.tif 000014
【図１３】
2018060483.tif 000015