IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オムロン株式会社の特許一覧

特許7666032複数の移動機構を制御するシステムおよび方法
<>
  • 特許-複数の移動機構を制御するシステムおよび方法 図1
  • 特許-複数の移動機構を制御するシステムおよび方法 図2
  • 特許-複数の移動機構を制御するシステムおよび方法 図3
  • 特許-複数の移動機構を制御するシステムおよび方法 図4
  • 特許-複数の移動機構を制御するシステムおよび方法 図5
  • 特許-複数の移動機構を制御するシステムおよび方法 図6
  • 特許-複数の移動機構を制御するシステムおよび方法 図7
  • 特許-複数の移動機構を制御するシステムおよび方法 図8
  • 特許-複数の移動機構を制御するシステムおよび方法 図9
  • 特許-複数の移動機構を制御するシステムおよび方法 図10
  • 特許-複数の移動機構を制御するシステムおよび方法 図11
  • 特許-複数の移動機構を制御するシステムおよび方法 図12
  • 特許-複数の移動機構を制御するシステムおよび方法 図13
  • 特許-複数の移動機構を制御するシステムおよび方法 図14
  • 特許-複数の移動機構を制御するシステムおよび方法 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-14
(45)【発行日】2025-04-22
(54)【発明の名称】複数の移動機構を制御するシステムおよび方法
(51)【国際特許分類】
   G05B 19/042 20060101AFI20250415BHJP
