(57)【特許請求の範囲】
【請求項１】
安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの安全ネットワークの通信パラメータを設定するとともに前記安全システムにおける安全条件を求める安全条件設定支援装置であって、
前記安全ネットワークの通信時間に関する通信パラメータを設定するための入力手段と、
前記安全入力機器、前記安全出力機器の内部処理時間の情報をデータベースとして記憶する機器情報記憶手段と、
前記入力手段により設定される通信パラメータに基づいて、前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報を取得する取得手段と、
前記機器情報記憶手段のデータベースから読み出した内部処理時間の情報と前記取得手段にて取得した通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を算出により求め、この処理時間合計の情報と人の歩行速度の情報とに基づいて、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離についての安全条件を満たす値を算出により求める演算手段と、
を備えたことを特徴とする安全条件設定支援装置。
【請求項２】
安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの安全ネットワークの通信パラメータを設定するとともに前記安全システムにおける安全条件を満たす安全ネットワークの通信時間に関する通信パラメータを求める安全条件設定支援装置であって、
前記安全入力機器、前記安全出力機器の内部処理時間の情報をデータベースとして記憶する機器情報記憶手段と、
前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報を入力するための入力手段と、
前記入力手段から入力された安全距離の情報を取得する取得手段と、
前記機器情報記憶手段のデータベースから読み出した内部処理時間の情報と前記取得手段にて取得した安全距離の情報とに基づいて、その安全距離について人の歩行速度を考慮した安全条件を満たす異常発生時にかかる処理時間を算出し、前記処理時間と前記内部処理時間との差により前記通信時間に関する通信パラメータの値を求める演算手段と、
を備えたことを特徴とする安全条件設定支援装置。
【請求項３】
安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの安全ネットワークの通信パラメータを設定するとともに前記安全システム安全条件を満たすか否かを確認するのに使用する安全条件設定支援装置であって、
前記安全ネットワークの通信時間に関する通信パラメータを設定し、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報を入力するための入力手段と、
前記安全入力機器，前記安全出力機器の内部処理時間の情報をデータベースとして記憶する機器情報記憶手段と、
前記入力手段により設定された通信パラメータに基づいて前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報を取得し、前記入力手段から入力された安全距離の情報を取得する取得手段と、
前記機器情報記憶手段のデータベースから読み出した内部処理時間の情報と前記取得手段にて取得した通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を求め、処理時間合計の情報と人の歩行速度の情報とを乗算した値と、前記取得手段にて取得した安全距離の情報とを比較し、安全距離のほうが長ければ「ＯＫ」、短ければ「ＮＧ」と判断する演算手段と、
を備えたことを特徴とする安全条件設定支援装置。
【請求項４】
前記安全システムの安全ネットワークには、前記安全入力機器と、前記安全出力機器と、安全用途のプログラマブルコントローラとが接続されていて、前記安全入力機器が前記安全ネットワークへ出力した危険信号をプログラマブルコントローラを経由して安全出力機器に前記安全ネットワークを介して伝えるようにしたものであり、
前記入力手段は、前記安全入力機器から前記プログラマブルコントローラへの通信パラメータ、および前記プログラマブルコントローラから前記安全出力機器への通信パラメータを設定するものであり、
前記機器情報記憶手段は、前記プログラマブルコントローラの内部処理時間情報をデータベースとして記憶するものであり、
前記取得手段は、前記入力手段により設定される通信パラメータに基づいて、前記安全入力機器から前記プログラマブルコントローラへのネットワーク通信に要する第１の通信時間の情報と、前記プログラマブルコントローラから前記安全出力機器へのネットワーク通信に要する第２の通信時間の情報と、を取得するものであり、
前記演算手段は、前記通信時間を求める際には、第１の通信時間の情報と、第２の通信時間の情報と、に基づいて求めるものであり、さらに、前記処理時間合計を求める際には、前記プログラマブルコントローラの内部処理時間の情報と、安全入力機器の内部処理時間の情報と、安全出力機器の内部処理時間の情報と、第１の通信時間の情報と、第２の通信時間の情報と、に基づいて求めるものである、
ことを特徴とする請求項１から３のいずれか１項に記載の安全条件設定支援装置。
【請求項５】
安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの条件を求めるコンピュータに実行させるためのプログラムであって、
前記コンピュータに、
前記安全入力機器，前記安全出力機器の内部処理時間の情報をデータベースとして記憶する処理、
ユーザの入力操作を通じて、データベースから読み出した前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報と、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報と、の少なくとも一方を取得する処理、
その取得する処理にて前記安全ネットワークの通信時間の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全ネットワークの通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とに基づいて前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離についての安全条件を満たす値を算出により求める処理、
前記取得する処理にて安全距離の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全距離の情報とに基づいて、その安全距離について人の歩行速度を考慮した安全条件を満たす異常発生時にかかる処理時間を算出し、前記処理時間と前記内部処理時間との差により前記通信時間に関する通信パラメータの値を求める処理、
前記取得する処理にて前記通信時間の情報と安全距離の情報とを取得した場合、前記データベースから読み出した前記取得処理で取得した内部処理時間の情報と前記取得する処理で取得した通信時間の情報とに基づいて処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とを乗算した値と前記取得する処理で取得した安全距離の情報とを比較し、安全距離のほうが長ければ「ＯＫ」、短ければ「ＮＧ」と判断する処理、
を実行させることを特徴とするプログラム。
【請求項６】
安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す信号を出力する機器を接続し、その機器から危険状態を示す信号が入力された場合に検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの条件を求めるコンピュータが読み取り可能なプログラムを記録した記録媒体であって、
前記安全入力機器，前記安全出力機器の内部処理時間の情報をデータベースとして記憶する処理、
ユーザの入力操作を通じて、データベースから読み出した前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報と、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報と、の少なくとも一方を取得する処理、
その取得する処理にて前記安全ネットワークの通信時間の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全ネットワークの通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とに基づいて前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離についての安全条件を満たす値を算出により求める処理、
前記取得する処理にて安全距離の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全距離の情報とに基づいて、その安全距離について人の歩行速度を考慮した安全条件を満たす異常発生時にかかる処理時間を算出し、前記処理時間と前記内部処理時間との差により前記通信時間に関する通信パラメータの値を求める処理、
前記取得する処理にて前記通信時間の情報と安全距離の情報とを取得した場合、前記データベースから読み出した前記取得処理で取得した内部処理時間の情報と前記取得する処理で取得した通信時間の情報とに基づいて処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とを乗算した値と前記取得する処理で取得した安全距離の情報とを比較し、安全距離のほうが長ければ「ＯＫ」、短ければ「ＮＧ」と判断する処理、をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、安全条件設定支援装置及びプログラム並びに記録媒体に関するものである。
【０００２】
【従来の技術】
よく知られているように、例えばＦＡ（ファクトリーオートメーション）システムなどにおいては、ＰＬＣ（プログラマブルコントローラ）とスレーブをデバイスネット等のネットワークを介して接続したネットワークシステムを構築する。そして、スレーブは、複数のＩ／Ｏユニットを備え、そのＩ／Ｏユニットに、センサやリレーその他の各種機器が連結されている。これにより、例えば、スレーブに接続された入力機器（スイッチやセンサなど）で検出したセンシング情報がネットワークを介してＰＬＣに取り込まれる。そして、ＰＬＣは、取得したセンシング情報を解析し、そのセンシング結果に基づいて動作すべき出力機器（リレーやバルブ、アクチュエータなど）に対して制御命令を送るようになっている。
【０００３】
一方、最近ではＰＬＣによる制御においても、フェイルセーフ（安全）システムが導入されつつある。つまり、ＰＬＣや各機器自体はもちろんネットワークも安全機能を組み込まれたもので構成される。ここで安全機能とは、例えばＣＰＵその他の各処理部等を二重化して、正しい出力をするようにしたり、ネットワーク異常（正常な通信ができない）の場合や、緊急停止スイッチが押下されたり、ライトカーテンなどのセンサが人（身体の一部）の進入を検出した場合等の安全システムが安全状態を維持できなくなった場合には、フェイルセーフが働き、システムが安全側になって、動作が停止するようにする。
【０００４】
後者のネットワークを使用した安全システムの場合、フェイルセーフを実行するためには、関連する出力機器により動作が制御される機械設備と、入力機器の設置位置関係（安全距離）も重要な要素となる。
【０００５】
すなわち、図１に示すように、出力機器で制御されるロボットなどの機械設備の動作範囲が危険区域１となる。そして、その危険区域１の手前に、入力機器として、一対の投光器２ａと受光器２ｂを設置する。なお、危険区域１に作業員３が進入するためには、この投光器２ａと受光器２ｂ間を通過しなければならず、それ以外の箇所は、例えば壁などが設置されて進入できないようになっているものとする。
【０００６】
すると、作業員３が危険区域１に到達する前には、必ず投光器２ａから出射される光の光軸４を遮ることになる。そこで、フェイルセーフ対応の本システムでは、受光器２ｂが受光できなくなると、作業員３が通過したと判断して検出信号を出力する。この検出信号が、ネットワークを介して最終的に出力機器に伝達され、出力機器は危険区域１内で動作している機械設備の動作を停止する。
【０００７】
従って、受光器２ｂが作業員３の通過を検出してから、実際に設備機械の動作が停止されるまでには、一定の遅延が生じる。この遅延は、少なくとも入力機器や出力機器の内部処理時間や、各種通知がネットワーク上を伝送される際にかかる通信時間を併せた合計時間分が必要である。
【０００８】
よって、作業員３が投光器２ａ，受光器２ｂ間を通過してから危険区域１に到達するまでにかかる時間（歩行速度×歩行距離）よりも、前記合計時間の方が短いと、作業員３が危険区域１に到達する前に機械設備を停止することができる。従って、システムを設計する場合には、上記を考慮し、入力機器や出力機器の内部処理時間を短くするように設定したり、歩行距離（入力機器の検知位置から危険区域１までの距離）を長くしたりし、異常時に確実にシステム（機械設備）を停止することができるようにする。
【０００９】
なお、フェイルセーフを実現するために必要な入力機器の検知位置から危険区域１までの距離を最小安全距離Ｓとすると、この最小安全距離Ｓは、歩行速度Ｋ（例えば、１ｍ／ｓｅｃ）とシステム停止に係る停止動作時間Ｔ（上記の合計時間）とすると、
Ｓ＝Ｋ×Ｔ
或いは
Ｓ＝Ｋ×Ｔ＋Ｃ  Ｃ：安全係数（追加距離）
により求めることができる。
【００１０】
【発明が解決しようとする課題】
しかしながら、上記した従来の装置・システムでは以下に示す問題があった。すなわち、実際の安全システムをネットワークを用いて構築する場合、上記したように通信による遅れ時間や、各入出力機器の処理時間を、機械設備の設置における安全距離に反映させる必要がある。しかし、その機械設備に関係するネットワークシステムを構築する機器を特定し、それに関する時間を求めるのは煩雑である。さらに、入力機器と出力機器との間の通信経路を鑑みても、例えば入力機器から直接出力機器に検出信号が伝達される場合と、一旦ＰＬＣに取り込まれ、そのＰＬＣが処理し、その結果を出力機器に検出信号が送られるなど、各種システム構成が存在し、現在安全距離を求めようとするものがどのネットワーク経路かを特定し、それに基づいて通信時間の遅れなどを考慮する必要があり、煩雑である。
【００１１】
そこで、ネットワークにおける遅れを一律のものとし、全ての機器に対しユーザ自身が、その最大遅れ時間を考慮した上で、安全距離を算出し、機器を設置することも可能であるが、この場合、遅れ時間，処理時間が一律のため、アプリケーションの柔軟性が少なく、対応できるアプリケーションが制限されるなどの課題があった。
【００１２】
また、全ての機器に対し、最速の応答時間（内部処理時間）を要求すると、使用する安全ネットワークに対し、過度の通信性能を要求することになり、その実現のためのコスト負担が大きくなる。
【００１３】
本発明は、上記した背景に鑑みてなされたもので、その目的とするところは、実際のシステムに使用される各機器の仕様等を十分に理解していなくても、安全ネットワークを構築するための各種パラメータを設定することができ、過度の通信性能や必要以上の安全距離を設定するようなことが無く、実現可能な安全ネットワークシステムを構築するための情報を提供することができ、さらに、それらを実行するための処理が、表示画面にしたがって処理することにより視覚・感覚的に全体のシステム構成を理解しながら安全ネットワークシステムを構築することのできる安全条件設定支援装置及びプログラムム並びに記録媒体を提供することにある。
【００１４】
【課題を解決するための手段】
上記した目的を達成するために、本発明に係る安全条件設定支援装置は、安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの安全ネットワークの通信パラメータを設定するとともに前記安全システムにおける安全条件等を求める安全条件設定支援装置を前提とする。
そして、前記安全ネットワークの通信時間に関する通信パラメータを設定するための入力手段と、前記安全入力機器、前記安全出力機器の内部処理時間の情報をデータベースとして記憶する機器情報記憶手段と、前記入力手段により設定される通信パラメータに基づいて、前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報を取得する取得手段と、前記機器情報記憶手段のデータベースから読み出した内部処理時間の情報と前記取得手段にて取得した通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を算出により求め、この処理時間合計の情報と人の歩行速度の情報とに基づいて、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離についての安全条件を満たす値を算出により求める演算手段と、を備えるようにした。
また、別の解決手段としては、上記の前提において、前記安全入力機器、前記安全出力機器の内部処理時間の情報をデータベースとして記憶する機器情報記憶手段と、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報を入力するための入力手段と、前記入力手段から入力された安全距離の情報を取得する取得手段と、前記機器情報記憶手段のデータベースから読み出した内部処理時間の情報と前記取得手段にて取得した安全距離の情報とに基づいて、その安全距離について人の歩行速度を考慮した安全条件を満たす異常発生時にかかる処理時間を算出し、前記処理時間と前記内部処理時間との差により前記通信時間に関する通信パラメータの値を求める演算手段と、を備えることである。
また、別の解決手段としては、上記の前提において、前記安全ネットワークの通信時間に関する通信パラメータを設定し、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報を入力するための入力手段と、前記安全入力機器，前記安全出力機器の内部処理時間の情報をデータベースとして記憶する機器情報記憶手段と、前記入力手段により設定された通信パラメータに基づいて前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報を取得し、前記入力手段から入力された安全距離の情報を取得する取得手段と、前記機器情報記憶手段のデータベースから読み出した内部処理時間の情報と前記取得手段にて取得した通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を求め、処理時間合計の情報と人の歩行速度の情報とを乗算した値と、前記取得手段にて取得した安全距離の情報とを比較し、安全距離のほうが長ければ「ＯＫ」、短ければ「ＮＧ」と判断する演算手段と、を備えることである。
上記各発明において、前記安全システムの安全ネットワークには、前記安全入力機器と、前記安全出力機器と、安全用途のプログラマブルコントローラとが接続されていて、前記安全入力機器が前記安全ネットワークへ出力した危険信号をプログラマブルコントローラを経由して安全出力機器に前記安全ネットワークを介して伝えるようにしたものであり、前記入力手段は、前記安全入力機器から前記プログラマブルコントローラへの通信パラメータ、および前記プログラマブルコントローラから前記安全出力機器への通信パラメータを設定するものであり、前記機器情報記憶手段は、前記プログラマブルコントローラの内部処理時間情報をデータベースとして記憶するものであり、前記取得手段は、前記入力手段により設定される通信パラメータに基づいて、前記安全入力機器から前記プログラマブルコントローラへのネットワーク通信に要する第１の通信時間の情報と、前記プログラマブルコントローラから前記安全出力機器へのネットワーク通信に要する第２の通信時間の情報と、を取得するものであり、
前記演算手段は、前記通信時間を求める際には、第１の通信時間の情報と、第２の通信時間の情報と、に基づいて求めるものであり、さらに、前記処理時間合計を求める際には、前記プログラマブルコントローラの内部処理時間の情報と、安全入力機器の内部処理時間の情報と、安全出力機器の内部処理時間の情報と、第１の通信時間の情報と、第２の通信時間の情報と、に基づいて求めるものであるように構成すると良い。
【００１５】
安全条件設定支援装置は、実施の形態ではツール装置により実現されている。機器情報記憶手段は、実施の形態では部品データベース１３ｄに相当する。接続情報は、どの安全機器同士が接続されるかを特定する情報である。また、取得手段は、過去に作成し所定の記憶手段に格納されているものを読み出して取得しても良いし、入力手段から処理する際に取得するようにしてもよい。また、危険状態とは、安全システムが安全状態を維持できなくなった状態を意味する。
【００１６】
安全ネットワークは、制御対象装置（機械設備）の動作範囲内に危険区域が存在している場合に、動作中にその危険区域に人が進入するのを抑制する必要がある。従って、危険区域に人が近づいていることを安全入力機器が検出すると、危険区域に到達する前に安全出力機器を動作して制御対象装置の動作を停止する必要がある。つまり、異常時にはフェイルセーフが働き、システムが安全側になって、動作が停止するようにする。
【００１７】
このフェイルセーフを確実に実現するためには、安全入力機器で異常を検知してから安全出力機器が制御対象装置に対して動作停止命令を出力して停止するまでに係る合計時間をできるだけ短くする方法と、危険区域からできるだけ離れた遠い位置で安全入力機器が異常（人の進入等）を検出する方法がある。そして、実際にはそれら両者の相関関係により適宜に決定される。つまり、上記合計時間が決まると、人の歩行速度などから、安全入力機器での検出位置と危険区域まで距離として最低限離すべき距離（安全距離）が分かる。逆に安全入力機器での検出位置と危険区域まで距離が決まっており、それを安全距離にするための上記合計時間を求めることができる。
【００２１】
さらにまた、表示手段と、前記安全機器を表す表示情報を記憶する記憶手段とを有し、少なくともその記憶手段に記憶された安全機器の表示情報を使用し、前記表示手段の作業領域中に表示・配置された所定の安全機器のうち、入力部を介して指示された複数の安全機器間を結ぶ線を前記表示手段に表示する機能を備え、前記演算手段は、前記結ぶ線で連結された前記安全機器についての前記内部処理時間を読み出して安全条件を求めるようにするとよい。
【００２２】
このようにすると、ユーザー等の安全条件設定支援装置を使用する人は、表示手段の表示画面（作業領域）に安全機器を表す表示情報が表示されるので、データを送受する安全機器同士を画面上で選択すると、当該安全機器同士が線で結ばれる（結線される）。係る線は、画面上で実際に表示されるので、どの機器とどの機器が連結されてデータ通信がされるのかが視覚的に理解できる。そして、その結ぶ線により、どの安全機器が接続されているかが分かるので、その安全機器の内部処理時間を読み出すとともに、安全距離と送信時間の少なくとも一方を取得することにより、安全条件を求めることができる。
【００２３】
このように、ユーザーは、画面を見ながら使用する安全機器を画面上で配置し、結線する（ユーザーの処理は、連接する機器を選択するだけでもよい）といった簡単で、視覚的に容易に理解しやすい処理を行うことで、安全ネットワークシステムを構築するのに必要な安全条件を求めることができる。
【００２４】
なお、「表示情報」は、ネットワークに接続される機器を、表示手段の表示画面上に表示する際に、当該安全機器であることをユーザー等の使用者に視覚的にわかるようにするための情報（データ）であり、実施の形態ではマークである。そのように図形イメージで表現したものであれば、直感的に理解しやすく好ましい。また、そのように図形に限らず、例えば「センサ１」，「モータ」，「加減速機能付きモータ」等の文字で表現したものでもよい。さらには、両者の中間で四角形などの枠で当該文字を囲むようにしたものでもよい。
【００２５】
また、本発明に係るプログラムは、安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの条件を求めるコンピュータに実行させるためのプログラムであって、前記コンピュータに、前記安全入力機器，前記安全出力機器の内部処理時間の情報をデータベースとして記憶する処理、ユーザの入力操作を通じて、データベースから読み出した前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報と、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報と、の少なくとも一方を取得する処理、その取得する処理にて前記安全ネットワークの通信時間の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全ネットワークの通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とに基づいて前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離についての安全条件を満たす値を算出により求める処理、前記取得する処理にて安全距離の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全距離の情報とに基づいて、その安全距離について人の歩行速度を考慮した安全条件を満たす異常発生時にかかる処理時間を算出し、前記処理時間と前記内部処理時間との差により前記通信時間に関する通信パラメータの値を求める処理、前記取得する処理にて前記通信時間の情報と安全距離の情報とを取得した場合、前記データベースから読み出した前記取得処理で取得した内部処理時間の情報と前記取得する処理で取得した通信時間の情報とに基づいて処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とを乗算した値と前記取得する処理で取得した安全距離の情報とを比較し、安全距離のほうが長ければ「ＯＫ」、短ければ「ＮＧ」と判断する処理、を実行させるものである。このプログラムは、例えば各種の記録媒体に格納し、その記録媒体を介してコンピュータ等にインストールしたり、各種の通信ネットワークを利用して配信することにより供給することができる。
また、本発明に係る記録媒体は、安全状態を維持できない場合にフェールセーフが働いて制御対象装置が安全側になって動作停止する安全システムであって、緊急停止スイッチの押下操作または人の進入検出により安全システムの危険状態を示す信号を出力する機器を接続し、その機器から危険状態を示す信号が入力された場合に検出信号を安全ネットワークへ出力する安全入力機器と、制御対象装置を接続し、前記安全入力機器の検出信号の出力があったことを前記安全ネットワークを介して受信することに基づいて前記制御対象装置を停止する安全出力機器とを、設定された通信パラメータに基づいて通信を行う安全ネットワークに接続する安全システムにおいて、前記安全システムの条件を求めるコンピュータが読み取り可能なプログラムを記録した記録媒体であって、前記安全入力機器，前記安全出力機器の内部処理時間の情報をデータベースとして記憶する処理、ユーザの入力操作を通じて、データベースから読み出した前記安全入力機器から安全出力機器へのネットワーク通信に要する通信時間の情報と、前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離の情報と、の少なくとも一方を取得する処理、その取得する処理にて前記安全ネットワークの通信時間の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全ネットワークの通信時間の情報とに基づいてそれらの合計である異常発生時にかかる処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とに基づいて前記安全入力機器の人の検知位置から前記制御対象装置の危険区域までの安全距離についての安全条件を満たす値を算出により求める処理、前記取得する処理にて安全距離の情報を取得した場合、前記データベースから読み出した内部処理時間の情報と前記取得する処理で取得した安全距離の情報とに基づいて、その安全距離について人の歩行速度を考慮した安全条件を満たす異常発生時にかかる処理時間を算出し、前記処理時間と前記内部処理時間との差により前記通信時間に関する通信パラメータの値を求める処理、前記取得する処理にて前記通信時間の情報と安全距離の情報とを取得した場合、前記データベースから読み出した前記取得処理で取得した内部処理時間の情報と前記取得する処理で取得した通信時間の情報とに基づいて処理時間合計を算出し、処理時間合計の情報と人の歩行速度の情報とを乗算した値と前記取得する処理で取得した安全距離の情報とを比較し、安全距離のほうが長ければ「ＯＫ」、短ければ「ＮＧ」と判断する処理、をコンピュータに実行させるプログラムを記録したコンピュータが読み取り可能な記録媒体とした。
【００２６】
【発明の実施の形態】
図２は、本発明の好適な一実施の形態を示している。図２に示すように、ネットワーク５には、安全入力機器６，安全出力機器７並びに安全ＰＬＣ８などの各種の安全ネットワーク対応の各装置が接続され、所定の装置間でデータの送受を行う安全ネットワークシステムが構成される。
【００２７】
係る安全ネットワークシステムを実際に稼働可能な状態に構築するためには、各種のプログラムをダウンロードする必要がある。また、安全ＰＬＣ８と、安全スレーブ（安全入力機器６，安全出力機器７）との間でデータの通信を行うためには、安全スレーブのＩ／Ｏを安全ＰＬＣ８のメモリに割り付ける必要がある。安全スレーブ間での通信を行う場合も同様である。そして、ツール装置１０を用いて、係るプログラムを作成するとともに、そのツール装置１０をネットワーク５に接続し、所定の装置にダウンロードしたり、メモリの割り付けをしたりするようになっている。
【００２８】
まず、本発明の処理対象で最終的に構築するネットワークシステムについて簡単に説明すると、例えば、安全入力機器６で検出したセンシング情報は、ネットワーク５を介して所定の安全ＰＬＣ８に送信される。この安全ＰＬＣ８は、取得したセンシング情報を解析し、そのセンシング結果に基づいて動作すべき安全出力機器７に対して制御命令を送る。そして、異常事態発生の場合には、安全出力機器７を安全側に動作させるようになっている。また、安全入力機器６から安全出力機器７に直接命令を送る場合もある。
【００２９】
この時、係るネットワークシステムを構築するには、単に各機器を物理的にネットワークに接続するのみならず、各機器の各Ｉ／Ｏモジュール番号を安全ＰＬＣのメモリ（番地）に割り付けたり、安全ＰＬＣでどのような演算処理をするかのプログラムを組む等のプログラミング処理が必要となる。さらに、安全ネットワークを構築するためには、上記した通信を行うことに加えて、安全機能を実現するための各種の設定を行う必要がある。さらに、本発明との関係で言うと、緊急停止スイッチが押下されたり、ライトカーテンなどのセンサが人（身体の一部）の進入を検出した場合等のネットワークシステムが危険状態になった場合に、フェイルセーフが働き、システムが安全側になって、動作が停止するが、係る動作停止を一定時間以内（人が危険地帯に到達する前）に行うために必要な各装置における内部処理時間や、安全距離の設定を行う必要がある。これらの処理をツール装置１０で行う。ここで、安全距離とは、安全入力機器から制御対象装置までの距離、つまり、入力機器の検知位置から危険区域までの距離を言う。そして、上記ツール装置１０で行う処理は、具体的には、以下の通りである。
【００３０】
まず、ツール装置１０は、モニタ等の表示部１１と、キーボードやマウスその他のポインティングデバイス等の入力部１２と、入力部１２から与えられる情報に基づいて所定の信号処理をする処理部１３と、ネットワーク５に接続する通信インタフェース部１４を備えている。さらに、この処理部１３は、入力部１２を介して与えられた情報にしたがって処理した結果等を表示部１１に表示する機能ももっている。そして、具体的には図３に示すようになっている。
【００３１】
すなわち、表示部１１と接続し、データの送受を制御する表示部インタフェース１３ａと、入力部１２と接続し、データの送受を制御する入力部インタフェース１３ｂと、実際に信号処理するＭＰＵ１３ｃを備え、作業領域となるメモリ１３ｅを使いながら入力部１２を介して与えられる命令にしたがい、部品データベース１３ｄをアクセスしながらネットワークを構築するためのデータを作成し、それを通信インタフェース部１４を介して安全入力機器６，安全出力機器７，安全ＰＬＣ８などの各機器に対してダウンロードすることによりシステムを構築するようになる。
【００３２】
ここで部品データベース１３ｄは、各機器等のネットワークに直接または間接的に接続可能な部品についての情報を格納している。さらに、演算機能を持ったファンクションブロックＦＢについても格納している。このファンクションブロックは、入力と出力並びに入出力関係のみ定義したものである。ここで入出力関係とは、例えば「ＡＮＤ（全ての入力が１のときに出力が１になる）演算をする」や、「ある同一の出力（入力が１つの場合と、入力が複数でそれについて所定の演算をするものを含む）を複数の相手に与えるというようなデータの送り先が１対１でない場合の分配機能」など、内部の具体的な処理はブラックボックス化し、あくまでも入力と出力を特定したものである。そして、１または複数のファンクションブロックにより、ＰＬＣの機能を表現することができる。
【００３３】
そして、部品データベース１３ｄは、図４に示すように、部品（ファンクションブロックを含む）等の名称と、表示部１１の表示画面上に表示する表示情報たるマーク及びその部品等についての情報を記憶している。この情報は、その部品等自体を特定するための情報や、その特性・性能（ファンクションブロックの場合には、入出力関係等）を示す情報などがあり、例えばある端子の番号とそのデータ方向（ＩＮ／ＯＵＴ）の関係や、データサイズの採り得る種類等がある。さらに本発明との関係で言うと、各機器の内部処理時間に関する情報も格納される。もちろんこれ以外のものでもかまわない。
【００３４】
そして、ＭＰＵ１３ｃは、その部品データベース１３ｄをアクセスし、所定の基準にしたがい、図５に示すように表示部１１の部品表示領域１１ａに、部品を示すマークＭを出力表示するようになっている。この出力表示する部品は、図示の例では便宜上ランダムに各種の部品を表示しているが、例えばテキスト入力或いはポインティングデバイスを用いて部品の種類を特定し、それに該当する部品を表示したりすることができる。もちろん、表示する部品の選択は任意であり、要は、表示画面上に部品を示すマークＭが出力表示されるようになっていればよい。
【００３５】
そして、ユーザーはポインティングデバイス等を用い、表示画面上のポインタＰを選択するマークの上に移動するとともにクリック等してそれを選択し、その選択したマークを表示部１１の作業領域１１ｂの任意の位置にセットする。このセットの仕方は、例えばマウスを操作し「ドラック」を行うことにより簡単にできる。もちろん、マークの上で一旦クリックしてそれを選択し、作業領域の任意の位置で再度クリックなどすることにより当該領域にマウス等を移動し、そこでクリックすることなどによって設定してもよく、その他各種の方法で設定をすることができる。
【００３６】
そして、処理部１３（主としてＭＰＵ１３ｃ）の機能，動作フローは図６，図７に示すようになっている。すなわち、まず、ツール装置１０の電源を投入したならば、必要な部品を呼び出し、作業領域１１ｂの所定位置に配置する（ＳＴ１〜ＳＴ３）。つまり、ＭＰＵ１３ｃとしては、入力部１２からの指示にしたがい部品データベース１３ｄに格納されている所定のマークを部品表示領域１１ａに表示し、その表示されたマークの中で選択されたマークを、作業領域１１ｂ中の指示された場所に表示する。
【００３７】
そして、上記部品の呼び出し（選択）並びに配置処理（ＳＴ２，ＳＴ３）をネットワークを構築しようとする全ての部品について行い、その部品配置処理を完了する（ＳＴ４）。これにより、作業領域１１ｂには、図８に示すように所定位置に部品が配置された状態が表示される。
【００３８】
次いで、ファンクションブロックの配置処理に移行する。すなわち、まずファンクションブロックが必要か否かを判断し（ＳＴ５）、必要であればファンクションブロックを呼び出し（所望のファンクションブロックを選択し）、作業領域１１ｂ上の任意の場所に配置する（ＳＴ６，ＳＴ７）。そして、係る選択・配置処理を繰り返し実行することにより、全てのファンクションブロックについて配置する（ＳＴ８）。これにより、作業領域１１ｂは、図９に示すように部品等が任意の場所に表示される。
【００３９】
なお、ユーザーの操作、並びにＭＰＵの処理としては、表示（処理）対象が部品からファンクションブロックに変わるものの、いずれも部品データベースに格納されたマークを表示し、それを選択・配置するため、上記した部品の配置処理と同様の処理を行うことになる。よって、便宜上ステップ２〜４とステップ５〜８を分けて処理するようにしたが、それらを混在させながら行うようにしてもよいし、ファンクションブロック側を先に実行してもよい。
【００４０】
次いで、ポインティングデバイス等を操作し、作業領域１１ｂに表示された中の所定の２つのマークをクリックすることなどによって当該２つのマークを選択する（ＳＴ９）。この選択する２つのマークは、直接データの送受を行う２つの要素（部品及びまたはファンクションブロック）であり、入力及びまたは出力が複数存在する場合には、その番号（番地）も特定する。
【００４１】
この選択を受けたならば、ＭＰＵ１３ｃは選択された２つの要素の入出力を結線する。つまり、図１０に示すように、２つの要素を線Ｌで結ぶ（当該線Ｌを表示する）。この２点間を線Ｌで結ぶ処理は、ＣＡＤシステム等で用いられる技術を適用することができる。すなわち、その線ＬをＣＡＤの結線ラインとして表示することができる。そして、ＣＡＤの結線ラインとして表示することで機器間の接続がビジュアルに把握できる。
【００４２】
次いで、この表示された線Ｌを選択する（ＳＴ１１）。すると、その線（ライン）についての通信パラメータの入力画面が表示されるので（図１１参照）、ユーザーは入力部１２を用いて必要なパラメータを入力する（ＳＴ１２）。ＭＰＵ１３ｃにとっては、このステップ１１，１２に基づく処理は、指示された線により結ばれている２つの要素を認識し、データがどこからどこへ流れるのかを特定する。
【００４３】
この特定は、例えば部品データベース１３ｄの各要素をアクセスし、対応する情報から各端子のデータ方向などを入手することにより簡単に行える。そして、コネクション番号と、データの送信元−送信先のデータを作成し、該当箇所に表示する（図１２参照）。ここで、コネクション番号は、重複しなければ任意の基準で決定することができ、例えば、ステップ１１の結線の選択された順番で昇順させながら決定することができる。
【００４４】
そして、キーボード（テンキー）等の入力部１２を用いてデータサイズ並びに送信間隔を入力するとともに、通信方法を「サイクリック」か「イベント」を選択する。この入力並びに上記した自動設定したデータをあわせて図１２のようにその結果を表示する。これにより、ユーザーは内容を確認できる。さらに、本形態では、その線自体に、上記の通信パラメータを関連付けて登録する。そして、これら作成したデータは、メモリ１３ｅに格納される。係る結線並びに通信パラメータ入力処理を繰り返し実行することにより、ネットワークを構築するための全ての要素についてデータ入力する（ＳＴ１３）。
【００４５】
そして、上記したように線ＬをＣＡＤの結線ラインとして表示することで機器間の接続がビジュアルに把握でき、しかも、ＣＡＤ上での結線ラインにラインプロパティを付加できる構造にすることで、上記通信パラメータをラインプロパティの情報として登録することができる。すると、結線ラインをクリックするだけで、各コネクションにおけるネットワーク設定値の読み込みや変更も簡単に管理できる。
【００４６】
なお、この結線処理（ＳＴ９，ＳＴ１０）並びに通信パラメータ設定処理（ＳＴ１１，ＳＴ１２）についても、必ずしも結線とそのパラメータ設定を連続して行う必要はなく、例えば結線を先にまとめて行い、その後パラメータ設定を行うようにしてもよく、また各処理を適宜ランダムに実行していってもよい。さらには、上記した部品やファンクションブロックの配置を含めて適宜の順番で実施してもよい。
【００４７】
そして、全ての結線と通信パラメータの入力が完了したならば、ステップ１４に進み、実行（システム構築用データ生成）命令を受けると、それまで作成した部品・ファンクションブロックの結線状況並びに通信パラメータ情報を読み出し、そこからコネクション情報・ファンクションブロック割り付け情報を生成する（ＳＴ１５）。
【００４８】
ここでコネクション情報とは、どの部品及びまたはファンクションブロック間のデータ通信を行うに際し、送信元と受信先並びに送信データのデータサイズを関連付けたテーブル（コネクションＮｏで管理する）である。一例を示すと図１３に示すようになる。そしてこの情報は、実際には通信パラメータに基づいて設定できる。
【００４９】
また、ファンクションブロックは、実際にはネットワークに接続されている演算実行ブロック（ＰＬＣ等）により実現されるので、ファンクションブロック情報は、その割り付けを行う。つまり、ファンクションブロックとのコネクションは、実際にはＰＬＣのメモリとのコネクションとして構築される。よって、例えば図１３に示す例では、括弧書きで記載しているように、ファンクションブロックの＃１は、実際にはＰＬＣ１の＃１に割り付けられることを意味する。つまり、係る括弧書きの部分がファンクションブロック割り付け情報であり、これは、あらかじめファンクションブロックとＰＬＣを対応付けしておくことにより生成できる。
【００５０】
そして、このようにして各情報が生成できたならば、各機器に対してダウンロードする（ＳＴ１６）。すなわち、図２に示すように、ツール装置１０は、ネットワーク５を介して各機器とデータ通信ができるようになっている。そこで、ステップ１５で生成した情報のうち、ダウンロード先の機器が送信元か受信先のいずれかに該当するものを抽出してコネクション情報テーブルを作成し、それをネットワークを介してダウンロードさせる。このとき、ファンクションブロックは、ファンクションブロック割り付け情報にしたがい実際の機器（ＰＬＣ等）に置き換えた情報を登録することになる。
【００５１】
これにより、各機器は、実際にデータを送受信するためのコネクション情報を受け取り、データ通信可能となり、ネットワークシステムが構築、つまり、ネットワークプログラミングが実行される。なお、係るプログラミング実行後は、ツール装置１０はネットワーク５から取り外してもよいし、そのまま残して監視・管理用装置やメンテナンス・ネットワーク再構築のための上位ホストとして使用するようにしてもよい。
【００５２】
また、ネットワークを構成する機器は、それぞれがコネクション情報を持つことにより、データの送受信をするに際しそのコネクション情報を参照することにより、送信するデータを必要とする相手機器に対し、そのデータのみを直接送信することができる。つまり、従来は必ずＰＬＣ等のコントローラを経由しなければ伝送できなかったスレーブ間通信も可能となる。また、ＰＬＣ等にデータを送信する場合に、従来はその機器が保有する全てのデータを一括して送信するようにしたが、受信先のＰＬＣにとって必要なデータのみを選択し送信することもできる。
【００５３】
上記したツール装置１０を操作することにより、ネットワークを構成する各機器間の通信を行える状態に設定される。そして、本発明が対象とする図１に示したような作業員の進入をセンサで検知して設備機器を停止するような安全ネットワークを構築する場合、例えば図１４に示すように、ネットワーク５に安全入力機器６（図１の受光器２ｂに相当）と、安全出力機器７（図１の危険区域１内の機械設備を駆動する装置に相当）をネットワーク５に接続し、安全入力機器６の検出出力をそのネットワーク５を介して安全出力機器７に直接伝達するようなシステム構成が考えられる。
【００５４】
係るシステム構成についてツール装置１０を用いて作成すると、図６に示すフローチャートのステップ８までの処理を実行することにより、作業領域１１ｂには、図１５に示すように安全入力機器６であるセンサと安全出力機器７であるモータに対応する２つの部品等が任意の場所に表示される。
【００５５】
そして、図７に示すフローチャートのステップ９を実行し、結線処理（ＳＴ１０）をすると、作業領域１１ｂには、図１６に示すように２つの部品等が線Ｌで結ばれた状態が表示される。また、この結線処理に伴い、コネクション番号と、データの送信元−送信先のデータが作成される。この状態でステップ１０以降の処理を順次実行することにより、通信方法や送信間隔などの通信情報（通信条件）が設定される。
【００５６】
なお、上記したコネクション情報や、実際の部品等の配置・結線・通信パラメータ等の接続情報は、所定の記憶手段（メモリ１３ｅ等）に記憶保持させる。そして、係る記憶させた情報は、その後読み出し、各種条件を変更することにより、システム変更が容易に行える。
【００５７】
ここで、本発明に係るツール装置１０の一実施の形態について説明すると、上記のようにして結線処理並びに各種情報の設定を行ったネットワークシステムに関する情報を記憶手段から読み出し、安全ネットワークを構成するための条件の設定や、設定されたシステムが安全であるか否かの判断などを行うようになっている。
【００５８】
具体的には、図１７に示すフローチャートに従って処理する。すなわち、入力部１２を介してＭＰＵ１３ｃに編集モードの指示があると（ＳＴ２１）、上記各手段に記憶保持させた接続情報を読み出し（ＳＴ２２）、それに基づいて表示部１１に現在の接続情報を視覚（ビジュアル）的に表示する。つまり、各要素のマークを所定位置に表示するとともに、各マークを結ぶ線を表示する（ＳＴ２３）。
【００５９】
次いで、編集したい対象、例えば機器を交換等したい場合には、対応する機器を選択し、また、通信パラメータを変更したい場合には、線を選択する（ＳＴ２４）。これに基づきプロパティ、つまり通信パラメータ等を表示し、その表示によりデータの入力可能モードとなる（ＳＴ２５）。一例としては、表示部１１の作業領域１１ｂに図１８のように表示される。この表示される内容は、ステップ１２による通信パラメータの入力処理の実行後（例えば図１２参照）と同様である。この例では、前提として既に通信パラメータなどのデータを入力しているため、図１８に示すように通信方法や送信間隔なども記憶手段に格納された設定済み情報が読み出されて表示される。また、画面上に表示されないが、このとき、少なくとも対象となっている機器の内部処理時間情報（部品データベース１３ｄに格納されている）を読み出しておく。
【００６０】
ユーザは、入力部１２を操作し、必要に応じてデータの再入力をする（ＳＴ２６）。次いで、入力部１２からの入力を待ち、安全距離をユーザが指定するか否かを判断する（ＳＴ２７）。具体的には、表示画面上に例えば「安全距離入力」，「条件計算・判定」などの入力スイッチ領域を設けておき、「安全距離入力」が選択されると、安全距離の入力が指定されたと判断し、安全距離入力画面を表示し、入力部１２からの入力を待つ。ここで入力する安全距離は、ユーザが実際の現場において取ろうとしている安全入力機器での検出位置と、危険領域までの距離である。
【００６１】
そして、安全距離が入力されたならば（ＳＴ２８）、ステップ２９に進み、処理時間合計や必要安全距離などを算出し、その演算結果を表示する（ＳＴ３０）。また、ステップ２７の分岐判断で「条件計算・判定」が選択されると、安全距離は未入力のままステップ２９に飛び、所定の演算処理が実行される。
【００６２】
なお、このステップ２９における演算処理であるが、安全距離と送信間隔の両方が与えられた場合には、その条件で安全ネットワークとしての要件を満たすか否かの判断を行う。また、何れか一方が未入力の場合には、安全ネットワークとしての要件を満たすために必要な条件を求める。
【００６３】
そして、安全ネットワークとしての要求を満足するものが得られたか否かを判断する（ＳＴ３１）。この判断は、ユーザからの入力を受けて行う。また、ステップ２８の演算処理の際に要件を満たすか否かの判断までを行う場合には、その判断に基づいて自動的に行うようにしても良い。
【００６４】
そして、要求を満足しない場合には、ステップ２４に戻り、条件を再入力する対象を選択し、上記した手順に従って再度各種の条件の再入力を行い、再評価を受ける。
【００６５】
なお、安全距離の入力であるが、上記した例では、ステップ２７の分岐判断の後、安全距離を指定する場合には別途安全距離入力画面を表示するようにしたが、例えば、ステップ２５のプロパティの表示の際に、例えば図１９に示すように、安全距離を入力する領域も一緒に表示し、この安全距離に具体的なデータを入れることなく所定のボタン（演算開始等）が選択された場合には、安全距離未入力と判断することもできる。
【００６６】
そして、要求を満足すると判断した場合には、修正済みの部品・ファンクションブロックの結線状況並びに通信パラメータ情報を読み出し、そこからコネクション情報・ファンクションブロック割り付け情報を生成し、その後、各機器に対してダウンロードして処理を終了する（ＳＴ３２）。なお、この図１７に示すフローチャートを実行した結果、安全距離のみが設定・変更され、送信間隔や結線状況などが変更されない場合には、ダウンロード処理を省略しても良い。
【００６７】
なおこのダウンロードするに際し、変更があった機器がわかっている場合には、コネクション情報（接続情報）から上記変更のあった機器の影響を受ける機器のみに対してデータ更新をするようにしてもよいし、一括して全ての機器のデータ更新をするようにしてももちろんよい。
【００６８】
ここで、本発明の要部となるステップ２９における演算処理をさらに説明する。すなわち、例えば図１４に示すようなネットワーク構成の場合、接続情報を読み出すことにより、入力パラメータとして図２０（ａ）に示す条件が取得でき、その入力パラメータ中の接続対象がＡ，Ｂであるので、部品データベース１３ｄをアクセスして、部品Ａ，Ｂについての内部処理時間（図２０（ｂ）参照）を取得する。この例では、安全距離の入力はないものとする。また、初期条件として、作業員の歩行速度が設定されているものとする。この初期条件は、予め別途入力するもので、以下の例では、歩行速度は１ｍ／ｓｅｃとする。もちろんこの値は適宜変更可能である。
【００６９】
すると、このネットワークシステムの場合、安全入力機器６（Ａ）から安全出力機器７（Ｂ）に直接検出信号が送られるので、通信回数はＡからＢの１回であり、それにかかる通信時間は送信間隔要求の欄から２００ｍｓｅｃとなる。
【００７０】
そして、係る通信時間とＡ，Ｂの内部処理時間を加算することにより、処理時間合計を求める。つまり、２００＋３００＋５００＝１０００となり、このネットワークシステムでは、異常発生時にかかる処理時間合計が１０００ｍｓｅｃとなる。そして、歩行速度が１ｍ／ｓｅｃであるので、必要安全距離は処理時間合計×歩行速度から１ｍとなる。従って、安全距離は１ｍ以上となる。
【００７１】
このようにして、処理時間合計や安全距離を求めることができ、その結果を図２０（ｃ）のような表形式で出力表示する。これにより、ユーザは、先に設定した通信条件における安全距離が１ｍ以上であることが分かるので、係る安全距離を実際に取ることができるか否かを判断し、取ることができる場合にはステップ３１における判断は要件満足となり、処理を終了する。
【００７２】
なお、実際の現場で１ｍの距離を確保できない場合には、条件の再入力を行い、再度演算実行する。このとき、再入力する条件としては、送信間隔を短くするようにしても良いし、逆に実際に採れる距離を安全距離として入力するとともに、送信間隔を未入力とし、安全ネットワークの要件を満たす送信間隔を求めさせることもできる。そして、送信間隔を変更した場合には、その変更を実際のネットワークに反映させる必要があるので、ステップ３３の実行処理を行い、変更された条件をダウンロードすることになる。
【００７３】
図２１は、送信間隔と安全距離の両方を入力し、設置条件の適否を判断する例である。この例では、安全距離として２ｍを入力している。その他の条件は、図２０に示したものと同様である。すると、ステップ２９の演算処理を実行すると、通信時間とＡ，Ｂのそれぞれの内部処理時間（読み出して取得）に基づいて演算処理することにより処理時間合計（１０００ｍｓｅｃ）並びに必要安全距離（１ｍ以上）が求められる。これは、上記した図２０の場合と同様である。
【００７４】
そして、安全距離が入力されている場合には、求めた必要安全距離と入力された安全距離とを比較し、要件を満たしているか否かを判断する。つまり、安全距離の方が長ければ「ＯＫ」となり、安全距離の方が短ければ「ＮＧ」となる。本例では、必要安全距離が１ｍ以上で入力された安全距離が２ｍであるので、要件を満足している（ＯＫ）と判断される。そして、この場合のステップ３０における表示例は、図２１（ｃ）のようになる。
【００７５】
図２２も、送信間隔と安全距離の両方を入力し、設置条件の適否を判断する例である。この例では、安全距離として０．５ｍを入力している。その他の条件は、図２０に示したものと同様である。すると、ステップ２９の演算処理を実行すると、通信時間とＡ，Ｂのそれぞれの内部処理時間（読み出して取得）に基づいて演算処理することにより処理時間合計（１０００ｍｓｅｃ）並びに必要安全距離（１ｍ以上）が求められる。そして、入力された安全距離は０．５ｍであるので、算出された必要安全距離未満となり、判定結果は「ＮＧ」となる。そして、この場合のステップ３０における表示例は、図２２（ｃ）のようになる。このように「ＮＧ」と判断された場合、例えばユーザは、「実際の現場において安全距離を長くできないか」や「送信間隔を短くできないか」などを考え、条件の再入力のもと設置条件がＯＫになるまで繰り返す。また、ＮＧが続く場合には、図２０のように、送信間隔と安全距離の一方のみを入力して要件を満たす数値を求めるようにしても良い。
【００７６】
また、ネットワーク構成としては図１４に示す直接接続するもの（安全機器のみでの分散制御）に限ることはなく、図２３に示すような、安全ＰＬＣでの集中制御を取ることもできる。このネットワーク構成は、安全入力機器６（Ａ）の検出信号を安全ＰＬＣ８（Ｃ）を経由して安全出力機器７（Ｂ）に伝えるようにしている。
【００７７】
係る場合、編集モードで読み出される入力パラメータとしては、図２４に示すようにＡからＣへ接続されるコネクション（Ｎｏ．２）と、ＣからＢへ接続されるコネクション（Ｎｏ．３）の２つあり（図２４（ａ）参照）、部品データベース１３ｄから読み出される機器情報としては、それらＡ，Ｂ，Ｃの３つの機器についての内部処理時間となる（図２４（ｂ）参照）。そして、それら入力パラメータと機器情報に基づいて行われるステップ２９の演算処理としては、通信時間は２回の各送信間隔を加算して４００ｍｓｅｃが得られるとともに、その通信時間に３つの内部処理時間を加算することにより、処理時間合計として２２００ｍｓｅｃが求められる。そして、歩行速度は１ｍ／ｓｅｃであるので、未入力の安全距離は、２．２ｍ以上と算出される。そして、その算出結果が、図２４（ｃ）のような表形式で表示される。
【００７８】
また、図２３に示すネットワーク構成においても、入力された安全距離と送信間隔に基づいて、設置条件を満足するか否かの判断を行うこともできる。すなわち、図２５に示すように、安全距離として２ｍが入力されたとする。なお、その他の入力パラメータは図２４と同様である（図２５（ａ）参照）。もちろん、３つの内部処理時間も同様である（図２５（ｂ）参照）。
【００７９】
係る条件に従ってステップ２９の演算処理を実行すると、図２５（ｃ）に示すように、必要安全距離は２．２ｍ以上と求められるので、安全距離２ｍより長いため、判定結果はＮＧとなる。
【００８０】
図２６は、さらに別のネットワーク構成を示している。この例では、分散混在型制御であり、安全入力機器６と安全出力機器７のペアが複数（Ａ，ＢとＣ，Ｄ）存在している。
【００８１】
係るネットワーク構成においては、基本的には図１４に示す分散制御と同様の処理により安全ネットワークを構築するための条件設定ができる。つまり、図２７（ａ）に示すように、入力パラメータは、それぞれのペアについて読み出され、機器ＡからＤについての内部処理時間も部品データベース１３ｄから読み出される（図２７（ｂ）参照）。図２７では、送信間隔を与え、それから安全距離を求めるものである。つまり入力パラメータ１と機器情報Ａ，Ｂに基づいて演算処理すると、図２７（ｃ）に示すように処理時間合計が１０００ｍｓｅｃで安全距離が１ｍ以上と求められる。また、入力パラメータ２と機器情報Ｃ，Ｄに基づいて演算処理すると、図２７（ｄ）に示すように処理時間合計が１４００ｍｓｅｃで安全距離が１．４ｍ以上と求められる。
【００８２】
また、図２８に示すように、安全距離を与え、最適な通信時間を算出することもできる。なお、安全要求を満たす通信時間は、計算上は短いものから長いものまで各種のものが求められる。しかし、ネットワークにおいては上限や下限が決められているとともに、その範囲内でも離散的に設定されることが多い。
【００８３】
従って、算出し、表示する通信時間は、端数が出た場合にはそれよりも速い通信時間のうち演算結果に最も近い時間を設定する。また、範囲外になった場合には、判定結果がＮＧとなる。
【００８４】
なお、上記した例では、いずれも送信間隔は等しくしているが、適宜変更しても良い。一例としては、図２７に示す例において、Ａ−Ｂ間は安全距離が１ｍであるので送信時間も２００ｍｓｅｃのままでも実際に設置が可能であるが、Ｃ−Ｄ間では実際には１．２ｍしか安全距離を取ることができない場合には、Ｃ−Ｄ間の送信間隔を速くすることにより対処できる。さらに、一方の送信間隔を速くすることにより、ネットワーク全体の良好なトラフィックが得られない場合には、逆に安全距離に余裕のある機器における実際の距離を長くする（例えば入力機器の安全距離を２ｍに設定する）ことにより、送信間隔が長くても安全要求を満たすように調整することができる。
【００８５】
なお、上記した例では、一旦コネクション情報や、実際の部品等の配置・結線・通信パラメータ等の接続情報を作成して記憶保持し、その記憶した情報を読み出して安全ネットワークの要件を満たす各種条件を設定するようにしたが、本発明はこれに限ることはなく、例えば図７におけるステップ１２の通信パラメータの入力の際に、図１７のステップ２６以降の安全条件の設定のための情報入力を行い、接続情報の設定とともに、安全ネットワークの要件の設定も行うようにしても良い。この場合には、それら各設定は、ダウンロードとともに消去するようにしてもよい。
【００８６】
上記した実施の形態は、ツール装置に組み込んだ状態を前提として説明したが、上記した各処理（例えば各図に示したフローチャートを実行するための処理）をコンピュータに実行させるためのプログラムとし、係るプログラムは所定の記録媒体に記録して提供するようにしてもよい。
【００８７】
すなわち、図２９，図３０に示すように、記録媒体としては、フレキシブルディスク（ＦＤ）２０やＣＤ−ＲＯＭ２１などがあり、係る記録媒体２０，２１に格納されたプログラムは、ＦＤドライブ２２やＣＤ−ＲＯＭドライブ２３を介してコンピュータ２４に接続された（内蔵された）ＨＤユニット２５にインストールされ、これにより、コンピュータ２４は、上記した実施の形態で説明したツール装置を構成することになる。
【００８８】
具体的には、実施の形態における図７，図８，図１７に示すフローチャートを実施するためのプログラムが、ＨＤユニット２５にインストールされ、例えば、使用の都度ＨＤユニット２５から内部メモリ２６に転送され、そこにおいて各種処理を高速に行うことができる。また、部品データベース１３ｄは、ＨＤユニット２５などにより実現される。
【００８９】
さらに、コンピュータに組み込んだ状態では、キーボード２７やマウス２８が、入力部１２を構成することになり、また、表示部１１としてのディスプレイに各種データを表示するようになる。
【００９０】
また、上記のように各種プログラムを記録媒体に格納するのではなく、プログラム製品そのものでもよい。つまり、各フローチャートを実行する処理部１３は、本実施の形態ではアプリケーションプログラム（プログラム製品）で構成され、安全条件設定支援装置たるツール装置１０であるコンピュータにインストールされ、そのＣＰＵにおいて、稼働する。
【００９１】
なお、上記した実施の形態では、部品のマークや結線を行うことにより視覚的にわかり易いようにしているが、本発明はこれに限ることは無く、テキスト情報に基づいて求めることもできる。また、本発明では少なくとも安全条件が求められればよいので、上記した実施の形態のように、各安全機器の使用メモリ割り付けは必ずしも設定する必要はない。
【００９２】
【発明の効果】
以上のように、本発明では、実際のシステムに使用される各機器の仕様等を理解していなくても、機器情報記憶手段から必要な内部処理時間を抽出することができるため、安全ネットワークを構築するための各種パラメータを設定することができる。
【図面の簡単な説明】
【図１】安全ネットワークシステム（安全距離）を説明する図である。
【図２】本発明の好適な一実施の形態を示す図である。
【図３】本発明に係るツール装置の一実施の形態を示す図である。
【図４】部品データベースの一例を示す図である。
【図５】表示部の表示画面の一例を示す図である。
【図６】主としてＭＰＵの機能を説明するフローチャート（その１）である。
【図７】主としてＭＰＵの機能を説明するフローチャート（その２）である。
【図８】作用を説明する図である。
【図９】作用を説明する図である。
【図１０】作用を説明する図である。
【図１１】作用を説明する図である。
【図１２】作用を説明する図である。
【図１３】作用を説明する図である。
【図１４】安全ネットワークの一形態を示す図である。
【図１５】図１４に示すネットワーク構成に基づく作用を説明する図である。
【図１６】図１４に示すネットワーク構成に基づく作用を説明する図である。
【図１７】本発明の一実施の形態の要部を説明するフローチャートである。
【図１８】作用を説明する図である。
【図１９】作用を説明する図である。
【図２０】図１４に示すネットワークに基づく演算処理の具体例を示す図である。
【図２１】図１４に示すネットワークに基づく演算処理の具体例を示す図である。
【図２２】図１４に示すネットワークに基づく演算処理の具体例を示す図である。
【図２３】安全ネットワークの一形態を示す図である。
【図２４】図２３に示すネットワークに基づく演算処理の具体例を示す図である。
【図２５】図２３に示すネットワークに基づく演算処理の具体例を示す図である。
【図２６】安全ネットワークの一形態を示す図である。
【図２７】図２６に示すネットワークに基づく演算処理の具体例を示す図である。
【図２８】図２６に示すネットワークに基づく演算処理の具体例を示す図である。
【図２９】本発明に係る記録媒体を実施するシステム構成を示す図である。
【図３０】本発明に係る記録媒体を実施するシステム構成を示す図である。
【符号の説明】
５  ネットワーク
６  安全入力機器
７  安全出力機器
８  安全ＰＬＣ
１０  ツール装置
１１  表示部
１２  入力部
１３  処理部
１３ａ  表示部インタフェース
１３ｂ  入力部インタフェース
１３ｃ  ＭＰＵ
１３ｄ  部品データベース
１３ｅ  メモリ
１４  通信インタフェース部
２０  ＦＤ（記録媒体）
２１  ＣＤ−ＲＯＭ（記録媒体）
２２  ＦＤドライブ
２３  ＣＤ−ＲＯＭドライブ
２４  コンピュータ
２５  ＨＤユニット
２６  内部メモリ
２７  キーボード
２８  マウス
【図１】
0004062492.tif 000002
【図２】
0004062492.tif 000003
【図３】
0004062492.tif 000004
【図４】
0004062492.tif 000005
【図５】
0004062492.tif 000006
【図６】
0004062492.tif 000007
【図７】
0004062492.tif 000008
【図８】
0004062492.tif 000009
【図９】
0004062492.tif 000010
【図１０】
0004062492.tif 000011
【図１１】
0004062492.tif 000012
【図１２】
0004062492.tif 000013
【図１３】
0004062492.tif 000014
【図１４】
0004062492.tif 000015
【図１５】
0004062492.tif 000016
【図１６】
0004062492.tif 000017
【図１７】
0004062492.tif 000018
【図１８】
0004062492.tif 000019
【図１９】
0004062492.tif 000020
【図２０】
0004062492.tif 000021
【図２１】
0004062492.tif 000022
【図２２】
0004062492.tif 000023
【図２３】
0004062492.tif 000024
【図２４】
0004062492.tif 000025
【図２５】
0004062492.tif 000026
【図２６】
0004062492.tif 000027
【図２７】
0004062492.tif 000028
【図２８】
0004062492.tif 000029
【図２９】
0004062492.tif 000030
【図３０】
0004062492.tif 000031