(57)【要約】【課題】生産ライン全体の生産性などを考慮した構成が要望されている。【解決手段】生産システムは、製造装置と、後処理装置と、製造装置により製造されるワークを後処理装置まで搬送する複数のコンベアと、製造装置に接続されたコンベア上に配置され、コンベア上を移動するワークを認識するとともに、コンベア上のワーク密度を計測する画像センサと、製造装置に接続されたコンベア上のワークをピックするロボットと、制御装置とを含む。制御装置は、画像センサからの認識結果に基づいて、コンベア上の各ワークの位置を特定するとともに、ロボットに対して対象のワークをピックするための第１のタスクと、製造装置での処理を実現するための第２のタスクと、後処理装置での処理を実現するための第３のタスクと、画像センサにより計測されたワーク密度に基づいて、製造装置および後処理装置の少なくとも一方における処理能力を調整する第４のタスクとを実行する。【選択図】図８
2018097661.tif 000002
【特許請求の範囲】
【請求項１】
ワークを製造する製造装置と、
前記ワークに対する後処理を実施する後処理装置と、
前記製造装置により製造されるワークを前記後処理装置まで搬送する複数のコンベアと、
前記製造装置に接続されたコンベア上に配置され、当該コンベア上を移動するワークを認識するとともに、コンベア上のワーク密度を計測する画像センサと、
前記製造装置に接続されたコンベア上のワークをピックするロボットと、
制御装置とを備え、
前記制御装置は、
前記画像センサからの認識結果に基づいて、前記コンベア上の各ワークの位置を特定するとともに、ロボットに対して対象のワークをピックするための第１のタスクと、
前記製造装置での処理を実現するための第２のタスクと、
前記後処理装置での処理を実現するための第３のタスクと、
前記画像センサにより計測されたワーク密度に基づいて、前記製造装置および前記後処理装置の少なくとも一方における処理能力を調整する第４のタスクとを実行するように構成されている、生産システム。
【請求項２】
前記第４のタスクは、
前記画像センサにより計測されたワーク密度と、前記画像センサに関連付けられた前記コンベアの搬送速度とに基づいて、前記コンベア上に存在するワークを処理するのに必要な搬送能力が前記ロボットの搬送能力の最大値に近付いているか否かを判断する処理と、
前記コンベア上に存在するワークを処理するのに必要な搬送能力が前記ロボットの搬送能力の最大値に近付いている場合に、前記製造装置の製造能力を低減する処理とを含む、請求項１に記載の生産システム。
【請求項３】
前記第４のタスクは、前記コンベア上に存在するワークを処理するのに必要な搬送能力が前記ロボットの搬送能力の最大値に近付いている場合に、前記後処理装置の処理能力を低減する処理とを含む、請求項２に記載の生産システム。
【請求項４】
前記第１および第４のタスクは、前記第２および第３のタスクに比較して、より短い実行周期で繰り返し実行される、請求項１〜３のいずれか１項に記載の生産システム。
【請求項５】
前記制御装置は、複数のコアを有するプロセッサを含み、
前記第１および第４のタスクは、前記複数のコアのうち１つのコアで実行され、
前記第２および第３のタスクは、前記第１のタスクが実行されるコアとは異なるコアで実行される、請求項１〜４のいずれか１項に記載の生産システム。
【請求項６】
前記第１および第４のタスクは、前記複数のコアのうち第１のコアで実行され、
前記第２および第３のタスクは、前記複数のコアのうち第２のコアで同一の実行周期で順次実行される、請求項５に記載の生産システム。
【請求項７】
ワークを製造する製造装置と、前記ワークに対する後処理を実施する後処理装置と、前記製造装置に接続されたコンベア上に配置され、当該コンベア上を移動するワークを認識するとともに、コンベア上のワーク密度を計測する画像センサと、前記製造装置に接続されたコンベア上のワークをピックするロボットとの間でデータ通信するための通信インターフェイスと、
プロセッサとを備え、
前記プロセッサは、
前記画像センサからの認識結果に基づいて、前記コンベア上の各ワークの位置を特定するとともに、ロボットに対して対象のワークをピックするための第１のタスクと、
前記製造装置での処理を実現するための第２のタスクと、
前記後処理装置での処理を実現するための第３のタスクと、
前記画像センサにより計測されたワーク密度に基づいて、前記製造装置および前記後処理装置の少なくとも一方における処理能力を調整する第４のタスクとを実行するように構成されている、制御装置。
【請求項８】
ワークを製造する製造装置と、前記ワークに対する後処理を実施する後処理装置と、前記製造装置により製造されるワークを前記後処理装置まで搬送する複数のコンベアと、前記製造装置に接続されたコンベア上に配置され、当該コンベア上を移動するワークを認識するとともに、前記ワークの認識結果に基づいて、前記コンベア上のワークをピックして所定位置にプレイスするトラッキングシステムとを備える生産システムにおける制御方法であって、
コンベア上のワーク密度を計測するステップと、
前記ワーク密度と、前記コンベアの搬送速度とに基づいて、前記コンベア上に存在するワークを処理するのに必要な搬送能力が前記トラッキングシステムの搬送能力の最大値に近付いているか否かを判断するステップと、
前記コンベア上に存在するワークを処理するのに必要な搬送能力が前記トラッキングシステムの搬送能力の最大値に近付いている場合に、前記トラッキングシステムの搬送速度を低減するとともに、前記製造装置における原料を加熱する温度を低減するステップとを備える、制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、任意のワークの製造に係る生産システム、そのシステムに用いられる制御装置、およびそのシステムにおける制御方法に関する。
【背景技術】
【０００２】
ＦＡ（Factory Automation）においては、コンベアおよびロボットを含んで構成されるコンベアトラッキングシステムがしばしば用いられる。典型的なコンベアトラッキングシステムにおいては、コンベア上を搬送される物体を画像センサにより認識し、その認識結果に基づいて対象の物体の位置を順次把握するとともに、必要に応じてロボットなどを用いて対象の物体をピックし、次の工程などへ搬送するといった動作が実施される。
【０００３】
このようなコンベアトラッキングシステムは、例えば、何らかの物体を製造する工程と当該装置を包装する工程との間に配置される。コンベアによる物体の単位時間当たりの搬送量は、コンベアの搬送速度およびコンベア上の物体の数に応じて定まることになる。
【０００４】
物体の単位時間当たりの搬送量が設計値を超えるようになると、ロボットが物体をピックする処理が追い付かなくなる。逆に、物体の単位時間当たりの搬送量が設計値を大幅に下回るようになると、ロボットにより単位時間当たりピックされる物体の数も減少し、システム全体の生産性が低下する。
【０００５】
このような課題に対して、特開平１１−０９０８７１号公報（特許文献１）は、単位時間に搬送されるワーク数が初期設定値よりも増加する場合、ロボットの処理が追い付かずワークの取りこぼしが発生したとき、この取りこぼしたワークの数を減らすようにコンベアの速度を制御するとともに、単位時間に搬送されるワーク数が初期設定値よりも減少する場合、ロボットに待ち時間が生じるとき、この待ち時間が少なくなるようにコンベアの速度を制御するという構成を開示する。
【０００６】
また、特開２０１０−２８００１０号公報（特許文献２）は、コンベア等の搬送手段上を流れる収納容器内にロボットを用いて効率的に物品を収納することができる物品搬送ロボットシステムを開示しており、この物品搬送ロボットシステムにおいては、コンベアの流れ方向に沿って複数のロボット機構部が配置されており、各ロボット機構部の直近の上流側および直近の下流側にあるロボット機構部との間で収納セル情報を共有するように構成されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−０９０８７１号公報
【特許文献２】特開２０１０−２８００１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１および特許文献２に記載の開示は、コンベアおよびロボットに対する制御に注目したものであるが、現実には、コンベアの前工程または後工程には何らかの装置が配置されていることが一般的であり、コンベアおよびロボットのみを制御することでは、生産ライン全体の生産性などを高めることはできない。
【０００９】
コンベアおよびロボットなどから構成されるコンベアトラッキングシステムだけではなく、生産ライン全体の生産性などを考慮した構成が要望されている。
【課題を解決するための手段】
【００１０】
本発明のある実施の形態に係る生産システムは、ワークを製造する製造装置と、ワークに対する後処理を実施する後処理装置と、製造装置により製造されるワークを後処理装置まで搬送する複数のコンベアと、製造装置に接続されたコンベア上に配置され、当該コンベア上を移動するワークを認識するとともに、コンベア上のワーク密度を計測する画像センサと、製造装置に接続されたコンベア上のワークをピックするロボットと、制御装置とを含む。制御装置は、画像センサからの認識結果に基づいて、コンベア上の各ワークの位置を特定するとともに、ロボットに対して対象のワークをピックするための第１のタスクと、製造装置での処理を実現するための第２のタスクと、後処理装置での処理を実現するための第３のタスクと、画像センサにより計測されたワーク密度に基づいて、製造装置および後処理装置の少なくとも一方における処理能力を調整する第４のタスクとを実行するように構成されている。
【００１１】
好ましくは、第４のタスクは、画像センサにより計測されたワーク密度と、画像センサに関連付けられたコンベアの搬送速度とに基づいて、コンベア上に存在するワークを処理するのに必要な搬送能力がロボットの搬送能力の最大値に近付いているか否かを判断する処理と、コンベア上に存在するワークを処理するのに必要な搬送能力がロボットの搬送能力の最大値に近付いている場合に、製造装置の製造能力を低減する処理とを含む。
【００１２】
好ましくは、第４のタスクは、コンベア上に存在するワークを処理するのに必要な搬送能力がロボットの搬送能力の最大値に近付いている場合に、後処理装置の処理能力を低減する処理とを含む。
【００１３】
好ましくは、第１および第４のタスクは、第２および第３のタスクに比較して、より短い実行周期で繰り返し実行される。
【００１４】
好ましくは、制御装置は、複数のコアを有するプロセッサを含み、第１および第４のタスクは、複数のコアのうち１つのコアで実行され、第２および第３のタスクは、第１のタスクが実行されるコアとは異なるコアで実行される。
【００１５】
好ましくは、第１および第４のタスクは、複数のコアのうち第１のコアで実行され、第２および第３のタスクは、複数のコアのうち第２のコアで同一の実行周期で順次実行される。
【００１６】
本発明のある実施の形態に係る制御装置は、ワークを製造する製造装置と、ワークに対する後処理を実施する後処理装置と、製造装置に接続されたコンベア上に配置され、当該コンベア上を移動するワークを認識するとともに、コンベア上のワーク密度を計測する画像センサと、製造装置に接続されたコンベア上のワークをピックするロボットとの間でデータ通信するための通信インターフェイスと、プロセッサとを含む。プロセッサは、画像センサからの認識結果に基づいて、コンベア上の各ワークの位置を特定するとともに、ロボットに対して対象のワークをピックするための第１のタスクと、製造装置での処理を実現するための第２のタスクと、後処理装置での処理を実現するための第３のタスクと、画像センサにより計測されたワーク密度に基づいて、製造装置および後処理装置の少なくとも一方における処理能力を調整する第４のタスクとを実行するように構成されている。
【００１７】
本発明のある実施の形態によれば、ワークを製造する製造装置と、ワークに対する後処理を実施する後処理装置と、製造装置により製造されるワークを後処理装置まで搬送する複数のコンベアと、製造装置に接続されたコンベア上に配置され、当該コンベア上を移動するワークを認識するとともに、ワークの認識結果に基づいて、コンベア上のワークをピックして所定位置にプレイスするトラッキングシステムとを備える生産システムにおける制御方法が提供される。制御方法は、コンベア上のワーク密度を計測するステップと、ワーク密度と、コンベアの搬送速度とに基づいて、コンベア上に存在するワークを処理するのに必要な搬送能力がトラッキングシステムの搬送能力の最大値に近付いているか否かを判断するステップと、コンベア上に存在するワークを処理するのに必要な搬送能力がロボットの搬送能力の最大値に近付いている場合に、トラッキングシステムの搬送速度を低減するとともに、製造装置における原料を加熱する温度を低減するステップとを含む。
【発明の効果】
【００１８】
本発明の実施の形態によれば、コンベアトラッキングシステムだけではなく、生産ライン全体の生産性などを考慮した構成を実現できる。
【図面の簡単な説明】
【００１９】
【図１】本実施の形態に係る生産システムの外観構成を示す模式図である。
【図２】本実施の形態に係る生産システムの制御構成を示す模式図である。
【図３】本実施の形態に係る制御装置の装置構成を概略する模式図である。
【図４】本実施の形態に係る生産システムにおける処理能力を説明するための模式図である。
【図５】本実施の形態に係る生産システムにおける能力調整を説明するための模式図である。
【図６】本実施の形態に係る生産システムにおける搬送能力および処理能力の限界を説明するための図である。
【図７】本実施の形態に係る生産システムにおけるワーク密度の計測処理を示すユーザインターフェイス画面の一例を示す図である。
【図８】本実施の形態に係る生産システムの制御装置でのプログラム実行を説明するための模式図である。
【図９】本実施の形態に係る制御装置において実行される処理手順の一例を示すフローチャートである。
【図１０】本実施の形態に係る制御装置で実行されるユーザプログラムにおいて利用できるロボットを制御するためのファンクションの一例を示す図である。
【発明を実施するための形態】
【００２０】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【００２１】
＜Ａ．生産システムの構成＞
まず、本実施の形態に係る生産システムの一例について説明する。図１は、本実施の形態に係る生産システム１の外観構成を示す模式図である。図１を参照して、生産システム１は、何らかの製品または半製品（以下、「ワークＷ」とも称す。）を製造する製造工程１０と、ワークＷを次工程へ搬送するとともに、ワークＷの分類や配置位置調整などを行う搬送工程２０と、ワークＷに対する後処理（例えば、包装処理、印字処理、箱詰め処理など）を行う後処理工程３０とを含む。
【００２２】
製造工程１０に関して、ワークＷを製造する製造装置１２が配置されるとともに、製造装置１２の一部としてコンベア１４が設けられる。
【００２３】
搬送工程２０に関して、コンベア２１およびコンベア２２からなる２つの搬送経路が設けられており、コンベア２１とコンベア２２との間でワークＷを移送する機構として、ロボット２４−１，２４−２（以下、「ロボット２４」と総称する場合がある。）が設けられている。ロボット２４−１，２４−２は、製造装置１２に接続されたコンベア上のワークをピックして、包装装置３２に接続されたコンベア上にプレイスする。より具体的には、ロボット２４−１，２４−２は、コンベア２１上を搬送される対象となるワークＷの存在が検知されると、その対象となるワークＷの位置をトラッキングしつつ、適宜のタイミングでピックして、別のコンベア２２上の所定位置に再配置する。
【００２４】
後処理工程３０に関して、ワークＷに対する後処理を実施する後処理装置が配置される。このような後処理装置の一例として、本実施の形態においては、包装装置３２を想定する。包装装置３２は、一例として、入来するワークＷの外周に包装材を配置し、熱などを与えることで、ワークＷを個別にパッケージ化する。包装装置３２の一部としてコンベア３４が設けられる。
【００２５】
搬送工程２０に配置されるコンベアトラッキングシステムは、製造装置１２により製造されるワークＷを後処理装置の一例である包装装置３２まで搬送する複数のコンベアを含む。この複数のコンベアには、コンベア２１およびコンベア２２に加えて、製造工程１０のコンベア１４および後処理工程３０のコンベア３４を含む場合もある。
【００２６】
搬送工程２０に配置されるコンベア２１の上流部には、後述の画像センサの一部であるカメラ２３ａが配置されており、コンベア２１を搬送されるワークＷを撮像する。なお、画像センサは、複数のコンベアのいずれかの位置に配置されればよい。画像センサは、配置された位置を通過するワークを認識する。
【００２７】
コンベア２１は、モータ２８−１によって回転駆動される。コンベア２１にはタッチローラが接触配置されており、このタッチローラと機械的に接続されたエンコーダ２６−１によって、コンベア２１の搬送速度や移動量などが検出される。この検出されたコンベア２１の搬送速度または移動量に基づいて、コンベア２１上のワークＷの位置がトラッキングされる。
【００２８】
同様に、搬送工程２０に配置されるコンベア２２は、モータ２８−２によって回転駆動される。コンベア２２にはタッチローラが接触配置されており、このタッチローラと機械的に接続されたエンコーダ２６−２によって、コンベア２２の搬送速度や移動量などが検出される。この検出されたコンベア２２の搬送速度または移動量に基づいて、コンベア２２上のワークＷの位置がトラッキングされる。
【００２９】
図１に示すように、本実施の形態に係るコンベアトラッキングシステムは、１または複数のコンベアと、１または複数のロボットと、画像センサとを含む。
【００３０】
図２は、本実施の形態に係る生産システム１の制御構成を示す模式図である。図２を参照して、生産システム１の全体は、制御装置１００によって制御される。制御装置１００は、フィールドネットワークＮＷを介して、生産システム１を構成する各部材と接続される。具体的には、フィールドネットワークＮＷには、製造装置１２と、モータドライバ１９，２９−１，２９−２，３９と、画像センサ２３と、カウンタ２７−１，２７−２と、ロボットコントローラ２５−１，２５−２（以下、「ロボットコントローラ２５」と総称する場合がある。）と、包装装置３２とが接続される。
【００３１】
製造装置１２は、制御装置１００からの指令に応答して、ワークＷの製造に必要な各種アクチュエータを動作させるとともに、各種センサで検出された情報を制御装置１００へ報告する。
【００３２】
モータドライバ１９は、コンベア１４を回転駆動するモータ１８と電気的に接続されており、制御装置１００からの指令に応答してモータ１８の回転数などを制御するとともに、現在のモータ１８の回転数などを制御装置１００へ報告する。
【００３３】
画像センサ２３は、カメラ２３ａがワークＷなどを撮像することで得られる画像データに対してパターンマッチングなどの画像処理を実施する。画像センサ２３は、画像処理の結果を制御装置１００へ応答する。また、画像センサ２３は、制御装置１００からの指令に応答して、画像処理を開始または停止する。
【００３４】
カウンタ２７−１は、エンコーダ２６−１から発生されるパルスをカウントし、そのカウント値を制御装置１００へ送信する。同様に、カウンタ２７−２は、エンコーダ２６−２から発生されるパルスをカウントし、そのカウント値を制御装置１００へ送信する。
【００３５】
ロボットコントローラ２５−１は、ロボット２４−１を構成するモータを駆動するためのドライバ回路などを有しており、制御装置１００からの指令に従って、ロボット２４−１の位置制御、速度制御、ピック動作などを実行させる。ロボットコントローラ２５−１は、ロボット２４−１の現在位置、現在速度、状態などを制御装置１００へ報告する。
【００３６】
同様に、ロボットコントローラ２５−２は、ロボット２４−２を構成するモータを駆動するためのドライバ回路などを有しており、制御装置１００からの指令に従って、ロボット２４−２の位置制御、速度制御、ピック動作などを実行させる。ロボットコントローラ２５−２は、ロボット２４−２の現在位置、現在速度、状態などを制御装置１００へ報告する。
【００３７】
モータドライバ２９−１は、コンベア２１を回転駆動するモータ２８−１と電気的に接続されており、制御装置１００からの指令に応答してモータ２８−１の回転数などを制御するとともに、現在のモータ２８−１の回転数などを制御装置１００へ報告する。同様に、モータドライバ２９−２は、コンベア２１を回転駆動するモータ２８−２と電気的に接続されており、制御装置１００からの指令に応答してモータ２８−１の回転数などを制御するとともに、現在のモータ２８−２の回転数などを制御装置１００へ報告する。
【００３８】
包装装置３２は、制御装置１００からの指令に応答して、ワークＷの包装に必要な各種アクチュエータを動作させるとともに、各種センサで検出された情報を制御装置１００へ報告する。
【００３９】
モータドライバ３９は、コンベア３４を回転駆動するモータ３８と電気的に接続されており、制御装置１００からの指令に応答してモータ３８の回転数などを制御するとともに、現在のモータ３８の回転数などを制御装置１００へ報告する。
【００４０】
＜Ｂ．制御装置の構成＞
次に、本実施の形態に係る制御装置１００に構成例について説明する。制御装置１００は、任意のコンピュータまたはハードウェアロジックなどを用いて実装すればよいが、以下の説明においては、典型的として、産業用コンピュータの一例であるＰＬＣ（プログラマブルコントローラ）を用いる場合について説明する。
【００４１】
図３は、本実施の形態に係る制御装置１００の装置構成を概略する模式図である。図３を参照して、制御装置１００は、主たるコンポーネントとして、プロセッサ１０２と、主メモリ１０４と、二次記憶装置１０６と、バスマスタ回路１１０と、ローカルインターフェイス回路１１２と、ネットワークマスタ回路１１４とを含む。プロセッサ１０２と他のコンポーネントとの間は、バス１０８を介して接続される。
【００４２】
制御装置１００においては、プロセッサ１０２がシステムプログラム１２０およびユーザプログラム１３０を実行することで、本実施の形態に係る制御方法を含む各種処理が提供される。
【００４３】
プロセッサ１０２は、各種プログラムに記述された命令を順に実行する演算部であり、典型的には、ＣＰＵ（Central Processing Unit）やＧＰＵ（Graphical Processing Unit）などで構成される。プロセッサ１０２としては、マルチコアの構成、マルチプロセッサの構成、両者を併せた構成のいずれを採用してもよいが、複数のコアを有しているマルチコアの構成からなるプロセッサ１０２を例示する。この例においては、プロセッサ１０２は、第１コア１０２ａおよび第２コア１０２ｂを含む。
【００４４】
主メモリ１０４は、プロセッサ１０２がプログラムを実行する際のワーク領域を提供する記憶装置である。主メモリ１０４としては、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）といった揮発性のメモリが用いられる。
【００４５】
二次記憶装置１０６は、プロセッサ１０２で実行される各種プログラムや各種コンフィギュレーションを格納する。二次記憶装置１０６としては、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などの不揮発性のメモリが用いられる。より具体的には、二次記憶装置１０６には、システムプログラム１２０およびユーザプログラム１３０が格納される。
【００４６】
システムプログラム１２０は、一種のオペレーティングシステムに相当するプログラムであり、制御装置１００が提供する基本的なシステム上の機能、あるいは、ユーザプログラム１３０を実行させるための環境を提供する。具体的な一例として、システムプログラム１２０は、シーケンスライブラリ１２２と、モーションライブラリ１２４と、スケジューラ１２６とを含む。シーケンスライブラリ１２２は、ユーザプログラム１３０に含まれるシーケンス命令を実行するためのコードを含む。モーションライブラリ１２４は、ユーザプログラム１３０に含まれるモーション命令を実行するためのコードを含む。スケジューラ１２６は、ユーザプログラム１３０を構成する各プログラム（タスク）の実行周期および実行タイミングを制御する。
【００４７】
ユーザプログラム１３０は、制御装置１００の制御対象に応じて任意に作成される一種の制御プログラムである。図１および図２に示す生産システム１に対応して、ユーザプログラム１３０は、トラッキングプログラム１３２と、製造処理制御プログラム１３４と、包装処理制御プログラム１３６と、システム能力調整プログラム１３８とを含む。ユーザプログラム１３０にて定義される処理などの詳細については後述する。
【００４８】
バスマスタ回路１１０は、機能ユニットとの間でデータを遣り取りする内部バス上のデータ伝送を管理する。機能ユニットは、制御装置１００による制御対象に対する任意の制御を実現するための各種機能を提供する。典型的には、機能ユニットの各々は、制御対象である機械や設備などからフィールド情報を収集する機能（データ収集機能）、および／または、制御対象の機械や設備などに対する指令信号を出力する機能（データ出力機能）などを有する。
【００４９】
ローカルインターフェイス回路１１２は、サポート装置や他の外部装置との間でデータを遣り取りするインターフェイスであり、例えば、ＵＳＢ（Universal Serial Bus）などの伝送規格が採用される。
【００５０】
ネットワークマスタ回路１１４は、制御装置１００とは離れた位置に配置される機能ユニットや他の制御装置との間でデータを遣り取りするフィールドネットワーク上のデータ伝送を管理する。このようなフィールドネットワークとしては、ＥｔｈｅｒＣＡＴ（登録商標）、ＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）、ＤｅｖｉｃｅＮｅｔ（登録商標）、ＣｏｍｐｏＮｅｔ（登録商標）などの定周期ネットワークが用いられる。
【００５１】
本実施の形態に係る生産システム１において、ネットワークマスタ回路１１４は、製造装置１２と、包装装置３２と、画像センサ２３と、ロボットコントローラ２５（ロボット２４）との間でデータ通信するための通信インターフェイスとして機能する。
【００５２】
＜Ｃ．制御の概要＞
次に、本実施の形態に係る生産システム１における制御の概要について説明する。図１に示すように、本実施の形態に係る生産システム１は、コンベアおよびロボットを含んで構成されるコンベアトラッキングシステムが配置される搬送工程２０と、その前工程にある製造装置１２と、その後工程にある包装装置３２とを含む。製造装置１２で順次製造されるワークＷは、包装装置３２で包装されるまで、コンベアで順次搬送されることになる。したがって、製造装置１２、コンベアトラッキングシステム、包装装置３２は互いにその動作を連携または同期させて制御する必要がある。
【００５３】
本実施の形態に係る生産システム１においては、これらの３つの構成（製造装置１２、コンベアトラッキングシステム、包装装置３２）を単一の制御装置１００にて制御する。単一の制御装置１００を用いてそれぞれの構成を制御することで、互いの状態を容易に把握できるので、動作状態を都度最適化することで、生産効率を高めることができる。
【００５４】
図４は、本実施の形態に係る生産システム１における処理能力を説明するための模式図である。図４を参照して、例えば、製造装置１２は、連続的にワークＷを製造する能力を有しており、この製造能力は、各部の動作速度などを調整することで、製造能力をＭｍｉｎ〜Ｍｍａｘ［個／時間］の間で調整可能であるとする。また、包装装置３２は、ワークＷを包装材で包んだ上で、順次接続する能力を有しており、コンベアの搬送速度および切断用のカッターの回転速度などを調整することで、包装能力をＮｍｉｎ〜Ｎｍａｘ［個／時間］の間で調整可能であるとする。
【００５５】
このような複数の工程が連続して配置されるような生産システムにおいては、工程間の処理能力の差によって生産量に制約が発生し得る。このような生産量に生じる制約に対して、各種ツールを適用して、生産量を最大化するというアプローチが知られている。このようなアプローチの一例として、制約条件の理論（ＴＯＣ：theory of constraints）が知られている。
【００５６】
このような生産量の制約としては以下のような現象が考えられる。
例えば、製造装置の製造能力が高く、単位時間当たりに製造されるワークの数が多くなれば、製造装置の次工程として設置されている搬送工程２０においては、各ロボットがワークをピックすることができなくなる。このような事態を防止するために、ワークの製造装置の最大能力（単位時間当たりの生産量の最大値）を基準としてロボットの台数を決定せざるを得ない。この結果、製造装置の平均的な生産量に比較して、過剰な数のロボットを設置しなければならない。
【００５７】
また、搬送工程２０にて搬送されたワークを包装装置で包装する場合において、包装装置の包装能力には限界があるため、包装装置の前工程からのワークの搬送量が増大すると、それらをバッファリングするための機構を用意しなければならない。
【００５８】
本実施の形態に係る生産システム１においては、制御装置１００がこのような複数工程間の能力差を考慮しつつ、制御装置１００において、ボトルネックとなり得る工程の処理能力を基準とすることで、そのボトルネックによる制約を緩和する。これは、搬送工程２０（ロボット２４−１，２４−２）の搬送能力によって、前工程および後工程の生産量を調整することができるためである。
【００５９】
一例として、図４に示す３つの工程において、搬送工程２０におけるロボットによるワークのピッキング能力がシステム全体の中でボトルネックになっている場合を想定する。以下に説明する本発明の技術的思想は、このような前提に限られるものではなく、ボトルネックとなり得る工程に対して、適宜適用可能である。
【００６０】
但し、図４に示すような生産システム１において、製造装置１２および包装装置３２については、ワークを連続的に生産または包装するような機構であるため、主要部分の改造によって処理能力を比較的容易に向上させることができる。一方、搬送工程２０では、ワークを認識し、ロボットを用いて各認識されるワークを都度搬送する必要があるため、ワークに対して連続的な処理を実現することはできない。そのため、搬送工程２０（ロボット２４−１，２４−２）が生産システム１においてボトルネックになる可能性が相対的に高い。
【００６１】
搬送工程２０において、ロボットを追加することはコスト的に難しい場合もあり、また、限られたスペースに配置できるロボットの数には制約がある。
【００６２】
このように、生産システム１においては、搬送工程２０（ロボット２４−１，２４−２）の搬送能力がボトルネックとなり、この搬送能力を超えてワークを搬送できない。そこで、本実施の形態に係る生産システム１においては、搬送工程２０の搬送能力を超えないように、前工程および後工程の少なくとも一方の能力を調整する。
【００６３】
図５は、本実施の形態に係る生産システム１における能力調整を説明するための模式図である。図５を参照して、搬送工程２０においてワーク密度（詳細については後述する）を計測し、その計測されたワーク密度が搬送工程２０の搬送能力に適合しているか否かが判断される。そして、ワーク密度が搬送工程２０の搬送能力に適合していないと判断された場合には、製造装置１２に対する製造能力の調整および包装装置３２に対する包装能力の調整の少なくとも一方が指示される。
【００６４】
このようなボトルネックになり得る搬送工程２０での処理負荷に相当するワーク密度を計測し、この計測したワーク密度に応じて、前工程および後工程での処理能力を調整することで、生産システム１の全体としての処理能力を最適化する。
【００６５】
＜Ｄ．搬送能力と前工程および後工程における処理能力との関係＞
次に、本実施の形態に係る生産システム１における搬送能力と前工程および後工程における処理能力との関係について説明する。
【００６６】
図６は、本実施の形態に係る生産システム１における搬送能力および処理能力の限界を説明するための図である。図６を参照して、ワーク密度は、搬送工程２０においてトラッキング対象として与えられるワークＷの面積当たりの個数を意味し、コンベア上に配置されたワークＷの単位面積当たりの個数に相当する。
【００６７】
本実施の形態に係る生産システム１においては、典型例として、画像センサ２３のカメラ２３ａが撮像することで得られる画像データからワーク密度が計測される。より具体的には、任意のタイミングの撮像により取得された画像データに含まれるワークＷの数を、カメラ２３ａの撮像視野に関連付けて設定された撮像エリアの面積Ｓｃで除することで、ワーク密度を計測できる。より具体的には、画像センサ２３のカメラ２３ａにより取得された画像データに含まれるワークの数Ｎｃと、撮像エリアの面積Ｓｃとの関係から、画像センサ２３のカメラ２３ａに関連付けられた撮像エリアにおいて計測されたワーク密度Ｗｃ［個／ｍ２］は、以下のように算出できる。
【００６８】
ワーク密度Ｗｃ＝ワークの数Ｎｃ／撮像エリアの面積Ｓｃ
一方、搬送工程２０（ロボット２４−１，２４−２）の搬送能力（単位時間当たりに搬送可能なワークの数）に相当する、単位時間当たりのワーク搬送数をＷｍ［個／時間］とする。
【００６９】
一方、コンベアトラッキングシステムでのコンベアトラッキングできる幅（トラッキングエリア幅）をＬ［ｍ］とし、コンベアの搬送速度をＶ［ｍ／時間］とすると、トラッキングエリアに進入するワークの単位時間当たりの個数をＷｔ［個／時間］は、以下のように算出できる。
【００７０】
Ｗｔ＝Ｗｃ×Ｌ×Ｖ［個／時間］
搬送工程２０においてこのトラッキングエリアに進入するワークのすべてを処理するためには、以下の条件が成立しなければならない。
【００７１】
Ｗｍ≦Ｗｔ＝Ｗｃ×Ｌ×Ｖ［個／時間］
つまり、搬送工程２０にて搬送されたワークを包装装置で包装する場合においては、上述の条件が成立しなければならない。また、トラッキングエリアに進入するワークの単位時間あたりの個数Ｗｔが包装装置３２に与えられる単位時間当たりのワークＷの個数に相当する。
【００７２】
コンベア上のワーク密度は画像センサ２３によって計測されるようにしてもよいし、画像センサ２３による画像処理結果に基づいて、制御装置１００においてワーク密度を計測するようにしてもよい。画像センサ２３がワーク密度を計測する場合には、ワークの認識処理と連携させた処理として実装することができる。制御装置１００がワーク密度を計測する場合には、画像センサ２３は、撮像した画像データに写っているワークの数を画像処理結果として出力する。制御装置１００は、予め設定されていたカメラ２３ａの撮像範囲の大きさを利用して、ワーク密度を都度計測する。
【００７３】
本実施の形態に係る生産システム１においては、上述したような処理によって所定タイミングにおいてワーク密度を計測し、その計測したワーク密度に応じて、コンベアの前工程および後工程の能力を調整する。
【００７４】
図７は、本実施の形態に係る生産システム１におけるワーク密度の計測処理を示すユーザインターフェイス画面の一例を示す図である。図７に示すユーザインターフェイス画面２００は、制御装置１００によって提供されてもよい。ユーザインターフェイス画面２００においては、画像センサ２３のカメラ２３ａによって撮像されたカメラ画像２０２に加えて、カメラ画像２０２に対して画像処理が実施されることで取得されるワークＷの数から計測されるワーク密度２０４が表示される。撮像エリアに含まれるコンベア上に５つのワークＷが配置されている例を示す。この例においては、ワーク密度が７．３個／ｍ２と計測されている。
【００７５】
ユーザは、このようなユーザインターフェイス画面２００を参照することで、生産システム１の稼動状況などを把握することができる。なお、ユーザインターフェイス画面２００を必ずしも提供する必要はなく、制御装置１００の内部にて処理するようにしてもよい。
【００７６】
このように、本実施の形態に係る生産システム１には、接続されたカメラ２３ａにより撮像された画像データに対する画像処理を実行する画像センサ２３を採用してもよい。画像センサ２３は、撮像された画像データに含まれるワークＷの数に基づいてワーク密度を計測する機能と、撮像された画像データとともに、計測されたワーク密度を含むユーザインターフェイス画面２００を提供する機能とを有するように構成してもよい。
【００７７】
＜Ｅ．前工程および後工程の処理能力の調整＞
次に、上述したような手順によって計測されるワーク密度に基づいて、前工程および後工程の処理能力を調整する方法について説明する。
【００７８】
上述したように、トラッキングエリアに進入するワークＷの単位時間あたりの個数Ｗｔが搬送工程２０における搬送能力を超えないように調整する必要がある。そのため、トラッキングエリアに進入するワークＷの単位時間あたりの個数Ｗｔが搬送工程２０における搬送能力に近付くと、コンベアの前工程に配置される製造装置１２によって製造されるワークＷの数を低減させることになる。つまり、ロボット２４−１，２４−２の単位時間当たりの搬送能力を超えるようなワークＷが製造される場合には、製造装置１２の生産能力を低減させる指令が制御装置１００から与えられる。このような生産能力を調整する指令が与えられることで、搬送能力を超えるワークＷがコンベア上を流れないように制御される。
【００７９】
製造装置１２の生産能力を低減させる方法としては、製造装置１２の装置特性などに応じた手段を用いることができる。例えば、製造装置１２が原料を加熱した上で何らかの製品に加工するような処理を行う場合には、製造装置１２において原料を加熱する温度を低減させるようにしてもよい。つまり、ワークに与えられる総熱量は維持されなければならず、原料に対する加熱温度を低減させることで、単位時間当たりに生産されるワークの数を低減させることができる。
【００８０】
逆に、製造装置１２の生産能力に対して、ロボット２４−１，２４−２の単位時間当たりの搬送能力に十分な余裕がある場合には、製造装置１２の生産能力を増加させる指令が制御装置１００から与えられる。この場合には、製造装置１２における原料に対する加熱温度を増加させるようにしてもよい。併せて、製造装置１２への原料の単位時間あたりの供給量を増加させることで、各ワークに与えられる総熱量を維持しつつ、単位時間当たりの製造量を増加させることができる。
【００８１】
このように、製造装置１２の生産能力は、トラッキングエリアに進入するワークＷの単位時間あたりの個数が搬送工程２０における搬送能力になるべく近付くように制御される。
【００８２】
また、後工程にある包装装置３２の包装能力を調整するようにしてもよい。この場合には、包装装置３２のコンベア３４の搬送速度を増加または低減させることで、単位時間当たりに包装されるワークＷの数を増加または低減させることができる。なお、包装装置３２のコンベア３４の搬送速度を増加または低減させるに伴って、関連する各部（例えば、切断部）などの動作も連動して高速化または低速化させる。
【００８３】
このように、包装装置３２の搬送量は、トラッキングエリアに進入するワークＷの単位時間あたりの個数が搬送工程２０における搬送能力になるべく近付くように制御される。
【００８４】
＜Ｆ．実行されるプログラム＞
次に、本実施の形態に従う制御装置１００の処理を実現するためのプログラムについて説明する。
【００８５】
図３に示すように、制御装置１００で実行されるユーザプログラム１３０は、トラッキングプログラム１３２と、製造処理制御プログラム１３４と、包装処理制御プログラム１３６と、システム能力調整プログラム１３８とを含む。後述するように、各プログラムの特性に応じて、トラッキングプログラム１３２およびシステム能力調整プログラム１３８の実行周期は、製造処理制御プログラム１３４および包装処理制御プログラム１３６の実行周期に比較して高速化することが好ましい。
【００８６】
トラッキングプログラム１３２は、コンベア２１およびコンベア２２にそれぞれ配置されたカウンタ２７−１およびカウンタ２７−２からカウント値を取得し、ロボットコントローラ２５−１およびロボットコントローラ２５−２へ取得したカウント値を送信する処理を含む。
【００８７】
また、トラッキングプログラム１３２は、コンベア２１のカウント値に基づいて撮像開始条件が成立したか否かを判断し、撮像開始条件が成立した場合には、画像センサ２３に対して撮像のトリガを送信する処理を含む。撮像開始条件としては、コンベア２１のカウント値は、前回の撮像から所定値（典型的には、カメラ２３ａの視野に応じて定められる）だけ増加したことを含む。つまり、コンベア２１上を移動するワークＷに対して、コンベア２１が所定間隔だけ移動する毎に繰り返し撮像を行う。カメラ２３ａにより撮像された画像に基づいて、画像センサ２３はパターンマッチングなどによって、撮像視野に含まれるワークＷの位置などを含む計測結果を制御装置１００へ応答する。
【００８８】
このように、画像センサ２３は、製造装置１２に接続されたコンベア１４上に配置され、コンベア１４上を移動するワークＷを認識する。
【００８９】
また、トラッキングプログラム１３２は、画像センサ２３からの計測結果に基づいて、コンベア２１上に新たなワークＷが配置されたか否かを判断するとともに、それぞれのコンベアのカウント値の増加量に基づいて、コンベア２１およびコンベア２２上に存在するワークＷの位置を更新する処理を含む。さらに、トラッキングプログラム１３２は、各ワークＷのトラッキング結果に基づいて、対象のワークＷをピックするための命令をロボットコントローラ２５−１，２５−２へ送信する処理を含む。ピックするための命令に応答して、ロボットコントローラ２５−１，２５−２は、コンベア２１上を移動するワークＷに追従して移動する（追っかけ動作を行う）とともに、対象のワークＷをピックして、コンベア２２上にプレイスする。
【００９０】
なお、コンベア２１およびコンベア２２の搬送速度については、ロボットの搬送能力に応じて決定される。
【００９１】
システム能力調整プログラム１３８は、画像センサ２３のからの画像データまたは計測結果に基づいて、所定周期毎または何らかのイベント毎にワーク密度を計測するとともに、計測したワーク密度に応じて、前工程および後工程の少なくとも一方の能力を調整する指令を出力する。
【００９２】
より具体的には、システム能力調整プログラム１３８によって生成されるタスクは、画像センサ２３により計測されたワーク密度Ｗｃと、画像センサ２３に関連付けられたコンベアの搬送速度Ｖとに基づいて、コンベア上に存在するワークＷを処理するのに必要な搬送能力がロボット２４の搬送能力を最大値に近付いているか否かを判断する処理と、コンベア上に存在するワークＷを処理するのに必要な搬送能力がロボット２４の搬送能力の最大値に近付いている場合に、製造装置１２の製造能力を低減する処理とを含む。
【００９３】
さらに、システム能力調整プログラム１３８によって生成されるタスクは、コンベア上に存在するワークＷを処理するのに必要な搬送能力がロボット２４の搬送能力の最大値に近付いている場合に、包装装置３２の処理能力を低減する処理を含んでいてもよい。
【００９４】
製造処理制御プログラム１３４および包装処理制御プログラム１３６は、製造装置１２のコンベア１４、および、包装装置３２のコンベア３４の搬送速度を制御する命令を含む。具体的には、製造処理制御プログラム１３４は、コンベア２１の搬送速度と同期するように、コンベア１４の搬送速度を制御する命令を含む。包装処理制御プログラム１３６は、コンベア２２の搬送速度と同期するように、コンベア３４の搬送速度を制御する命令を含む。製造処理制御プログラム１３４および包装処理制御プログラム１３６は、システム能力調整プログラム１３８からの指令に応じて、製造装置１２および包装装置３２における能力を調整する。
【００９５】
製造処理制御プログラム１３４は、コンベア１４の搬送速度と同期するように、製造装置１２の各部（例えば、ヒータ温度、ブロー温度、ブロー風量、ブレス回数など）を制御するための命令を含む。
【００９６】
包装処理制御プログラム１３６は、コンベア３４の搬送速度および位置と同期するように、包装装置３２のカム動作およびギア動作を制御するための命令を含む。包装処理制御プログラム１３６は、包装装置３２に含まれるコンベア３４の搬送速度の制御と、包装装置３２に含まれる切断機構の開始タイミングの制御とを行うことになるが、これらは互いに関連しているため、いずれか一方を主として、他方の従とするような制御を行うことが好ましい。具体的には、コンベア３４の搬送速度を主軸とし、切断機構を従軸として同期制御を行う。このような主従制御を用いることで、コンベア３４の搬送速度が変化した場合であっても、コンベア３４と切断機構との間での同期を維持できる。
【００９７】
包装装置３２において、包装処理を開始直後において、コンベア３４の搬送速度と切断機構の回転速度とを同期させるにあたっては、両方を一斉に動作開始させるのではなく、コンベア３４の搬送を開始させた後、切断機構の回転を開始させ、その後、コンベア３４の搬送速度に同期するように、加速するような処理を行うことが好ましい。このように、コンベア３４および切断機能の速度をそれぞれ制御することで、機械的な衝撃の発生を低減できる。
【００９８】
このように、生産システム１の各コンベア上に存在するワークＷの数などに応じて、各コンベアの搬送速度を可変にしてもよい。いずれかのコンベアの搬送速度を変化させた場合には、包装処理制御プログラム１３６が、関連するコンベアおよび製造装置１２または包装装置３２の処理能力を変化させるようにすることが好ましい。
【００９９】
なお、上述の説明においては、トラッキングプログラム１３２およびシステム能力調整プログラム１３８を異なるプログラムとして実装する場合について例示したが、これに限られず。両プログラムを結合して単一のプログラムとして実装してもよい。
【０１００】
＜Ｇ．プログラムの優先度＞
本実施の形態に係る生産システム１においては、制御装置１００の処理リソースをより多く割り当てることで、ボトルネックとなっている搬送工程２０の能力を向上させるようにしてもよい。
【０１０１】
図８は、本実施の形態に係る生産システム１の制御装置１００でのプログラム実行を説明するための模式図である。図８には、一例として、制御装置１００が２つのコア（１コアおよび第２コア）を含むプロセッサ１０２を搭載している場合の処理例を示す。
【０１０２】
制御装置１００においては、プログラムを周期的に実行する環境が用意されており、予め定められた制御周期毎にプログラムを実行するためのイベントが発生する。各プログラムは「タスク」として実行周期が管理されている。これらのタスクのうち、プログラムの実行周期が短く、他のプログラムに対して優先的に実行されるものを「高優先タスク」と称し、プログラムの実行周期（タスク実行周期）が長く、他のプログラムに対して優先度が低いものを「低優先タスク」と称する。
【０１０３】
トラッキングプログラム１３２は、画像センサ２３からの認識結果に基づいて、コンベア上の各ワークＷの位置を特定するとともに、ロボットに対して対象のワークＷをピックするためのタスクを生成する。製造処理制御プログラム１３４は、製造装置１２での処理を実現するためのタスクを生成する。包装処理制御プログラム１３６は、後処理装置の一例である包装装置３２での処理を実現するためのタスクを生成する。システム能力調整プログラム１３８は、画像センサ２３により計測されたワーク密度に基づいて、製造装置１２および包装装置３２の少なくとも一方における処理能力を調整するタスクを生成する。より具体的には、システム能力調整プログラム１３８は、ワーク密度に基づいて、製造装置１２の製造能力および包装装置３２の包装能力を調整する。
【０１０４】
これらのプログラムのうち、トラッキングプログラム１３２およびシステム能力調整プログラム１３８は高優先タスクとして設定され、製造処理制御プログラム１３４および包装処理制御プログラム１３６は低優先タスクとして設定される。すなわち、トラッキングプログラム１３２およびシステム能力調整プログラム１３８が係る高優先タスクは、製造処理制御プログラム１３４および包装処理制御プログラム１３６に係る低優先タスクに比較して、より短い実行周期で繰り返し実行される。
【０１０５】
制御装置１００において、プログラムの実行周期は、制御周期の整数倍として予め規定することができ、図８に示す例では、高優先タスクとして設定されているトラッキングプログラム１３２およびシステム能力調整プログラム１３８の実行周期は、制御周期と一致するように設定されており、低優先タスクとして設定されている製造処理制御プログラム１３４および包装処理制御プログラム１３６の実行周期は、制御周期の２倍と一致するように設定されている。これらのプログラムは、優先度に応じてそれぞれのコアに割り当てられて実行されるとする。
【０１０６】
図８に示す例では、第１コアに対して、トラッキングプログラム１３２およびシステム能力調整プログラム１３８が割り当てられ、第２コアに対して、製造処理制御プログラム１３４および包装処理制御プログラム１３６が割り当てられている。すなわち、トラッキングプログラム１３２およびシステム能力調整プログラム１３８に係る高優先タスクは、複数のコアのうち１つのコアで実行され、製造処理制御プログラム１３４および包装処理制御プログラム１３６に係る低優先タスクは、高優先タスクが実行されるコアとは異なるコアで実行される。そして、それぞれのコアにおいて、指定された実行周期にて各プログラムが実行される。
【０１０７】
なお、トラッキングプログラム１３２に係る高優先タスク、および、システム能力調整プログラム１３８に係る高優先タスクは、さらに別々のコアで実行されるようにしてもよい。同様に、製造処理制御プログラム１３４に係る低優先タスク、および、包装処理制御プログラム１３６に係る低優先タスクは、さらに別々のコアで実行されるようにしてもよいが、図８に示す例では、２つの低優先タスクが第２コアで同一の実行周期で順次実行される例を示す。このような構成を採用することで、第２コアの利用度を高めることができる。
【０１０８】
図８に示す「Ｉ／Ｏ処理」は、機能ユニットを介してフィールドからの信号の取り込み（入力処理）および機能ユニットを介してフィールドへの指令の出力（出力処理）を意味する。このようなＩ／Ｏ処理は、システムプログラム１２０の責務の一部として実行される。ユーザプログラムの実行途中にＩ／Ｏ処理が実行されると、入力データおよび出力データの整合性が取れなくなる可能性があるので、基本的には、ユーザプログラムに含まれる各プログラムの実行周期に合わせて実行される。
【０１０９】
図８に示す例においては、トラッキングプログラム１３２およびシステム能力調整プログラム１３８は制御周期と同じ周期で同期して繰り返し実行されるので、Ｉ／Ｏ処理についても、制御周期と同じ周期で繰り返し実行される。一方、製造処理制御プログラム１３４および包装処理制御プログラム１３６については、制御周期の２倍の周期で繰り返し実行されるので、それに合わせて、Ｉ／Ｏ処理についても繰り返し実行される。なお、包装処理制御プログラム１３６に必要なＩ／Ｏ処理についても、製造処理制御プログラム１３４の実行前に併せて実行される。
【０１１０】
なお、図８には、第１コアおよび第２コアでそれぞれプログラムを実行する例を示したが、単一のプロセッサにて４つのプログラムを実行させるようにしてもよい。この場合には、高優先タスクとして設定されているトラッキングプログラム１３２およびシステム能力調整プログラム１３８を指定された実行周期で実行するとともに、トラッキングプログラム１３２またはシステム能力調整プログラム１３８が実行されていない空時間において、製造処理制御プログラム１３４および包装処理制御プログラム１３６が断片的に実行されることになる。この場合であっても、製造処理制御プログラム１３４および包装処理制御プログラム１３６の各実行に要する時間が指定されたプログラムの実行周期を超えなければ、制御上の問題はない。
【０１１１】
図８に示すように、ボトルネックとなり得る搬送工程２０に係る処理については、より実行周期を短くすることで、処理能力を高めることで、生産システム１全体の生産効率を高めることができる。
【０１１２】
＜Ｈ．処理手順＞
次に、本実施の形態に係る制御装置１００において実行される処理の一例について説明する。図９は、本実施の形態に係る制御装置１００において実行される処理手順の一例を示すフローチャートである。図９に示す各ステップは、典型的には、プロセッサ１０２がトラッキングプログラム１３２およびシステム能力調整プログラム１３８を実行することで実現される。すなわち、図９に示す処理手順は、主として、高優先タスクによって実現される。
【０１１３】
図９を参照して、プロセッサ１０２は、画像センサ２３から画像処理結果を受信したか否かを判断する（ステップＳ１００）。画像センサ２３から画像処理結果を受信した場合（ステップＳ１００においてＹＥＳの場合）には、プロセッサ１０２は、トラッキングエリア上のワークの位置を更新する（ステップＳ１０２）。画像センサ２３から画像処理結果を受信していない場合（ステップＳ１００においてＮＯの場合）には、ステップＳ１０２の処理はスキップされる。
【０１１４】
続いて、プロセッサ１０２は、ロボット２４が新たなワークをピックできる状態であるか否かを判断する（ステップＳ１０４）。ロボット２４が新たなワークをピックできる状態である場合（ステップＳ１０４においてＹＥＳの場合）には、プロセッサ１０２は、トラッキングエリア上のワークの位置に基づいて、ロボットコントローラ２５に対していずれかのワークに対するピックの指令を出力する（ステップＳ１０６）。ロボット２４が新たなワークをピックできる状態ではない場合（ステップＳ１０４においてＮＯの場合）には、ステップＳ１０６の処理はスキップされる。
【０１１５】
続いて、プロセッサ１０２は、画像センサ２３からワーク密度を受信したか否かを判断する（ステップＳ１０８）。画像センサ２３からワーク密度を受信した場合（ステップＳ１０８においてＹＥＳの場合）には、プロセッサ１０２は、受信されたワーク密度に基づいて、コンベア上に存在するワークを処理するのに必要な搬送能力が搬送工程２０の搬送能力の最大値に近付いているか否かを判断する（ステップＳ１１０）。
【０１１６】
コンベア上に存在するワークを処理するのに必要な搬送能力が搬送工程２０の搬送能力の最大値に近付いている場合（ステップＳ１１０においてＹＥＳの場合）には、プロセッサ１０２は、前工程にある製造装置１２に対してワークの生産能力を低減させるための指令を出力する（ステップＳ１１２）。併せて、後工程にある包装装置３２に対してワークの包装能力を低減させるための指令を出力してもよい。
【０１１７】
コンベア上に存在するワークを処理するのに必要な搬送能力が搬送工程２０の搬送能力の最大値に近付いていない場合（ステップＳ１１０においてＮＯの場合）には、プロセッサ１０２は、コンベア上に存在するワークを処理するのに必要な搬送能力が搬送工程２０の搬送能力の最大値に比較して余裕があるか否かを判断する（ステップＳ１１４）。
【０１１８】
コンベア上に存在するワークを処理するのに必要な搬送能力が搬送工程２０の搬送能力の最大値に比較して余裕がある場合（ステップＳ１１４においてＹＥＳの場合）には、プロセッサ１０２は、前工程にある製造装置１２に対してワークの生産能力を増加させるための指令を出力する（ステップＳ１１６）。併せて、後工程にある包装装置３２に対してワークの包装能力を増加させるための指令を出力してもよい。
【０１１９】
コンベア上に存在するワークを処理するのに必要な搬送能力が搬送工程２０の搬送能力の最大値に比較して余裕がない場合（ステップＳ１１４においてＮＯの場合）には、ステップＳ１１６の処理はスキップされる。
【０１２０】
一方、画像センサ２３からワーク密度を受信していない場合（ステップＳ１０８においてＮＯの場合）には、ステップＳ１１０〜Ｓ１１６の処理はスキップされる。
【０１２１】
最終的に、プロセッサ１０２は、制御周期とコンベアの搬送速度とに基づいて、コンベア上に存在する各ワークの位置を更新する（ステップＳ１１８）。そして、処理は繰り返される。
【０１２２】
上述のような処理手順を実施することで、生産システム１における制御方法としては、コンベア上のワーク密度を計測する工程と、ワーク密度と、コンベアの搬送速度とに基づいて、コンベア上に存在するワークを処理するのに必要な搬送能力がトラッキングシステムの搬送能力の最大値に近付いているか否かを判断する工程とを含む。そして、コンベア上に存在するワークＷを処理するのに必要な搬送能力がトラッキングシステムの搬送能力の最大値に近付いている場合に、製造装置１２に接続されたコンベアの搬送速度を低減するとともに、製造装置１２における原料を加熱する温度を低減する工程を実施してもよい。
【０１２３】
＜Ｉ．包装装置との間の遅延時間の補償＞
本実施の形態に係る生産システム１においては、搬送工程２０に関する処理が高優先タスクとして実行され、製造装置１２および包装装置３２に関する処理が低優先タスクとして実行される。そのため、製造装置１２および包装装置３２の状態値からの取得、および、製造装置１２および包装装置３２への指令出力の周期が相対的に長くなる。一方で、包装装置３２の切断タイミングなどについては、しかるべき精度が必要である。
【０１２４】
そのため、本実施の形態に係る生産システム１においては、制御装置１００と包装装置３２との間の遅延時間を補償する機能を実装することが好ましい。このような補償機能のいくつかについて説明する。
【０１２５】
（１）指令遅れ補償
制御装置１００と包装装置３２とは、フィールドネットワークＮＷを介して接続されており、制御装置１００において包装装置３２からのフィールド情報を取得し、指令を生成し、その指令を包装装置３２へ送信するという一連の処理において、制御装置１００でのタスク実行周期およびフィールドネットワークＮＷの伝搬時間などが遅延時間として生じ得る。このような遅延時間を予め測定し、あるいは、予め設定値などから遅延時間を見積もっておき、この推定された遅延時間だけ早く指令を送出することで、実際に包装装置３２で何らかの動作が開始されるタイミングが遅延することを補償してもよい。
【０１２６】
（２）カムテーブル
一般的に、浮動小数点などを含む数値演算の実行には、制御装置１００の処理リソースを多く使用するので、このような数値演算は可能な限り避けることが好ましい。一方で、包装装置３２に含まれる切断機構としては、一対の回転刃を含む回転機構で実現されることが多く、このような回転機構を制御するためには、各タイミングにおける角度を指示する必要がある。このような各時間における回転機構の角度を指定するためには、三角関数を含む数値演算がある。このような数値演算を回避するために、回転機構の時間毎の特性（タイミングと回転角度との対応関係）を予め規定したテーブル（カムテーブル）を用意しておき、このカムテーブルを都度参照することで、必要な指令を生成するようにしてもよい。このようなカムテーブルを採用することで、三角関数を含む数値演算などを周期毎に実行しなくても、高精度な位置制御を実現できる。
【０１２７】
＜Ｊ．実装例＞
上述したように、本実施の形態に係る制御装置１００は、製造工程１０（製造装置１２およびコンベア１４）、搬送工程２０（コンベア２１，２２およびロボット２４−１，２４−２を含むコンベアトラッキングシステム）、後処理工程３０（包装装置３２およびコンベア３４）の３つの工程を複数のタスクを実行させることで制御する。
【０１２８】
製造工程１０および後処理工程３０の多くは、シーケンス命令を用いることで制御が実現される。一方、搬送工程２０については、各ワークの位置をコンベアの搬送速度に応じて更新するとともに、ロボットコントローラ２５−１，２５−２に対してロボット２４−１，２４−２の位置指令などを与える必要がある。ロボット２４−１，２４−２の位置指令を計算して指令として出力する処理は複雑であるため、ユーザプログラム１３０の作成を支援するためには、ロボットコントローラ２５−１，２５−２に対して出力される位置指令の算出などを簡素化するためのファンクションブロックを予め用意することが好ましい。
【０１２９】
ユーザは、このようなファンクションブロックをユーザプログラムの一部として定義することで、当該ユーザプログラムの実行時には、プロセッサ１０２は、モーションライブラリ１２４（図３参照）などを呼び出して、指定されたファンクションブロックに関連付けられている処理を実行する。すなわち、ファンクションブロックを予め用意しておくことで、ユーザプログラムの作成の作業効率およびユーザプログラムの再利用性を向上できる。
【０１３０】
図１０は、本実施の形態に係る制御装置１００で実行されるユーザプログラムにおいて利用できるロボットを制御するためのファンクションの一例を示す図である。図１０を参照して、図１０に示すファンクションには、構造体変数である「ＲｏｂｏｔＤａｔａ」が関連付けられており、「ＲｏｂｏｔＤａｔａ」のメンバ変数には、ロボットの制御に関する情報が格納される。
【０１３１】
入力変数「Ｅｘｅｃｕｔｅ」をＴＲＵＥにすると、構造体変数である「ＲｏｂｏｔＤａｔａ」を用いたコンベアトラッキング処理が開始される。何らかのコマンドが受け付けられると変数「Ｂｕｓｙ」がＴＲＵＥとなり、何らかの指令値が出力されると変数「Ａｃｔｉｖｅ」がＴＲＵＥとなる。また、コマンドが中断されると変数「ＣｏｍｍａｎｄＡｂｏｒｔ」がＴＲＵＥとなる。何らかのエラーが発生すると変数「Ｅｒｒｏｒ」がＴＲＵＥとなり、変数「ＥｒｒｏｒＩＤ」にはそのエラーを示すエラーＩＤがセットされる。
【０１３２】
プログラム開発者は、このようなファンクションブロックを使用することで、複雑なコンベアトラッキングを実現するために必要なコードの量を低減できる。このようなファンクションブロックは、上述したような、コンベアトラッキングシステムを制御するためのトラッキングプログラム１３２に用いられる。すなわち、トラッキングプログラム１３２の少なくとも一部は、図１０に示すような、ロボットに対する制御に関するファンクションブロックを用いて記述されてもよい。
【０１３３】
＜Ｋ．利点＞
本実施の形態によれば、コンベアトラッキングシステムで取り扱うワークのコンベア上のワーク密度を計測するとともに、その計測したワーク密度に基づいて、コンベアトラッキングシステムの前工程または後工程に配置される装置に対して各種指令を与える。これによって、コンベアおよびロボットなどから構成されるコンベアトラッキングシステムだけではなく、生産ライン全体の生産性などを考慮した構成を実現できる。
【０１３４】
本実施の形態によれば、コンベアトラッキングシステムの制御を実現するためのタスクを他のタスクより短い周期で繰り返し実行するため、コンベアトラッキングシステムを構成するロボットおよびコンベアの応答速度を向上させることができる。そのため、コンベアおよびロボットに対して、要求される制御性能に適した周期で指令を与えることができ、これによって、コンベアトラッキングシステムを構成するロボットを、その前工程に配置される製造装置１２およびその後工程に配置される包装装置３２とより高い精度で同期させることができる。
【０１３５】
このような生産システム１におけるボトルネックとなり得るコンベアトラッキングシステムの性能を高めることができ、生産システム１における生産効率を最適化できる。
【０１３６】
また、本実施の形態に係る生産システム１においては、単一の制御装置１００により複数の工程を制御できるので、生産システム１全体のコストを低減できる。また、単一の制御装置１００において各工程間の情報を共有できるので、通信遅延などによる遅れの影響を最小化できる。
【０１３７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１３８】
１  生産システム、１０  製造工程、１２  製造装置、１４，２１，２２，３４  コンベア、１８，２８−１，２８−２，３８  モータ、１９，２９−１，２９−２，３９  モータドライバ、２０  搬送工程、２３  画像センサ、２３ａ  カメラ、２４−１，２４−２  ロボット、２５−１，２５−２  ロボットコントローラ、２６−１，２６−２  エンコーダ、２７−１，２７−２  カウンタ、３０  後処理工程、３２  包装装置、１００  制御装置、１０２  プロセッサ、１０２ａ  第１コア、１０２ｂ  第２コア、１０４  主メモリ、１０６  二次記憶装置、１０８  バス、１１０  バスマスタ回路、１１２  ローカルインターフェイス回路、１１４  ネットワークマスタ回路、１２０  システムプログラム、１２２  シーケンスライブラリ、１２４  モーションライブラリ、１２６  スケジューラ、１３０  ユーザプログラム、１３２  トラッキングプログラム、１３４  製造処理制御プログラム、１３６  包装処理制御プログラム、１３８  システム能力調整プログラム、２００  ユーザインターフェイス画面、２０２  カメラ画像、２０４  ワーク密度、ＮＷ  フィールドネットワーク、Ｗ  ワーク。
【図１】
2018097661.tif 000003
【図２】
2018097661.tif 000004
【図３】
2018097661.tif 000005
【図４】
2018097661.tif 000006
【図５】
2018097661.tif 000007
【図６】
2018097661.tif 000008
【図７】
2018097661.tif 000009
【図８】
2018097661.tif 000010
【図９】
2018097661.tif 000011
【図１０】
2018097661.tif 000012