(57)【特許請求の範囲】
【請求項１】
生産管理装置からの指令に応じて、複数の機械を有する製造セルを制御するセル制御装置であって、
前記生産管理装置または前記複数の機械と通信する通信部と、
前記生産管理装置または前記複数の機械との間で実行されることが予定された予定通信を前記通信部に実行させる通信制御部と、
前記通信部の実際の通信量を監視し、第１の前記予定通信の開始時点から、該第１の予定通信の後の第２の前記予定通信の開始時点までの期間内に設定された監視期間に実行された前記実際の通信量と、該監視期間に実行されることが予定された前記予定通信の予定通信量とを互いに比較して、前記実際の通信量が前記予定通信量よりも多いか否かを判定する通信判定部と、を備え、
前記監視期間は、前記第１の予定通信の前記開始時点から前記第２の予定通信の前記開始時点までの前記期間として設定される、セル制御装置。
【請求項２】
前記通信制御部は、前記通信部に、前記第１の予定通信の次に前記第２の予定通信を実行させる、請求項１に記載のセル制御装置。
【請求項３】
前記通信制御部は、前記通信部に、
前記生産管理装置及び前記複数の機械のうちの１つとの間で前記第１の予定通信及び前記第２の予定通信を実行させ、
前記第１の予定通信と前記第２の予定通信との間において、前記生産管理装置及び前記複数の機械のうちの他の１つとの間で第３の前記予定通信を実行させる、請求項１に記載のセル制御装置。
【請求項４】
生産管理装置からの指令に応じて、複数の機械を有する製造セルを制御するセル制御装置であって、
前記生産管理装置または前記複数の機械と通信する通信部と、
前記生産管理装置または前記複数の機械との間で実行されることが予定された予定通信を前記通信部に実行させる通信制御部と、
前記通信部の実際の通信量を監視し、第１の前記予定通信の開始時点から、該第１の予定通信の後の第２の前記予定通信の開始時点までの期間内に設定された監視期間に実行された前記実際の通信量と、該監視期間に実行されることが予定された前記予定通信の予定通信量とを互いに比較して、前記実際の通信量が前記予定通信量よりも多いか否かを判定する通信判定部と、を備え、
前記通信制御部は、前記通信部に、前記第１の予定通信の次に前記第２の予定通信を実行させ、
前記監視期間は、前記第１の予定通信の完了時点から前記第２の予定通信の前記開始時点までの期間として設定され、
前記通信判定部は、前記監視期間に前記実際の通信量が検出されたとき、実時間で前記実際の通信量が前記予定通信量よりも多いと判定する、セル制御装置。
【請求項５】
前記通信判定部によって前記実際の通信量が前記予定通信量よりも多いと判定された場合に、前記通信部による通信を遮断する通信遮断部をさらに備える、請求項１〜４のいずれか１項に記載のセル制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生産管理装置からの指令に応じて製造セルを制御するセル制御装置に関する。
【背景技術】
【０００２】
従来、上位コンピュータである生産管理装置からの指令に応じて、複数の機械からなる製造セルを制御するセル制御装置が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１８６９１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本技術分野において、第３者がセル制御装置に不正にアクセスする不正通信を防ぐための技術が求められている。
【課題を解決するための手段】
【０００５】
生産管理装置からの指令に応じて、複数の機械を有する製造セルを制御するセル制御装置は、生産管理装置または複数の機械と通信する通信部と、通信部による通信を実行する通信制御部と、通信部の実際の通信量を監視し、該実際の通信量と、通信制御部によって実行されることが予定された通信の予定通信量とを互いに比較して、実際の通信量が予定通信量よりも多いか否かを判定する通信判定部とを備える。
【０００６】
通信判定部は、予め定められた期間毎に、実際の通信量と予定通信量とを比較してもよい。通信判定部は、通信制御部が予定された通信を実行しない期間に実際の通信量が検出されたとき、実時間で実際の通信量が予定通信量よりも多いと判定してもよい。
【０００７】
セル制御装置は、通信判定部によって実際の通信量が予定通信量よりも多いと判定された場合に、通信部による通信を遮断する通信遮断部をさらに備えてもよい。
【図面の簡単な説明】
【０００８】
【図１】一実施形態に係るネットワークシステムのブロック図である。
【図２】図１に示すネットワークシステムにおける通信量のタイムチャートであって、（ａ）は、生産管理装置とセル制御装置との間の予定通信量のタイムチャートを示し、（ｂ）は、セル制御装置と製造セルとの間の予定通信量のタイムチャートを示し、（ｃ）および（ｄ）は、セル制御装置と製造セルとの間の予定通信に不正通信が重複された場合の通信量のタイムチャートを示す。
【図３】他の実施例に係る、セル制御装置と製造セルとの間の通信量のタイムチャートを示し、（ａ）は、予定通信量のタイムチャートを示し、（ｂ）は、予定通信に不正通信が重複された場合の通信量のタイムチャートを示す。
【図４】さらに他の実施例に係る、セル制御装置と製造セルとの間の通信量のタイムチャートを示し、（ａ）は、予定通信量のタイムチャートを示し、（ｂ）は、セル制御装置と製造セルとの間の予定通信に不正通信が重複された場合の通信量のタイムチャートを示す。
【図５】さらに他の実施例に係る、セル制御装置と製造セルとの間の通信量のタイムチャートを示し、（ａ）は、予定通信量のタイムチャートを示し、（ｂ）は、セル制御装置と製造セルとの間の予定通信に不正通信が重複された場合の通信量のタイムチャートを示す。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。まず、図１を参照して、本発明の一実施形態に係るネットワークシステム１０について説明する。
【００１０】
ネットワークシステム１０は、製品を製造するための産業用システムである。ネットワークシステム１０は、製造セル１２、セル制御装置５０、生産管理装置１４、通信ネットワーク１６および１８を備える。
【００１１】
製造セル１２は、複数の機械２０、２２、および２４を有する。機械２０、２２、および２４の各々は、ＮＣ工作機械、産業用ロボット、またはＰＬＣ等である。機械２０、２２、および２４は、セル制御装置５０からの指令に応じて、製品を製造するための作業を順次行う。一例として、製造セル１２は、製品を製造する工場の敷地内にある第１建屋に設置される。
【００１２】
セル制御装置５０は、生産管理装置１４からの指令に応じて、通信ネットワーク１６を介して機械２０、２２、および２４の各々に種々の指令を送信し、製造セル１２の動作を制御する。一例として、セル制御装置５０は、製品を製造する工場の敷地内にある、第１建屋とは異なる第２建屋に設置される。なお、セル制御装置５０の詳細については、後述する。
【００１３】
通信ネットワーク１６は、製造セル１２の機械２０、２２、２４とセル制御装置５０とを互いに通信可能に接続する。一例として、製造セル１２が第１建屋に設置され、セル制御装置５０が第２建屋に設置される場合、通信ネットワーク１６は、イントラネットまたはＬＡＮから構成される。
【００１４】
生産管理装置１４は、データベース等を有し、製造セル１２で行われる作業の工程、製品の材料の管理等を担う。生産管理装置１４は、通信ネットワーク１８を介して、セル制御装置５０に種々の指令を送信する。一例として、生産管理装置１４は、製品を製造する工場の敷地外の第３建屋内に設置される。
【００１５】
通信ネットワーク１８は、生産管理装置１４とセル制御装置５０とを互いに通信可能に接続する。一例として、セル制御装置５０が第２建屋に設置され、生産管理装置１４が第３建屋に設置される場合、通信ネットワーク１８は、インターネット等から構成される。
【００１６】
セル制御装置５０は、ＣＰＵ５２、システムメモリ５４、ワークメモリ５６、通信部５８、および計時部６０を備える。ＣＰＵ５２は、セル制御装置５０で実行される様々なプロセスを実行するために各種演算を行う。
【００１７】
システムメモリ５４は、電気的に消去・記録可能な不揮発性メモリであり、例えばＥＥＰＲＯＭ（登録商標）等により構成される。システムメモリ５４は、セル制御装置５０の動作時に必要な定数、変数、設定値、プログラム等を、該セル制御装置５０の非動作時にも失われないように記録している。
【００１８】
ワークメモリ５６は、高速で読み書きのできるＲＡＭであり、例えばＤＲＡＭ、ＳＲＡＭ等が用いられる。ワークメモリ５６は、ＣＰＵ５２が各種演算を実行するのに十分なメモリ容量を備える。
【００１９】
通信部５８は、例えばＵＳＢポートまたはイーサネット（登録商標）ポートといったＩ／Ｏインターフェース、および、Ｉ／Ｏインターフェースでの通信を制御する通信制御モジュール（ともに図示せず）等を有し、ＣＰＵ５２からの指令に応じて、製造セル１２および生産管理装置１４と通信する。
【００２０】
計時部６０は、ＣＰＵ５２からの指令に応じて、予め定められた時点からの経過時間を計時する。
【００２１】
次に、図２を参照して、ネットワークシステム１０の動作について説明する。図２（ａ）は、生産管理装置１４とセル制御装置５０との間の通信量Ｃのタイムチャートを示す。図２（ｂ）は、セル制御装置５０と製造セル１２（すなわち、機械２０、２２、および２４）との間の通信量Ｃのタイムチャートを示す。
【００２２】
生産管理装置１４は、図２（ａ）に示すように、時点ｔ０から時点ｔ１までの期間で、セル制御装置５０へ生産指令信号７０を送信する。生産指令信号７０は、例えば、製造セル１２で「製品Ａをｎ個製造する」等の指令を含み、生産管理装置１４が保持する生産計画に則って、生産管理装置１４から適宜送信される。
【００２３】
生産管理装置１４から送信された生産指令信号７０は、通信ネットワーク１８を通って、セル制御装置５０の通信部５８に伝送される。
【００２４】
ここで、通信ネットワーク１８の最大通信速度は、通信ネットワーク１８の構成に応じて予め定められている。図２に示す例においては、通信ネットワーク１８の最大通信速度で信号が伝送されている。つまり、通信ネットワーク１８の最大通信速度で生産指令信号７０を伝送した場合、生産指令信号７０を伝送するのに時点ｔ０から時点ｔ１までの期間を要したことを意味している。
【００２５】
セル制御装置５０のＣＰＵ５２は、通信部５８に指令を送り、生産管理装置１４から送信された生産指令信号７０を該通信部５８に受信させる。このように、本実施形態においては、ＣＰＵ５２は、通信部５８に通信を実行させる通信制御部６２（図１）として機能する。ＣＰＵ５２は、通信部５８が受信した生産指令信号７０を、システムメモリ５４に記憶する。
【００２６】
生産指令信号７０を受信すると、セル制御装置５０のＣＰＵ５２は、通信部５８に指令を送り、作業指令信号７２を機械２０へ送信させる。この作業指令信号７２は、生産指令信号７０（例えば、「製品Ａをｎ個製造する」指令）に基づいて、機械２０に所定の作業を実行させる指令を含む。
【００２７】
図２（ｂ）に示す例においては、通信部５８は、通信ネットワーク１６の最大通信速度で、時点ｔ１から時点ｔ２の期間に亘って、作業指令信号７２を機械２０へ送信している。
【００２８】
機械２０は、作業指令信号７２を受信すると、該作業指令信号７２に従って所定の作業（例えば、ワークの加工、溶接、組み立て等）を実行する。所定の作業を完了すると、機械２０は、完了報告信号７４をセル制御装置５０の通信部５８へ送信する。図２（ｂ）に示す例においては、完了報告信号７４は、時点ｔ３から時点ｔ４までの期間で送信されている。
【００２９】
セル制御装置５０のＣＰＵ５２は、通信部５８に指令を送り、機械２０から送信された完了報告信号７４を受信し、受信した完了報告信号７４を、システムメモリ５４に記憶する。
【００３０】
完了報告信号７４を受信すると、セル制御装置５０のＣＰＵ５２は、通信部５８に指令を送り、作業指令信号７６を機械２２へ送信させる。この作業指令信号７６は、生産指令信号７０に基づいて機械２２に所定の作業を実行させる指令を含む。図２（ｂ）に示す例においては、作業指令信号７６は、時点ｔ５から時点ｔ６の期間で送信されている。
【００３１】
機械２２は、作業指令信号７６を受信すると、該作業指令信号７６に従って所定の作業を実行する。所定の作業を完了すると、機械２２は、完了報告信号７８をセル制御装置５０の通信部５８へ送信する。図２（ｂ）に示す例においては、完了報告信号７８は、時点ｔ７から時点ｔ８までの期間で送信されている。
【００３２】
セル制御装置５０のＣＰＵ５２は、通信部５８に指令を送り、機械２２から送信された完了報告信号７８を受信し、受信した完了報告信号７８を、システムメモリ５４に記憶する。
【００３３】
完了報告信号７８を受信すると、セル制御装置５０のＣＰＵ５２は、通信部５８へ指令を送り、作業指令信号８０を機械２４へ送信させる。この作業指令信号８０は、生産指令信号７０に基づいて機械２４に所定の作業を実行させる指令を含む。図２（ｂ）に示す例においては、作業指令信号８０は、時点ｔ９から時点ｔ１０の期間で送信されている。
【００３４】
機械２４は、作業指令信号８０を受信すると、該作業指令信号８０に従って所定の作業を実行する。所定の作業を完了すると、機械２４は、完了報告信号８２をセル制御装置５０の通信部５８へ送信する。図２（ｂ）に示す例においては、完了報告信号８２は、時点ｔ１１から時点ｔ１２までの期間で送信されている。
【００３５】
セル制御装置５０のＣＰＵ５２は、通信部５８に指令を送り、機械２４から送信された完了報告信号８２を受信し、受信した完了報告信号８２を、システムメモリ５４に記憶する。
【００３６】
完了報告信号８２を受信すると、セル制御装置５０のＣＰＵ５２は、通信部５８へ指令を送り、時点ｔ１２から時点ｔ１３の期間で、生産完了信号８４を生産管理装置１４へ送信させる。
【００３７】
生産完了信号８４は、生産指令信号７０に含まれた指令（例えば「製品Ａをｎ個製造する」）を完了したことを示す信号である。こうして、機械２０、２２、および２４によって、生産指令信号７０に応じた作業が順次実行され、製品が製造される。
【００３８】
図２（ａ）および図２（ｂ）に示すタイムチャートは、ＣＰＵ５２が実行することを予定された通信（以下、予定通信とする）のタイムチャートである。予定通信のフローは、例えば、使用者によって予め構築されたプログラム内に規定される。
【００３９】
ＣＰＵ５２は、プログラムに従って、図２（ａ）および図２（ｂ）に示す予定通信を実行する。このプログラムと、上記した作業指令信号７２、７６、８０と、生産完了信号８４とは、システムメモリ５４に予め記憶される。
【００４０】
図２（ａ）および図２（ｂ）に示す予定通信とは別に、第３者がセル制御装置５０に不正にアクセスするリスクが考えられる。
【００４１】
そこで、本実施形態に係るセル制御装置５０は、通信部５８での実際の通信量Ｃａを監視し、該実際の通信量Ｃａと、図２（ａ）および図２（ｂ）に示す予定通信の予定通信量Ｃｐとを互いに比較し、実際の通信量Ｃａが予定通信量Ｃｐよりも多いか否かを判定することによって、第３者による不正通信を検知する。
【００４２】
以下、この機能について、図２（ｃ）を参照して説明する。図２（ｃ）に示す例においては、通信ネットワーク１６経由で通信部５８にアクセスした不正通信８６が、時点ｔ４から時点ｔ５の期間に行われている。ＣＰＵ５２は、通信部５８に通信させた実際の通信量Ｃａを、常時監視する。
【００４３】
一実施例として、セル制御装置５０は、ＣＰＵ５２が予定通信を実行しない期間に、通信部５８で通信量が検出されたか否かを実時間で判定する。例えば、図２（ｃ）に示す例においては、予定通信を実行しない期間とは、時点ｔ２〜ｔ３、時点ｔ４〜ｔ５、時点ｔ６〜ｔ７、時点ｔ８〜ｔ９、および時点ｔ１０〜ｔ１１の期間である。
【００４４】
ＣＰＵ５２は、１つの予定通信Ｐｎ（すなわち、信号７２、７４、７６、７８、８０、または８２の通信）が完了した時点ｔｎ（すなわち、時点ｔ２、ｔ４、ｔ６、ｔ８、ｔ１０、またはｔ１２）で、計時部６０に指令を送り、この時点ｔｎからの経過時間を計時する。
【００４５】
ここで、１つの予定通信Ｐｎが完了した時点ｔｎから、次に実行される予定通信Ｐｎ＋１が開始される時点ｔｎ＋１までの期間ＴＡ（＝ｔｎ＋１−ｔｎ）は、予測可能である。具体的には、機械２０、２２、および２４が実行する作業のサイクルタイムは、予測可能である。したがって、ＣＰＵ５２が作業指令信号７２、７６、および８０の送信を完了した時点から、完了報告信号７４、７８、および８２が返信されるまでの期間も、予測可能である。
【００４６】
ＣＰＵ５２は、計時部６０が経時している、時点ｔｎからの経過時間が、予め定められた時間τ１となるまでに、通信部５８での通信量Ｃが実時間で検出されたとき、通信部５８での実際の通信量Ｃａが予定通信量Ｃｐよりも多いものと実時間で判定する。
【００４７】
予め定められた時間τ１は、予測される期間ＴＡに一致する時間（すなわち、τ１＝ＴＡ）として予め定められ、システムメモリ５４に記憶される。不正通信を検出するプロセスを実行するとき、ＣＰＵ５２は、システムメモリ５４に記憶された時間τ１を読み出してワークメモリ５６に記憶し、時間τ１を参照する。
【００４８】
図２（ｃ）に示す例の場合、ＣＰＵ５２は、時点ｔ２、ｔ４、ｔ６、ｔ８、ｔ１０、およびｔ１２の各々から時間τ１（例えば、時点ｔ４〜ｔ５の期間に相当）が経過するまでに通信部５８で通信量Ｃが検出されたか否かを実時間で判定する。
【００４９】
これにより、ＣＰＵ５２は、通信が予定されていない時点ｔ４〜ｔ５の期間に通信部５８で通信量が生じていることを検出し、以って、通信部５８での実際の通信量Ｃａが予定通信量Ｃｐよりも多いと実時間で判定する。その結果、時点ｔ４〜ｔ５の期間に生じた不正通信８６を実時間で検出することができる。
【００５０】
このように、本実施形態においては、ＣＰＵ５２は、実際の通信量Ｃａが予定通信量Ｃｐよりも多いか否かを判定する通信判定部６４（図１）として機能する。
【００５１】
通信ネットワーク１６経由の不正通信８６を検出した場合、ＣＰＵ５２は、通信部５８に指令を送り、不正通信８６が行われた通信ネットワーク１６と通信部５８との間の通信を遮断する。これにより、第３者がセル制御装置５０に通信ネットワーク１６経由で不正にアクセスするのを防止できる。
【００５２】
このように、本実施形態においては、ＣＰＵ５２は、通信部５８による通信を遮断する通信遮断部６６（図１）として機能する。
【００５３】
一方、ＣＰＵ５２は、不正通信８６が検出されていない通信ネットワーク１８と通信部５８との間の通信は遮断しない。この構成によれば、不正通信８６が検出されていない通信ネットワーク１８経由の通信を確保できるので、不正通信８６が検出された場合においても、セル制御装置５０の機能の少なくとも一部を継続して実行できる。
【００５４】
他の実施例として、ＣＰＵ５２は、１つの予定通信Ｐｎ（すなわち、信号７２、７４、７６、７８、８０、または８２）の開始時点ｔｎ−１（すなわち、時点ｔ１、ｔ３、ｔ５、ｔ７、ｔ９、またはｔ１１）で、計時部６０に指令を送り、この時点ｔｎ−１からの経過時間を計時してもよい。
【００５５】
この実施例について、図２（ｄ）を参照して説明する。図２（ｄ）に示す例においては、通信ネットワーク１６経由で通信部５８にアクセスした不正通信８８が、作業指令信号７６の予定通信に一部重複するように、行われている。そして、時点ｔ５で開始された作業指令信号７６の予定通信が、不正通信８８の重複によって、時点ｔ６’（＞ｔ６）まで延期されている。
【００５６】
ＣＰＵ５２は、１つの予定通信Ｐｎを開始した時点ｔｎ−１からの経過時間が、予め定められた時間τ２を過ぎてから時間τ３に達するまでの期間に、通信部５８で通信量が検出されたか否かを実時間で判定する。
【００５７】
ここで、１つの予定通信Ｐｎを開始した時点ｔｎ−１から、次に実行される予定通信Ｐｎ＋１が開始される時点ｔｎ＋１までの期間ＴＢ（＝ｔｎ＋１−ｔｎ−１）は、予測可能である。具体的には、機械２０、２２、および２４が実行する作業のサイクルタイムは、上述したように予測可能である。
【００５８】
また、信号７２、７４、７６、７８、８０、または８２の通信に要する時間も、データフォーマット等から定まるこれら信号の情報量（総通信量）と、通信ネットワーク１６の通信速度とによって、予測可能である。これらの情報から、上記の期間ＴＢを予測することができる。
【００５９】
上記した予め定められた時間τ２は、信号７２、７４、７６、７８、８０、または８２の通信に要することが予測される時間に一致する時間（例えば、τ２＝ｔ２−ｔ１）として予め定められ、システムメモリ５４に記憶される。
【００６０】
また、予め定められた時間τ３は、予測される期間ＴＢに一致する時間（すなわち、τ３＝ＴＢ）として予め定められ、システムメモリ５４に記憶される。不正通信を検出するプロセスを実行するとき、ＣＰＵ５２は、システムメモリ５４に記憶された時間τ２およびτ３を読み出してワークメモリ５６に記憶し、これら時間τ２およびτ３を参照する。
【００６１】
図２（ｄ）に示す例の場合、ＣＰＵ５２は、時点ｔ１、ｔ３、ｔ５、ｔ７、ｔ９、およびｔ１１の各々で、計時部６０による経過時間の計時を開始し、該経過時間が時間τ２〜τ３の期間（例えば、時点ｔ６〜ｔ７の期間に相当）に通信部５８で実際の通信量が検出されたか否かを実時間で判定する。
【００６２】
そして、ＣＰＵ５２は、通信が予定されていない時点ｔ６〜ｔ７の期間に通信部５８で通信量が生じていることを検出し、以って、通信部５８での実際の通信量Ｃａが予定通信量Ｃｐよりも多いと実時間で判定する。その結果、時点ｔ６〜ｔ７の期間の不正通信８８を検出することができる。
【００６３】
不正通信８８を検出した場合、ＣＰＵ５２は、通信遮断部６６として機能して、不正通信８８が行われた通信ネットワーク１６と通信部５８との間の通信を遮断する。
【００６４】
なお、図２（ｄ）に示す不正通信８８は、時点ｔ５以前に開始されて作業指令信号７６と重複される場合も想定される。このような場合においても、ＣＰＵ５２は、本実施例に係る方法を用いて、不正通信８８を検出できる。
【００６５】
図２（ｂ）に示す作業指令信号７２、７６、８０を送信してから完了報告信号７４、７８、８２を受信するまでの期間に、セル制御装置５０と、機械２０、２２、および２４とは、予定通信として、作業の進捗状況を確認するための通信を行ってもよい。
【００６６】
以下、図３を参照して、このような実施例について説明する。なお、図３は、作業指令信号７２と完了報告信号７４との間の期間を例として示している。
【００６７】
図３（ａ）に示すように、作業指令信号７２を送信した後、時点ｔ２１にて、ＣＰＵ５２は、通信部５８に指令を送り、第１の進捗確認信号９０を機械２０へ送信させる。図３（ａ）に示す例においては、通信部５８は、時点ｔ２１から時点ｔ２２の期間で、第１の進捗確認信号９０を機械２０へ送信している。
【００６８】
機械２０は、第１の進捗確認信号９０を受信すると、現在実行している作業の進捗状況を表す第１の進捗報告信号９２を、セル制御装置５０の通信部５８へ送信する。図３（ａ）に示す例においては、第１の進捗報告信号９２は、時点ｔ２３から時点ｔ２４までの期間で送信されている。
【００６９】
ＣＰＵ５２は、機械２０から送信された第１の進捗報告信号９２を、通信部５８に受信させ、受信した第１の進捗報告信号９２を、システムメモリ５４に記憶する。
【００７０】
第１の進捗報告信号９２を受信した後、ＣＰＵ５２は、通信部５８に指令を送り、時点ｔ２５から時点ｔ２６の期間で、第２の進捗確認信号９４を機械２０へ送信させる。
【００７１】
機械２０は、第２の進捗確認信号９４を受信すると、現在実行している作業の進捗状況を表す第２の進捗報告信号９６を、時点ｔ２７から時点ｔ２８までの期間で、セル制御装置５０の通信部５８へ送信する。
【００７２】
セル制御装置５０のＣＰＵ５２は、機械２０から送信された第２の進捗報告信号９６を、通信部５８に受信させ、受信した第２の進捗報告信号９６を、システムメモリ５４に記憶する。ＣＰＵ５２は、取得した第１の進捗報告信号９２および第２の進捗報告信号９６から、機械２０の作業の進捗状況を把握できる。
【００７３】
上述した第１の進捗確認信号９０、第１の進捗報告信号９２、第２の進捗確認信号９４、および第２の進捗報告信号９６の予定通信は、図２（ｂ）に示す作業指令信号７６と完了報告信号７８との間、および、作業指令信号８０と完了報告信号８２との間の期間においても、同様に実行され得る。
【００７４】
このように、本実施例においては、ＣＰＵ５２は、作業指令信号７２、７６、８０を送信してから完了報告信号７４、７８、８０を受信するまでの期間に、作業の進捗状況を確認するための予定通信（信号９０、９２、９４、および９６の通信）を実行する。この予定通信のフローは、例えば、使用者によって予め構築されたプログラム内に規定される。
【００７５】
次に、図３（ｂ）を参照して、図３（ａ）に示す予定通信を実行しているときに不正通信を検知する機能について説明する。
【００７６】
図３（ｂ）に示す例においては、通信ネットワーク１６経由で通信部５８にアクセスした不正通信９８が、第１の進捗報告信号９２の予定通信に一部重複するように、行われている。そして、時点ｔ２３で開始された第１の進捗報告信号９２の予定通信が、不正通信９８が重複されることにより、時点ｔ２４’（＞ｔ２４）まで延期されている。
【００７７】
ＣＰＵ５２は、上述した図２（ｄ）の不正通信８８を検知する方法を用いて、不正通信９８を同様に検知できる。具体的には、ＣＰＵ５２は、１つの予定通信Ｐｍ（すなわち、信号７２、９０、９２、９４、または９６の予定通信）を開始した時点ｔｍからの経過時間が、予め定められた時間τ４を過ぎてから時間τ５に達するまでの期間に、通信部５８で通信量が検出されたか否かを実時間で判定する。
【００７８】
ここで、１つの予定通信Ｐｍを開始した時点ｔｍから、次に実行される予定通信Ｐｍ＋１が開始される時点ｔｍ＋１までの期間ＴＣ（＝ｔｍ＋１−ｔｍ）は、予測可能である。また、信号７２、９０、９２、９４、または９６の通信に要する時間も、予測可能である。
【００７９】
予め定められた時間τ４は、信号７２、９０、９２、９４、または９６の通信に要すると予測される時間に一致する時間（例えば、ｔ２４−ｔ２３に相当する）として予め定められ、システムメモリ５４に記憶される。また、予め定められた時間τ５は、予測される期間ＴＣに一致する時間（すなわち、τ５＝ＴＣ）として予め定められ、システムメモリ５４に記憶される。
【００８０】
ＣＰＵ５２は、信号７２、９０、９２、９４、および９６の予定通信を開始する時点ｔ１、ｔ２１、ｔ２３、ｔ２５、ｔ２７の各々で、計時部６０による経過時間の計時を開始する。そして、ＣＰＵ５２は、計時部６０が経時している経過時間が時間τ４〜τ５の期間（例えば、時点ｔ２４〜ｔ２５の期間に相当）に通信部５８で通信量が検出されたか否かを判定する。
【００８１】
そして、ＣＰＵ５２は、通信が予定されていない時点ｔ２４〜ｔ２５の期間に通信部５８で通信量が生じていることを検出し、以って、通信部５８での実際の通信量Ｃａが予定通信量Ｃｐよりも多いと実時間で判定する。その結果、時点ｔ２４〜ｔ２５の期間の不正通信９８を検出することができる。
【００８２】
不正通信９８を検出した場合、ＣＰＵ５２は、通信遮断部６６として機能して、不正通信９８が行われた通信ネットワーク１６と通信部５８との間の通信を遮断する。
【００８３】
上述した作業指令信号、完了報告信号、進捗確認信号、および進捗報告信号とは別に、ＣＰＵ５２は、予定通信として、機械２０、２２、および２４の様々な情報を取得するための予定通信を定期的に実行し得る。
【００８４】
ここで、「様々な情報」としては、例えば、機械２０、２２、および２４の工具情報、機械２０、２２、および２４に内蔵されたサーボモータの負荷トルクや温度、または、機械２０、２２、および２４に内蔵された各種センサの出力信号等の情報が含まれる。
【００８５】
以下、図４を参照して、このような実施例について説明する。図４（ａ）は、一例として、機械２０の情報を得るための予定通信を実行している場合のタイムチャートを示している。
【００８６】
ＣＰＵ５２は、時点ｔ３１〜ｔ３２、時点ｔ３３〜ｔ３４、および時点ｔ３５〜ｔ３６の期間に、機械２０の情報を得るための機械モニタ信号１００、１０２、１０４の予定通信を、機械２０との間で定期的に実行している。
【００８７】
次に、図４（ｂ）を参照して、図４（ａ）に示す予定通信を実行しているときに不正通信を検知する機能について説明する。図４（ｂ）に示す例においては、通信ネットワーク１６経由で通信部５８にアクセスした不正通信１０６が、通信が予定されていない時点ｔ３４〜ｔ３５の期間で行われている。
【００８８】
ＣＰＵ５２は、通信部５８での実際の通信量Ｃａを常時監視し、予め定められた期間毎に、通信部５８の実際の通信量Ｃａと、予定通信に係る予定通信量Ｃｐとを、互いに比較する。
【００８９】
一例として、ＣＰＵ５２は、１つの予定通信Ｐｐ（すなわち、信号１００、１０２、または１０４の通信）を開始した時点ｔｐ（すなわち、時点ｔ３１、ｔ３３、またはｔ３５）から、次の予定通信Ｐｐ＋１を開始する時点ｔｐ＋１までの期間ＴＤ（＝ｔｐ＋１−ｔｐ）における、通信部５８の実際の通信量Ｃａを算出する。
【００９０】
具体的には、ＣＰＵ５２は、信号１００、１０２、および１０４の予定通信を開始する時点ｔ３１、ｔ３３、およびｔ３５の各々で、計時部６０に指令を送り、経過時間の計時を開始する。そして、ＣＰＵ５２は、時点ｔ３１、ｔ３３、ｔ３５から予め定められた時間τ６が経過するまでの期間の実際の通信量Ｃａを算出する。
【００９１】
ここで、ＣＰＵ５２は、予め定められたプログラムに従って、図４（ａ）に示す予定通信を実行するので、期間ＴＤは、予測可能である。予め定められた時間τ６は、予測される期間ＴＤに一致する時間（すなわち、τ６＝ＴＤ）として予め定められ、システムメモリ５４に記憶される。
【００９２】
また、信号１００、１０２、および１０４の予定通信の予定通信量Ｃｐも、該予定通信のデータフォーマットおよびプログラム等から、予測可能である。この予定通信量Ｃｐも、システムメモリ５４に予め記憶される。
【００９３】
ＣＰＵ５２は、時点ｔ３１、ｔ３３、またはｔ３５から時間τ６が経過するまでの期間の実際の通信量Ｃａと、該期間に実行した予定通信の予定通信量Ｃｐとを互いに比較し、該実際の通信量Ｃａが該予定通信量Ｃｐよりも多いか否かを判定する。
【００９４】
例えば、図４（ｂ）に示す例の場合、ＣＰＵ５２は、時点ｔ３３から時間τ６が経過するまでの期間（時点ｔ３３〜ｔ３５までの期間に相当）の実際の通信量Ｃａを算出する。この場合、実際の通信量Ｃａは、信号１０２の予定通信量Ｃｐと、不正通信１０６の通信量との和となる。
【００９５】
したがって、この場合、ＣＰＵ５２は、実際の通信量Ｃａが予定通信量Ｃｐよりも多いと判定し、以って、時点ｔ３３〜ｔ３５までの期間に不正通信１０６があったことを検知することができる。
【００９６】
不正通信１０６を検知した場合、ＣＰＵ５２は、通信遮断部６６として機能して、不正通信１０６が行われた通信ネットワーク１６と通信部５８との間の通信を遮断する。
【００９７】
同様にして、ＣＰＵ５２は、機械２２および２４の情報を得るための機械モニタ信号の予定通信を機械２２および２４との間で実行し、これら予定通信を実行しているときの不正通信を、上述と同様の方法で検知できる。
【００９８】
次に、図５を参照して、不正通信検知のさらに他の実施例について説明する。本実施例においては、ＣＰＵ５２は、図５（ａ）に示すように、機械２０の情報を得るための機械モニタ信号１１０ａの予定通信を、機械２０との間で実行する。
【００９９】
次いで、ＣＰＵ５２は、機械２２の情報を得るための機械モニタ信号１１２ａの予定通信を、機械２２との間で実行する。次いで、ＣＰＵ５２は、機械２４の情報を得るための機械モニタ信号１１４ａの予定通信を、機械２４との間で実行する。
【０１００】
その後、ＣＰＵ５２は、機械２０の情報を得るための機械モニタ信号１１０ｂ、機械２２の情報を得るための機械モニタ信号１１２ｂ、機械２４の情報を得るための機械モニタ信号１１４ｂの順で、予定通信を実行する。
【０１０１】
このように、本実施例においては、ＣＰＵ５２は、機械２０、機械２２、機械２４の順で、機械モニタ信号に係る一連の予定通信を実行する。
【０１０２】
ここで、通信ネットワーク１６の構成、機械２０、２２、２４が通信に使用する通信方式の相違等に起因して、セル制御装置５０と、機械２０、２２、２４との間の通信速度が互いに異なる場合がある。
【０１０３】
このような場合において信号を最大通信速度で送信すると、図５に示すように、機械モニタ信号１１０ａおよび１１０ｂと、機械モニタ信号１１２ａおよび１１２ｂと、機械モニタ信号１１４ａおよび１１４ｂとの間で行われる通信の通信量Ｃが異なることになる。
【０１０４】
以下、図５（ｂ）を参照して、図５（ａ）に示す予定通信を実行しているときに不正通信を検知する機能について説明する。図５（ｂ）に示す例においては、通信ネットワーク１６経由で通信部５８にアクセスした不正通信１１６が、機械モニタ信号１１４ａの予定通信に一部重複するように、行われている。
【０１０５】
ＣＰＵ５２は、図４（ｂ）で説明した実施例と同様に、予め定められた期間毎に、実際の通信量Ｃａと予定通信量Ｃｐとを互いに比較する。
【０１０６】
一例として、ＣＰＵ５２は、機械２０の情報を得るための１つの予定通信Ｐｑ（例えば、信号１１０ａの通信）を開始した時点ｔｑ（例えば、時点ｔ４１）から、同じ機械２０の情報を得るための次の予定通信Ｐｑ＋１（例えば、信号１１０ｂの通信）を開始する時点ｔｑ＋１（例えば、時点ｔ４７）までの期間ＴＥ毎に、通信部５８の実際の通信量Ｃａを算出する。
【０１０７】
具体的には、ＣＰＵ５２は、信号１１０ａ、１１０ｂの予定通信を開始する時点ｔ４１およびｔ４７の各々で、計時部６０に指令を送り、経過時間の計時を開始する。そして、ＣＰＵ５２は、時点ｔ４１およびｔ４７から予め定められた時間τ７が経過するまでの期間の実際の通信量Ｃａを算出する。
【０１０８】
ここで、ＣＰＵ５２は、予め定められたプログラムに従って、図５（ａ）に示す予定通信を実行する。したがって、上記の期間ＴＥは、予測可能である。予め定められた時間τ７は、予測される期間ＴＥに一致する時間（すなわち、τ７＝ＴＥ）として予め定められ、システムメモリ５４に記憶される。
【０１０９】
一方、信号１１０ａ、１１２ａ、１１４ａ、１１０ｂ、１１２ｂ、および１１４ｂの予定通信の予定通信量Ｃｐも、予測可能である。この予定通信量Ｃｐも、システムメモリ５４に予め記憶される。
【０１１０】
ＣＰＵ５２は、時点ｔ４１、ｔ４７から時間τ７が経過するまでの期間（時点ｔ４１〜ｔ４７の期間に相当）の実際の通信量Ｃａと、該期間の予定通信の予定通信量Ｃｐとを互いに比較し、該実際の通信量Ｃａが該予定通信量Ｃｐよりも多いか否かを判定する。
【０１１１】
例えば、図５（ｂ）に示す例の場合、時点ｔ４１から時間τ７が経過するまでの期間の実際の通信量Ｃａは、信号１１０ａ、１１２ａ、１１４ａの予定通信量Ｃｐと、不正通信１１６の通信量との和となる。
【０１１２】
したがって、ＣＰＵ５２は、この期間の実際の通信量Ｃａが予定通信量Ｃｐよりも多いと判定し、以って、時点ｔ４１〜ｔ４７の期間に不正通信１１６があったことを検知することができる。
【０１１３】
不正通信１１６を検知した場合、ＣＰＵ５２は、通信遮断部６６として機能して、不正通信１１６が行われた通信ネットワーク１６と通信部５８との間の通信を遮断する。
【０１１４】
なお、上述した種々の実施例においては、製造セル１２とセル制御装置５０との間の予定通信に重複した不正通信を検知する場合について説明した。これら種々の実施例の概念は、生産管理装置１４とセル制御装置５０との間の予定通信に重複された不正通信を検知する場合にも適用できる。
【０１１５】
一例として、セル制御装置５０は、図２（ａ）に示す予定通信（すなわち、信号７０、８４の通信）を実行しない期間に、通信部５８と生産管理装置１４との間で通信量が検出されたか否かを判定する。
【０１１６】
図２（ａ）に示す例においては、通信部５８と生産管理装置１４との間で予定通信を実行しない期間とは、時点ｔ１〜ｔ１２の期間であり、該期間は、機械２０、２２、および２４が実行する作業のサイクルタイム、データフォーマット等から定まる信号の情報量（総通信量）、および通信ネットワーク１６、１８の通信速度等から、予測可能である。
【０１１７】
ＣＰＵ５２は、通信が予定されていない時点ｔ１〜ｔ１２の期間に、通信ネットワーク１８経由の通信量が通信部５８で生じていることを検出した場合、通信部５８での実際の通信量が予定通信量よりも多いと実時間で判定する。これにより、通信ネットワーク１８経由の不正通信を検知できる。
【０１１８】
ネットワーク１８経由の不正通信を検知した場合、ＣＰＵ５２は、通信部５８による通信ネットワーク１８との通信を遮断する一方、不正通信が検出されていない通信ネットワーク１６との間の通信は遮断しない。
【０１１９】
また、上述の実施例において、ＣＰＵ５２は、定期的に認証キーを作成し、通信部５８と生産管理装置１４、および、通信部５８と製造セル１２との間の通信時に使用してもよい。これにより、不正通信をさらに効果的に防ぐことができる。
【０１２０】
また、ネットワークシステム１０は、図１に示す製造セル１２に加えて、複数の機械を有する第２の製造セルをさらに備え、該第２の製造セルと通信部５８とは、第３のネットワークを介して互いに通信可能に接続されてもよい。
【０１２１】
この場合において、ＣＰＵ５２は、例えば図２（ｃ）に示すようにネットワーク１６経由の不正通信を検知した場合、ＣＰＵ５２は、通信部５８によるネットワーク１６との通信を遮断する一方、第３の通信ネットワークとの間の通信は遮断しない。これにより、第２の製造セルにおいては、作業を継続して行うことができる。
【０１２２】
また、図１に示す実施形態においては、製造セル１２が３個の機械２０、２２、２４を有する場合について述べたが、これに限らず、製造セル１２は、１個、２個、または４個以上の機械を有してもよい。
【０１２３】
また、図１に示す実施形態において、通信部５８は、生産管理装置１４と通信する第１の通信部と、製造セル１２と通信する第２の通信部を有してもよい。この場合、ＣＰＵ５２は、第２の通信部で不正通信が検知された場合、該第２の通信部での通信を遮断する一方、不正通信が検知されていない第１の通信部での通信は継続する。
【０１２４】
また、上述の実施形態においては、通信ネットワーク１６は、イントラネットまたはＬＡＮから構成され、通信ネットワーク１８は、インターネット等から構成される場合について述べた。
【０１２５】
しかしながら、これに限らず、通信ネットワーク１６または１８は、通信部５８と製造セル１２、または、通信部５８と生産管理装置１４とを直接接続する単一の通信ケーブルから構成されてもよい。
【０１２６】
また、ＣＰＵ５２は、通信部５８で不正通信が検知された場合に、その旨を表す音声または画像の形式の警告信号を生成し、使用者に出力してもよい。この場合、セル制御装置５０は、スピーカまたはディスプレイ装置をさらに有し、スピーカまたはディスプレイ装置を通して、警告信号を出力してもよい。
【０１２７】
また、図２（ｃ）、図２（ｄ）、または図３の不正通信８６、８８、または９８を検知するときに、図４（ｂ）または図５（ｂ）を用いて説明した不正通信の検知方法を適用することもできる。
【０１２８】
また、図４（ｂ）または図５（ｂ）の不正通信１０６または１１６を検知するときに、図２（ｃ）、図２（ｄ）、または図３（ｂ）を用いて説明した不正通信の検知方法を適用することもできる。
【０１２９】
以上、発明の実施形態を通じて本発明を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。また、本発明の実施形態の中で説明されている特徴を組み合わせた形態も本発明の技術的範囲に含まれ得るが、これら特徴の組み合わせの全てが、発明の解決手段に必須であるとは限らない。さらに、上述の実施形態に、多様な変更または改良を加えることが可能であることも当業者に明らかである。
【０１３０】
また、特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、工程、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」、「次いで」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０１３１】
１０    ネットワークシステム
１２    製造セル
１４    生産管理装置
５０    セル制御装置
５２    ＣＰＵ
５８    通信部
【図１】
0006613200.tif 000002
【図２】
0006613200.tif 000003
【図３】
0006613200.tif 000004
【図４】
0006613200.tif 000005
【図５】
0006613200.tif 000006