(57)【要約】【課題】  ＰＬＣが持つＰＬＣデータを効率よく収集し、必要な情報を選択して記録するとともに、外部へ通知等の所定の処理を実行する必要があるか否かを自分で判断することができるデータ収集ユニットを提供すること【解決手段】  ＩＯデータ等のＰＬＣデータをＰＬＣのサイクルタイムごと収集するサンプリング部１５ｂと、そのサンプリング部で収集したＰＬＣデータが、予め設定された収集条件を満たすか否かを判断し、収集条件を満たすＰＬＣデータに基づく情報を記録部１５ｄに格納するとともに、ＰＬＣデータに対し、所定の演算処理を実行し、得られた演算結果が、予め定めたトラップ条件を満たすか否かを判断する条件判断・演算処理部１５ｃと、トラップ条件を満たした場合に、ツールや表示器に通知等の予め指定したアクションを実行するトラップアクション部１５ｅを備えて構成した。【選択図】        図７
2005128721.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルコントローラのバスに接続され、ＰＬＣデータをサンプリングするデータ収集ユニットであって、
前記ＰＬＣデータをプログラマブルコントローラのサイクルタイムごとに収集するサンプリング手段と、
前記サンプリング手段で収集したＰＬＣデータが予め設定された収集条件を満たすか否かを判断し、収集条件を満たすＰＬＣデータのうち、予め設定された記憶対象情報のみを選択収集する収集条件判断手段と、
前記サンプリング手段で収集したＰＬＣデータのうち、前記収集条件判断手段で選択収集された選択収集データのみを記憶する記憶手段と、
前記収集したＰＬＣデータに基づいて所定の演算処理を実行する演算処理部と、
前記演算処理部により求められた演算結果が、予め定めたトラップ条件を満たすか否かを判断するトラップ条件判断手段と、
前記トラップ条件判断手段により前記トラップ条件を満たす場合に予め定めたアクション処理を実行するアクション手段とを備えたことを特徴とするデータ収集ユニット。
【請求項２】
プログラマブルコントローラのバスに接続され、ＰＬＣデータをサンプリングするデータ収集ユニットであって、
前記ＰＬＣデータをプログラマブルコントローラのサイクルタイムごとに収集するサンプリング手段と、
前記サンプリング手段で収集したＰＬＣデータが予め設定された収集条件を満たすか否かを判断し、収集条件を満たすＰＬＣデータを取り込んだことを認識し、その認識に基づいて演算して記憶対象情報を求める収集条件判断・演算処理手段と、
前記収集条件判断・演算処理手段で求めた記憶対象情報のみを記憶する記憶手段と、
前記収集条件判断・演算処理手段で求めた記憶対象情報が、予め定めたトラップ条件を満たすか否かを判断し、トラップ条件を満たす場合に予め定めたアクション処理を実行するトラップアクション手段とを備えたことを特徴とするデータ収集ユニット。
【請求項３】
プログラマブルコントローラのバスに接続され、ＰＬＣデータをサンプリングするデータ収集ユニットであって、
前記ＰＬＣデータをプログラマブルコントローラのサイクルタイムごとに収集するサンプリング手段と、
前記サンプリング手段で収集したＰＬＣデータが予め設定された収集条件を満たすか否かを判断し、収集条件を満たせば予め設定されたＰＬＣデータを収集する収集条件判断手段と、
前記収集条件判断手段で収集条件を満たすＰＬＣデータのうち予め設定された記憶対象情報のみを選択収集するとともに、前記収集条件判断手段で収集条件を満たすＰＬＣデータを取り込んだことを認識し、その認識に基づいて演算して記憶対象情報を求める演算処理手段と、
前記演算処理手段で選択収集された選択収集データおよび前記演算処理手段で演算して求められた記憶対象情報のみを記憶する記憶手段と、
前記演算処理部により選択された選択収集した記憶対象情報または前記演算処理部により求められた演算結果が、予め定めたトラップ条件を満たすか否かを判断するトラップ条件判断手段と、
そのトラップ条件判断手段により前記トラップ条件を満たす場合に予め定めたアクション処理を実行するアクション手段とを備えたことを特徴とするデータ収集ユニット。
【請求項４】
前記トラップ条件を満たす場合に予め定めたアクション処理を、前記記憶手段に記憶した情報を外部へ転送する処理とし、
外部へ転送するインタフェースを備えたことを特徴とする請求項１から３のいずれか１項に記載のデータ収集ユニット。
【請求項５】
前記収集条件判断手段に、収集を開始する開始条件と収集を終了する終了条件とを個別に設定し、前記開始条件を満たした場合にサイクルタイムでのデータ収集を開始し、前記終了条件を満たすまでその収集を継続することを特徴とする請求項１から３のいずれか１項に記載のデータ収集ユニット。
【請求項６】
前記収集条件判断手段に、収集を開始する開始条件と収集を終了する終了条件とその期間中の条件とを設定し、前記期間中の条件を満たしている場合でかつ前記開始条件を満たした場合にサイクルタイムでの収集を開始し、前記期間中の条件を満たしている場合終了条件を満たすまでその収集を継続し、前記期間中の条件を満たさなくなるか前記終了条件を満たす場合に収集を止めることを特徴とする請求項５に記載のデータ収集ユニット。
【請求項７】
請求項１から６のいずれか１項に記載のデータ収集ユニットと、モニタ装置とがネットワークを介して接続され、
前記記憶手段に格納された情報と、前記データ収集ユニットのアクション手段が出力する情報とが、前記モニタ装置に伝達され、
前記モニタ装置は、前記伝達された情報に基づいて所定の表示を行うことを特徴とする表示システム。
【請求項８】
請求項１から６のいずれか１項に記載のデータ収集ユニットと通信する機能と、
その通信する機能を用いて収集条件，トラップ条件，トラップ条件を満たした場合の処理を前記データ収集ニットに設定する機能を備えたツール。
【請求項９】
前記データ収集ユニットに対し、サンプリングの開始，停止を指示する機能と、前記データ収集ユニットから受けたデータをタイムチャート形式で表示する機能を備えたことを特徴とする請求項８に記載のツール。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データ収集ユニットおよび表示システムならびにツールに関するものである。
【背景技術】
【０００２】
ＦＡ（ファクトリーオートメーション）で用いられるＰＬＣ（プログラマブルコントローラ）は、スイッチやセンサなどの入力機器のＯＮ／ＯＦＦ情報を入力し、ラダー言語などで書かれたシーケンスプログラム（ユーザプログラム）に沿って論理演算を実行する。そして、ＰＬＣは、得られた演算結果にしたがって、リレー，バルブ，アクチュエータなどの出力機器に対し、ＯＮ／ＯＦＦ情報の信号を出力することで制御が実行される。
【０００３】
またＰＬＣシステムは、ユーザプログラムを実行するＣＰＵユニット，入／出力機器が接続されてＯＮ／ＯＦＦ信号を扱うＩ／Ｏユニット，外部パソコンや外部コントローラと接続してネットワーク通信する通信ユニット，アナログ信号を制御したり温度や位置決めの制御などを行う高機能ユニットなど、各ユニットをつなぎ合わせて成り立っている。そして各ユニットを内部バスで接続して、ＣＰＵユニットを中心にして各ユニットとバス通信にてデータをやりとりするようになっている。また、ＰＬＣシステムには、各ユニットに電力を供給する電源ユニットが取り付けてある。この電源ユニットからの電源ラインは、バスラインと同様にすべてのユニットに対して接続されている。ＰＬＣシステムは、この電源ユニットにより、外部機器の電源系統とは独立する独自の系統で電源供給をしている。
【０００４】
そして、ＣＰＵユニットの処理としては、まず初期処理をしたあと、Ｉ／Ｏユニットや高機能ユニットとの間で入／出力情報（Ｉ／Ｏデータ）を交換するＩ／Ｏリフレッシュ処理，ユーザプログラムに沿って実行することで入力データを論理演算するプログラム実行処理，主に通信ユニットによりネットワークを通じて外部とデータ交換をしたり、外部からのメッセージ要求処理などを行う周辺処理といった各処理をサイクリックに繰り返し実行する。なお、一般に各処理が行われる１サイクルに所要する時間は、サイクルタイムと言われる。
【０００５】
ＣＰＵユニットはＩＯメモリを持っており、そのＩ／ＯメモリにＩ／Ｏユニットや高機能ユニットからの入力データを格納するとともに、ユーザプログラムを実行した結果を出力データとして格納するようになっている。ＣＰＵユニットは、出力データをＩＯユニットや高機能ユニットに送り、それらユニットは受け取った出力データに基づいて出力機器を動作させる。
【０００６】
またモニタ機器として、ＣＰＵユニットのＩ／Ｏメモリに対して通信ユニットを経由し、またはＣＰＵユニットのシリアル通信ポートを経由して外部からアクセス通信し、ＩＯメモリに格納されたデータを読んだり、所定のデータをＩＯメモリに書き込むものがある。この種の機器としては、例えば各種モニタツールやプログラマブル表示器がある。さらに、モニタツールやプログラマブル表示器の中には、所定のタイミングで周期的にＩＯメモリに格納されたデータを収集し、その収集データを順次格納して記憶保持することにより、ＰＬＣの履歴（ＩＯデータがどのように変化したかの履歴）を確認できるようにしたものもある。この履歴を確認することにより、ＰＬＣの動作状態の履歴や被制御機器への制御履歴を知ることができる。上記した従来のシステムは、特許文献１，２などに示されている。
【０００７】
【特許文献１】特開平５−３２４０１５号公報
【特許文献２】特開２００１−８４０１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記した従来のシステムでは、モニタツールなどの外部機器がＰＬＣに対してＲＳ２３２Ｃ等のシリアル通信またはネットワークを介して接続されていたため、データの転送速度が遅かった。よって外部機器でＰＬＣのデータの一部を収集しようとする場合には、通信速度が遅いために処理時間が非常に長くなるといった問題点があった。すなわち、外部とのデータ通信は、ＰＬＣのサイクリック処理における周辺処理で行われているが、データ収集のための処理時間が長くなると、その分、全体のサイクルタイムが長くなり、本来の被制御機器（入出力機器）に対する制御の応答速度が遅くなるといった問題点があった。さらには、仮にＰＬＣのＩＯメモリの更新タイミングに対応したすべてのデータ（つまりＰＬＣの１サイクルタイム毎のデータ変化）をもれなく収集しようとする場合は、ＰＬＣのサイクルタイムに比べデータ収集に必要な時間が桁違いに長く、実質的にその実現は不可能であった。また、ネットワークでは通信速度に限界があるため、モニタツールなどの機器でいくら早くＰＬＣのデータを収集しようとしても、処理が遅く収集データの実時間保証が無いため、ＰＬＣの正確な状態をリアルタイムで把握することができなかった。なお、実時間保証が無いとは、ＰＬＣのサイクリック処理の連続的な毎周期のＩ／Ｏデータを確実に収集できないという意味を含む。
【０００９】
また、外部機器でデータ収集するのではなく、ＰＬＣ自身でデータ収集をするものとして、ＰＬＣのデータを内蔵メモリカードなどに保存する機能を搭載したＰＬＣ用ユニットがあるが、データを保存する処理を実行するためのＰＬＣの制御プログラム（ラダ―プログラム）を作成する必要があり、係る制御プログラムの作成に伴う時間と労力がかかるばかりでなく、そのデータ保存のためのプログラムを実行のために制御性能に影響を及ぼすおそれがあるので好ましくない。
【００１０】
一方、公知例ではないが、仮にＰＬＣのサイクルタイム毎にＰＬＣデータをすべて収集記録し、その収集データをモニタツールに転送しようと試みると、膨大なデータを扱うことになる。具体的なデータ量を示すと、例えばＰＬＣのＩＯが２００点あってサイクルタイムが５０ｍｓｅｃとすると、１秒間で４０００個のデータ量，1時間で１４４０万個のデータ量となる。そして、データ収集記録は、日／週／月などの単位で行われることから、取り扱うデータ量は膨大となり、その膨大なデータ量のＰＬＣデータを収集記録するため大量の記録容量が必要となり、コストアップ要因となる。また、ＰＬＣ設備，装置の設計者や保全者が、収集記録した膨大なＰＬＣデータから本当に見たいデータ部分や、動作状態を探しだすのに手間と時間を必要とする。さらに異常な状態が起こった場合にその原因等を探しだすのにも手間と時間を要するため、制御対象の設備装置の復旧が遅れることがある。
【００１１】
この発明は、ＰＬＣが持つＰＬＣデータを効率よく収集し、必要な情報を選択し、その選択した情報をもれなく記録するとともに、外部へ通知等の所定の処理を実行する必要があるか否かを自分で判断することができ、情報を記憶保持するメモリ容量が削減されるとともに、ツール等の外部の装置の負荷を軽減することができるデータ収集ユニットおよび表示システムならびにツールを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係るデータ収集ユニットは、プログラマブルコントローラのバス（ＰＬＣバスに対応）に接続され、ＰＬＣデータ（図１３の設定内容が対応）をサンプリングするデータ収集ユニット（１５）であって、ＰＬＣデータをプログラマブルコントローラのサイクルタイムごとに収集するサンプリング手段（１５ｂ）と、サンプリング手段で収集したＰＬＣデータが予め設定された収集条件（図１５の設定条件の内容が対応）を満たすか否かを判断し、収集条件を満たすＰＬＣデータのうち予め設定された記憶対象情報のみ（図１６の設定内容が対応）を選択収集する収集条件判断手段（条件判定部１５ｃが対応）と、サンプリング手段で収集したＰＬＣデータのうち、収集条件判断手段で選択収集された選択収集データのみを記憶する記憶手段（１５ｄ）と、収集条件判断手段で選択収集された選択収集データが予め定めたトラップ条件（図２０のトラップ条件の内容が対応）を満たすか否かを判断し、トラップ条件を満たす場合に予め定めた処理（図２０のトラップアクションの内容が対応）を実行するトラップアクション手段（１５ｅ）と、を備えた構成した。
【００１３】
また別の本発明に係るデータ収集ユニットは、プログラマブルコントローラのバスに接続され、ＰＬＣデータをサンプリングするデータ収集ユニットであって、ＰＬＣデータをプログラマブルコントローラのサイクルタイムごとに収集するサンプリング手段と、サンプリング手段で収集したＰＬＣデータが予め設定された収集条件を満たすか否かを判断し、収集条件を満たすＰＬＣデータ（図１５で設定した条件を満たすデータ）を取り込んだことを認識し、その認識に基づいて演算（時間の計時処理や回数の計数処理を含む）して記憶対象情報（演算の結果情報が対応）を求める収集条件判断・演算処理手段（１５ｃ）と、収集条件判断・演算処理手段で求めた記憶対象情報（図１７，図１８の設定内容が対応）のみを記憶する記憶手段と、収集条件判断・演算処理手段で求めた記憶対象情報が、予め定めたトラップ条件（図２０のトラップ条件の内容が対応）を満たすか否かを判断し、トラップ条件を満たす場合に予め定めたアクション処理（図２０のトラップアクションの内容が対応）を実行するトラップアクション手段（１５ｅ）と、を備えた構成した。
【００１４】
さらに別の本発明に係るデータ収集ユニットは、プログラマブルコントローラのバスに接続され、ＰＬＣデータをサンプリングするデータ収集ユニットであって、ＰＬＣデータをプログラマブルコントローラのサイクルタイムごとに収集するサンプリング手段（１５ｂ）と、サンプリング手段で収集したＰＬＣデータが予め設定された収集条件を満たすか否かを判断し、収集条件を満たせば予め設定されたＰＬＣデータを収集する収集条件判断手段（１５ｃ）と、収集条件判断手段で収集条件（図１５の条件）を満たすＰＬＣデータのうち予め設定（図１６の実データに関する設定）された記憶対象情報のみを選択収集するとともに、収集条件判断手段で収集条件を満たすＰＬＣデータを取り込んだことを認識し、その認識に基づいて演算（図１７または図１８の設定）して記憶対象情報を求める演算処理手段（１５ｃ：図１９の演算ブロックを含む）と、演算処理手段で選択収集された選択収集データおよび演算処理手段で演算して求められた記憶対象情報のみを記憶する記憶手段（１５ｄ）と、演算処理部により選択された選択収集した記憶対象情報または前記演算処理部により求められた演算結果が、予め定めたトラップ条件（図２０のトラップ条件の内容が対応）を満たすか否かを判断するトラップ条件判断手段と、そのトラップ条件判断手段によりトラップ条件を満たす場合に予め定めたアクション処理（図２０のトラップアクションの内容が対応）を実行するアクション手段とを備えた構成した。
【００１５】
ＰＬＣデータとは、ＰＬＣ（ＣＰＵユニット）のメモリに格納されたＩＯデータ（接点のＯＮ／ＯＦＦ情報）やアナログ情報、その他のデータである。また、記憶手段に格納する情報は、サンプリングしたＰＬＣデータそのものでもよいし、演算した結果のようにＰＬＣデータに関連する情報でもよい。さらに、上記した収集条件判断手段と、演算処理部と、トラップ条件判断手段は、実施の形態では条件判断・演算処理部１５ｃにより一体に形成されているが、本発明はこれに限ることはなく、適宜分割して構成することはもちろんよい。
【００１６】
本発明に係る表示システムでは、上記した各構成のデータ収集ユニットと、モニタ装置とがネットワークを介して接続され、前記記憶手段に格納された情報と、前記データ収集ユニットのアクション手段が出力する情報とが、前記モニタ装置に伝達され、前記モニタ装置は、前記伝達された情報に基づいて所定の表示を行うようにした。モニタ装置は、実施の形態では、ツール装置２０や表示器３５に対応する。
【００１７】
また本発明に係るツールは、上記した各構成のデータ収集ユニットと通信する機能と、その通信する機能を用いて収集条件，トラップ条件，トラップ条件を満たした場合の処理を前記データ収集ニットに設定する機能を備えて構成した。
【００１８】
さらにツールは、前記データ収集ユニットに対し、サンプリングの開始，停止を指示する機能と、前記データ収集ユニットから受けたデータをタイムチャート形式で表示する機能とを備えて構成した。
【００１９】
本発明によれば、あらかじめ動作把握をしたい収集条件を設定し、それにしたがってＰＬＣデータを収集記録するので、必要最低限の記録容量コストで済む。また、演算処理部に置ける演算内容を規定することにより、あらかじめ見たいところを設定し、その部分だけを集約し、ＰＬＣデータを演算してすぐに理解できるデータとなっているので、該当データ部分や動作状態を瞬時に把握することができる。あらかじめ動作異常時、または異常の兆候を示すトラップ条件とトラップが発生したときの処理（アクション）を設定しておくことにより、トラップ発生時に瞬時にツールへデータ配信やＰＬＣ本体や表示器等へ通知することで、設備、装置の自動復旧、早期復旧や予防保全ができるようになる。
【発明の効果】
【００２０】
本発明では、ＰＬＣが持つＰＬＣデータを効率よく収集し、必要な情報を選択して記録するとともに、外部へ通知等の所定の処理を実行する必要があるか否かを自分で判断することができ、情報を記憶保持するメモリ容量が削減されるとともに、ツール等の外部の装置の負荷を軽減することができる。
【発明を実施するための最良の形態】
【００２１】
図１は、本発明の好適な一実施の形態を示している。図１に示すように、生産ラインの制御を司るＰＬＣ１０と、ツール装置２０とがイーサネット（登録商標）等の情報系のネットワーク３０を介して接続されている。
【００２２】
ＰＬＣ１０は、複数のユニットから構成されている。図示の例では、ユーザプログラムを演算実行したり、Ｉ／Ｏリフレッシュや周辺処理をサイクリックに実行するＣＰＵユニット１１と、他のノードと通信を行う通信ユニット１２と、制御系ネットワーク３１を介して接続されるリモートターミナル３２を制御するリモートＩ／Ｏ１３と、データ収集するデータ収集ユニット１５を備えている。その他のユニットとしては、ＰＬＣを構成する各ユニットに対して電源供給をする電源ユニットや、マスタスレーブ通信を行うためのマスタユニットや、入出力機器を接続する出力ユニット，入力ユニット等があり、必要に応じて連結するユニットを増減する。
【００２３】
各ユニットは、それぞれボックスから構成され、側面に形成されたコネクタを介して電気的，機械的に連結する。このコネクタには、システムバスが接続されており、これにより各ユニットはバス接続され、ユニット間で直接および又はＣＰＵユニットを介して間接的にデータの送受が可能となる。
【００２４】
ＣＰＵユニット１１が、ユーザプログラムの演算実行，Ｉ／Ｏリフレッシュ，周辺処理などをサイクリックに実行し、ＩＯメモリ中のデータ（入出力機器のＯＮ／ＯＦＦデータや、測定器で検出されたアナログデータ等）が逐次更新される。さらに、ＣＰＵユニット１１には、シリアル回線３４を介して表示器３５が接続されている。この表示器３５は、プログラマブル表示器（ＰＴ）であり、ＣＰＵユニット１１のＩＯメモリ等にアクセスし、そのＩＯメモリに格納されたデータの読み書きを行なったりすることかできる。また、故障発生時などに、ＣＰＵユニット１１からの情報に従い、所定の警報を表示することができる。
【００２５】
データ収集ユニット１５は、ＣＰＵユニット１１のＩＯメモリに格納されたデータをＰＬＣバス経由で読み出して定期的（ＰＬＣのサイクルタイム毎）に収支し、収集したデータを記憶保持したり、他の装置へ送信したりする機能を有する。そして、本実施の形態では、データを収集する期間を、ＣＰＵユニット１１におけるサイクルタイムに合わせている。これにより、サイクルタイム毎にデータを収集（サンプリング）し所定の処理を行なうことになる。
【００２６】
この処理ができるように、データ収集ユニット１５はＰＬＣのサイクルタイム毎にすべてのＩＯデータを収集（サンプリング）できるようにしている。その詳細は、データ収集ユニット１５はＰＬＣバスドライバ（ＰＬＣインターフェース１５ａ）を備えていて、そのＰＬＣバスに接続される。そしてデータ収集ユニット１５は、バス・サイクリック通信によりＣＰＵユニット１１のＩＯメモリに格納されたデータをすべて取得できるようになっている。バス・サイクリック通信とは、データ収集ユニット１５の中で独自に制御されるもので、データ収集ユニット１５がＰＬＣバスを介してＣＰＵユニット１１との間で行うデータ通信処理であり、ＰＬＣのＣＰＵユニット内の処理としてはサイクリック処理のうち周辺処理中に行われる。データ収集ユニット１５はこのバス・サイクリック通信を利用して自らＰＬＣバスを介してＣＰＵユニット１１のＩＯメモリにデータアクセス要求を出し、ＣＰＵユニットが周辺処理の中でその要求に反応してＩＯメモリのデータを含んだレスポンスをデータ収集ユニット１５へ返す。そして、データ収集ユニット１５は、サイクルタイムの１周期のなかでリアルタイム処理とタイムシェア処理とを行う。リアルタイム処理は、データ収集ユニット１５がＣＰＵユニットのすべてのＩＯデータを収集する処理で、タイムシェア処理は収集データのすべてを記録メモリに書きこむことができる処理である。ＣＰＵユニット１１の方でサイクリック処理の周辺処理期間に入ると、ＣＰＵユニット１１がデータ収集ユニット１５からデータ要求に基づいて、ＩＯメモリの所定エリアのＩＯデータをレスポンスとしてデータ収集ユニット１５へ返信する。データ収集ユニット１５は、ＣＰＵユニット１１から得たすべてのＩＯデータをバッファ（図示せず）に一時的な記録情報として蓄える。このような処理を繰り返すことでデータ収集ユニット１５は、サイクルタイム毎にすべてのＩＯデータを収集（サンプリング）できる。なお、これはデータ収集ユニット１５が前提としてもつ機能であって、実際には全てのＩＯデータを対象にいったんサンプリングし、そのサンプリング結果と予め定めた収集条件とを比較し、必要な情報だけ（一部のＩＯデータ）を記録するのである。
【００２７】
さらに、データ収集ユニット１５に予め収集条件とトラップ条件およびトラップ条件を満たした場合のアクションをあらかじめ登録した。そして、収集条件を満たせばサンプリングデータから関連するデータを抽出し記録する。また、トラップ条件を満たした場合に指定のアクションを実行する。指定のアクションとしては、ツール装置２０に通知したり、表示器３５に所定のメッセージを表示したりすることなどがある。
【００２８】
ここで、収集条件とは、収集したデータ或いはそれに基づいて生成されたデータを記録するか否かを弁別するための条件である。また、トラップ条件とは、外部に対して所定の動作（アクション）を起こすか否か弁別するための条件である。後述するように、この条件並びに実行するトラップアクションは、ツール装置２０から設定される。
【００２９】
例えば図２に示すように、エアシリンダ４０のシリンダロッド４０ａが、図示する待機状態から、バルブ４１を開いてエアー圧が加わりシリンダロッド４０ａが動作端まで前進移動する制御を考えると、各部の動作タイミングは図３に示すようになる。すなわち、起動信号からＯＮになると、それを受けてバルブが開き、その状態を保持する。そして、シリンダロッド４０ａが前進移動し、その先端が動作端に至ると、その動作端付近に設置したセンサが、シリンダロッド４０ａの先端を検知するため、動作端信号（センサ出力）がＯＮになる。そして、エアー圧が同じ圧力Ａで、エアシリンダの状態が同じとすると、起動信号がＯＮになってから、動作端信号がＯＮになるまでの時間Ｔは同じ値をとるはずである。
【００３０】
そして、ＰＬＣ１０（ＣＰＵユニット１１）側では、起動信号のＯＮ／ＯＦＦと動作端信号のＯＮ／ＯＦＦのデータ（ＩＯデータ）がＩＯメモリに格納されている。そこで、起動信号と動作端信号のＯＮ／ＯＦＦのデータを収集し、起動信号がＯＮになってから、動作端信号がＯＮになるまでの時間Ｔを監視することにより、エアシリンダ４０の状態を判断することができる。つまり、算出した時間Ｔが、正常状態のときよりも長くなると、エアシリンダ４０内部での引っかかり，オイル切れ，エアー漏れなどの問題を生じているおそれがあると推定できる。
【００３１】
従って、例えばエアー圧を検出する圧力センサを設け、その圧力センサで検出したエアー圧（アナログデータ）が、所望の値Ａのときの起動信号と動作端信号のＯＮ／ＯＦＦデータを収集することになる。また、収集した２つのデータに基づき時間Ｔをデータ収集ユニット１５に内蔵されているタイマ機能によって演算して求め、求めた時間Ｔを記憶する。そして、その求めた時間Ｔが所定の値以上になった場合に、外部へ通知する。
【００３２】
このようにすると、エアシリンダ４０の状態を監視するためには、エアー圧がＡのときの起動信号がＯＮになってから、実際に動作が完了する動作端信号がＯＮになるまでの時間Ｔが重要であり、起動信号や動作端信号のＯＮ／ＯＦＦの履歴情報は特に記録しなくても良い。また、ツール装置２０や表示器３５にとっても、少なくとも時間Ｔが許容範囲外になりエアシリンダ４０が異常になったことの通知を受ければ足りる。
【００３３】
そこで、収集条件として、エアー圧がＡのときの起動信号，動作端信号を終始有するとし、トラップ条件として時間Ｔが所定の値以上になることとし、アクションとしてツール装置２０および又は表示器３５に通知することにする。これにより、通常は、サイクルタイム間隔でデータ収集ユニット１５がＩＯメモリの所定のデータ（ＯＮ／ＯＦＦのＩＯデータ，アナログデータ）をサンプリングし、必要なデータのみ（ここでは時間Ｔのみ）を記録保持する。このように、ユニット内で処理が完了するとともに、必要十分なデータだけを記憶することにより、メモリ容量の削減を図ることができる。そして、トラップ条件に合致した場合に外部に通知等の所定のアクションを行うので、ツール装置２０等の負荷が軽減される。
【００３４】
また、別の適用例としては図４に示すように、コンプレッサ４２の出力を複数系統に分岐し、各系統の先端にバルブ４１を介してエアシリンダ４０を接続する。この状態で、各バルブ４１の上流側直近にアナログ圧力センサを設け、コンプレッサ４２の稼動中におけるバルブ４１の全点閉の時の圧力計測値を蓄積する。つまり、収集条件としては、コンプレッサ４２が稼動中で、かつ全てのバルブ４１が閉じていることとし、その場合の各バルブ４１の付近に設けた各圧力センサで計測した圧力値（アナログデータ）のみを記録し、その他の情報は記録しないようにする。そして、トラップ条件として、圧力値が一定値以下とし、アクションとしてとしてツール装置２０および又は表示器３５に通知することにする。そして、計測された圧力値が低い場合にはバルブひびによる漏れなどがあると推定できる。もちろん、トラップ条件は、必ずしも異常と判断されるものに限ることはなく、アクションとしても、異常通知ではなく記録したデータを送信するなど各種のものを適用できる。つまり、２つの適用例では、関係する信号の変化情報はたくさんあるものの、通常時に実際に記録として残すものは時間Ｔおよび圧力値のみとなる。この記録する２種類の情報は、実際に外部センサから取り込んだ情報（圧力値などのセンシング信号，ＯＮ／ＯＦＦの２値信号も含むし、アナログ信号も含む）と、外部から取り込んだ信号を認識し、その認識に基づいてデータ収集ユニット１５自身が演算した情報（時間Ｔなどの演算結果情報）の２種類を含む。
【００３５】
一例としては、図５に示すように、記録した動作ごとのタイムチャートを重ね合わせた状態で表示する。これにより、変化点やズレを容易に発見することができる。また、図６に示すように、同一接点のデータを、横軸を合わせた状態で上下にずらして表示するようにすることもできる。このようにすると、何回目の時点でずれを生じているかが容易に理解できる。例えば図５に示す表示形態で、ずれを生じている接点等を検出し、その接点について図６に示す表示形態にすることにより、どの時点で異常を発生しているかを容易かつ短時間で特定することができる。
【００３６】
このようにある装置の一部分で問題が発生した時に、動作の振る舞い情報を収集・蓄積して、結果をタイムチャート図や分布図等から原因となる事を絞り込んでいき、絞り込んだ結果、更に原因を突き止めるための、情報収集・蓄積を繰り返すことで、異常時の原因を特定できる。
【００３７】
そして、係る処理・機能を実行するためのデータ収集ユニット１５の具体的な構成としては、図７に示すようになっている。まず、システムバスと接続し、ＰＬＣ１０を構成するユニット間でのデータの送受を行なうためのＰＬＣインタフェース１５ａと、ＣＰＵユニット１１のＩＯメモリから所定のデータを収集するサンプリング部１５ｂと、そのサンプリング部１５ｂが収集したデータに対し、所定の条件に合致するか否かを判断し、必要に応じて所定の演算処理をする条件判断・演算処理部１５ｃと、収集条件に合致したデータを格納する記録部１５ｄと、トラップ条件を具備した際に、外部に対して所定のアクションを実行するトラップアクション部１５ｄと、ネットワーク３０に接続するＰＣインタフェース１５ｆを備えている。トラップアクション部１５ｄは、ＰＬＣインタフェース１５ａ並びにＰＣインタフェース１５ｆの両方に接続されており、ツール装置２０に対して送信する場合（例えば図１の点線で示す経路）には、ＰＣインタフェース１５ｆを介して所定の情報を出力し、ツール装置２０に対して送信する場合には、ＰＣインタフェース１５ｆを介して所定の情報を出力し、表示器３５に対して送信する場合には、ＰＬＣインタフェース１５ａを介して所定の情報を出力し、ＣＰＵユニット１１経由で表示器３５に所定の情報を送り、表示するようにしている。
【００３８】
条件判断・演算処理部１５ｃでは、収集条件やトラップ条件に合致するか否かの判断や、収集したデータに基づく演算処理（例えば、上記した例における時間Ｔを算出したり、圧力の総計を算出する処理）を行う。
【００３９】
ツール装置２０は、パソコンから構成され、そのパソコン内に所望の機能を有するアプリケーションプログラムをインストールすることにより実現される。そして、ツール装置２０は、データ収集ユニット１５に対して行う各種の条件設定をする機能（ユニットツールソフト）と、実際の稼動中にデータ収集ユニット１５から出力された情報を取得し、モニタリングする機能を有する。さらに、パソコンであるため、ＰＬＣ１０のＣＰＵユニット１１にダウンロードするユーザプログラムを作成等するラダープログラミングツールも実装されている。
【００４０】
以下、条件等の設定から、実際のデータ収集等の動作の具体的な処理を説明しつつ、ツール装置２０並びにデータ収集ユニット１５の機能を説明する。なお以下に想定しているプロセスは、半田付け装置に関連するプロセス工程であり、具体的な中身は、電子部品が置かれた基板をベルトコンベアで半田付け装置へ搬入し、半田付け装置の半田ごてによって基板の５箇所に半田付けをし、その後に半田付け装置から加工完了基板を搬出するようなプロセスである。
【００４１】
まず、データ収集ユニット１５に対して行う設定は、図８に示すフローチャートを実行する。ず、ユニットツールソフトを起動するとともに、ラダープログラミングツールを起動する（ＳＴ１，ＳＴ２）。ここで、ラダープログラミングツールは、データ収集ユニット１５がデータを収集する対象となるＣＰＵユニット１１用のツールである。
【００４２】
次いで、ラダープログラミングツール上のＩＯ変数テーブルからサンプリングしたいＩＯ，データを選択する（ＳＴ３）。すなわち、図９に示すように、ＣＰＵユニット１１のＩＯメモリに割り付けられたＩＯ，データのリスト（論理名，アドレス等）を表示する。そして、ユーザは、表形式でリストアップされた中から、例えばポインティングデバイスを操作して必要なものを指定し、コピー＆ペースト処理におけるコピーを行ない、クリップボードに記憶させる。  次に、上記選択したデータをユニットツールソフト上の収集IO、データエリヤへ貼り付ける（ＳＴ４）。つまり、コピー＆ペースト機能を用い、ステップ３を実行してコピーしたデータをユニットツールソフト側でペースト（貼り付け）をしてデータを取り込む（図１０参照）。この図１０を見るとわかるように、半田付け装置およびその周辺の装置を制御するＰＬＣには、例示されているように制御に必要なそれぞれのデータ（名称、またはコメントの列）がＰＬＣ内蔵メモリの所定のアドレス（アドレス／値の列）にそれぞれ格納されている。
【００４３】
そして、貼り付けられたデータに基づき、収集条件，演算内容，記録内容を設定する（ＳＴ５）。設定する記録内容としては、ＩＯ，データの値や、発生回数や、時間等がある。具体的には、図１１に示すような設定画面を表示し、左側のウインドウに表示されたツリーリストを適宜選択し、対応する条件を右側のウインドウに表示された条件入力画面に従って必要な条件を設定する。
【００４４】
そして、本発明では、データ収集をＣＰＵユニット１１のサイクルタイムに合わせるため、図１１に示した設定画面の左側ウインドウ中の「サイクルタイム収集」を選択し、右側ウインドウ中に図１２に示すサイクルタイム収集に基づいて収集したデータを記録するファイルの条件を入力する。なお、記憶方式としてリングファイル形式にする場合には、「リングファイル連番指定」にチェックを入れ、連続する個数を設定する。
【００４５】
次いで、サイクルタイム収集のエリア設定を選択すると、図１３に示すように、右側のウインドウには、サイクルタイムでの収集対象となるデータのリストが表示される。初期状態では、ステップ４を実行して貼り付けたデータが表示される。そして、この図１３に示す状態において、ユーザは、右側のウインドウに対して直接操作することにより、手動によりデータの削除、変更，新たな収集対象のデータの追加を行なうことかできる。
【００４６】
なお、図中左側のウインドウにリスト表示された「定周期」は、サイクルタイムと関係なく、データ収集ユニット１５側で決めた所定期間で収集を行なう場合の設定の際に利用するものである。
【００４７】
また、条件設定は、左側のウインドウ中の「マネージメント設定」を選択（ポインティングデバイスを用いてクリック）することにより行なう。この選択により、図１４に示すような入力画面に切り替わる。初期画面では、右側のウインドウには表示されず、左側のウインドウに設定可能な条件がリスト表示される。そして、左側のウインドウにリスト表示された条件の内、「サイクルタイム収集」の「条件収集設定」を選択することにより、図１５に示すように、右側のウインドウに各データ（名称）についての収集開始と収集終了条件の設定画面が表示されるので、ユーザは、該当する欄に条件を入力する。なお、図１５は、条件を入力した後を示しており、図示の例では、名称が「次の位置決め開始トリガ」の開始条件については、ＭＩＮの欄が「１」（接点がＯＮを意味する）が入力され、演算子が「＝」となっているので、名称が「次の位置決め開始トリガ」に対応するアドレス１１０．０４に格納されたデータ（ＶＡＬＵＥ）が１になると収集を開始することを意味する。また、終了条件では、ＭＩＮの欄が「０」（接点がＯＦＦを意味する）で演算子が「＝」となっているので、名称が「次の位置決め開始トリガ」に対応するアドレス１１０．０４に格納されたデータ（ＶＡＬＵＥ）が０になると収集を終了することを意味する。これは半田付け装置で半田付けをする位置に基板が位置決めされたことを開始点とし、次の基板が位置決めされたことを終了点とし、その間に半田付け予定回数（５回）が正常に行われたかどうかをチェックすることを意図している。なお、図示の例では、対象となるデータが接点のＯＮ／ＯＦＦであったため、１／０となるが、数値（アナログ）データの場合には、具体的な数値が設定されるとともに、開始／終了となる条件に幅がある場合には、演算子として、「＜」，「＞」等を用い、ＭＩＮとＭＡＸの欄に具体的な数値を入力することになる。さらに、図示の例では、開始・終了について、１つのデータについて表示された例が示されているが、複数表示されることもある。
【００４８】
なお、収集すべき対象の開始点から終了点までの期間中の条件などを設定することを追加してもよい。例えば、半田ごての電源がＯＮになっていることや、半田ごての温度が半田を融解する適切な温度になっていることを条件としてもよい。
【００４９】
さらに、図１６から図１８の入力画面を適宜使用し、図１５で設定した開始条件から終了条件までの間に実際に収集するデータの種類を設定する。図１６は、毎サイクルタイムごとに収集すべき実データを設定する画面である。ここでの実データとはＰＬＣの外部から取り込んだ信号であり、図１３のデータリストと同じ内容とすることが多い。
【００５０】
図１７は、収集データの対象が時間である場合の設定画面であり、この例では半田付け装置の半田ごてが稼動している時間を求める（実際にはデータ収集ユニット１５のタイマ機能によって計時される）ための設定をする。半田付け装置は、基板上の電磁部品を半田付けする際に、半田付けする部分に半田ごてを例えば１．０秒押し当てる動作をすることとなっており、半田ごてが正しい時間だけ動作しているかどうかをチェックさせている。そこで、半田ごてが動作している時間を収集するための設定を、この図１７のようにする。すなわち、前述の図１５のところで説明省略したが、この半田ごて時間を収集するための図１５における「半田ごて動作時間」の設定は、条件収集開始の設定として名称「半田ごて」でＭＩＮが「１」、条件収集終了の設定として名称「半田ごて」でＭＩＮが「０」となる。
【００５１】
図１８は、図１５で設定した開始条件から終了条件までの間に回数に関する収集データの設定をする画面である。前述のように、半田付け装置においては、基板１枚あたりに５箇所の半田付けを行うので、１枚の基板を搬入してから搬出するまでの期間に半田ごての動作が正しく５回行われたかどうかをチェックさせている。そこで、半田ごての動作回数を収集するための設定をこの図１８のようにする。前述の図１５のところで説明省略したが、この半田ごて回数を収集するための図１５における「半田ごて回数」の収集開始／終了条件の設定は、例えば、条件収集開始の設定として名称「基板搬入」でＭＩＮが「１」、条件収集終了の設定として名称「基板搬出」でＭＩＮが「１」となる。
【００５２】
さらにまた、本実施の形態では、単にデータをサンプリングしてそれを記録するだけでなく、条件判断・演算処理部１５ｃにて所定の演算処理も行なうようになっている。そこて、係る条件判断・演算処理部１５ｃにて行なう演算の設定も行なう。具体的な設定画面の図示は省略するが、上記した各条件の設定画面と同様に、入力データと演算式を設定する画面を表示させ、ユーザからの入力に従い設定することができる。このとき、例えば図１９に示すように、代表的な演算パターン（テンプレート）を用意してファンクションブロック化し、入力データを指定するとともに、演算式はそのまま或いはパラメータの調整により簡単に入力できるようにすることができる。
【００５３】
ここで、図１９（ａ）は、演算処理として正規化や単位換算等のスケーリングを行うための演算テンプレートである。演算テンプレートにおける具体的な演算処理としては、数値演算をしてもよいし、入力と出力の対応関係を格納したルックアップテーブルを用意し、テーブル参照により出力値を求めるようにすることもできる。また、図１９（ｂ）は、複数回分の実データの入力を受け、その平均値や最大値，最小値並びに分散を求めるもので、出力を１または複数個選択することにより、その出力用の演算をするように設定される。さらに、このように予め演算が決められたものに限ることはなく、図１９（ｃ）に示すように、ユーザが内部の演算式を任意に設定することができるメニューも用意するとよい。
【００５４】
上記の処理を対象となる全てのデータに対して行なったならば、トラップ条件並びにアクションの設定を行なう（ＳＴ６）。具体的には、図２０に示すように、左側のウインドウの条件設定リストの中から「トラップ設定」を選択すると、当該部分が反転表示されるとともに右側のウインドウにトラップ条件とトラップアクションの設定画面が表示される。図示の場合は、１つのデータ（搬入コンベア速度）のみ表示されているが、実際には複数表示される。
【００５５】
トラップ条件は、ユーザが任意に定義する制御対象装置の特定の状態にする条件であり、例えば異常状態，異常となる前兆状態，処理の区切りになったときの状態などを含む。これはデータ収集ユニット１５が取り込んだ外部信号に対しても設定できるし、データ収集ユニット１５内で演算した結果に対しても設定できる。図２０に示されるように、トラップ条件では、名称，ＭＩＮとＭＡＸ並びに演算子を適宜入力することにより、トラップに該当する範囲を指定する。また、トラップ範囲は、必ずしも上下限の両方を特定する必要はなく、例えば一定の値以上になると異常と判断するように上限値がないような場合には、ＭＩＮの欄のみに具体的な値を入力するとともに、演算子として「＜」，「≦」を指定することにより設定できる。もちろん、これとは逆に、ＭＡＸのみ指定する場合ももちろんある。
【００５６】
また、トラップアクションとしては、本実施の形態では、外部（同一のＰＬＣを構成する他のユニットも含む）に対して通知するようにしたため、該当する処理にチェックを入れるとともに、具体的な内容を指定する。つまり、表示器３５に通知する場合には、「他ノードへＦＩＮＳ通信」（メッセージ送信する際のコマンドの一種）を選択し、表示器３５に表示する内容を、異常発生を報知する画面に切り替えるためのコマンド（メッセージ命令）を指定する。また、ツール装置２０へ通知（収集／蓄積したデータをファイル化してそのファイルを転送）する場合には、「ＰＣへファイル送信」を選択し、転送するファイルと、送信先のツール装置２０（パソコン）に設定されたＩＰアドレス等を入力する。さらにＣＰＵユニット１１（型番が「ＣＳ１」）のＩＯメモリに書き込む場合には、「メモリー書き込み」を選択するとともに、メモリ名称（アナログかＯＮ／ＯＦＦか等のデータの種類を特定）、アドレスを特定するオフセット（各メモリ名称で特定されるメモリ領域の先頭からのオフセット）と、データサイズと、格納するデータをそれぞれ指定する。このＰＬＣメモリへ書き込みの設定により、データ収集ユニットで検出した異常（または異常の前兆）をＰＬＣのＣＰＵユニットに知らせることができる。具体的な例としては、ＣＰＵユニットの予め決められたメモリエリアに異常フラグを送る（フラグ立てる、つまりフラグビットを０から１に上書きする）ことができる。そしてＣＰＵユニットは、そのフラグの変化を検出し、所定の異常処理を行ったり、被制御対象の制御を停止する処理を行ったりすることがでできる。さらには、データ収集ユニット１５の収集処理を停止する場合には、「収集停止」を選択する。なお、４つのアクションは、任意に選択され、１つでも良いし複数選択しても良い。さらに、この図示の例では、４つのアクションを用意したが、これに限られないのはもちろんである。
【００５７】
図２０で示している「搬入コンベア速度」は、速度センサからの取り込み信号であり、データ収集ユニットが取り込んだ外部信号である。搬入コンベア速の正常値が８ｍ／分以上で１０ｍ／分未満であるならば、搬入コンベア速度が１０以上になると異常と定義し、トラップ条件として名称「搬入コンベア速度」、ＭＩＮを「１０」、演算子を「≦」と設定すればよい。なおここではＭＡＸに「１００」、演算子を「＜」を設定しているが、１０以上の範囲を異常と決めれば、ＭＡＸの設定は省略してもよい。図示していないが、第２行目に名称「搬入コンベア速度」、ＭＩＮを「０」、演算子を「≦」、ＭＡＸに「８」、演算子を「＜」と設定することで、搬入コンベア速度の設定が完了する。図示はしていないが、半田付け装置の半田付けの押し当て動作時間（データ収集ユニット内で演算した結果）を例にとると、正常状態が０．５秒前後（０．９〜１．１秒）と想定すると、前兆状態が０．８以上０．９秒未満、または１．１秒を超えて１．２秒までと決め、異常状態を０．８未満、または１．２秒を超えた場合と決めればよい。また、基板１枚あたりの半田付け回数（データ収集ユニット内でカウント演算した結果）が５回でなかった場合をトラップ条件にし、トラップアクションとして表示器３５とツール装置２０にメッセージを出すならば、トラップ条件で名称「半田付け回数」、ＭＡＸを「５」で演算子を「＞」、さらにＭＩＮを「６」で演算子を「＜」とし、トラップアクションの他ノードへ通信およびＰＣへファイル送信の２箇所を設定すればよい。
【００５８】
上記した処理を実行し、全てのデータに対する設定が終了すると、設定情報をデータ収集ユニット１５へダウンロードする（ＳＴ７）。これにより、初期設定が完了する。なお、データ収集ユニット１５の基本設定の一例は図２３にあるとおりで、データ収集ユニット１５自体の名前（ＳＰＵネーム）や、接続するＣＰＵユニット１１の機種情報（ＣＳ１機種設定）、データ収集ユニット１５のネットワーク３０上のＩＰアドレス、起動設定等を入力するとともに設定を確定する。
【００５９】
次に、係る初期設定が完了したデータ収集ユニット１５を用いて実際にサンプリングを行う場合のツール装置２０とデータ収集ユニット１５の動作について説明する。まず、ツール装置２０は、図２１に示すフローチャートを実施する機能を有する。すなわち、まずユニットツールソフトを起動し、ツール装置２０からデータ収集ユニット１５へサンプリングスタート指示を発する（ＳＴ１２）。また、データ収集を終了させたい所定のタイミングでツール装置２０からデータ収集ユニット１５へサンプリングストップ指示を発する（ＳＴ１３）。これらのスタート，ストップ指示は、例えば図２２に示すような指示画面を開き、「開始」ボタンがクリックされればステップ１２の処理を実行し、「停止」ボタンがクリックされればステップ１３の処理を実行するように構成することで実現できる。
【００６０】
また、この例は、ユーザのマニュアル操作によりサンプリング開始／停止を制御するようにしたが、所定のタイミングで自動的に開始／停止するようにしても良い。すなわち、例えば、図２４に示す設定画面により、開始，終了を設定し、その設定された条件に従って自動的に動作するようにしても良い。なお、画面中「ＳＰＵ」は、データ収集ユニットのことであり、「ＣＳ１」はＣＰＵユニット１１の型番を意味している。
【００６１】
そして、上記のようにして、マニュアル操作或いは自動的にデータ収集ユニット１５がサンプリングを実行すると、所定の条件に合致するデータが記録され、必要に応じてツール装置２０に送られてくる。そこで、データ収集ユニット１５から、記録内容が送られてきたならば、所定の形式でそれを表示する（ＳＴ１４）。なお、係る表示については、後述する。
【００６２】
一方、データ収集ユニット１５は、図２４に示すフローチャートを実施する機能を有する。すなわち、まずサンプリングスタート指示を待つ（ＳＴ２０）。この指示としては、図２１のステップ１１の実行に伴なうツール装置２０からの指示の場合と、予め設定した条件に達した場合に自動的に開始する場合の両方がある。そして、スタート指示を受け取る、指定されたＩＯ，データのサンプリングをスタートさせる（ＳＴ２１）。係る処理は、サンプリング部１５ｂが行う。このデータサンプリングは、図１０，図１２や図１３で設定した設定条件に従って行われる。
【００６３】
次いで、サンプリングにより取得したデータが収集条件と一致するか否かを判断する（ＳＴ２２）。この処理は、データ収集条件は図１５で設定した収集開始の条件を収集終了の条件に従って、条件判断部１５ｃで行われる。そして、一致する場合には、図１６，図１７，図１８で設定した指定内容のみを記録部１５ｄに記録する（ＳＴ２３）。このとき前述したようにリングファイル形式に対応させてもよい。
【００６４】
次いで、演算処理部１５ｃにて所定の演算処理を行う（ＳＴ２４）。その演算の内容は例えば、前述のように収集開示条件を満たしてから収集終了条件を満たすまでの期間を計時することや、同じく期間中に収集した実データの変化回数（半田付け回数など）を回数することなどがある。他にも図１９に示すように演算ブロックを予め設けて実データに基づいて所定の出力をするようにできる。もちろん、この演算結果も記憶部１５ｄに格納される。
【００６５】
図１９（ａ）は、演算処理部１５ｃに実データをスケーリングする演算ブロック機能をもたせた構成である。スケーリングとは、アナログ出力タイプのセンサが出力する電流信号または電圧信号を、本来の物理量に換算することである。例えば０℃から１００℃を計るアナログ温度センサがあったとして、その温度センサは４ｍＡ〜１００ｍＡの電流出力信号を出すものだとする。スケーリングとは、出力される電流信号４ｍＡを０℃に、１００ｍＡを１００℃に換算し、さらにその中間の電流値を出力電流４ｍＡ〜１００ｍＡについての電流／温度変化特性を考慮して温度を算出することである。つまり、図１９（ａ）のスケーリングブロックは、上述の演算をするための式が予め格納されていて、取り込んだ実データ（アナログ電流値）をその演算式に代入して演算結果（温度）を求める機能を備えている。図１９（ｂ）の演算ブロックは、収集開始条件から収集終了条件の期間に取り込んだ実データ（アナログ）の平均値を演算し、最大値や最小値を求め、分散値を演算する機能を備えている。図では４種類の演算をする構成となっているが、全て揃っていなくて４種類のうち１種類、またはそれ以上であってもよい。図１９（ｃ）の演算ブロックには予め定められた演算式（平均，分散以外）が格納されていて、３つの入力１，２，３の値を演算式に代入し、その演算結果を出力するものである。例えば、入力１から入力２を減算し入力３で割り算する演算とすることができる。予め格納する演算式を変更すれば入力１に係数ｘをかけたものと入力２に係数ｙをかけたものとを加算し、入力３を引き算する演算などどのような演算をさせることができる。
【００６６】
そして図２０で設定したトラップ条件と一致するか否かを判断する（ＳＴ２５）。これらの処理は、条件判断・演算処理部１５ｃが行う。なお、このフローチャートでは、サンプリングしたデータを記録するようにしているが、演算処理した結果を記録するようにしてもよいし、両方とも記録しても良い。つまり、データ収集ユニット１５が外部から取り込んだ信号（コンベア速度等）を記録することもできるし、データ収集ユニット１５内部で演算した信号（半田ごて時間、半田回数等）を記録することもできる。
【００６７】
また、トラップ条件と一致する場合で図２０のトラップアクション設定項目が設定されている場合は、トラックプアクション部１５ｅが、設定されたアクションを実行する（ＳＴ２６）。上記したステップ２６までの処理を、ツール装置２０からサンプリングストップ指示がくるまで行う（ＳＴ２７）。
【００６８】
ツール装置２０からサンプリングストップ指示を受けると、データ収集ユニット１５のサンプリングを停止し（ＳＴ２８）、記憶内容配信指示の有無を判断する（ＳＴ２９）。指示がある場合には記録部１５ｄに格納したデータをツール装置２０に送る（ＳＴ３０）。なお、係る配信指示は、サンプリングスタート，ストップ指示と同様に、ツール装置２０からマニュアル操作に基づいて送られる場合もあるし、予め配信指示の条件（例えば、時刻，記録容量，ストップする都度など）を設定しておき、その条件に至ると配信するようにしても良い。この指示は、ツール装置２０または表示器３５から受け取る指示、あるいはデータ収集ユニット１５の内部で生成する自動的な指示トリガ等が相当する（表示器３５でも可）。
【００６９】
次に、上記した記録内容配信に伴いツール装置２０が受け取った記録内容の表示（ＳＴ１４）の具体例を説明する。図２５は、取得した記録内容に基づき、上側の時系列データ表示エリアに各接点のＩＯ（ＯＮ／ＯＦＦ）データのタイムチャートを表示するとともに、その欄外に、現在値を表示し、下側の時系列データ表示エリアに、アナログデータの推移を表示すると共に、欄外に現在のアナログデータを表示する。各データの横軸のタイミングは一致させている。例えば、半田付け装置におけるＩＯデータは、図１３で設定したライン起動スイッチのＯＮ／ＯＦＦ状態や、加工前基板搬入開始の信号、搬入コンベア停止のＯＮ／ＯＦＦ信号等が対応し、アナログデータは、搬入コンベア速度や搬出コンベア速度等が対応する。
【００７０】
そして、係るデータを、1つの周期（１つのワークに対して行う一連の処理）単位で抽出し、開始タイミングを合わせて複数回分を重ねて表示することにより、図２６に示すグラフが出力表示される。これにより、各回でのずれの有無を確認することにより、異常の有無、並びに異常を生じた接点等を容易に検出することができ、故障原因等も容易に推定できる。つまり、ＩＯデータが変化するタイミングがずれていた場合には、立上りの縦線または立下りの縦線が２本になったり、太く見えたりする。
【００７１】
また、図２６を見ても明らかなように、ずれがあってもわずかな場合には見つけにくかったり、そのずれ量がどれくらいかを認識することは困難である。そこで、好ましくは図２７に示すように、各回の接点のＯＮ／ＯＦＦが切り変わる際の経過時刻を表形式で表示することにより、各回の接点動作のずれの有無並びにずれ量を正確に知ることができる。もちろん、この図２７においても上側のＩＯデータと下側のアナログデータの各データの横軸のタイミングは一致させている。
【００７２】
さらにまた、図２８に示すように、任意の接点を選び、その接点のタイムチャートを各回ごとに列を上下にずらして表示させる（横軸の開始からの経過時間は一致させる）ことにより、どの回がずれているかを容易に検出することができる。
【００７３】
以上、半田付け装置を例に挙げて説明したが、図２や図４で説明したエアシリンダ４０やコンプレッサ４２の例に当てはめた場合も説明しておく。まず、図１３における設定の対象としては、バルブの起動信号，バルブの動作信号，動作端信号，エアー圧など、全体の制御にかかわるＩＯデータすべてを含む。
【００７４】
また、図１５の設定にあたっては、データ収集ユニット１５のタイマ機能で時間Ｔを求める場合だと、起動信号が「１」になることで収集を開始し、動作端信号が「１」になることで収集を終了するような設定となり、エアシリンダの１回ごとの動作に区切ったものとなる。そして、収集すべき対象の開始点から終了点までの期間中の条件については、前述したように、時間Ｔを求める際にはエアー圧力値がＡであることを前提条件としていたので、この例では、名称が「エアー圧力値」，データが「Ａ」，演算子が「＝」となる（エアー圧力値に一定の許容幅を設けるなら、データを上限値の「Ａ１」として演算子が「＞」とするとともに、データを下限値の「Ａ２」として演算子を「＜」とすればよい）。
【００７５】
一方、エアシリンダの圧力値を記録する場合だと、コンプレッサの稼動信号が「１」になることで圧力値の収集を開始し、コンプレッサの稼動信号が「０」になることで収集を終了するような設定となる。
【００７６】
図１７の収集データ(時間)の設定においては、名称を「シリンダ動作時間」，ＭＩＮを「Ｔ」，タイプを「計時」等とすればよい。また図２０で設定したトラップ条件と一致するか否かを判断して（ＳＴ２５）、記録部１５ｄに記録する対象には、データ収集ユニット１５が外部から取り込んだ信号としてエアシリンダのエアー圧力値等とし、データ収集ユニット１５内部で演算した信号として時間Ｔ等とすることができる。
【００７７】
図２０のトラップ条件／トラップアクションの設定では、例えば、トラップ条件を時間Ｔが所定の値以上になったこととし、トラップアクションとして「他ノードへ通信」を選択し、表示器にシリンダ動作が遅くなって異常である旨を表示させられるように設定することとなる。他に、トラップ条件をエアー圧ＡがＡ１以下またはＡ２以上となったこととし、トラップアクションに「他ノードへ通信」を選択し、表示器にエアー圧が異常，漏れ発生である旨を表示させるように設定することとなる。
【００７８】
図２１のＳＴ１４で説明したツール装置２０が受け取った記録内容の表示（図２５）においては、表示されるＩＯデータは、起動信号のＯＮ／ＯＦＦ，バルブの駆動ＯＮ／ＯＦＦや動作端信号のＯＮ／ＯＦＦ信号となり、アナログデータは圧力値となる。
【図面の簡単な説明】
【００７９】
【図１】本発明の一実施の形態を示すネットワークシステムの一例を示す図である。
【図２】本発明に係るデータ収集ユニットの好適な一実施の形態の動作原理を説明する図である。
【図３】本発明に係るデータ収集ユニットの好適な一実施の形態の動作原理を説明する図である。
【図４】本発明に係るデータ収集ユニットの好適な一実施の形態の動作原理を説明する図である。
【図５】本発明に係るデータ収集ユニットの好適な一実施の形態の機能を説明する図である。
【図６】本発明に係るデータ収集ユニットの好適な一実施の形態の機能を説明する図である。
【図７】本発明に係るデータ収集ユニットの好適な一実施の形態を示す内部構成図である。
【図８】ツール装置の機能（初期設定・条件設定）を示すフローチャートである。
【図９】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１０】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１１】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１２】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１３】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１４】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１５】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１６】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１７】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１８】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図１９】ツール装置の機能を説明するための図である。
【図２０】ツール装置の機能を説明するための、設定画面の一例を示す図である。
【図２１】ツール装置の機能（サンプリング・モニタリング等）を示すフローチャートである。
【図２２】ツールの機能を説明するための、指示入力画面の一例を示す図である。
【図２３】ツールの機能を説明するための、設定画面の一例を示す図である。
【図２４】データ収集ユニットの機能を示すフローチャートである。
【図２５】ツール装置における配信されたデータの表示形式の一例を示す図である。
【図２６】ツール装置における配信されたデータの表示形式の一例を示す図である。
【図２７】ツール装置における配信されたデータの表示形式の一例を示す図である。
【図２８】ツール装置における配信されたデータの表示形式の一例を示す図である。
【符号の説明】
【００８０】
１０  ＰＬＣ
１１  ＣＰＵユニット
１２  通信ユニット
１３  ターミナルＩＯ
１５  データ収集ユニット
１５ａ  ＰＬＣインタフェース
１５ｂ  サンプリング部
１５ｃ  条件判断・演算処理部
１５ｄ  記録部
１５ｅ  トラップアクション部
１５ｆ  ＰＣインタフェース
２０  ツール装置
３０  情報系ネットワーク
３１  制御系ネットワーク
３２  リモートターミナル
３５  表示器
【図１】
2005128721.tif 000003
【図２】
2005128721.tif 000004
【図３】
2005128721.tif 000005
【図４】
2005128721.tif 000006
【図５】
2005128721.tif 000007
【図６】
2005128721.tif 000008
【図７】
2005128721.tif 000009
【図８】
2005128721.tif 000010
【図１９】
2005128721.tif 000011
【図２１】
2005128721.tif 000012
【図２４】
2005128721.tif 000013
【図９】
2005128721.tif 000014
【図１０】
2005128721.tif 000015
【図１１】
2005128721.tif 000016
【図１２】
2005128721.tif 000017
【図１３】
2005128721.tif 000018
【図１４】
2005128721.tif 000019
【図１５】
2005128721.tif 000020
【図１６】
2005128721.tif 000021
【図１７】
2005128721.tif 000022
【図１８】
2005128721.tif 000023
【図２０】
2005128721.tif 000024
【図２２】
2005128721.tif 000025
【図２３】
2005128721.tif 000026
【図２５】
2005128721.tif 000027
【図２６】
2005128721.tif 000028
【図２７】
2005128721.tif 000029
【図２８】
2005128721.tif 000030