(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024052959
(43)【公開日】2024-04-12
(54)【発明の名称】安全コントローラおよび履歴表示装置
(51)【国際特許分類】
G05B 9/02 20060101AFI20240405BHJP
G05B 19/05 20060101ALI20240405BHJP
【FI】
G05B9/02 A
G05B19/05 N
【審査請求】有
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2024032449
(22)【出願日】2024-03-04
(62)【分割の表示】P 2019209183の分割
【原出願日】2019-11-19
(71)【出願人】
【識別番号】000129253
【氏名又は名称】株式会社キーエンス
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】三宅 龍馬
(72)【発明者】
【氏名】加藤 雄大
(57)【要約】
【課題】安全プログラムの動作に関連した履歴を記録することで、誤ったOFF信号の原因の解明に資すること。
【解決手段】安全コントローラは、一つ以上の安全入力機器または安全センサから、出力信号を求めるために使用されない付加情報を取得し、所定の記録周期ごとに、付加情報とともに、入力信号および出力信号を履歴情報として記録する。
【選択図】
図7
【特許請求の範囲】
【請求項1】
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有する安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記履歴記録手段は、前記スキャンサイクルごとに、前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録し、さらに、前記スキャンサイクルごとに、前記複数のファンクションブロックのON/OFF状態を取得して前記履歴情報として記録するように構成されていることを特徴とする安全コントローラ。
【請求項2】
前記取得手段は、前記スキャンサイクルよりも長い通信周期で前記一つ以上の安全入力機器または安全センサと通信して前記付加情報を取得するように構成されていることを特徴とする請求項1に記載の安全コントローラ。
【請求項3】
前記履歴記録手段は、今回のスキャンサイクルにおいて取得された履歴情報と前記履歴記録手段に記録されている最新の履歴情報とが異なる場合に、前記今回のスキャンサイクルにおいて取得された履歴情報を記録し、前記今回のスキャンサイクルにおいて取得された履歴情報と、前記履歴記録手段に記録されている最新の履歴情報とが一致している場合に、前記今回のスキャンサイクルにおいて取得された履歴情報を記録しないことを特徴とする請求項1または2に記載の安全コントローラ。
【請求項4】
リアルタイムクロックをさらに有し、
前記履歴記録手段は、前記リアルタイムクロックから取得された時刻情報をタイムスタンプとして付与して前記履歴情報を記録することを特徴とする請求項1または2に記載の安全コントローラ。
【請求項5】
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
リアルタイムクロックと、
前記安全コントローラのリアルタイムクロックと、前記一つ以上の安全入力機器または安全センサのリアルタイムクロックとを同期させる時刻同期手段と、
前記一つ以上の安全入力機器または安全センサとの通信に必要となる通信処理時間で前記付加情報の時刻情報を補正する補正手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有する安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記履歴記録手段は、前記スキャンサイクルごとに、前記付加情報とともに、前記リアルタイムクロックから取得された時刻情報をタイムスタンプとして付与して前記入力信号および前記出力信号を履歴情報として記録し、前記補正手段により補正された時刻情報に基づき前記付加情報を記録することを特徴とする安全コントローラ。
【請求項6】
前記一つ以上の安全入力機器または安全センサは、ライトカーテンであり、
前記付加情報は、前記ライトカーテンについての光軸のON/OFFを示す情報、前記ライトカーテンについての光軸の光量を示す情報、前記ライトカーテンにおいて発生したエラーを示す情報、前記ライトカーテンのミュート状態を示す情報、前記ライトカーテンのリセット待ちを示す情報のうち少なくとも一つの情報を含むことを特徴とする請求項1ないし5のいずれか一項に記載の安全コントローラ。
【請求項7】
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有する安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記履歴記録手段は、前記スキャンサイクルごとに、前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録するように構成されており、
前記一つ以上の安全入力機器または安全センサは、セーフティレーザスキャナであり、
前記付加情報は、前記セーフティレーザスキャナについての光軸のON/OFFを示す情報、前記セーフティレーザスキャナについての各光軸の測定距離または光量を示す情報、前記セーフティレーザスキャナにおいて発生したエラーを示す情報、前記セーフティレーザスキャナのミュート状態を示す情報、前記セーフティレーザスキャナのリセット解除待ちを示す情報、前記セーフティレーザスキャナに設けられたカメラにより取得された画像情報のうち少なくとも一つの情報を含むことを特徴とする安全コントローラ。
【請求項8】
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有する安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記履歴記録手段は、前記スキャンサイクルごとに、前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録し、
前記一つ以上の安全入力機器または安全センサは、ドアスイッチであり、
前記付加情報は、前記ドアスイッチのロック制御を示す情報、前記ドアスイッチにおいて発生したエラーを示す情報、前記ドアスイッチのミュート状態を示す情報、前記ドアスイッチのロック待ちを示す情報のうち少なくとも一つの情報を含むことを特徴とする安全コントローラ。
【請求項9】
前記履歴記録手段は、カメラにより取得された画像データを前記履歴情報として記録するように構成されていることを特徴とする請求項1ないし8のいずれか一項に記載の安全コントローラ。
【請求項10】
安全コントローラにより記録された履歴情報を表示する履歴表示装置であって、
前記安全コントローラは、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、を有しており、
前記履歴表示装置は、
前記履歴情報に含まれている複数の履歴レコードのうちいずれかの履歴レコードを選択する選択手段と、
前記選択手段により選択された前記履歴レコードを表示装置に表示する表示手段と、
表示対象の履歴レコードを抽出するための抽出条件を受け付ける抽出条件受付手段と、
前記抽出条件を満たす履歴レコードを前記履歴情報から抽出してリストを作成する抽出手段と、
を有し、
前記表示手段は、前記リストから前記選択手段により選択され履歴レコードに含まれている前記入力信号の状態および前記出力信号の状態を表示することを特徴とする履歴表示装置。
【請求項11】
安全コントローラにより記録された履歴情報を表示する履歴表示装置であって、
前記安全コントローラは、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、を有しており、
前記履歴表示装置は、
前記履歴情報に含まれている複数の履歴レコードのうちいずれかの履歴レコードを選択する選択手段と、
前記選択手段により選択された前記履歴レコードを表示装置に表示する表示手段と、
前記付加情報の表示対象となる安全入力機器または安全センサの指定を受け付ける指定受付手段と、
を有し、
前記表示手段は、前記指定受付手段により受付された指定に対応する安全入力機器または安全センサの付加情報を前記履歴情報から読み出して表示することを特徴とする履歴表示装置。
【請求項12】
前記表示手段は、前記安全コントローラで実行される安全プログラムを構成している複数のファンクションブロックに対応したファンクションブロックアイコンに、前記履歴情報に含まれている複数のファンクションブロックのON/OFF状態を反映させて、前記表示装置に表示することを特徴とする請求項10または11に記載の履歴表示装置。
【請求項13】
前記表示手段は、前記入力信号の状態を、入力タイプのファンクションブロックの状態として表示し、前記出力信号の状態を、出力タイプのファンクションブロックの状態として表示するように構成されていることを特徴とする請求項12に記載の履歴表示装置。
【請求項14】
前記表示手段は、前記履歴情報に含まれている複数の入力信号の状態と少なくとも一つの出力信号の状態とをタイムチャート形式で表示することを特徴とする請求項10または11に記載の履歴表示装置。
【請求項15】
前記表示手段は、前記履歴情報に記録された状態であって、前記安全コントローラで実行される安全プログラムを構成している複数のファンクションブロックの状態をタイムチャート形式で表示することを特徴とする請求項14に記載の履歴表示装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、安全コントローラおよび履歴表示装置に関する。
【背景技術】
【0002】
製品を生産する製品工場においては危険源となる多数の産業機械が稼働している。安全システムは、産業機械から人間の安全を確保するために欠かせないシステムである(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
安全システムは安全であればON信号を出力し、安全でない可能性があればOFF信号を出力する。また、安全システムの信頼性を高めるために、マイクロコントローラユニット(MCU)は二重化されている。二つのMCUがともにON信号を出力する場合に限り、安全システムはON信号を出力する。二つのMCUのうちいずれか一方でもOFF信号を出力すると、安全システムはOFF信号を出力する。このように安全システムを設計することで、誤ったON信号が出力されることは防止される。その一方で、誤ってOFF信号を出力することは、作業者の安全性を確保する観点からは、許容されてきた。
【0005】
しかし、誤ったOFF信号が出力されると、産業機械が停止するため、製品の生産効率が低下する。したがって、誤ったOFF信号の原因を早急に解明することが要求される。
【0006】
そこで、本発明は、安全プログラムの動作に関連した履歴を記録することで、誤ったOFF信号の原因の解明に資することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、たとえば、
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有する安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記履歴記録手段は、前記スキャンサイクルごとに、前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録し、さらに、前記スキャンサイクルごとに、前記複数のファンクションブロックのON/OFF状態を取得して前記履歴情報として記録するように構成されていることを特徴とする安全コントローラを提供する。
【発明の効果】
【0008】
本発明によれば、安全プログラムの動作に関連した履歴を記録することで、誤ったOFF信号の原因の解明に資することが可能となる。
【図面の簡単な説明】
【0009】
【
図2】メインモジュールと拡張モジュールを説明する図
【
図10】他の観点の履歴記録方法を示すフローチャート
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態が詳しく説明される。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一または同様の構成には同一の参照番号が付され、重複した説明は省略される。とりわけ、小文字のアルファベットは複数の同種の構成要素を区別するために付与されており、複数の構成要素に共通した説明が記載されるときには、小文字のアルファベットが省略されることがある。
【0011】
(安全コントローラ)
図1はシステムの全体を示している。この例で、安全コントローラ1は、メインモジュール3、拡張モジュール4a、4bを有している。メインモジュール3は、ユーザが安全プログラムを作成することを支援する作成支援装置として機能するPC2から転送されてきた安全プログラムを実行する。メインモジュール3は、表示装置5a、操作部6a、通信コネクタ7a、IOコネクタ10a、親和性ポート9a、9bなどを有している。PC2も表示装置5b、および操作部6bを有している。通信コネクタ7aは、USBや有線LANのためのコネクタであってもよい。PC2からの通信ケーブルは通信コネクタ7aに接続されている。有線LANは産業用のイーサネット(登録商標)であってもよい。LANはローカルエリアネットワークの略称である。IOコネクタ10aの入力端子には、緊急停止スイッチやライトカーテンなどの安全入力機器11aが接続される。IOコネクタ10aの出力端子には、ロボットアームなどの産業機器が動力源(危険源)として接続される。
【0012】
親和性ポート9a、9bには、親和性ポート9a、9bに対応したインタフェースを有する安全入力機器11c~11hなどが接続される。親和性ポート9a、9bに接続可能な安全入力機器11としては、たとえば、ライトカーテン、セーフティレーザスキャナ、ドアスイッチなどの安全センサがある。親和性ポート9は、安全入力機器から出力されるOSSD信号等の安全出力信号を安全入力信号として受信するON/OFF入力端子と、安全入力機器に電力を供給するための+24V端子および0V端子等の電力供給端子、および安全入力機器と通信をするための通信端子を有するポートである。ON/OFF入力端子は、IOコネクタ10aに含まれる二重化された一対の入力端子と同様に、安全入力機器からの二重化された安全出力信号を二重化された安全入力信号として受信する一対の端子である。親和性ポート9は通信端子に代えて、または、通信端子に加えAUX端子などを有していてもよい。AUX端子は、安全入力機器11からの補助的な信号を受信する端子であり、たとえば、安全センサの検知状態を示す信号や、OSSD信号に対応する保護エリアとは異なる警告エリアにおける検知状態を示す信号を受信する。
【0013】
メインモジュール3は、安全入力機器11aから入力される安全入力信号(入力値)に対して安全プログラムにしたがった演算処理を実行して出力値を求め動力源12は出力する。たとえば、安全入力機器11aの一種である緊急停止スイッチが押し下げられると、メインモジュール3は、出力値をON(安全)からOFF(安全ではない)に変更する。これにより、動力源12が停止する。メインモジュール3に設けられたIOコネクタ10aだけではすべての安全入力機器および動力源を接続できない場合がる。このような場合には、拡張モジュール4a、4bがメインモジュール3に接続される。
【0014】
拡張モジュール4a、4bはそれぞれIOコネクタ10b、10cを有しており、安全入力機器11bおよび動力源12などを接続できる。拡張モジュール4a、4bとメインモジュール3は相互に通信することで、入力信号および出力信号を受け渡す。つまり、メインモジュール3は、自己に接続された安全入力機器11aおよび拡張モジュール4a、4bに接続された安全入力機器11aから取得した入力信号に安全プログラムを適用することで出力信号を生成する。さらに、メインモジュール3は、安全プログラムに従って生成した出力信号を、自己に接続された動力源12に出力したり、拡張モジュール4a、4bに接続された動力源12に出力したりする。拡張モジュール4a、4bも親和性ポート9を有してもよい。拡張モジュール4a、4bの親和性ポート9にも安全入力機器や安全出力機器が接続可能である。
【0015】
安全コントローラ1は、正面側にIOコネクタ10aやIOコネクタ10b、10cを有し、背面側で取付具に取り付けられ、側面に他のモジュールが配置される。親和性ポート9は、アクセスの容易性の観点からは安全コントローラ1の正面側に設けられてもよい。また、表示装置5a、操作部6a、通信コネクタ7a、IOコネクタ10a等が安全コントローラ1の正面側に設けられることがあり、安全コントローラ1のサイズの観点から親和性ポート9は、安全コントローラ1の上面側または下面側に設けられてもよい。安全コントローラ1は、リモートIOと通信するためのリモートIOポートをさらに有していてもよい。リモートIOポートは、たとえば、安全コントローラ1の上面側または下面側に設けられ、親和性ポート9とは異なる面に設けられる。
【0016】
メインモジュール3と拡張モジュール4は、内部バスを介して接続されており、メインモジュール3は、内部バスを介して拡張モジュール4と通信して、IOコネクタ10b、10cに接続された安全入力機器11からの安全入力信号を取得する。また、メインモジュール3は、親和性ポート9を介して安全入力機器11に電力供給をしつつ、安全入力機器11から安全入力信号を取得するとともに安全入力機器11から付加情報を取得する。つまり、メインモジュール3は、拡張モジュール4のIOコネクタ10bに接続された安全入力機器11bから内部バスを介して安全入力信号(入力値)を取得する第1の取得経路と、親和性ポート9を介して安全入力機器11c~11hから安全入力信号(入力値)を取得する第2の取得経路を有する。なお、リモートIOポートを有する場合、メインモジュール3は、リモートIOポートを介した第3の取得経路を有する。また、メインモジュール3は、安全コントローラの機能とセンサコントローラの機能を有する。第1、第2の取得経路を介して取得した安全入力信号(入力値)を用いて安全プログラムに従って安全出力信号(出力値)を生成することが安全コントローラの機能に相当し、安全センサ等の安全入力機器11c~11hからの付加情報の表示、記録、または、安全センサ等の安全入力機器11c~11hを制御することがセンサコントローラ機能に相当する。
図1に示すように安全センサ等の安全入力機器11c~11e、11f~11hは、直列に接続可能である。これらを直列に接続することで、安全コントローラ1側から各安全入力機器11に電力を供給することが可能となる。さらに、各安全入力機器11の安全出力信号を安全コントローラ1側の安全入力機器11c、11hにより信号をまとめる論理演算が実行されてもよい。これにより、一対の安全出力信号を一対の安全入力信号として安全コントローラ1に入力することが可能となる。また、直列に接続された各安全入力機器11は各安全入力機器11が有する付加情報を安全コントローラ1と通信する。安全センサは、一般に、監視対象である保護エリア内の検知結果と、予め定められた判定条件と、エラー検知結果とに基づいて安全出力信号としてONを出力するかOFFを出力するかを判定するものである。付加情報は、たとえば、安全センサによる保護エリア内の検知結果やエラー検知結果等を含み、安全出力信号がOFF信号となった原因の解明を補助する。
【0017】
(メインモジュールと拡張モジュールのハードウエア)
図2が示すように、メインモジュール3のコントローラ20aは二つのMCU23a、24aとメモリ25aとを有している。コントローラ20aはPC2から受信した安全プログラムと履歴記録プログラムをメモリ25aに記憶する。信頼性を高めるためにMCU(マイクロコントローラユニット)は二重化されている。MCU23a、24aはそれぞれメモリ25aに保持されている安全プログラムと履歴記録プログラムを実行する。MCU23a、24aは安全入力IF21aを介して安全入力機器11の入力信号およびバスIF26aを介して拡張モジュール4から入力された入力信号に基づき出力信号を生成して安全出力IF22aおよび拡張モジュール4に出力する。たとえば、MCU23a、24aがともにON信号を出力していれば、安全出力IF22aはON信号を出力する。MCU23a、24aのうちの一方または両方がOFF信号を出力していれば、安全出力IF22aはOFF信号を出力する。このようにコントローラ20aは、バスIF26aを介して拡張モジュール4と通信して入力信号を受信したり、出力信号を送信したりする。通信IF27aは通信コネクタ7aを介して他の機器(例:PC2)と通信する。親和性ポート9のOSSD信号、電源、通信に関する回路は親和性ポートIF28aに含まれていてもよいし、別の回路として独立していてもよい。
【0018】
安全入力機器の例としては、セーフティレーザスキャナ、ライトカーテンなどがある。安全入力機器は一般的に安全規格を満たすものであり、安全入力機器の出力は二重化されている。二重化により信号の不一致が生じた際には、安全コントローラまたはセンサ自身が当該センサの故障を検知することができる。
【0019】
拡張モジュール4aのコントローラ20bは二つのMCU23b、24bとメモリ25bとを有している。信頼性を高めるためにMCU(マイクロコントローラユニット)は二重化されている。MCU23b、24bはそれぞれメモリ25bに保持されている制御プログラムを実行する。コントローラ20bは安全入力IF21bを介して安全入力機器11の入力信号を受信すると、バスIF26bを介してメインモジュール3に送信する。コントローラ20bはバスIF26bを介してメインモジュール3から出力信号を受信すると、安全出力IF22bを介して動力源12などに出力する。親和性ポート9のための回路として親和性ポートIF28bが設けられてもよい。
【0020】
拡張モジュール4bのコントローラ20cは二つのMCU23c、24cとメモリ25cとを有している。信頼性を高めるためにMCU(マイクロコントローラユニット)は二重化されている。MCU23c、24cはそれぞれメモリ25cに保持されている制御プログラムを実行する。コントローラ20cは安全入力IF21cを介して安全入力機器11の入力信号を受信すると、バスIF26cを介してメインモジュール3に送信する。コントローラ20cはバスIF26cを介してメインモジュール3から出力信号を受信すると、安全出力IF22cを介して動力源12などに出力する。親和性ポート9のための回路として親和性ポートIF28cが設けられてもよい。
【0021】
(PCのハードウエア)
図3が示すように、PC2は、CPU13、表示装置5b、操作部6b、記憶装置15および通信IF27bを備えている。表示装置5b、操作部6b、記憶装置15および通信IF27bは、それぞれCPU13に対して電気的に接続されている。記憶装置15はRAMやROM、HDD、SSDを含み、さらに着脱可能なメモリカードを含んでもよい。CPUは中央演算処理装置の略称である。ROMはリードオンリーメモリの略称である。RAMはランダムアクセスメモリの略称である。HDDはハードディスクドライブの略称である。SSDはソリッドステートドライブの略称である。
【0022】
PC2のユーザは記憶装置15に記憶されている編集プログラム14をCPU13に実行させて、操作部6bを通じて安全プログラム16や履歴記録プログラム、設定情報などを編集し、メインモジュール3に転送する。設定情報は、メインモジュール3に接続されている拡張モジュール4の識別情報と、IOコネクタ10a~10cに設けられた各入力端子と各出力端子に接続されている安全入力機器11および動力源12の識別情報(端子割り当て情報)などを含む。
【0023】
CPU13はメインモジュール3から読み出した履歴データ18を記憶装置15に格納する。CPU13は、履歴表示プログラム17に従って履歴データ18を表示装置5bに表示する。履歴データ18は、誤ったOFF信号の原因解明に役立つであろう。
【0024】
(ユーザーインターフェース(UI))
図4はCPU13が履歴表示プログラム17にしたがって表示装置5bに表示する履歴表示UI30を示している。履歴表示UI30は少なくとも二つの表示モードを有している。
【0025】
(1)ブロック情報モード
第一の表示モードはブロック情報モードである。ブロック情報モードは、安全プログラムを形成している複数のファンクションブロックに関連付けて履歴データ18を表示するモードである。ブロック情報ボタン31がクリックまたはタッチされたことを検知すると、CPU13は、ブロック表示部40に、安全プログラム16を形成しているファンクションブロック41のアイコンと、各ファンクションブロックの端子42のアイコンと、端子間を接続する接続線38とを表示する。表示条件選択部33は、メインモジュール3により記録された履歴データ18のうち、表示対象となるデータをフィルタリングするための条件を入力するために使用される。条件指定部34、35は、予め用意された複数の条件候補のリストを表示し、当該リストから二つの条件を指定するためのプルダウンメニューである。履歴リスト36は、表示条件にしたがって抽出されたレコード(イベント37)のリストを表示する。イベント37は、レコードの通し番号(イベント番号)、イベントの記録日時(タイムスタンプ)、イベントが発生したファンクションブロックの名称(識別情報)などを含んでもよい。たとえば、イベント37は、メインモジュール3の親和性ポートに接続された入力機器の付加情報やプログラムを含んでもよい。なお、各レコードは、予め指定されたイベントが発生したときに記録されてもよいし、安全プログラム16のスキャンサイクルごとに記録されてもよい。ユーザが履歴リスト36に表示されているいずれかのイベント37を選択すると、CPU13は、選択されたイベント37に対応するイベントレコードを履歴データ18から読み出してブロック表示部40に反映させる。たとえば、CPU13は、ON状態のファンクションブロック41のアイコンをライトブルーやライトグリーンに着色したり、OFF状態のファンクションブロック41のアイコンをライトピンクやオレンジに着色したりする。同様に、CPU13は、ON状態の端子42のアイコンをブルーまたはグリーンに着色したり、OFF状態の端子42のアイコンをレッドに着色したりしてもよい。これにより視覚的に信号の論理と、各ファンクションブロックの状態とが確認しやすくなろう。
【0026】
操作ボタン45aは、先頭のレコードまたはイベントに表示対象を変更するためのボタンである。操作ボタン45bは、指定された信号またはブロックについて直前の信号変化点にフォーカスを移動させるためのボタンである。操作ボタン45cは、指定された信号またはブロックについて直後の信号変化点にフォーカスを移動させるためのボタンである。操作ボタン45dは、最後のレコードまたはイベントに表示対象を変更するためのボタンである。操作ボタン45eは、表示対象となっている状態を一ステップ前の状態に変更するためのボタンである。操作ボタン45fは、表示対象となっている状態を一ステップ後の状態に変更するためのボタンである。メニュー46は、一ステップの時間間隔(例:100ms、200ms、500msなど)を選択するためのプルダウンメニューである。
【0027】
(2)タイムチャートモード
タイムチャートボタン32がクリックまたはタッチされたことを検知すると、CPU13は、第一の表示モードから第二の表示モードに切り替える。第二の表示モードは履歴データ18をタイムチャート形式で表示するタイムチャートモードである。
【0028】
図5はタイムチャートUI60を示している。この例では、タイムチャートUI60はブロック表示部40と切り替えられて表示されているが、タイムチャートUI60とブロック表示部40との両方が並行して表示されてもよい。たとえば、タイムチャートUI60が第一ウインドウに表示され、ブロック表示部40が第二ウインドウに表示されてもよい。
【0029】
タイムチャートUI60は、履歴データ18に含まれている各種の安全入力信号や安全出力信号、ファンクションブロックの出力端子の状態を表示する。現在位置バー61は、ユーザにより現在選択されているイベントまたはレコードのタイムスタンプの位置を示すバーである。時刻バー62は、履歴データ18に記録された最初のレコードのタイムスタンプから最後のレコードまでの履歴記録期間の全体を示すグラフィカルオブジェクトである。イベントバー65はイベントが発生した時刻を示すオブジェクトである。斜線を付与されたタイムチャート期間63は、タイムチャートUI60に表示されているタイムチャートの開始時刻から終了時刻までの期間(表示対象期間)を明示するためのオブジェクトである。現在位置オブジェクト64は、現在位置バー61により示されている時刻に対応している。
【0030】
この例では、非常停止スイッチが押されたことで、リセットファンクションブロックがOFFとなり、さらに、第一のANDブロックがOFFとなり、その結果として出力ブロックAがOFFになったことがわかる。さらに、リセットスイッチが押されたことで、リセットファンクションブロックがOFFからONに復帰し、第一のANDブロックがONとなり、その結果として出力ブロックAがONになったことがわかる。
【0031】
現在位置バー61に対応する次のイベントでは、ライトカーテンが遮光されたことでライトカーテンがOFFとなり、第二のANDブロックがOFFとなり、さらに、第一のANDブロックがOFFとなり、その結果として出力ブロックAがOFFになったことがわかる。ライトカーテンの遮光が解除されたことでライトカーテンがONに戻り、第二のANDブロックもONとなり、さらに、第一のANDブロックもONとなり、その結果として出力ブロックAがONになったことがわかる。
【0032】
さらに次のイベントでは、ドアスイッチを取り付けされたドアが開かれたことでドアスイッチがOFFとなり、第二のANDブロックがOFFとなり、さらに、第一のANDブロックがOFFとなり、その結果として出力ブロックAがOFFになったことがわかる。ドアが示されると、ドアスイッチがONに戻り、第二のANDブロックもONとなり、さらに、第一のANDブロックもONとなり、その結果として出力ブロックAがONになったことがわかる。
【0033】
ところで、本実施例のメインモジュール3は、親和性ポート9に接続されたライトカーテンやドアスイッチなどの安全入力機器から付加情報を取得し、ファンクションブロックの状態および各信号の状態とともに付加情報を履歴データ18に記録してもよい。上述されたように、付加情報とは、安全出力信号の演算に直接的には関与しない情報である。ちなみに、安全出力信号の演算に関与する情報は、ライトカーテンのON/OFFやドアスイッチのON/OFFなどである。
【0034】
ライトカーテンは、多数の光軸により保護領域を監視するもので、多数の光軸に対応する多数対の投光素子と受光素子を有しており、対となる投光素子と受光素子は互いに対向して配置され、物体による光軸の遮光を検出することで保護領域の物体を検知するとともに、自己回路等のエラーを検知するもので、物体の検知結果とエラーの検知結果に基づいて安全出力信号を生成する安全センサである。
【0035】
ライトカーテンの付加情報は、たとえば、保護領域における物体の検知情報、ライトカーテンについての各光軸のON/OFFを示す情報、ライトカーテンについての各光軸の光量を示す情報、ライトカーテンにおいて検知したエラーを示す情報、ライトカーテンのミュート状態を示す情報、ライトカーテンのリセット待ちを示す情報のうち少なくとも一つの情報を含む。
【0036】
安全コントローラ1は、自身の安全制御に関する情報だけでなく、安全入力機器11からの安全出力信号の生成に関連する情報や、保護領域に関する情報を付加情報として取得することで、誤ったOFF信号の原因の解明に資することが可能となる。
【0037】
ライトカーテンは、複数の発光素子を有する第一筐体と、第一筐体に対して対抗するように配置される第二筐体とを有している。第二筐体は、複数の受光素子を有し、複数の受光素子がいずれも所定の受光量を満たしている場合、ON信号を出力する。したがって、第一筐体の光軸と第二筐体の光軸とが正しく設置されないと、所定の受光量に対するマージンが小さくなってしまう。したがって、ユーザは、ライトカーテンに関するイベントを履歴データ18から取得し、光軸に関する付加情報を確認することで、ライトカーテンの配置を適切に見直すことが可能となろう。
【0038】
図6は付加情報UI70を示している。ブロック表示部40またはタイムチャートUI60においてライトカーテンに対応したファンクションブロックがクリックまたはタッチされると、現在位置バー61に対応する時刻に関連付けられているライトカーテンの付加情報を履歴データ18から読み出して、付加情報UI70を作成し、表示装置5bに表示する。付加情報UI70は、複数の情報を表示してもよい。たとえば、付加情報UI70は、ライトカーテンのON/OFF情報と、ライトカーテンの光量の情報と、ライトカーテンのエラーを示す情報とを同時に表示してもよい。
【0039】
付加情報UI70は、付加情報に含まれている複数のセンサ情報から一つのセンサ情報を選択するための選択部71を有している。CPU13は、選択部71においてユーザにより選択されたセンサ情報を、センサ情報表示部72に表示する。この例では、光量が選択されているため、ライトカーテンを構成している受光素子ごとの受光量が示されている。アドバイス表示部73は、ユーザに対するアドバイスを表示する。この例では、光軸調整を実行すべきことが助言されている。戻るボタン74は、付加情報UI70を閉じて、履歴表示UI30に戻ることをCPU13に指示するためのボタンである。
【0040】
セーフティレーザスキャナは、予め設定された保護領域をレーザ光でスキャンすることで、物体からの受光した反射光に基づいて保護領域内の物体を検知するとともに、自己回路等のエラーを検知するもので、物体の検知結果とエラーの検知結果に基づいて安全出力信号を生成する安全センサである。セーフティレーザスキャナの付加情報は、保護領域内の物体の検知情報、各光軸のON/OFFを示す情報、セーフティレーザスキャナについての各光軸の距離または光量を示す情報、セーフティレーザスキャナにおいて発生したエラーを示す情報、セーフティレーザスキャナのミュート状態を示す情報、セーフティレーザスキャナのリセット解除待ちを示す情報、レーザスキャナに設けられたカメラにより取得された画像情報のうち少なくとも一つの情報を含む。
【0041】
安全コントローラ1は、自身の安全制御に関する情報だけでなく、安全入力機器11からの安全出力信号の生成に関連する情報や、保護領域に関する情報を付加情報として取得することで、誤ったOFF信号の原因の解明に資することが可能となる。
【0042】
ドアスイッチは、トランスポンダを有するアクチュエータと、トランスポンダとの距離を検出する検出器が、ドアの開閉に伴い相対的に移動する箇所のそれぞれに相対する位置に設置され、検出器によりトランスポンダまでの距離に基づいてドアの開閉状態を検知するとともに自己回路等のエラーを検知するもので、ドア開閉の検知結果とエラーの検知結果に基づいて安全出力信号を生成する安全センサである。また、ドアスイッチはドアを開けることを阻止するロック機構を有してもよく、ドアスイッチはロック機構のロックピンを電動制御することによりロック状態とロック解除状態とを制御する。
【0043】
ドアスイッチの付加情報は、ドア開閉の検知情報、ドアスイッチのロック制御を示す情報、ドアスイッチにおいて発生したエラーを示す情報、ドアスイッチのミュート状態を示す情報、ドアスイッチのロック待ちを示す情報のうち少なくとも一つの情報を含む。
【0044】
安全コントローラ1は、自身の安全制御に関する情報だけでなく、安全入力機器11からの安全出力信号の生成に関連する情報や、ドア開閉に関する情報を付加情報として取得することで、誤ったOFF信号の原因の解明に資することが可能となる。
【0045】
<履歴記録処理>
(MCUの機能)
メインモジュール3は、二つのMCU23a、23bを有しているため、MCU23a、23bのいずれか一方のみが履歴記録プログラムを実行してもよいし、MCU23a、23bの両方がそれぞれ履歴記録プログラムを実行してもよい。後者の場合、二つの履歴データ18が作成されるが、MCU23a、23bの一方が、タイムスタンプに基づき二つの履歴データ18を一つの履歴データ18に統合してもよい。ここでは、MCU23a、23bのいずれか一方のみが履歴記録プログラムを実行する事例が詳細に説明される。
【0046】
図7はMCU23が履歴記録プログラム19を実行することで実現する機能を示している。実行エンジン801は、安全プログラム16を実行する。時刻同期部802は、メインモジュール3のリアルタイムクロック803に対して、拡張モジュール4のリアルタイムクロック、および、親和性ポート9に接続された安全入力機器11のリアルタイムクロックを同期させる。FB情報取得部804は、実行エンジン801により実行される安全プログラムを構成している各ファンクションブロックの状態を実行エンジン801から取得する。付加情報取得部805は、メインモジュール3または拡張モジュール4の親和性ポート9に接続されている安全入力機器11と通信することで付加情報を取得する。安全入力機器11は、タイムスタンプを付与して付加情報を付加情報取得部805に送信してもよい。補正部806は、付加情報に付与されているタイムスタンプを補正する。メインモジュール3と安全入力機器11との間には通信遅延時間(通信処理時間)が存在する。そこで、補正部806は、通信遅延時間の分だけ付加情報に付与されているタイムスタンプを補正する。履歴記録部807は、記録条件が満たされると、安全入力信号、安全出力信号、ファンクションブロックの状態、付加情報を含むレコードを作成し、このレコードに対して、リアルタイムクロック803から取得されたタイムスタンプを付与して、履歴データ18に追記する。記録条件は、たとえば、スキャンサイクルごとであってもよい。スキャンサイクルとは、実行エンジン801による安全プログラム16の繰り返し実行周期である。つまり、実行エンジン801が安全プログラム16を一回実行するたびに、一つのレコードが作成されて、履歴データ18に追記される。記録条件は、所定のイベント(例:安全出力信号などの指定信号がONからOFFに変化したことなど)が発生したことであってもよい(変化点記録)。この場合、履歴データ18のサイズが小さくなるといったメリットが得られる。
【0047】
なお、MCU23は、実行エンジン801が安全入力信号や安全出力信号に関して正常に処理できたかどうかや、MCU23、24の出力にはエラーがないかどうかなどを判定する監視機能(監視部/判定部)を有していてもよい。監視機能がいずれかのエラーを検知すると、MCU23は、出力を強制的にOFFにする。
【0048】
図7には省略されているが、MCU23は親和性ポート9に接続された機器と通信して、当該機器の機種情報を取得してもよい。これにより、MCU23は親和性ポート9に接続された機器がライトカーテンであるのか、ドアスイッチであるのか、セーフティレーザスキャナであるのかを容易に認識することができる(機種判別機能)。
【0049】
(履歴の記録タイミング)
図8はスキャンサイクルごとの履歴記録を説明する図である。Scan0~Scan5は、スキャンサイクルごとに取得された安全制御に関する情報である。安全制御に関する情報とは、たとえば、安全出力信号の演算に関連または関与した情報(例:安全入力信号、ファンクションブロックの状態、安全出力信号)である。A01~A03は、たとえば、ライトカーテンの付加情報である。B01~B03はドアスイッチの付加情報である。この事例で、安全入力機器は、それぞれ個別の制御周期を有しているため、付加情報の取得タイミングが異なっている。履歴レコードは、スキャンサイクルごとに取得された安全制御に関する情報および付加情報を含む。スキャンサイクルと、安全入力機器の制御周期がずれているため、履歴レコードには、スキャンサイクルを基準とした安全制御に関する情報および付加情報が含まれている。この場合、履歴レコードに付与されるタイムスタンプは、スキャンサイクルを基準としたタイムスタンプとなる。
【0050】
ところで、ON信号が継続的に出力されている安全な期間などにおいては、連続した複数の履歴レコードがそれぞれ同一となることがある。この場合、履歴記録部807は、それぞれ同一である連続した複数の履歴レコードのうち最初の履歴レコードを残し、残りの履歴レコードを削除してもよい(変化点圧縮)。
【0051】
ここでは、スキャンサイクルごとに一つの履歴レコードが作成されているが、記録対象となるデータにはデータの種類ごとそれぞれ個別にタイムスタンプを付与されて、データの種類ごとにレコードが作成されてもよい。たとえば、安全出力信号については、スキャンサイクルごとに安全出力信号が取得されて、タイムスタンプが付与される。同様に、安全入力信号についても、スキャンサイクルごとに安全入力信号が取得されて、タイムスタンプが付与される。付加情報もスキャンサイクルごとまたは制御周期ごとに取得されて、タイムスタンプが付与されてもよい。この場合、PC2が各データのタイムスタンプに基づき、ブロック表示部40またはタイムチャートUI60を作成して表示装置5bに表示してもよい。
【0052】
(フローチャート)
図9はメインモジュール3により実行される履歴記録処理を示すフローチャートである。メインモジュール3のMCU23は履歴記録プログラム19にしたがって以下の処理を実行する。
【0053】
S1でMCU23(時刻同期部802)は時刻同期を実行する。時刻同期部802は、親和性ポート9に接続された安全入力機器11と、バスIF26aを介して接続された拡張モジュール4と、拡張モジュール4の親和性ポート9に接続された安全入力機器11とにそれぞれ時刻同期コマンドを送信することで、自己のリアルタイムクロック803に時刻同期させる。
【0054】
S2でMCU23(実行エンジン801)は安全入力信号を取得する。たとえば、実行エンジン801は、親和性ポート9に接続された安全入力機器11と、拡張モジュール4の親和性ポート9に接続された安全入力機器11とからそれぞれ安全入力信号を取得する。
【0055】
S3でMCU23(実行エンジン801)は安全プログラム16を実行する。実行エンジン801は、安全プログラム16を実行することで、安全入力信号に対する安全出力信号を演算して求める。
【0056】
S4でMCU23(実行エンジン801)は安全出力信号を出力する。実行エンジン801は、安全出力IF22aに接続された動力源と、拡張モジュール4の安全出力IF22b、22cに接続された動力源に対して安全出力信号を出力する。親和性ポート9に動力源が接続されている場合、親和性ポート9を介して動力源に安全出力信号が出力される。
【0057】
S5でMCU23(FB情報取得部804)は実行エンジン801から安全プログラム16を形成している各ファンクションブロックの状態情報を取得する。
【0058】
S6でMCU23(付加情報取得部805)は親和性ポート9に接続された安全入力機器11と、拡張モジュール4の親和性ポート9に接続された安全入力機器11とからそれぞれ付加情報を取得する。
【0059】
S7でMCU23(履歴記録部807)は、安全入力信号、安全出力信号、ファンクションブロックの状態情報、および付加情報を含む履歴レコードを作成し、履歴データ18に含まれている最新の履歴レコードに対して変化があるかどうかを判定する。履歴レコードはレコード作成部811により作成される。履歴レコードの変化の判定は変化判定部812により実行される。履歴レコードに変化があれば、MCU23は、S8に進む。履歴レコードに変化がなければ、MCU23は、S8をスキップしてS9に進む。なお、S7はオプションである。
【0060】
S8でMCU23(履歴記録部807)は、履歴レコードにタイムスタンプを付与して、履歴データ18に追記する。
【0061】
S9でMCU23(履歴記録部807)は、ユーザにより履歴記録プログラム19また安全プログラム16の終了指示が入力されたかどうかを判定する。終了指示が入力されていなければ、MCU23は、S2に戻る。終了指示が入力されると、MCU23は、履歴記録プログラム19を停止させる。
【0062】
図10は他の観点の記録処理を示している。ここでは、
図8に示された記録処理に焦点を当てる。
図8が示すようにスキャンサイクルごとに以下処理が実行される。
【0063】
S11でMCU23(履歴記録部807)は、安全入力力信号に基づく安全出力信号の演算が完了したかどうかを判定する。演算の完了を待って、MCU23はS12に進む。
【0064】
S12でMCU23(履歴記録部807)は、付加情報を取得する。ここで、取得対象となる付加情報は、演算が完了したタイミングの付加情報ではなく、その一つ前のタイミングの付加情報である。
図8が示すように、スキャンサイクルScan01について付加情報は、A02やB01ではなく、A01とB00である。
【0065】
S12でMCU23(履歴記録部807)は、付加情報と安全制御に関連する情報とを関連付けて作成した履歴レコードを履歴データ18に追記する。
【0066】
(親和性ポート9にセーフティレーザスキャナが接続された場合)
セーフティレーザスキャナは、検出エリア内に設定される保護エリアを設定データとして生成する設定支援装置(例:PC2)から設定データを受け付けて、当該設定データとして受け付けた保護エリア内の物体を検知し、安全制御信号を出力するものであって、検出エリアに対して検出光を投光する投光手段と、検出エリア内の物体からの反射光を受光して受光信号を生成する受光手段と、対象物までの距離を求める距離算出手段と、回転軸を中心として検出光を走査させる走査手段と、距離及び検出光の走査角からなる測距情報と設定情報に含まれる保護エリアとに基づいて、保護エリア内の物体を検知し、検知信号を生成する侵入検知手段と、検知信号を安全出力信号として出力する出力手段等を有するものである。また、セーフティレーザスキャナにおいて保護エリア内に物体が検知された際の状況確認を容易にするために、スキャン画像、時刻データ、保護エリアへの侵入を検知した光軸の位置などをイベント履歴として記憶するメモリ等が設けられてもよい。さらに好ましくは、セーフティレーザスキャナの検出エリアを撮影するカメラが内蔵されてもよい。当該カメラが検出エリアを撮影した画像をメモリが記憶しても良い。スキャン画像は、反射光が検出された走査角と検出距離を含む測距情報から生成される画像であり、検出光の走査周期において得られる複数の測距情報を二次元表示した画像であり、測距情報を検出光のスキャン面上における複数の測距位置として示したものである。
【0067】
メインモジュール3は、安全コントローラ1が停止したときに、親和性ポート9を介して、セーフティレーザスキャナから上述したようなイベント履歴を読み出すことが可能となる。
【0068】
安全コントローラ1は、親和性ポート9を介して接続されたセーフティレーザスキャナに対し安全制御信号を送信してもよい。安全制御信号は、たとえば、バンク切り替えに使用するバンク番号を含み、16バンクの切り替えを可能とする場合には、二値化の組み合わせによりバンク番号を表す4本を二重化することで計8本の信号線により構成される。安全制御信号は、セーフティレーザスキャナの投光を停止するための投光停止信号を含んでもよい。
【0069】
親和性ポート9のAUX端子は、セーフティレーザスキャナに設定された警告エリアにおいて侵入物を検知したことを示す警告信号を付加情報として受信する。
【0070】
(親和性ポート9にライトカーテンが接続された場合)
ライトカーテンとは、複数の投光素子を有する投光器と、投光器から投光された光を受光する複数の受光素子を有する受光器とを備え、投光器と受光器との間で構成される複数の光軸のうち少なくとも一の光軸の遮光状態に基づいて生成された安全信号を外部に出力する多光軸光電センサである。ライトカーテンは、付加情報として、ライトカーテンの時刻のエラー情報やライトカーテンに内蔵されたカメラで各光軸の検知領域を撮影した画像を記憶するメモリを有していても良い。メインモジュール3は、安全コントローラ1が停止したときに、親和性ポート9を介して、ライトカーテンから上述したような付加情報を取得しても良い。また、ライトカーテンの状態情報から生成された、各光軸の光量に関する画像などが付加情報に含まれてもよい。
【0071】
上述のように、セーフティレーザスキャナやライトカーテンを接続した場合、安全入力機器が入力信号を生成するために用いた保護エリアに関する検知情報が付加情報として有していることが望ましい。
【0072】
(安全コントローラの接続形態)
図11および
図12は安全コントローラの斜視図である。
図11が示すように、メインモジュール3の上面には親和性ポート9a、9bが設けられている。親和性ポート9a、9bには、セーフティレーザスキャナなどの安全入力機器11から延在するケーブルの先端に設けられたポートコネクタ1190aが接続可能である。拡張モジュール4aの上面にも親和性ポート9cが設けられている。親和性ポート9cには、ライトカーテンなどの安全入力機器11から延在するケーブルの先端に設けられたポートコネクタ1190dが接続可能である。
【0073】
メインモジュール3の右側面にはバスIF26aのためのレセプタクル1100が設けられている。拡張モジュール4aの左側面には、バスIF26bのためのバスコネクタ1101が設けられている。バスコネクタ1101aとレセプタクル1100を接続することで、バスIF26a、26bが通信可能に接続される(内部バス接続)。
【0074】
メインモジュール3の右側面にはボス溝1102、1103、1104、1105が設けられている。拡張モジュール4aの左側面には、位置決め用のボス1112、1113、1114、1115が設けられている。メインモジュール3に対して拡張モジュール4aを接続する際に、ボス1112、1113、1114、1115がそれぞれ対応するボス溝1102、1103、1104、1105に篏合して、拡張モジュール4aがメインモジュール3に対して位置決めされる。
【0075】
メインモジュール3の右側面には係止溝1112、1113、1114、1115が設けられている。拡張モジュール4aの左側面には、フック1132、1133、1134、1135が設けられている。メインモジュール3に対して拡張モジュール4aを確実に固定する際に、フック1132、1133、1134、1135がそれぞれ対応する係止溝1122、1123、1124、1125に篏合する。なお、フック1132、1133、1134、1135は、拡張モジュール4aの上面に設けられ、前後方向に移動可能なレバー1130を有している。レバー1130の移動に連動してフック1132、1133、1134、1135が後方に移動してロックがかかる。レバー1130の移動に連動してフック1132、1133、1134、1135が前方に移動することでロックが解除される。
【0076】
拡張モジュール4aの右側面の構造はメインモジュール3の右側面の構造と共通しているため、その説明は省略される。拡張モジュール4bの構造は拡張モジュール4aの構造と共通しているため、その説明は省略される。これらの接続面に共通構造が採用されているため、拡張モジュール4aの右側面には拡張モジュール4bの左側面を連結することが可能となっている。
【0077】
図12が示すようにメインモジュール3の下面にはリモートIOレセプタクル1200が設けられている。リモートIOレセプタクル1200には、リモートIOユニットから延在するケーブルの先端に設けられたリモートIOコネクタ1201が接続される。リモートIOユニットは、メインモジュール3から離れた位置に存在する安全入力機器や安全出力機器をメインモジュール3に接続するためのユニットである。
【0078】
ところで、メインモジュール3や拡張モジュール4a、4bの背面、前面、右側面および左側面はすでに安全コントローラとしての基本用途のために、十分な空きスペースが残っていない。たとえば、メインモジュール3や拡張モジュール4a、4bの背面にはDINレールに接続するための接続溝またはバックプレーンが存在している。メインモジュール3や拡張モジュール4の前面には、表示面やI/Oコネクタ等が存在している。左右側面にはバスIF26aのためのレセプタクル等が配置されている。よって、これらの面には、新たなポートを設けるスペースが存在しない。
【0079】
そこで、新たなポートを設ける場所としては、メインモジュール3や拡張モジュール4の上下面が考えられる。メインモジュール3や拡張モジュール4の上面または下面に親和性ポート9b、9cやリモートIOポートのためのリモートIOレセプタクル1200が設けられてもよい。
【0080】
メインモジュール3や拡張モジュール4a、4bの上面と下面には、それぞれ放熱用の孔1180、1181、1182、1183が設けられる場合、僅かなスペースしか残されない。この場合、新たなポートの配置スペースとしては限られてしまう。そこで、たとえば、メインモジュール3や拡張モジュール4の上面に親和性ポート9b、9cが配置され、メインモジュール3や拡張モジュール4の下面にリモートIOポートのためのリモートIOレセプタクル1200が設けられてもよい(上下分散配置)。あるいは、メインモジュール3や拡張モジュール4の上面にリモートIOポートのためのリモートIOレセプタクル1200が設けられ、メインモジュール3や拡張モジュール4の下面に親和性ポート9b、9cが設けられてもよい。
【0081】
<まとめ>
図1が示すように、安全コントローラ1は安全コントローラの一例である。
図2が示すように、安全入力IF21や親和性ポート9は、一つ以上の安全入力機器または安全センサ(例:ライトカーテン、ドアスイッチ、セーフティレーザスキャナなど)から入力信号が入力される入力部として機能する。MCU23や実行エンジン801は入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または動力源を停止させるOFF信号を出力する安全制御部として機能する。MCU23や付加情報取得部805は一つ以上の安全入力機器または安全センサから、出力信号を求めるために使用されない付加情報(例:センサ情報)を取得する取得手段として機能する。MCU23や履歴記録部807は付加情報とともに、入力信号および出力信号を履歴情報(例:履歴データ18)として記録する履歴記録手段として機能する。このように、安全プログラムの動作に関連した履歴を記録することで、誤ったOFF信号の原因の解明に資することが可能となる。たとえば、安全センサの設置不良に関するセンサ情報が履歴として記録されていれば、ユーザは、安全センサの設置を見直すことで、誤ったOFF信号が出力されにくくなろう。その結果、産業機械の生産効率が向上するであろう。
【0082】
図4が示すように、安全制御部(例:MCU23)は、入力信号または入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有する安全プログラム16を、スキャンサイクルごとに繰り返し実行するように構成されていてもよい。
図8が示すように、履歴記録手段(履歴記録部807)は、所定の記録周期であるスキャンサイクルごとに、付加情報とともに、入力信号および出力信号を履歴情報として記録してもよい。スキャンサイクルは安全プログラムを監視するうえで非常に短い間隔であるため、誤ったOFF信号の原因を解明するために多くの情報をユーザに提供することが可能となる。
【0083】
図8が示すように、取得手段(例:MCU23)は、スキャンサイクルよりも長い通信周期で一つ以上の安全入力機器または安全センサと通信して付加情報を取得するように構成されていてもよい。入力信号や出力信号と比較して、付加情報は変化しにくい情報であることがある。このような付加情報について頻繁に通信すると、MCU23やバスIF26に負荷がかかり、スキャンサイクルが間延びする可能性がある。そこで、スキャンサイクルとは異なる通信周期を採用することで、MCU23やバスIF26に負荷がかかりにくくなる。
【0084】
履歴記録手段(例:MCU23やFB情報取得部804)は、さらに、スキャンサイクルごとに、複数のファンクションブロックの状態を取得して履歴情報として記録するように構成されていてもよい。これにより安全プログラムのバグに起因した、誤ったOFF信号の原因を解明しやすくなろう。
【0085】
履歴記録手段(例:変化判定部812)は、今回のスキャンサイクルにおいて取得された履歴情報と履歴記録手段に記録されている最新の履歴情報とが異なる場合に、今回のスキャンサイクルにおいて取得された履歴情報を記録し、今回のスキャンサイクルにおいて取得された履歴情報と、履歴記録手段に記録されている最新の履歴情報とが一致している場合に、今回のスキャンサイクルにおいて取得された履歴情報を記録しなくてもよい。これにより履歴データ18を変化点圧縮することが可能となろう。
【0086】
メインモジュール3や拡張モジュール4はリアルタイムクロックをさらに有してもよい。履歴記録手段(例:レコード作成部811)は、リアルタイムクロックから取得された時刻情報をタイムスタンプとして付与して履歴情報を記録してもよい。これにより、いつ誤ったOFF信号が発生したかを把握できるようになろう。
【0087】
時刻同期部802は、安全コントローラのリアルタイムクロック803と、一つ以上の安全入力機器または安全センサのリアルタイムクロックとを同期させる時刻同期手段として機能する。補正部806は、一つ以上の安全入力機器または安全センサとの通信に必要となる通信処理時間で付加情報の時刻情報を補正手段として機能してもよい。履歴記録手段(例:履歴記録部807)は、補正手段により補正された時刻情報に基づき付加情報を記録する。メインモジュール3に接続された安全入力機器から取得された信号と、拡張モジュール4に接続された安全入力機器からバス通信により取得された付加情報とに、メインモジュール3のリアルタイムクロック803からタイムスタンプが付与されたと仮定する。この場合、付加情報のタイムスタンプは、実際に付加情報が安全入力機器で取得されて送信された時刻よりも後のタイムスタンプとなってしまう。これは通信処理時間が存在するからである。したがって、付加情報のタイムスタンプを通信処理時間の分だけ過去の時刻に補正することで、付加情報のタイムスタンプがより正確になろう。
【0088】
一つ以上の安全入力機器または安全センサは、ライトカーテンであってもよい。この場合、付加情報は、ライトカーテンについての光軸のON/OFFを示す情報、ライトカーテンについての光軸の光量を示す情報、ライトカーテンにおいて発生したエラーを示す情報、ライトカーテンのミュート状態を示す情報、ライトカーテンのリセット待ちを示す情報のうち少なくとも一つの情報を含んでもよい。これらは、ライトカーテンに起因して生成された誤ったOFF信号を解明するうえで参考情報となろう。
【0089】
一つ以上の安全入力機器または安全センサは、セーフティレーザスキャナであってもよい。この場合、付加情報は、セーフティレーザスキャナについての光軸のON/OFFを示す情報、セーフティレーザスキャナについての各光軸の測定距離または光量を示す情報、セーフティレーザスキャナにおいて発生したエラーを示す情報、セーフティレーザスキャナのミュート状態を示す情報、セーフティレーザスキャナのリセット待ちを示す情報、セーフティレーザスキャナに設けられたカメラにより取得された画像情報のうち少なくとも一つの情報を含んでもよい。これらは、セーフティレーザスキャナに起因して生成された誤ったOFF信号を解明するうえで参考情報となろう。
【0090】
一つ以上の安全入力機器または安全センサは、ドアスイッチであってもよい。この場合、付加情報は、ドアスイッチのロック制御を示す情報、ドアスイッチにおいて発生したエラーを示す情報、ドアスイッチのミュート状態を示す情報、ドアスイッチのロック待ちを示す情報のうち少なくとも一つの情報を含んでもよい。これらは、ドアスイッチに起因して生成された誤ったOFF信号を解明するうえで参考情報となろう。
【0091】
履歴記録部807は、カメラにより取得された画像データを履歴情報として記録するように構成されていてもよい。メインモジュール3は、カメラを接続可能であり、当該カメラにより取得された画像データを受信することができる。たとえば、カメラは、安全入力機器や安全センサ、安全出力機器(動力源)などを撮影するように設置されてもよい。なお、画像データの情報量は安全入力信号や安全出力信号の情報量と比較してかない多い。したがって、ユーザは、画像データを確認することで、誤ったOFF信号の原因を容易に解明することができるであろう。その一方で、履歴データ18のサイズを小さくするために、履歴記録部807は、安全出力信号が変化(ONからOFFへ変化)したときにのみ画像データを記録してもよい。
【0092】
PC2は、安全コントローラにより記録された履歴情報を表示する履歴表示装置として機能する。この場合、操作部6bおよび表示条件選択部33は、履歴情報に含まれている複数の履歴レコードのうちいずれかの履歴レコードを選択する選択手段として機能する。CPU13は、選択手段により選択された履歴レコードを表示装置に表示する表示手段として機能する。
【0093】
図4が示すように、CPU13は、安全コントローラで実行される安全プログラムを構成している複数のファンクションブロックに対応したファンクションブロックアイコンに、履歴情報に含まれている複数のファンクションブロックのON/OFF状態を反映させて、表示装置に表示してもよい。
【0094】
図4が示すように、CPU13は、入力信号の状態を、入力タイプのファンクションブロックの状態として表示し、出力信号の状態を、出力タイプのファンクションブロックの状態として表示してもよい。
【0095】
図5が示すように、CPU13は、履歴情報に含まれている複数の入力信号の状態と少なくとも一つの出力信号の状態とをタイムチャート形式で表示してもよい。
【0096】
図5が示すように、CPU13は、履歴情報に記録された状態であって、安全コントローラで実行される安全プログラムを構成している複数のファンクションブロックの状態をタイムチャート形式で表示してもよい。
【0097】
図4や
図5に関連して説明されたように、CPU13は、表示対象の履歴レコードを抽出するための抽出条件を受け付ける抽出条件受付手段として機能してもよい。さらに、CPU13は、抽出条件を満たす履歴レコードを履歴情報から抽出してリスト(例:履歴リスト36)を作成する抽出手段として機能してもよい。CPU13は、リストから選択手段により選択され履歴レコードに含まれている入力信号の状態および出力信号の状態を表示してもよい。
【0098】
CPU13は、付加情報の表示対象となる安全入力機器または安全センサの指定を受け付ける指定受付手段として機能してもよい。
図6が示すように、CPU13は、指定受付手段により受付された指定に対応する安全入力機器または安全センサの付加情報を履歴情報から読み出して表示してもよい。
【0099】
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。
【手続補正書】
【提出日】2024-04-01
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対する演算処理を決める安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記取得手段は、前記スキャンサイクルよりも長い通信周期で前記一つ以上の安全入力機器または安全センサと通信して前記付加情報を取得するように構成され、
前記履歴記録手段は、前記スキャンサイクルごとに、当該スキャンサイクルを基準とする前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録することを特徴とする安全コントローラ。
【請求項2】
前記安全プログラムは、前記入力信号または前記入力信号から求められた演算信号に対してそれぞれ論理演算を実行する複数のファンクションブロックを有し、
前記履歴記録手段は、前記スキャンサイクルごとに、前記複数のファンクションブロックのON/OFF状態を取得して前記履歴情報として記録するように構成されていることを特徴とする請求項1に記載の安全コントローラ。
【請求項3】
前記履歴記録手段は、今回のスキャンサイクルにおいて取得された履歴情報と前記履歴記録手段に記録されている最新の履歴情報とが異なる場合に、前記今回のスキャンサイクルにおいて取得された履歴情報を記録し、前記今回のスキャンサイクルにおいて取得された履歴情報と、前記履歴記録手段に記録されている最新の履歴情報とが一致している場合に、前記今回のスキャンサイクルにおいて取得された履歴情報を記録しないことを特徴とする請求項1または2に記載の安全コントローラ。
【請求項4】
リアルタイムクロックをさらに有し、
前記履歴記録手段は、前記リアルタイムクロックから取得された時刻情報をタイムスタンプとして付与して前記履歴情報を記録することを特徴とする請求項1または2に記載の安全コントローラ。
【請求項5】
前記安全コントローラのリアルタイムクロックと、前記一つ以上の安全入力機器または安全センサのリアルタイムクロックとを同期させる時刻同期手段と、
前記一つ以上の安全入力機器または安全センサとの通信に必要となる通信処理時間で前記付加情報の時刻情報を補正する補正手段と、
を有し、
前記履歴記録手段は、前記補正手段により補正された時刻情報に基づき前記付加情報を記録することを特徴とする請求項4に記載の安全コントローラ。
【請求項6】
前記一つ以上の安全入力機器または安全センサは、ライトカーテンであり、
前記付加情報は、前記ライトカーテンについての光軸のON/OFFを示す情報、前記ライトカーテンについての光軸の光量を示す情報、前記ライトカーテンにおいて発生したエラーを示す情報、前記ライトカーテンのミュート状態を示す情報、前記ライトカーテンのリセット待ちを示す情報のうち少なくとも一つの情報を含むことを特徴とする請求項1ないし5のいずれか一項に記載の安全コントローラ。
【請求項7】
前記一つ以上の安全入力機器または安全センサは、セーフティレーザスキャナであり、
前記付加情報は、前記セーフティレーザスキャナについての光軸のON/OFFを示す情報、前記セーフティレーザスキャナについての各光軸の測定距離または光量を示す情報、前記セーフティレーザスキャナにおいて発生したエラーを示す情報、前記セーフティレーザスキャナのミュート状態を示す情報、前記セーフティレーザスキャナのリセット解除待ちを示す情報、前記セーフティレーザスキャナに設けられたカメラにより取得された画像情報のうち少なくとも一つの情報を含むことを特徴とする請求項1ないし5のいずれか一項に記載の安全コントローラ。
【請求項8】
前記一つ以上の安全入力機器または安全センサは、ドアスイッチであり、
前記付加情報は、前記ドアスイッチのロック制御を示す情報、前記ドアスイッチにおいて発生したエラーを示す情報、前記ドアスイッチのミュート状態を示す情報、前記ドアスイッチのロック待ちを示す情報のうち少なくとも一つの情報を含むことを特徴とする請求項1ないし5のいずれか一項に記載の安全コントローラ。
【請求項9】
前記履歴記録手段は、カメラにより取得された画像データを前記履歴情報として記録するように構成されていることを特徴とする請求項1ないし8のいずれか一項に記載の安全コントローラ。
【請求項10】
安全コントローラにより記録された履歴情報を表示する履歴表示装置であって、
前記安全コントローラは、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、を有しており、
前記履歴記録手段は、前記入力信号および前記出力信号の取得を基準に、前記付加情報を含む履歴レコードを作成し、
前記履歴表示装置は、
前記履歴情報に含まれている複数の前記履歴レコードのうちいずれかの履歴レコードを選択する選択手段と、
前記選択手段により選択された前記履歴レコードを表示装置に表示する表示手段と、
を有することを特徴とする履歴表示装置。
【請求項11】
表示対象の履歴レコードを抽出するための抽出条件を受け付ける抽出条件受付手段と、
前記抽出条件を満たす履歴レコードを前記履歴情報から抽出してリストを作成する抽出手段と、
をさらに有し、
前記表示手段は、前記リストから前記選択手段により選択され履歴レコードに含まれている前記入力信号の状態および前記出力信号の状態を表示することを特徴とする請求項10に記載の履歴表示装置。
【請求項12】
前記付加情報の表示対象となる安全入力機器または安全センサの指定を受け付ける指定受付手段をさらに有し、
前記表示手段は、前記指定受付手段により受付された指定に対応する安全入力機器または安全センサの付加情報を前記履歴情報から読み出して表示することを特徴とする請求項10に記載の履歴表示装置。
【請求項13】
前記表示手段は、前記安全コントローラで実行される安全プログラムを構成している複数のファンクションブロックに対応したファンクションブロックアイコンに、前記履歴情報に含まれている複数のファンクションブロックのON/OFF状態を反映させて、前記表示装置に表示することを特徴とする請求項10に記載の履歴表示装置。
【請求項14】
前記表示手段は、前記入力信号の状態を、入力タイプのファンクションブロックの状態として表示し、前記出力信号の状態を、出力タイプのファンクションブロックの状態として表示するように構成されていることを特徴とする請求項13に記載の履歴表示装置。
【請求項15】
前記表示手段は、前記履歴情報に含まれている複数の入力信号の状態と少なくとも一つの出力信号の状態とをタイムチャート形式で表示することを特徴とする請求項10に記載の履歴表示装置。
【請求項16】
前記表示手段は、前記履歴情報に記録された状態であって、前記安全コントローラで実行される安全プログラムを構成している複数のファンクションブロックの状態をタイムチャート形式で表示することを特徴とする請求項15に記載の履歴表示装置。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正の内容】
【0007】
本発明は、たとえば、
安全コントローラであって、
一つ以上の安全入力機器または安全センサから入力信号が入力される入力部と、
前記入力信号に基づき所定の演算を実行して出力信号を求め、当該出力信号として動力源の稼働を許可するON信号または前記動力源を停止させるOFF信号を出力する安全制御部と、
前記一つ以上の安全入力機器または安全センサから、前記入力信号とは異なり、前記出力信号を求めるために使用されない付加情報を取得する取得手段と、
前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録する履歴記録手段と、
を有し、
前記安全制御部は、前記入力信号または前記入力信号から求められた演算信号に対する演算処理を決める安全プログラムを、スキャンサイクルごとに繰り返し実行するように構成されており、
前記取得手段は、前記スキャンサイクルよりも長い通信周期で前記一つ以上の安全入力機器または安全センサと通信して前記付加情報を取得するように構成され、
前記履歴記録手段は、前記スキャンサイクルごとに、当該スキャンサイクルを基準とする前記付加情報とともに、前記入力信号および前記出力信号を履歴情報として記録することを特徴とする安全コントローラを提供する。