【FI】
G05B19/042
【請求項の数】 10
(21)【出願番号】P 2021039467
(22)【出願日】2021-03-11
(65)【公開番号】P2022139198
(43)【公開日】2022-09-26
【審査請求日】2024-01-16
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】松永 大介
(72)【発明者】
【氏名】若年 哲司
【審査官】大古 健一
(56)【参考文献】
【文献】特開平05-333909(JP,A)
【文献】特開平03-082390(JP,A)
【文献】特開2011-243153(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/04 -19/05
(57)【特許請求の範囲】
【請求項1】
複数の移動機構をそれぞれ制御する複数の制御装置と、
前記複数の制御装置に接続された統合制御装置とを備え、
前記統合制御装置は、前記複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成し、
前記特定移動機構を制御する特定制御装置は、前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成し、
前記特定制御装置は、前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御し、
前記第1特定動作は、第1動作と第2動作とを含み、
記特定移動機構の動作は、前記第1時間帯において前記第1動作プロファイルに基づいて前記第1動作として開始され、前記第1時間帯が終了する前に前記第1動作から前記第2動作に切り替えられ、前記第2時間帯において前記第2動作プロファイルに基づいて前記第2動作として継続される、システム。
【請求項2】
複数の移動機構をそれぞれ制御する複数の制御装置と、
前記複数の制御装置に接続された統合制御装置とを備え、
前記統合制御装置は、前記複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成し、
前記特定移動機構を制御する特定制御装置は、前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成し、
前記特定制御装置は、前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御し、
前記特定制御装置は、前記第1動作プロファイルに基づいて前記特定移動機構の制御を開始し、
前記統合制御装置は、前記特定移動機構が前記第1動作プロファイルに基づいて前記第1特定動作を開始した後に、前記特定制御装置に切替指令を出力し、
前記特定制御装置は、前記切替指令を受けた後、前記第2動作プロファイルを生成し、前記特定移動機構を制御するための動作プロファイルを前記第1動作プロファイルから前記第2動作プロファイルに切り替える、システム。
【請求項3】
複数の移動機構をそれぞれ制御する複数の制御装置と、
前記複数の制御装置に接続された統合制御装置とを備え、
前記統合制御装置は、前記複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成し、
前記特定移動機構を制御する特定制御装置は、前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成し、
前記特定制御装置は、前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御し、
前記特定制御装置は、前記第2動作プロファイルを生成する前に前記統合制御装置との通信にエラーが発生した場合、停止プロファイルを生成し、前記停止プロファイルに基づいて前記特定移動機構を停止させる、システム。
【請求項4】
複数の移動機構をそれぞれ制御する複数の制御装置と、
前記複数の制御装置に接続された統合制御装置とを備え、
前記統合制御装置は、前記複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成し、
前記特定移動機構を制御する特定制御装置は、前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成し、
前記特定制御装置は、前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御し、
前記複数の移動機構の数は、3以上である、システム。
【請求項5】
前記統合制御装置は、前記複数の移動機構の各々の第2特定動作の時間変化を規定する第3動作プロファイルを生成し、
前記複数の制御装置の各々は、前記第3動作プロファイルに基づいて前記第2特定動作を行う移動機構を制御し、
前記複数の制御装置の各々は、前記複数の移動機構の各々の、前記第1特定動作および前記第2特定動作以外の動作の時間変化を規定する第4動作プロファイルを生成し、前記第4動作プロファイルに基づいて当該動作を行う移動機構を制御する、請求項1~4のいずれか1項に記載のシステム。
【請求項6】
前記第1時間帯の前記第1特定動作、および前記第2特定動作は、前記複数の移動機構が互いに協調する動作を含む、請求項5に記載のシステム。
【請求項7】
少なくとも1つのプロセッサによって実行される方法であって、
複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成するステップと、
前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成するステップと、
前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御するステップとを含み、
前記第1特定動作は、第1動作と第2動作とを含み、
記特定移動機構の動作は、前記第1時間帯において前記第1動作プロファイルに基づいて前記第1動作として開始され、前記第1時間帯が終了する前に前記第1動作から前記第2動作に切り替えられ、前記第2時間帯において前記第2動作プロファイルに基づいて前記第2動作として継続される、方法。
【請求項8】
少なくとも1つのプロセッサによって実行される方法であって、
複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成するステップと、
前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成するステップと、
前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御するステップと、
制御装置が前記第1動作プロファイルに基づいて前記特定移動機構の制御を開始するステップと、
前記特定移動機構が前記第1動作プロファイルに基づいて前記第1特定動作を開始した後に、前記制御装置に切替指令を出力するステップと、
前記切替指令を受けた後、前記第2動作プロファイルを生成し、前記特定移動機構を制御するための動作プロファイルを前記第1動作プロファイルから前記第2動作プロファイルに切り替えるステップとを含む、方法。
【請求項9】
少なくとも1つのプロセッサによって実行される方法であって、
統合制御装置が、複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成するステップと、
前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成するステップと、
前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御するステップと、
前記第2動作プロファイルを生成する前に前記統合制御装置との通信にエラーが発生した場合、停止プロファイルを生成し、前記停止プロファイルに基づいて前記特定移動機構を停止させるステップとを含む、方法。
【請求項10】
少なくとも1つのプロセッサによって実行される方法であって、
複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成するステップと、
前記第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成するステップと、
前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構を制御するステップとを含み、
前記複数の移動機構の数は、3以上である、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、複数の移動機構を制御するシステムおよび方法に関する。
【背景技術】
【0002】
従来、複数の移動機構(たとえばロボット)を制御する制御システムが知られている。たとえば、特開2001-290511号公報(特許文献1)には、制御対象を制御する複数の制御装置が相互に接続されて情報を授受する制御システムが開示されている。当該制御システムにおいては、複数の制御装置のいずれか1つが統括指令部を含むことにより、複数の制御装置を統括的かつ高速に制御することが可能になる。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2001-290511号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
複数の移動機構を制御するシステムにおいて、移動機構の動作(たとえば位置および速度)の時間変化を規定する動作プロファイルに基づいて、当該移動機構が制御される場合がある。移動機構が動作を開始してから当該動作を完了するまでの時間間隔において、当該移動機構の状況は変化し得る。たとえば、当該時間間隔には他の移動機構と協調して作業する必要のある時間帯および移動機構が単独で作業を行うことが可能な時間帯が含まれ得る。前者の時間帯の動作プロファイルは、複数の移動機構を統合的に制御する機能を有する統合制御装置によって生成される必要がある。一方、後者の時間帯の動作プロファイルは、単独の移動機構を制御する機能を有する制御装置によっても生成され得る。動作プロファイルの生成に必要な計算負荷を統合制御装置と複数の制御装置との間で適切に分散するためには、移動機構の状況に応じて動作プロファイルを生成する装置を切り替える必要がある。
【0005】
しかし、特許文献1に開示されている制御システムにおいては、移動機構の状況に応じて動作プロファイルを生成可能な装置が変化することについて考慮されていない。特許文献1に開示されている制御システムによると、動作プロファイルを生成するために必要な計算負荷が複数の制御装置のいずれかに偏り、当該制御装置の処理効率が低下し得る。その結果、複数の移動機構を制御するシステムの生産性が低下し得る。
【0006】
本開示は上記のような課題を解決するためになされたものであり、その目的は、複数の移動機構を制御するシステムおよび方法における生産性を向上させることである。
【課題を解決するための手段】
【0007】
本開示の一局面に係るシステムは、複数の制御装置と、統合制御装置とを備える。複数の制御装置は、複数の移動機構をそれぞれ制御する。統合制御装置は、複数の移動機構に接続されている。統合制御装置は、複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成する。特定移動機構を制御する特定制御装置は、第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成する。特定制御装置は、第1動作プロファイルおよび第2動作プロファイルに基づいて特定移動機構を制御する。
【0008】
この開示によれば、第1特定動作の第1時間帯においては第1動作プロファイルに基づいて特定制御装置が特定移動機構を制御し、第1特定動作の第2時間帯においては第2動作プロファイルに基づいて特定制御装置が特定移動機構を制御することにより、動作プロファイルの進行とともに変化し得る特定移動機構の状況に応じて、当該動作プロファイルを生成する構成を切り替えることができる。その結果、動作プロファイルの生成に必要な計算負荷を統合制御装置100と複数の制御装置との間で適切に分散することができるため、複数の移動機構を制御するシステムにおける生産性を向上させることができる。
【0009】
上記の開示において、特定制御装置は、第1動作プロファイルに基づいて特定移動機構の制御を開始する。統合制御装置は、特定移動機構が第1動作プロファイルに基づいて第1特定動作を開始した後に、特定制御装置に切替指令を出力する。特定制御装置は、切替指令を受けた後、第2動作プロファイルを生成し、特定移動機構を制御するための動作プロファイルを第1動作プロファイルから第2動作プロファイルに切り替える。
【0010】
この開示によれば、動作プロファイルの切替のタイミングが複数の移動機構の制御情報を有する統合制御装置によって決定されるため、動作プロファイルの切替を移動機構の状況の変化に応じて円滑に行うことができる。その結果、複数の移動機構を制御するシステムの生産性をさらに向上させることができる。
【0011】
上記の開示において、特定制御装置は、第2動作プロファイルを生成する前に統合制御装置との通信にエラーが発生した場合、停止プロファイルを生成し、当該停止プロファイルに基づいて特定移動機構を停止させる。
【0012】
この開示によれば、通信エラーによって特定制御装置において動作プロファイルの生成が困難になった場合、移動機構の動作が停止動作に移行されるため、不定であることによる移動機構の不測の動作を防止することができる。その結果、複数の移動機構を制御するシステムの安全性を向上させることができる。
【0013】
上記の開示において、統合制御装置は、複数の移動機構の各々の第2特定動作の時間変化を規定する第3動作プロファイルを生成する。複数の制御装置の各々は、第3動作プロファイルに基づいて第2特定動作を行う移動機構を制御する。複数の制御装置の各々は、複数の移動機構の各々の、第1特定動作および第2特定動作以外の動作の時間変化を規定する第4動作プロファイルを生成し、第4動作プロファイルに基づいて当該動作を行う移動機構を制御する。
【0014】
この開示によれば、指令において指定される動作の種類に応じて、当該動作の動作プロファイルを生成する構成を適切に選択される。その結果、複数の移動機構を制御するシステムの生産性をさらに向上させることができる。
【0015】
上記の開示において、第1時間帯の第1特定動作、および第2特定動作は、複数の移動機構が互いに協調する動作を含む。
【0016】
この開示によれば、複数の移動機構の制御情報を有する統合制御装置が複数の移動機構が互いに協調する動作の動作プロファイルを生成するため、当該動作における複数の移動機構の連携を実現することができる。その結果、複数の移動機構を制御するシステムの生産性をさらに向上させることができる。
【0017】
本開示の他の局面に係る方法は、複数の移動機構のいずれかである特定移動機構の第1特定動作の第1時間帯における時間変化を規定する第1動作プロファイルを生成するステップと、第1特定動作の第2時間帯における時間変化を規定する第2動作プロファイルを生成するステップと、第1動作プロファイルおよび第2動作プロファイルに基づいて特定移動機構を制御するステップとを含む。
【0018】
この開示によれば、第1特定動作の第1時間帯においては第1動作プロファイルに基づいて特定移動機構が制御され、第1特定動作の第2時間対においては第2動作プロファイルに基づいて特定移動機構が制御されることにより、動作プロファイルの進行とともに変化し得る特定移動機構の状況に応じて、当該動作プロファイルを生成する構成を切り替えることができる。その結果、動作プロファイルの生成に必要な計算負荷を適切に分散することができるため、複数の移動機構を制御する方法における生産性を向上させることができる。
【発明の効果】
【0019】
本開示に係るシステムまたは方法によれば、生産性を向上させることができる。
【図面の簡単な説明】
【0020】
図1】実施の形態に係る制御システムの構成および移動機構の単独動作に関する制御情報の流れを併せて示すブロック図である。
図2図1の制御システムにおける、移動機構の協調動作(第2特定動作)に関する制御情報の流れを示すブロック図である。
図3図1のロボットの一部協調動作の指令が統合制御装置から出力された場合の、ロボットのTCPの速度の時間変化を示す図である。
図4】動作プロファイルの切替指令が統合制御装置から出力された後に、統合制御装置とロボット制御装置との間に通信エラーが発生した場合の、ロボットのTCPの速度の時間変化を示す図である。
図5】制御周期毎に図1および図2の統合制御装置において行われる処理の流れの一例を示すフローチャートである。
図6図1および図2の指令生成部の、動作指示に関する状態遷移図である。
図7図6の待機状態において指令生成部によって行われる処理の流れを示す図である。
図8図6の単独動作指令の作成状態において指令生成部によって行われる処理の流れを示す図である。
図9図6の協調動作指令の作成状態において指令生成部およびプロファイル生成部によって行われる処理の流れを示す図である。
図10図6の切替状態において指令生成部およびプロファイル生成部によって行われる処理の流れを示す図である。
図11図1および図2の統合制御装置からの指令が制御装置の各々に受信された場合に、当該制御装置において行われる処理の流れの一例を示すフローチャートである。
図12図1および図2の制御システムのネットワーク構成例を示すブロック図である。
図13図1および図2の統合制御装置のハードウェア構成例を示すブロック図である。
図14図1および図2のロボット制御装置のハードウェア構成例を示すブロック図である。
図15図1および図2のサーボ制御装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0021】
以下、実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は原則として繰り返さない。
【0022】
<適用例>
図1は、実施の形態に係る制御システム1の構成および移動機構の単独動作に関する制御情報の流れを併せて示すブロック図である。単独動作とは、他の移動機構の動作に依存せず、当該動作から独立した動作である。単独動作には、たとえば、単独での簡易な組立作業、およびネットワーク障害の発生時に移動機構が単独で安全停止する動作が含まれる。図1に示されるように、制御システム1は、統合制御装置100と、ロボット制御装置250_1と、ロボット制御装置250_2と、サーボ制御装置350とを備える。
【0023】
統合制御装置100は、フィールドネットワーク20を介して、ロボット制御装置250_1、ロボット制御装置250_2、およびサーボ制御装置350に接続されている。統合制御装置100は、ロボット制御装置250_1、ロボット制御装置250_2、およびサーボ制御装置350の各々に当該制御装置が接続された移動機構への指令を出力する。
【0024】
フィールドネットワーク20は、定周期通信を行うバスまたはネットワークを採用することが好ましい。このような定周期通信を行うバスまたはネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、またはCompoNet(登録商標)などが知られている。データの到達時間が保証される点において、EtherCAT(登録商標)が好ましい。
【0025】
ロボット制御装置250_1は、ロボット200_1(移動機構)に接続されている。ロボット制御装置250_1は、統合制御装置100からの指令に基づいて、ロボット200_1を制御する。
【0026】
ロボット制御装置250_2は、ロボット200_2(移動機構)に接続されている。ロボット制御装置250_2は、統合制御装置100からの指令に基づいて、ロボット200_2を制御する。
【0027】
ロボット200_1,200_2としては、アプリケーションに応じて任意に作成される1または複数の軸または関節を有するカスタムロボットが用いられてもよい。さらに、ロボット200_1,200_2としては、水平多関節(スカラ)ロボット、垂直多関節ロボット、パラレルリンクロボット、もしくは直交ロボットなどの任意の汎用ロボットが用いられてもよい。
【0028】
サーボ制御装置350は、少なくとも1つのサーボ300(移動機構)に接続されている。サーボ制御装置350は、統合制御装置100からの指令に基づいて、少なくとも1つのサーボ300を制御する。
【0029】
統合制御装置100は、ロジック制御部110と、指令生成部120と、通信部130と、プロファイル生成部140とを含む。ロジック制御部110は、制御周期毎に、通信部130を介して複数の移動機構からのモニタ情報Mn(たとえば複数の移動機構に設置されたセンサ(不図示)の測定値)を受ける。ロジック制御部110は、モニタ情報Mnに基づいて、少なくとも1つの移動機構への単独動作指示Isiを指令生成部120に出力する。単独動作指示Isiには、当該少なくとも1つの移動機構の各々を制御する制御装置を特定する情報(たとえばフィールドネットワーク20における当該制御装置のネットワークノード識別子)、および当該移動機構の動作に関する情報が含まれる。
【0030】
指令生成部120は、単独動作指示Isiにおいて特定された少なくとも1つの移動機構の各々に対応する制御プログラムを解釈して当該移動機構への単独動作指令Ciを生成し、当該指令を通信部130に出力する。図1においては、ロボットプログラムPrb1,Prb2、およびサーボプログラムPcvがロボット200_1,200_2、およびサーボ300にそれぞれ対応する制御プログラムである。ロボットプログラムPrb1,Prb2、およびサーボプログラムPcvの各々は、たとえば、V+言語などの制御用プログラミング言語、またはGコードなどのNC(Numerical Control)制御に係るプログラミング言語を用いて記述されてもよい。
【0031】
通信部130は、ネットワーク構成情報セットSnを参照して、単独動作指令Ciにおいて指定された移動機構を制御する制御装置に単独動作指令Ciを送信する。ネットワーク構成情報セットSnには、フィールドネットワーク20に接続された複数の移動機構の情報が含まれる。たとえば、ネットワーク構成情報セットSnには、或る移動機構のタイプ、当該移動機構を制御する制御装置のネットワークノード識別子、および当該タイプに固有の情報が含まれる。
【0032】
図1に示されるネットワーク構成情報セットSnの一例においては、複数の移動機構毎にセクションが設けられている。ロボット200_1のセクションにおいては、ロボット200_1のネットワーク構成情報として、ロボット200_1のタイプがロボット型であること、ロボット制御装置250_1のネットワークノード識別子が1であること、軸数が4であること、およびその他の軸変数等が定められている。ロボット200_2のセクションにおいては、ロボット200_2のネットワーク構成情報として、たとえば、ロボット200_2のタイプがロボット型であること、ロボット制御装置250_2のネットワークノード識別子が2であること、軸数が6であること、およびその他の軸変数等が定められている。サーボ300のセクションにおいては、サーボ300のネットワーク構成情報として、サーボ300のタイプがサーボ型であること、サーボ制御装置350のネットワークノード識別子が3であること、およびサーボ変数等が定められている。
【0033】
ロボット制御装置250_1は、ロボット200_1を制御する。ロボット制御装置250_1は、通信部251と、指令生成部252と、プロファイル生成部253とを含む。通信部251は、統合制御装置100から指令を受けて、指令を指令生成部252に出力する。
【0034】
指令生成部252は、ロボット200_1に関するネットワーク構成情報Tn1を参照して、指令において指定されているネットワークノード識別子が1である場合、指令に対応する動作プロファイル(目標軌跡)の生成をプロファイル生成部253に指示する。ネットワーク構成情報Tn1は、ネットワーク構成情報セットSnのロボット200_1のセクションに含まれている。動作プロファイルにおいては、指令に対応する動作が開始してから当該動作が終了するまでの時間経過に応じたロボット200_1のTCP(Tool Center Point)の変化が規定される。たとえば、ロボット200_1の動作プロファイルには、典型的には、ロボット200_1の先端部(TCP)の時間毎の位置(時間に対する位置の変化)、ロボット200_1の先端部の時間毎の速度(時間に対する速度の変化)、および/または、ロボット200_1の先端部の時間毎の加速度(時間に対する加速度の変化)などが含まれる。
【0035】
プロファイル生成部253は、ロボット200_1のキネマティクスに基づいて、動作プロファイル(第4動作プロファイル)を生成する。プロファイル生成部253は、当該動作プロファイルに基づいて指令値(たとえば、ロボット200_1に含まれる複数の関節(ジョイント)の各々の位置)を算出し、当該指令値をロボット200_1に出力する。指令生成部252は、単独動作指令に対応する単独動作が完了した場合(動作プロファイルに基づく全指令値の出力が完了した場合)、単独動作の完了通知を統合制御装置100に出力する。なお、ロボットの軸は、関節を構成することもあるので、以下の説明では、ロボットの「軸または関節」とも称す。すなわち、本明細書において、ロボットの「軸」との用語は、軸および関節を含む意味で用いられる。
【0036】
ロボット制御装置250_2は、ロボット200_2を制御する。ロボット制御装置250_2の構成は、ロボット制御装置250_1のネットワーク構成情報Tn1がTn2に置き換えられた構成である。これ以外のロボット制御装置250_2の構成は、ロボット制御装置250_1の構成と同様であるため、同様の構成についての説明を繰り返さない。
【0037】
サーボ制御装置350は、サーボ300を制御する。サーボ制御装置350は、通信部351と、指令生成部352と、プロファイル生成部353とを含む。通信部351は、統合制御装置100から指令を受けて、指令を指令生成部352に出力する。
【0038】
指令生成部352は、サーボ300に関するネットワーク構成情報Tn3を参照して、指令において指定されているネットワークノード識別子が3である場合、指令に対応する動作プロファイルの生成をプロファイル生成部353に指示する。ネットワーク構成情報Tn3は、ネットワーク構成情報セットSnのサーボ300のセクションに含まれている。動作プロファイルにおいては、指令に対応する動作が開始してから当該動作が終了するまでの時間経過に応じたサーボ300の動作の変化が規定される。たとえば、サーボ300の動作プロファイルには、典型的には、サーボ300の時間毎の角度(時間に対する回転角の変化)、サーボ300の時間毎の角速度(時間に対する角速度の変化)、および/または、サーボ300の時間毎の角加速度(時間に対する角加速度の変化)などが含まれる。
【0039】
プロファイル生成部353は、生成された動作プロファイルに基づいて指令値(たとえば、サーボ300の回転角)を算出し、当該指令値をサーボ300に出力する。指令生成部352は、単独動作指令に対応する単独動作が完了した場合(動作プロファイルに基づく全指令値の出力が完了した場合)、単独動作の完了通知を統合制御装置100に出力する。
【0040】
なお、ネットワーク構成情報セットSnは、たとえば、制御システム1の初期化処理において設定されてもよい。また、複数の移動機構の各々が参照するネットワーク構成情報に含まれる情報は、ネットワーク構成情報セットSnに基づいて、単独動作指令Ciとともに当該移動機構に送信されてもよい。
【0041】
図2は、図1の制御システム1における、移動機構の協調動作(第2特定動作)に関する制御情報の流れを示すブロック図である。協調動作とは、複数の移動機構が互いに協調する動作である。協調動作には、たとえばワークスペースを共有している複数の移動機構が互いに干渉を回避しつつ停止する動作、あるいは複数の移動機構の同期動作が含まれる。
【0042】
図2に示されるように、ロジック制御部110は、協調動作指示Iscを指令生成部120に出力する。協調動作指示Iscにおいては、協調動作対象の移動機構が指定されている。図2の協調動作指示Iscにおいては、ロボット200_1,200_2に対して協調動作が指定されているとする。
【0043】
指令生成部120は、協調動作指示Iscにおいて指定されたロボット200_1,200_2の各々に対応する制御プログラムPrb1,Prb2を解釈して、ロボット200_1,220_2に対する協調動作指令Cm1,Cm2をそれぞれ生成する。指令生成部120は、協調動作指令Cm1,Cm2を通信部130およびプロファイル生成部140に出力する。
【0044】
プロファイル生成部140は、ロボット200_1,200_2のキネマティクスに基づいて、協調動作指令Cm1,Cm2の各々に対応する動作プロファイル(第3動作プロファイル)を生成する。プロファイル生成部140は、ロボット200_1の動作プロファイルに基づいて、ロボット200_1に対する指令値Pc1を算出し、指令値Pc1を通信部130に出力する。プロファイル生成部140は、ロボット200_2の動作プロファイルに基づいて、ロボット200_2に対する指令値Pc2を算出し、指令値Pc2を通信部130に出力する。
【0045】
通信部130は、ネットワーク構成情報セットSnを参照して、協調動作指令Cm1,Cm2の各々において指定された移動機構を制御する制御装置に当該協調動作指令および当該協調動作指令に対応する指令値を送信する。すなわち、図2において通信部130は、協調動作指令Cm1および指令値Pc1をロボット制御装置250_1に送信し、協調動作指令Cm2および指令値Pc2をロボット制御装置250_2に送信する。
【0046】
ロボット制御装置250_1の指令生成部252は、指令値Pc1をロボット200_1に出力する。ロボット制御装置250_2の指令生成部252は、指令値Pc2をロボット200_2に出力する。なお、サーボ制御装置350の指令生成部352も、協調動作指令を受信した場合には、当該協調動作指令とともに受信した指令値をサーボ300に出力する。
【0047】
制御システム1において、移動機構の動作の時間変化を規定する動作プロファイルに基づいて、当該移動機構が制御される。移動機構が動作を開始してから当該動作を完了するまでの時間間隔において、当該移動機構の状況は変化し得る。たとえば、当該時間間隔には他の移動機構と協調して作業する必要のある時間帯および移動機構が単独で作業を行うことが可能な時間帯が含まれ得る。前者の時間帯の動作プロファイルは、複数の移動機構を統合的に制御する機能を有する統合制御装置100によって生成される必要がある。一方、後者の時間帯の動作プロファイルは、単独の移動機構を制御する機能を有する制御装置によっても生成され得る。動作プロファイルの生成に必要な計算負荷を統合制御装置と複数の制御装置との間で適切に分散するためには、移動機構の状況に応じて動作プロファイルを生成する装置を切り替える必要がある。
【0048】
そこで、制御システム1においては、動作プロファイルの進行とともに変化し得る移動機構の状況に応じて、動作プロファイルを生成する構成を統合制御装置100と当該移動機構を制御する制御装置との間で切り替える。制御システム1によれば、動作プロファイルの生成に必要な計算負荷を統合制御装置100と複数の制御装置との間で適切に分散することができるため、複数の移動機構を制御するシステムおよび方法における生産性を向上させることができる。
【0049】
図3は、図1のロボット200_1,200_2(特定移動機構)の一部協調動作(第1特定動作)の指令が統合制御装置100から出力された場合の、ロボット200_1のTCPの速度の時間変化を示す図である。移動機構の一部協調動作とは、当該移動機構の単独動作と、他の移動機構との協調動作とを含む動作である。一部協調動作には、たとえば、他の移動機構との協調動作が必要な複雑の組立動作、および他の移動機構との協調動作が不要な単純な組立動作が含まれる。
【0050】
図3に示されるように、ロボット200_1は、時刻t0からt1(>t0)までロボット200_2との協調動作を行い、時刻t1~t4(>t1)まで単独動作を行う。統合制御装置100は、ロボット200_1,200_2の各々の協調動作の動作プロファイル(第1動作プロファイル)を作成し、当該動作プロファイルに基づく指令値を当該ロボットに出力する。統合制御装置100は、協調動作が終了する時刻t1に、動作プロファイルを作成する構成を統合制御装置100からロボット制御装置250_1,250_2(特定制御装置)に切り替えることを指示する切替指令をロボット制御装置250_1,250_2の各々に出力する。統合制御装置100は、時刻t2(>t1)から、制御装置250_1,250_2の各々に、統合制御装置100が生成する動作プロファイルと当該制御装置が生成する動作プロファイルとの接続に必要な情報および動作プロファイルの生成に必要な情報を出力する。これらの情報には、たとえば、現在時間、TCPの現在位置、目標位置、速度、加速度、躍動、および動作時間等が含まれる。
【0051】
制御装置250_1は、動作プロファイルを生成する準備の完了後の時刻t3(>t2)に、切替完了通知を統合制御装置100に出力する。統合制御装置100は、切替完了通知の受信に応じて、動作プロファイルの生成および送信を停止する。統合制御装置100は、時刻t0~t3までの時間帯Tf11(第1時間帯)において動作プロファイルを生成する。制御装置250_1は、時刻t3~t4の時間帯Tf12(第2時間帯)において動作プロファイル(第2動作プロファイル)を生成する。制御装置250_2も動作プロファイルを生成する準備の完了に応じて切替完了通知を統合制御装置100に出力し、動作プロファイルの生成を開始する。
【0052】
制御システム1によれば、動作プロファイルの切替のタイミングが複数の移動機構の制御情報を有する統合制御装置100によって決定されるため、動作プロファイルの切替を移動機構の状況の変化に応じて円滑に行うことができる。その結果、複数の移動機構を制御するシステムの生産性をさらに向上させることができる。
【0053】
図4は、統合制御装置100とロボット制御装置250_1との間に通信エラーが発生した場合の、ロボット200_1のTCPの速度の時間変化を示す図である。図4においては、時刻t11に当該通信エラーが発生したとする。図4に示されるように、ロボット200_1は、時刻t10からt11(>t10)までロボット200_2との協調動作を行う。時刻t11~t12(>t11)の時間帯に、統合制御装置100との通信にエラーが発生したことをロボット制御装置250_1が検知したとする。
【0054】
制御装置250_1は、通信エラーの検知に応じて停止動作に対応する動作プロファイル(停止プロファイル)を生成し、時刻t12から当該動作プロファイルに従ってロボット200_1を時刻t13(>t12)に停止させる。図4においてはTCPの速度が単位時間当たり一定の値ずつ減少する減速停止が行われる場合のTCPの速度の時間変化が示されているが、移動機構の停止動作は減速停止に限定されない。当該停止動作は、たとえばできるだけ短時間で停止される即時停止であってもよい。
【0055】
制御システム1によれば、通信エラーによって一部協調動作を行う移動機構の制御装置において動作プロファイルの生成が困難になった場合でも、当該移動機構の動作が停止動作に移行されるため、当該移動機構の不測の動作を防止することができる。その結果、複数の移動機構を制御するシステムの安全性を向上させることができる。
【0056】
図5は、制御周期毎に図1および図2の統合制御装置100において行われる処理の流れの一例を示すフローチャートである。図5に示される処理は、統合制御装置100を統合的に制御する不図示のメインルーチンによって呼び出される。以下では、ステップを単にSと記載する。
【0057】
図5に示されるように、ロジック制御部110は、S101においてモニタ情報Mnに対してロジック解析を行ってモニタ情報Mnを解釈し、処理をS102に進める。ロジック制御部110は、S102においてモニタ情報Mnの解釈結果に動作指示が含まれるか否かを判定する。当該解釈結果に動作指示が含まれない場合(S102においてNO)、ロジック制御部110は、処理をS101に戻す。当該解釈結果に動作指示が含まれる場合(S102においてYES)、ロジック制御部110は、動作指示を指令生成部120に出力する。指令生成部120は、S103において当該動作指示に応じた状態に遷移し、処理をS104に進める。指令生成部120およびプロファイル生成部140は、S104において、現在の状態に応じた指令生成処理を実行し、処理をS105に進める。通信部130は、S105において、S104の指令生成処理の結果を動作指示において指定された移動機構を制御する制御装置に出力し、処理をメインルーチンに返す。
【0058】
以下では、図6図10を用いて、図5の指令生成処理(S104)について説明する。図6は、図1および図2の指令生成部120の、動作指示に関する状態遷移図である。図6に示されるように、動作指示に関する状態には、ロジック制御部110からの動作指示を待っている待機状態St1と、単独動作指令を作成するための作成状態St2と、協調動作指令を作成するための作成状態St3と、動作プロファイルを生成する構成を切り替えるための切替状態St4とが含まれる。
【0059】
指令生成部120は、待機状態St1においてロジック制御部110から単独動作指示を受けた場合、作成状態St2へ遷移する。指令生成部120は、作成状態St2において単独動作指示によって指定された移動機構を制御する制御装置から単独動作完了通知を受けた場合、待機状態St1へ遷移する。
【0060】
指令生成部120は、待機状態St1においてロジック制御部110から協調動作指示を受けた場合、作成状態St3へ遷移する。指令生成部120は、作成状態St3において協調動作指示によって指定された移動機構を制御する制御装置から協調動作完了通知を受けた場合、待機状態St1へ遷移する。
【0061】
指令生成部120は、作成状態St3においてロジック制御部110から一部協調動作指示を受けた場合、切替状態St4へ遷移する。指令生成部120は、切替状態St4において動作プロファイルの切替が完了した場合、作成状態St2へ遷移する。
【0062】
図7は、図6の待機状態St1において指令生成部120によって行われる処理の流れを示す図である。図7に示される処理は、統合制御装置100を統合的に制御する不図示のメインルーチンによって呼び出される。
【0063】
図7に示されるように、指令生成部120は、S111においてロジック制御部110から動作指示を受信したか否かを判定する。当該動作指示を受信していない場合(S111においてNO)、指令生成部120は、処理をメインルーチンに返す。当該動作指示を受信した場合(S111においてYES)、指令生成部120は、S112において、動作指示によって指定された動作が単独動作か否かを判定する。当該動作が単独動作である場合(S112においてYES)、指令生成部120は、S113において単独動作指令の作成状態St2へ遷移し、処理をメインルーチンに返す。当該動作が協調動作である場合(S112においてNO)、指令生成部120は、S114において協調動作指令の作成状態St3へ遷移し、処理をメインルーチンに返す。
【0064】
図8は、図6の単独動作指令の作成状態St2において指令生成部120によって行われる処理の流れを示す図である。図8に示される処理は、統合制御装置100を統合的に制御する不図示のメインルーチンによって呼び出される。
【0065】
図8に示されるように、指令生成部120は、S121において、単独動作指令を通信部130に出力して、処理をS122に進める。指令生成部120は、S122において、単独動作指令によって指定された移動機構を制御する制御装置から単独動作の完了通知を受信したか否かを判定する。当該完了通知を受信していない場合(S122においてNO)、指令生成部120は、処理をメインルーチンに返す。当該完了通知を受信した場合(S122においてYES)、指令生成部120は、S123において待機状態St1に遷移して処理をメインルーチンに返す。
【0066】
図9は、図6の協調動作指令の作成状態St3において指令生成部120およびプロファイル生成部140によって行われる処理の流れを示す図である。図9に示される処理は、統合制御装置100を統合的に制御する不図示のメインルーチンによって呼び出される。
【0067】
図9に示されるように、指令生成部120は、S131においてロジック制御部110から一部協調動作指示を受信したか否かを判定する。一部協調動作指示を受信した場合(S131においてYES)、指令生成部120は、S138において、切替状態St4に遷移して処理をメインルーチンに返す。一部協調動作指示を受信していない場合(S131においてNO)、指令生成部120は、S132において、協調動作の動作プロファイルの生成をプロファイル生成部140に指示済みか否かを判定する。
【0068】
当該動作プロファイルの生成をプロファイル生成部140に指示していない場合(S132においてNO)、指令生成部120は、S133において動作プロファイルの生成をプロファイル生成部140に指示する。プロファイル生成部140は、S134において動作プロファイルを生成し、処理をS135に進める。指令生成部120が動作プロファイルの生成をプロファイル生成部140に指示済みである場合(S132においてYES)、プロファイル生成部140はS135においてS134の動作プロファイルに基づく指令値を通信部130に出力し、処理がS136に進められる。
【0069】
指令生成部120は、S136において動作プロファイルに基づく全指令値の出力が完了したか否かを判定する。全指令値の出力が完了していない場合(S136においてNO)、指令生成部120は、処理をメインルーチンに返す。全指令値の出力が完了している場合(S136においてYES)、指令生成部120は、S137において待機状態St1に遷移して処理をメインルーチンに返す。
【0070】
図10は、図6の切替状態St4において指令生成部120およびプロファイル生成部140によって行われる処理の流れを示す図である。図10に示される処理は、統合制御装置100を統合的に制御する不図示のメインルーチンによって呼び出される。
【0071】
図10に示されるように、指令生成部120は、切替指令を一部協調動作指示によって指定された移動機構を制御する制御装置に出力済みか否かを判定する。切替指令が当該制御装置に出力済みである場合(S141においてYES)、処理がS143に進められる。切替指令が当該制御装置に出力されていない場合(S141においてNO)、指令生成部120は、S142において、切替指令、および動作プロファイルの接続および生成に必要な情報を通信部130に出力し、処理がS143に進められる。S143において、プロファイル生成部140は、協調動作の動作プロファイルに基づく指令値を通信部130に出力し、処理がS144に進められる。指令生成部120は、S144において一部協調動作指示において指定された移動機構を制御する制御装置から切替完了通知を受信したか否かを判定する。当該切替完了通知を受信していない場合(S144においてNO)、指令生成部120は、処理をメインルーチンに返す。当該切替完了通知を受信した場合(S144においてYES)、指令生成部120は、単独動作指令の作成状態St2に遷移して処理をメインルーチンに返す。
【0072】
図11は、図1および図2の統合制御装置100からの指令が制御装置250_1,250_2,350の各々に受信された場合に、当該制御装置において行われる処理の流れの一例を示すフローチャートである。図11に示される処理は、当該制御装置を統合的に制御する不図示のメインルーチンによって呼び出される。
【0073】
図11に示されるように、指令生成部252(352)は、S211において、指令において指定された動作が単独動作、協調動作、および一部協調動作のいずれであるかを判定する。指令において指定された動作が単独動作である場合、指令生成部252(352)は、S219において当該指令に対応する動作プロファイルの生成をプロファイル生成部253(353)に指示済みか否かを判定する。動作プロファイルの生成をプロファイル生成部253(353)に指示していない場合(S219においてNO)、指令生成部252(352)は、S220において、プロファイル生成部253(353)に当該指令に対応する動作プロファイルの生成を指示する。プロファイル生成部253(353)は、S221において動作プロファイルを生成し、処理をS222に進める。動作プロファイルの生成をプロファイル生成部253(353)に指示済みである場合(S219においてYES)、指令生成部252(352)は、処理をS222に進める。プロファイル生成部253(353)は、S222において、動作プロファイルに基づく指令値を通信部130に出力し、処理がS224に進められる。
【0074】
指令生成部252(352)は、S223において動作プロファイルに基づく全指令値の出力が完了したか否かを判定する。全指令値の出力が完了していない場合(S223においてNO)、指令生成部252(352)は、処理をメインルーチンに返す。全指令値の出力が完了している場合(S223においてYES)、指令生成部252(352)は、S224において単独動作の完了通知を統合制御装置100に出力して、処理をメインルーチンに返す。
【0075】
指令において指定された動作が協調動作である場合、指令生成部252(352)は、S212において統合制御装置100からの指令値を移動機構に出力して、処理をメインルーチンに返す。
【0076】
指令において指定された動作が一部協調動作である場合、指令生成部252(352)は、S213において、動作プロファイルを生成する構成の切替が完了しているか否か(切替完了通知を統合制御装置100に出力しているか否か)を判定する。当該切替が完了している場合(S213においてYES)、指令生成部252(352)は、処理をS222に進める。当該切替が完了していない場合(S213においてNO)、指令生成部252(352)は、S214において、統合制御装置100から切替指令を受信したか否かを判定する。
【0077】
統合制御装置100から切替指令を受信していない場合(S214においてNO)、指令生成部252(352)は、処理をS217に進める。統合制御装置100から切替指令を受信している場合(S214においてYES)、指令生成部252(352)は、S215において、動作プロファイルの生成準備が完了したか否かを判定する。
【0078】
動作プロファイルの生成準備が完了している場合(S215においてYES)、指令生成部252(352)は、S216において、切替完了通知を統合制御装置100に出力し、処理をS220に進める。動作プロファイルの生成準備が完了していない場合(S215においてNO)、指令生成部252(352)は、S217において、統合制御装置100との通信にエラーが発生しているか否かを判定する。
【0079】
統合制御装置100との通信にエラーが発生していない場合(S217においてNO)、指令生成部252(352)は、処理をS212に進める。統合制御装置100との通信にエラーが発生している場合(S217においてYES)、指令生成部252(352)は、S218において、停止プロファイルの生成をプロファイル生成部253(353)に指示して、処理をS221に進める。なお、指令において指定された動作が協調動作または単独動作の場合にも、一部協調動作と同様に通信エラーに応じて移動機構の動作が停止動作に移行されてもよい。
【0080】
制御システム1によれば、指令において指定される動作の種類に応じて、当該動作の動作プロファイルを生成する構成を適切に選択される。また、制御システム1によれば、複数の移動機構の制御情報を有する統合制御装置100が複数の移動機構が互いに協調する動作の動作プロファイルを生成するため、当該動作における複数の移動機構の連携を実現することができる。その結果、複数の移動機構を制御するシステムの生産性をさらに向上させることができる。
【0081】
<制御システムのネットワーク構成例>
図12は、図1および図2の制御システム1のネットワーク構成例を示すブロック図である。図12に示されるように、制御システム1は、フィールドネットワーク20に加えて、上位ネットワーク12およびサポート装置400に接続されている。
【0082】
統合制御装置100は、上位ネットワーク12を介して、他の装置にも接続されている。上位ネットワーク12は、ゲートウェイ700を介して、外部ネットワークであるインターネットに接続されている。上位ネットワーク12には、一般的なネットワークプロトコルであるイーサネット(登録商標)、あるいはEtherNet/IP(登録商標)が採用されてもよい。より具体的には、上位ネットワーク12には、少なくとも1つの表示装置500および少なくとも1つのサーバ装置600が接続されてもよい。
【0083】
表示装置500は、ユーザからの操作を受けて、統合制御装置100に対してユーザ操作に応じたコマンドなどを出力するとともに、統合制御装置100での演算結果などをグラフィカルに表示する。
【0084】
サーバ装置600としては、データベースシステム、または製造実行システム(MES:Manufacturing Execution System)などが想定される。製造実行システムは、制御対象の製造装置または設備からの情報を取得して、生産全体を監視および管理するものであり、オーダ情報、品質情報、あるいは出荷情報などを扱うこともできる。これらに限らず、情報系サービスを提供する装置を上位ネットワーク12に接続するようにしてもよい。情報系サービスとしては、制御対象の製造装置または設備からの情報を取得して、マクロ的またはミクロ的な分析などを行う処理が想定される。たとえば、情報系サービスとしては、制御対象の製造装置または設備からの情報に含まれる何らかの特徴的な傾向を抽出するデータマイニング、あるいは制御対象の設備または機械からの情報に基づく機械学習を行うための機械学習ツールなどが想定される。
【0085】
統合制御装置100は、サポート装置400が接続可能に構成されている。サポート装置400は、統合制御装置100が移動機構を制御するために必要な準備を支援する装置である。具体的には、サポート装置400は、統合制御装置100で実行されるプログラムの開発環境(プログラム作成編集ツール、パーサ、およびコンパイラなど)、統合制御装置100および統合制御装置100に接続される各種デバイスの構成情報(コンフィギュレーション)を設定するための設定環境、生成したプログラムを統合制御装置100へ出力する機能、および統合制御装置100上で実行されるプログラムなどをオンラインで修正および変更を行う機能などを提供する。
【0086】
制御システム1においては、統合制御装置100、サポート装置400、および表示装置500がそれぞれ別体として構成されているが、これらの機能の全部または一部を単一の装置に集約するような構成が採用されてもよい。
【0087】
統合制御装置100は、一の生産現場のみで使用される場合に限らず、他の生産現場においても使用される。また、一の生産現場内においても複数の異なるラインで使用される場合もある。
【0088】
<統合制御装置のハードウェア構成例>
図13は、図1および図2の統合制御装置100のハードウェア構成例を示すブロック図である。図13に示されるように、統合制御装置100は、プロセッサ102と、メインメモリ104と、ストレージ160と、メモリカードインターフェイス162と、上位ネットワークコントローラ106と、フィールドネットワークコントローラ108と、ローカルバスコントローラ116と、USB(Universal Serial Bus)インターフェイスを提供するUSBコントローラ170とを含む。これらのコンポーネントは、プロセッサバス118を介して接続されている。
【0089】
プロセッサ102は、制御演算を実行する演算処理部に相当し、CPU(Central Processing Unit)および/またはGPU(Graphics Processing Unit)などで構成される。具体的には、プロセッサ102は、ストレージ160に格納されたプログラムを読み出して、メインメモリ104に展開して実行することで、移動機構に対する制御演算を実現する。
【0090】
メインメモリ104は、DRAM(Dynamic Random Access Memory)および/またはSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。ストレージ160は、たとえば、SSD(Solid State Drive)および/またはHDD(Hard Disk Drive)などの不揮発性記憶装置などで構成される。
【0091】
ストレージ160には、システムプログラムPscと、移動機構プログラムPmと、ネットワーク構成情報セットSnとが保存されている。システムプログラムPscは、統合制御装置100を統合的に制御して、統合制御装置100の各機能を実現するためのプログラムを含む。すなわち、システムプログラムPscを実行するプロセッサ102が、図1および図2のロジック制御部110、指令生成部120、通信部130、およびプロファイル生成部140に対応する。移動機構プログラムPmは、図1のロボットプログラムPrb1,Prb2,サーボプログラムPcvを含む。
【0092】
メモリカードインターフェイス162は、着脱可能な記憶媒体の一例であるメモリカード114を受け付ける。メモリカードインターフェイス162は、メモリカード114に対して任意のデータの読み書きが可能になっている。
【0093】
上位ネットワークコントローラ106は、上位ネットワーク12(たとえばローカルエリアネットワーク)を介して、上位ネットワーク12に接続された任意の情報処理装置との間でデータを遣り取りする。
【0094】
フィールドネットワークコントローラ108は、フィールドネットワーク20を介して、ロボット200_1,200_2,サーボ300等の任意のデバイスとの間でデータを遣り取りする。
【0095】
ローカルバスコントローラ116は、ローカルバス122を介して、統合制御装置100を構成する任意の機能ユニット180との間でデータを遣り取りする。機能ユニット180は、たとえば、アナログ信号の入力および/または出力を担当するアナログI/Oユニット、デジタル信号の入力および/または出力を担当するデジタルI/Oユニット、ならびにエンコーダなどからのパルスを受け付けるカウンタユニットなどからなる。
【0096】
USBコントローラ170は、USB接続を介して、任意の情報処理装置との間でデータを遣り取りする。USBコントローラ170には、たとえばサポート装置400が接続される。
【0097】
<制御装置のハードウェア構成例>
図14は、図1および図2のロボット制御装置250_1のハードウェア構成例を示すブロック図である。図14に示されるように、ロボット制御装置250_1は、フィールドネットワークコントローラ270と、制御処理回路260とを含む。
【0098】
フィールドネットワークコントローラ270は、フィールドネットワーク20を介して、主として、統合制御装置100との間でデータを遣り取りする。
【0099】
制御処理回路260は、ロボット200_1を駆動するために必要な演算処理を実行する。一例として、制御処理回路260は、プロセッサ262と、メインメモリ264と、ストレージ266と、インターフェイス回路268とを含む。
【0100】
プロセッサ262は、ロボット200_1を駆動するための制御演算を実行する。メインメモリ264は、たとえば、DRAMおよび/またはSRAMなどの揮発性記憶装置などで構成される。ストレージ266は、たとえば、SSDおよび/またはHDDなどの不揮発性記憶装置などで構成される。プロセッサ262は、ストレージ266に格納されたプログラムを読み出して、メインメモリ264に展開して実行することで、ロボット200_1に対する制御演算を実現する。
【0101】
ストレージ266には、ロボット制御プログラムPcrと、ネットワーク構成情報Tn1とが保存されている。ロボット制御プログラムPcrは、ロボット制御装置250_1を統合的に制御して、ロボット制御装置250_1の各機能を実現するためのプログラムを含む。すなわち、ロボット制御プログラムPcrを実行するプロセッサ262が、図1および図2の通信部251、指令生成部252、およびプロファイル生成部253に対応する。
【0102】
インターフェイス回路268は、プロセッサ262から出力された指令値を、ロボット200_1に出力する。
【0103】
図1および図2のロボット制御装置250_2のハードウェア構成例は、図14のネットワーク構成情報Tn1が、ネットワーク構成情報Tn2に置き換えられた構成である。ロボット制御装置250_2のこれら以外のハードウェア構成例は、ロボット制御装置250_1のハードウェア構成例と同様であるため、説明を繰り返さない。
【0104】
図15は、図1および図2のサーボ制御装置350のハードウェア構成例を示すブロック図である。図15に示されるように、サーボ制御装置350は、フィールドネットワークコントローラ370と、制御処理回路360とを含む。
【0105】
フィールドネットワークコントローラ370は、フィールドネットワーク20を介して、主として、統合制御装置100との間でデータを遣り取りする。
【0106】
制御処理回路360は、サーボ300を駆動するために必要な演算処理を実行する。一例として、制御処理回路360は、プロセッサ362と、メインメモリ364と、ストレージ366と、インターフェイス回路368とを含む。
【0107】
プロセッサ362は、サーボ300を駆動するための制御演算を実行する。メインメモリ364は、たとえば、DRAMおよび/またはSRAMなどの揮発性記憶装置などで構成される。ストレージ366は、たとえば、SSDおよび/またはHDDなどの不揮発性記憶装置などで構成される。プロセッサ362は、ストレージ366に格納されたプログラムを読み出して、メインメモリ364に展開して実行することで、サーボ300に対する制御演算を実現する。
【0108】
ストレージ366には、サーボ制御プログラムPcsと、ネットワーク構成情報Tn3とが保存されている。サーボ制御プログラムPcsは、サーボ制御装置350を統合的に制御して、サーボ制御装置350の各機能を実現するためのプログラムを含む。すなわち、サーボ制御プログラムPcsを実行するプロセッサ362が、図1および図2の通信部351、指令生成部352、およびプロファイル生成部353に対応する。
【0109】
インターフェイス回路368は、プロセッサ362から出力された指令値を、サーボ300に出力する。
【0110】
以上、実施の形態に係るシステムおよび方法によれば、生産性を向上させることができる。
【0111】
<付記>
上述したような本実施の形態は、以下のような技術思想を含む。
【0112】
[構成1]
複数の移動機構(200_1,200_2,300)をそれぞれ制御する複数の制御装置(250_1,250_2,350)と、
前記複数の移動機構(200_1,200_2,300)に接続された統合制御装置(100)とを備え、
前記統合制御装置(100)は、前記複数の移動機構(200_1,200_2,300)のいずれかである特定移動機構(200_1,200_2)の第1特定動作の第1時間帯(Tf11,Tf21)における時間変化を規定する第1動作プロファイルを生成し、
前記特定移動機構(200_1,200_2)を制御する特定制御装置(250_1,250_2)は、前記第1特定動作の第2時間帯(Tf12,Tf22)における時間変化を規定する第2動作プロファイルを生成し、
前記特定制御装置(250_1,250_2)は、前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構(200_1,200_2)を制御する、システム。
【0113】
[構成2]
前記特定制御装置(250_1,250_2)は、前記第1動作プロファイルに基づいて前記特定移動機構(200_1,200_2)の制御を開始し、
前記統合制御装置(100)は、前記特定移動機構(200_1,200_2)が前記第1動作プロファイルに基づいて前記第1特定動作を開始した後に、前記特定制御装置(250_1,250_2)に切替指令を出力し、
前記特定制御装置(250_1,250_2)は、前記切替指令を受けた後、前記第2動作プロファイルを生成し、前記特定移動機構(200_1,200_2)を制御するための動作プロファイルを前記第1動作プロファイルから前記第2動作プロファイルに切り替える、構成1に記載のシステム。
【0114】
[構成3]
前記特定制御装置(250_1,250_2)は、前記第2動作プロファイルを生成する前に前記統合制御装置(100)との通信にエラーが発生した場合、停止プロファイルを生成し、前記停止プロファイルに基づいて前記特定移動機構(200_1,200_2)を停止させる、構成2に記載のシステム。
【0115】
[構成4]
前記統合制御装置(100)は、前記複数の移動機構(200_1,200_2,300)の各々の第2特定動作の時間変化を規定する第3動作プロファイルを生成し、
前記複数の制御装置(250_1,250_2,350)の各々は、前記第3動作プロファイルに基づいて前記第2特定動作を行う移動機構を制御し、
前記複数の制御装置(250_1,250_2,350)の各々は、前記複数の移動機構(200_1,200_2,300)の各々の、前記第1特定動作および前記第2特定動作以外の動作の時間変化を規定する第4動作プロファイルを生成し、前記第4動作プロファイルに基づいて当該動作を行う移動機構を制御する、構成1~3のいずれかに記載のシステム。
【0116】
[構成5]
前記第1時間帯(Tf11,Tf21)の前記第1特定動作、および前記第2特定動作は、前記複数の移動機構(200_1,200_2,300)が互いに協調する動作を含む、構成4に記載のシステム。
【0117】
[構成6]
複数の移動機構(200_1,200_2,300)のいずれかである特定移動機構(200_1,200_2)の第1特定動作の第1時間帯(Tf11,Tf21)における時間変化を規定する第1動作プロファイルを生成するステップ(S133)と、
前記第1特定動作の第2時間帯(Tf12,Tf22)における時間変化を規定する第2動作プロファイルを生成するステップ(S221)と、
前記第1動作プロファイルおよび前記第2動作プロファイルに基づいて前記特定移動機構(200_1,200_2)を制御するステップ(S212,S222)とを含む、方法。
【0118】
今回開示された各実施の形態は、矛盾しない範囲で適宜組み合わされて実施されることも予定されている。今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0119】
1 制御システム、12 上位ネットワーク、20 フィールドネットワーク、100 統合制御装置、102,262,362 プロセッサ、104,264,364 メインメモリ、106 上位ネットワークコントローラ、108,270,370 フィールドネットワークコントローラ、110 ロジック制御部、114 メモリカード、116 ローカルバスコントローラ、118 プロセッサバス、120,252,352 指令生成部、122 ローカルバス、130,251,351 通信部、140,253,353 プロファイル生成部、160,266,366 ストレージ、162 メモリカードインターフェイス、170 USBコントローラ、180 機能ユニット、200_1,200_2 ロボット、250_1,250_2 ロボット制御装置、260,360 制御処理回路、268,368 インターフェイス回路、300 サーボ、350 サーボ制御装置、400 サポート装置、500 表示装置、600 サーバ装置、700 ゲートウェイ、Ci 単独動作指令、Cm1 協調動作指令、Isc 協調動作指示、Isi 単独動作指示、Mn モニタ情報、Pc1,Pc2 指令値、Pcs サーボ制御プログラム、Pcv サーボプログラム、Pm 移動機構プログラム、Prb1,Prb2 ロボットプログラム、Psc システムプログラム、Pcr ロボット制御プログラム、Sn ネットワーク構成情報セット、St1 待機状態、St2,St3 作成状態、St4 切替状態、Tf11,Tf12 時間帯、Tn1~Tn3 ネットワーク構成情報。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15