(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-07
(45)【発行日】2022-10-18
(54)【発明の名称】キャリア
(51)【国際特許分類】
G05B 19/418 20060101AFI20221011BHJP
B23P 19/00 20060101ALI20221011BHJP
【FI】
G05B19/418 Z
B23P19/00 302H
(21)【出願番号】P 2019053955
(22)【出願日】2019-03-21
【審査請求日】2021-11-09
(73)【特許権者】
【識別番号】000237271
【氏名又は名称】株式会社FUJI
(74)【代理人】
【識別番号】110000992
【氏名又は名称】弁理士法人ネクスト
(74)【代理人】
【識別番号】100162237
【氏名又は名称】深津 泰隆
(74)【代理人】
【識別番号】100191433
【氏名又は名称】片岡 友希
(72)【発明者】
【氏名】寺西 陽祐
【審査官】黒石 孝志
(56)【参考文献】
【文献】特開平5-143116(JP,A)
【文献】特許第6421403(JP,B1)
【文献】特開2004-277056(JP,A)
【文献】特開2003-345413(JP,A)
【文献】特開平6-254733(JP,A)
【文献】国際公開第2019/043794(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/418
B23P 19/00
(57)【特許請求の範囲】
【請求項1】
他のキャリアと通信可能な通信部と、
処理部と、
を備え、
前記処理部は、
前記他のキャリアが分散処理を実行することが可能か否かを示す分散処理可否情報を、前記通信部を介して検出する検出部と、
前記他のキャリアのうち、分散処理を依頼する依頼先キャリアを、前記分散処理可否情報に基づいて決定する決定部と、
前記決定部により決定した前記依頼先キャリアへ分散処理のデータを送信する送信部と、
分散処理の結果を、前記通信部を介して前記依頼先キャリアから取得する取得部と、
を有する、キャリア。
【請求項2】
前記検出部は、
前記通信部を介して前記他のキャリアへ問い合わせを実行した結果に基づいて、前記分散処理可否情報を検出する、請求項1に記載のキャリア。
【請求項3】
前記他のキャリアは、
自身の処理状態に基づいて、分散処理の依頼を受けることが可能であると判断すると、分散処理を実行することが可能であることを示す前記分散処理可否情報を送信し、
前記検出部は、
前記通信部を介して前記他のキャリアから前記分散処理可否情報を受信することで、前記分散処理可否情報を検出する、請求項1又は請求項2に記載のキャリア。
【請求項4】
前記処理部は、
前記送信部により前記依頼先キャリアへ分散処理のデータを送信した後、所定時間だけ経過しても前記依頼先キャリアから分散処理の結果を取得できない場合、取得できなかった分散処理を自身で処理する、請求項1乃至請求項3の何れか1項に記載のキャリア。
【請求項5】
前記キャリア、及び前記他のキャリアの各々は、
カメラと、
センサとを備え、
前記カメラの撮像データを画像処理した結果、及び前記センサの検出信号の少なくとも一方に基づいて次に実行する作業内容を決定し、決定した作業内容に基づいた自律制御を実行する、請求項1乃至請求項4の何れか1項に記載のキャリア。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、分散処理を実行するキャリアに関するものである。
【背景技術】
【0002】
従来、複数の装置によって分散処理を行う技術が種々提案されている。例えば、特許文献1に開示される表面実装機は、表面実装機を制御するコントローラに複数の制御基板が接続されている。複数の制御基板は、実装部品を供給するフィーダからフィーダ情報を入力し、フィーダ情報を処理する。複数の制御基板の各々でフィーダ情報の取り込みや取り込み後の処理を並列に処理することで、コントローラの処理負荷を低減している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記した表面実装機では、実装機本体に固定された状態の制御基板によって並列処理を実行している。一方で、工場内等で部品を運ぶキャリアなどは、移動や停止を繰り返し、部品の搬送や部品の供給などの様々な作業を行う。キャリアの処理負荷は、実行している、あるいは実行する予定の作業内容に応じて変動する。このため、複数のキャリアによって分散処理を実行したい場合、各キャリアの処理状態に応じて分散処理を実行する必要がある。
【0005】
本開示は、上記の課題に鑑みてなされたものであり、他のキャリアの処理状態に応じて分散処理を実行できるキャリアを提供することを課題とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本開示は、他のキャリアと通信可能な通信部と、処理部と、を備え、前記処理部は、前記他のキャリアが分散処理を実行することが可能か否かを示す分散処理可否情報を、前記通信部を介して検出する検出部と、前記他のキャリアのうち、分散処理を依頼する依頼先キャリアを、前記分散処理可否情報に基づいて決定する決定部と、前記決定部により決定した前記依頼先キャリアへ分散処理のデータを送信する送信部と、分散処理の結果を、前記通信部を介して前記依頼先キャリアから取得する取得部と、を有する、キャリアを開示する。
【発明の効果】
【0007】
本開示のキャリアによれば、他のキャリアの分散処理可否情報を確認した上で、分散処理を依頼する依頼先キャリアを決定する。そして、キャリアは、依頼先キャリアへ分散処理のデータを送信して、処理結果を取得する。これにより、複数のキャリアがそれぞれの処理を実行し処理負荷が変動する場合において、他のキャリアの処理状態に応じて分散処理を依頼し、処理結果を取得できる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態の搬送システムが備える固定装置及びキャリアの斜視図である。
【
図5】搬送システムの電気的な構成を示す図である。
【
図7】分散処理の制御を行なう分散制御の内容を示すフローチャートである。
【
図8】分散処理を実行しなかった場合と、分散処理を実行した場合の処理に掛かった時間を示す図である。
【発明を実施するための形態】
【0009】
以下、本願のキャリアを具体化した一実施形態について説明する。
図1は、後述する搬送システム10(
図6参照)が備える固定装置11及びキャリア13の斜視図を示している。
図1は、直線状の固定装置11に、キャリア13を配置した状態を示している。搬送システム10は、リニアモータの駆動によって直線や曲線の固定装置11(
図6参照)においてキャリア13を移動させるシステムである。直線、曲線、分岐点等の固定装置11は、同様の構成となっている。このため、以下の説明では、
図1に示す直線の搬送路を有する固定装置11とキャリア13について説明し、曲線、分岐点等の固定装置11の説明を省略する。また、以下の説明では、
図1におけるキャリア13をスライド移動させる方向をX方向、X方向に垂直で固定装置11を載置する面に平行な方向をY方向、X方向及びY方向に垂直な方向をZ方向と称して説明する。
【0010】
図1~
図3に示すように、固定装置11は、X方向に延設され、Z方向の上部を開口した略U字形状をなしている。固定装置11は、底部21と、第1側壁22と、第2側壁23を備えている。底部21には、非接触給電の制御などを実行する制御基板25(
図3参照)が設けられている。第1及び第2側壁22,23は、底部21の上面に設けられ、X方向に沿って延設されている。固定装置11は、底部21、第1及び第2側壁22,23によって、X方向に延びる溝を構成している。この溝は、キャリア13が、移動する搬送路である。
【0011】
キャリア13は、底部21、第1側壁22、及び第2側壁23に囲まれた溝内に収納されている。第1及び第2側壁22,23の各々の内壁には、複数の永久磁石26が取り付けられている。複数の永久磁石26は、例えば、Z方向に延びる長方形の板状をなし、第1及び第2側壁22,23の各々の内壁において、X方向に沿って、即ち、キャリア13の移動方向に沿って所定の磁極ピッチで配列されている。永久磁石26の各々は、例えば、キャリア13とY方向で対向する内側の面においてN極、S極が交互に現れるように、X方向において隣り合うものが互いに異なる極性(N極及びS極)となっている。なお、
図2及び
図3は、永久磁石26のキャリア13側を覆うカバー27(
図1参照)を取り外した状態を示している。また、
図2は、Y方向の手前側の第2側壁23を取り外した状態を示している。
【0012】
また、第1及び第2側壁22,23の各々の上部には、レール部28が設けられている。レール部28は、例えば、スライド面をV字に形成されたVレールであり、後述するキャリア13の溝ローラ43を取り付けられる。また、第1及び第2側壁22,23の各々の内壁には、リニアスケール29が取り付けられている。
図4に示すように、キャリア13には、固定装置11のリニアスケール29の各々とY方向で対向する位置にリニアヘッド40が取り付けられている。リニアヘッド40は、キャリア13のX方向への移動にともなって、X方向におけるキャリア13の位置を示す位置情報PI(
図5参照)をリニアスケール29から読み取る。リニアヘッド40は、読み取った位置情報PIをキャリア13の処理部50に出力する(
図5参照)。
【0013】
また、底部21の上面には、X方向に延設され、上部を開口した略U字形状をなす走行レール30が設けられている。また、底部21の上部には、非接触給電を行う送電コイル部31が設けられている。送電コイル部31は、X方向に延びるコイル保持部33と、送電コイル35とを備えている。なお、
図1及び
図2は、送電コイル35を取り外した状態を示している。送電コイル35は、X方向に延びるコイル保持部33に巻回されている。
【0014】
一方、
図1及び
図2に示すように、キャリア13は、本体部41と、作業台42とを備えている。本体部41は、略箱型形状をなし、内部に様々な機器が内蔵されている。作業台42は、X方向に長い略板状をなし、本体部41の上部に固定されている。
図4は、キャリア13をX方向から見た側面図であり、本体部41の一部を取り除いた状態を示している。
図2及び
図4に示すように、作業台42の下面には、複数の溝ローラ43が取り付けられている。また、溝ローラ43の下方には、上記したリニアヘッド40が取り付けられている。
【0015】
また、本体部41の下面には、複数の走行ローラ45が取り付けられている。複数の走行ローラ45の各々は、走行レール30に内側から接触して回転する。キャリア13は、作業台42を固定装置11の上方に配置した状態で、略U字状をなす固定装置11の溝内に本体部41を挿入している。複数の溝ローラ43の各々は、第1及び第2側壁22,23の上部に設けられたレール部28に対して回転可能に取り付けられている。キャリア13は、溝ローラ43及び走行ローラ45を固定装置11に対して回転可能に取り付けられることでX方向へ移動可能となり、作業台42に物品(部品など)を載置して移動する。本実施形態では、例えば、後述する
図6の搬送システム10に示すように、複数の固定装置11を連結して構成した搬送路87上で複数のキャリア13が移動する。複数のキャリア13は、作業工程位置93等において停止し、物品89の供給や組み立て後の物品89の移動などを実行する。
【0016】
また、
図4に示すように、本体部41の下面には、非接触給電を行う受電コイル部47が設けられている。受電コイル部47は、コイル保持部48と、受電コイル49とを備えている。受電コイル49は、X方向に延びるコイル保持部48に巻回されている。キャリア13を固定装置11内に配置した状態では、受電コイル部47は、Z方向において送電コイル部31と所定の間隔を間に設けて対向して配置されている。
【0017】
図5に示すように、固定装置11の制御基板25は、送電コイル35と接続され、送電コイル35に供給する交流電圧を変更する。制御基板25は、送電コイル35に供給する交流電圧を変更することで、送電コイル35からキャリア13の受電コイル49へ非接触による電力供給を行う。なお、キャリア13への電力の供給は、非接触給電に限らず、接触型の給電方法を用いても良い。
【0018】
また、
図2及び
図4に示すように、本体部41内には、処理部50と、サーボアンプ51と、巻線部53と、が内蔵されている。従って、本実施形態の搬送システム10は、固定装置11に永久磁石26を配置し、キャリア13に巻線部53を配置した、所謂、ムービングコイル方式のリニアモータである。なお、搬送システム10は、所謂、ムービングマグネット方式のリニアモータでも良い。
【0019】
また、本実施形態のキャリア13は、自律した行動により各作業を行う。詳述すると、
図5に示すように、キャリア13は、処理部50の他に、メモリ54、複数のカメラ55、各種のセンサ57、通信部60などを備えている。本実施形態の搬送システム10が有する複数のキャリア13は、互いに同一の構成となっており、同一の処理能力の処理部50を備えている。以下の説明では、複数のキャリア13のうち、任意のキャリアをキャリア13と記載し、それ以外のキャリアを他のキャリア13と記載する。なお、複数のキャリア13は、互いに異なる構成でも良く、処理部50の処理能力が異なっていても良い。
【0020】
処理部50は、例えば、CPU等の処理回路を備えている。メモリ54は、例えば、RAM、ROM等を備え、制御プログラムPGを記憶している。処理部50は、キャリア13の起動時にメモリ54から制御プログラムPGを読み出して実行する。処理部50は、制御プログラムPGを実行することで、例えば、人工知能(AI:Artificial Intelligence)などの情報技術によって、入力したデータを分析、判断等することができる。処理部50は、判断結果に基づいて、キャリア13が次に行うべき処理内容を決定する。なお、以下の説明では、制御プログラムPGを実行する処理部50やキャリア13を装置名で記載することがある。例えば、(キャリア13が分散処理可否情報を取得する)とは、(キャリア13が、処理部50で制御プログラムPGを実行し各部を制御することで、分散処理可否情報を取得する)ことを意味する。
【0021】
処理部50は、検出部61、決定部62、送信部63、取得部64を備えている。検出部61、決定部62、送信部63、取得部64は、例えば、処理部50のCPUで制御プログラムPGを実行することで実現される機能ブロックである。なお、検出部61等による処理を、ハードウェア処理で実現しても良く、ソフトウェア処理とハードウェア処理との両方で実現しても良い。
【0022】
検出部61は、他のキャリア13が分散処理を実行することが可能か否かを示す分散処理可否情報を、通信部60を介して検出する。決定部62は、他のキャリア13のうち、分散処理を依頼する依頼先キャリアを、分散処理可否情報に基づいて決定する。送信部63は、決定部62により決定した依頼先キャリアへ分散処理のデータを送信する。取得部64は、分散処理の結果を、通信部60を介して依頼先キャリアから取得する。
【0023】
複数のカメラ55は、例えば、作業台42に取り付けられ(
図1参照)、作業台42に載置される物品89や作業ロボット91(
図6参照)が把持する物品89を撮像可能となっている。なお、キャリア13に取り付けられるカメラは、物品89を撮像するカメラ55に限らない。例えば、カメラは、本体部41の前面や後面、本体部41の下面等に取り付けれキャリア13の周囲を撮像するカメラでも良い。また、各種のセンサ57は、例えば、レーザー式の距離センサであり、X方向における本体部41の前後の面のそれぞれに取り付けられ、他のキャリア13との距離に応じた信号を出力する。なお、各種のセンサ57は、距離センサに限らず、加速度センサ、温度センサ、位置センサ、圧力センサなど、キャリア13の状態を検出するのに用いることができる各種のセンサを採用できる。従って、上記したカメラ55やセンサ57の取り付け位置や機器の種類等は一例である。
【0024】
通信部60は、搬送システム10を走行する他のキャリア13と通信を実行する。本実施形態のキャリア13は、通信部60を介した無線通信により、他のキャリア13と通信可能となっている。後述するように、キャリア13は、通信部60を介して他のキャリア13と通信することで、分散処理に係わるデータを送受信する。なお、キャリア13は、無線通信により他のキャリア13との間で直接通信する構成に限らず、通信経路の一部に他の機器等を介しても良い。例えば、キャリア13は、基地局を介して他のキャリア13と通信しても良い。
【0025】
また、
図5に示すように、搬送システム10は、電力制御装置73を備えている。電力制御装置73は、通信部60を介してキャリア13と通信可能となっている。例えば、処理部50は、次の移動先、移動速度等を決定すると、決定した情報を示す制御データCTを電力制御装置73へ送信する。また、処理部50は、リニアヘッド40で検出した位置情報PIを、通信部60を介して電力制御装置73へ適宜送信する。電力制御装置73は、各固定装置11の制御基板25と接続されており、キャリア13から受信した情報に基づいて制御基板25を制御する。これにより、電力制御装置73は、キャリア13の移動に合わせて、固定装置11の送電コイル35からキャリア13の受電コイル49へ非接触給電を行うことができる。
【0026】
また、処理部50は、サーボアンプ51を制御して巻線部53に通電する電流を制御する。
図2及び
図4に示すように、巻線部53は、Y方向における本体部41の両側にそれぞれ設けられ、永久磁石26と対向する位置に設けられている。巻線部53は、複数のヨーク53Aのそれぞれにコイル53Bが巻回されている(
図2参照)。例えば、処理部50は、決定した目標位置、移動速度、推力定数に基づいて巻線部53へ通電する交流電流Iacを制御する。ここでいう推力定数とは、例えば、巻線部53に通電する電流の電流値と、その電流により発生する推力との比を表すものであり、巻線部53の通電制御に用いられる。巻線部53は、サーボアンプ51からコイル53Bに交流電流Iacを通電されると磁界を発生させ(N極及びS極を誘起され)、固定装置11の永久磁石26との間に推力(磁気吸引力や磁気反発力)を発生させる。これにより、処理部50は、キャリア13を移動させる方向や速度を制御する。
【0027】
また、
図6は、搬送システム10の概要を模式的に示している。
図6に示すように、搬送システム10は、例えば、複数の固定装置11を互いに連結した搬送路87を有している。上記したように、複数のキャリア13の各々は、実行する処理内容(作業内容など)を決定し、搬送路87を走行する。搬送システム10の搬送路87には、複数の作業ロボット91が配置されている。作業ロボット91は、例えば、多関節ロボットであり、各種の作業を行う。キャリア13は、決定した作業内容に基づいた自律制御により、例えば、各作業ロボット91の作業工程位置93で停止する。作業ロボット91は、作業台42に載置された物品89に対する作業を行う。
【0028】
(分散処理について)
次に、本実施形態のキャリア13による分散処理の内容について説明する。
図7は、キャリア13による制御の内容であって、分散処理の制御を行なう分散制御の内容を示している。キャリア13の処理部50は、例えば、キャリア13の起動時に制御プログラムPGを実行しシステムを起動した後、
図7に示す分散制御を開始する。
【0029】
まず、
図7のステップ(以下、単位Sと記載する)11において、処理部50は、分散処理が必要な状況にあるか否かを判断する。処理部50は、上記したように例えば、人工知能の技術により、センサ57等から入力した情報に基づいて、次に実行すべき作業内容を決定する。ここでいう、次に実行すべき作業内容とは、例えば、移動する作業、移動中にサーボアンプ51を制御する作業、作業工程位置93で停止する作業、作業工程位置93で停止した後の作業など、キャリア13の作業の各段階における次の作業内容である。キャリア13は、例えば、停止中、移動開始時、移動中などの様々な場面で次に実行すべき作業内容を決定し、決定するごとにS11の判断処理を実行する。なお、キャリア13は、他の装置で決定された情報に基づいて、次に実行すべき作業内容を決定しても良い。例えば、搬送システム10の作業を統括的に管理する管理装置が設置された場合、処理部50は、管理装置から作業リストを取得し、取得した作業リストの中から次に実行すべき作業内容を決定しても良い。S11において、処理部50は、決定した作業内容の処理負荷が、予め設定された処理負荷より低い場合、分散処理が必要でないと判断する(S11:NO)。この場合、処理部50は、自身により作業内容に係わる処理を実行し、キャリア13を制御する。
【0030】
また、処理部50は、決定した作業内容の処理負荷が、予め設定された処理負荷より高い場合、分散処理が必要であると判断する(S11:YES)。例えば、処理部50は、作業内容から算出した処理に必要な時間(自身だけで処理した場合の時間)が、予め設定された基準時間よりも長い場合、分散処理が必要であると判断する(S11:YES)。
【0031】
なお、分散処理が必要か否かの基準は、上記した処理時間の長短に限らない。例えば、処理部50は、キャリア13間の無線通信の通信速度や他のキャリア13の処理能力を加味して、分散処理を実行しない場合の処理時間と、分散処理を実行した場合の処理時間を比較しても良い。そして、処理部50は、分散処理を実行した場合の処理時間が短い場合に、分散処理が必要であると判断しても良い(S11:YES)。
【0032】
具体的には、
図8は、分散処理を実行しなかった場合と、分散処理を実行した場合の処理に掛かった時間の一例を示している。
図8の左側は、キャリアAが一台(1つの処理部50)で、センサ、画像、モータの処理をシーケンシャルに(順番に)実行した場合を示している。
図8に示すセンサ状態取得とは、例えば、各種のセンサ57の検出信号を取得して、検出信号に基づいてキャリア13の周囲の状況を判断する処理である。また、センサ状態取得後の処理実行とは、例えば、周囲の状況の判断結果に応じた制御(キャリア13の位置補正、巻線部53の通電制御、他のキャリア13との距離補正など)を実行する処理である。また、画像処理計算とは、例えば、カメラ55で撮像した画像データを画像処理して、画像の補正、2値化、エッジ検出、特徴点の抽出などをする計算処理である。また、画像処理計算後の結果実行とは、例えば、画像処理の結果に応じた制御(作業ロボット91に対する物品89の位置を補正する指令、物品89の位置に応じたキャリア13の位置補正など)を実行する処理である。また、モータ処理計算とは、例えば、リニアヘッド40の位置情報PIに基づいて(搬送路87の形状などに基づいて)サーボアンプ51を制御する推力定数を計算する処理である。また、モータ処理計算後のモータ処理実行とは、例えば、計算した推力定数に基づいてサーボアンプ51(巻線部53)へ交流電流Iacのフィードバック制御を実行する処理である。
【0033】
図8に示す例では、上記した各処理をキャリアAだけで実行した場合、全体の処理時間は、時間T1だけ必要となる。一方で、
図8の右側には、キャリアAからキャリアBへ画像処理計算を依頼し、キャリアCへモータ処理計算を依頼した場合を示している。
図8の右側に示す分散指示とは、各キャリアB,Cへ分散処理を指示するのに必要な処理である。
図8に示す例では、キャリアA、B,Cで分散処理した場合、全体の処理時間は、時間T1に比べて短い時間T2となっている。そして、処理部50は、例えば、S11において、決定した作業内容、キャリア13間の通信速度、他のキャリア13の処理能力などに基づいて、時間T1と時間T2を演算し、時間T2が時間T1よりも短い場合に、分散処理が必要であると判断しても良い(S11:YES)。なお、処理部50は、分散処理を実行すべきか否かを判断せず、作業内容を決定するごとに常に分散処理を試みても良い。また、処理部50は、決定した作業内容の種類に応じて分散処理を実行すべきか否かを判断しても良い。
【0034】
処理部50は、S11で分散処理が必要な状況にあると判断すると(S11:YES)、S13を実行する。処理部50は、S13において、他のキャリアが分散処理を実行することが可能であるか否かを示す情報(以下、分散処理可否情報という)を問い合わせる。処理部50は、例えば、通信部60を介して全て他のキャリア13へ分散処理可否情報を問い合わせる。即ち、通信部60で通信可能な通信圏内に含まれる全てのキャリア13へ分散処理可否情報の問い合わせをブロードキャストする。なお、処理部50は、全ての他のキャリア13へ問い合わせを実行せずに、特定のキャリア13(予め設定されたグループなど)のみに問い合わせを実行しても良い。
【0035】
次に、処理部50は、他のキャリア13から分散処理可否情報を受信する(S15)。例えば、処理部50は、分散処理を依頼したい処理内容、要求する処理時間などを示す情報を、他のキャリア13へ送信する(S13)。他のキャリア13は、例えば、受信した情報に基づいて、要求された時間内に処理可能であるかどうか、どの処理なら実行できるか、処理を完了できる予想完了時間などを示す情報を、分散処理可否情報として送信する。また、他のキャリア13は、要求された処理時間内にどの処理も実行できないと判断した場合、実行できない旨を示す分散処理可否情報を送信しても良い。この場合、他のキャリア13は、実行できない旨の情報に加えて、仮に実行した場合の予想完了時間(要求された処理時間よりもどれだけ遅延したら処理を完了できるかを示す予想時間)を分散処理可否情報として送信しても良い。これにより、処理部50は、要求する処理時間を調整することで(要求する処理時間を長くしてある程度の遅延を許容するなど)、分散処理を依頼するキャリア13の選択肢を増やすことができる。
【0036】
次に、処理部50は、分散処理を実行可能である旨の分散処理可否情報を受信した他のキャリア13の中から、分散処理を依頼するキャリア13(以下、依頼先キャリア13Aと言う場合がある)を決定する(S17)。例えば、処理部50は、より早く応答してきたキャリア13や、予想完了時間のより短いキャリア13を優先して依頼先キャリア13Aに決定する。また、処理部50は、実行可能な処理内容(例えば、
図8に示す画像処理計算)を示す情報を分散処理可否情報として受信した場合、実行可能な処理内容を示す情報を送信してきた依頼先キャリア13Aにその実行可能な処理を優先的に依頼しても良い。あるいは、処理部50は、自身の現在位置から距離が近く、安定した通信速度で通信できる他のキャリア13を、画像処理計算などのデータ量の大きい処理を依頼する依頼先キャリア13Aに決定しても良い。また、他のキャリア13の処理能力が異なる場合、処理部50は、より処理能力の高いキャリア13を、優先して依頼先キャリア13Aに決定しても良い。
【0037】
従って、本実施形態の処理部50(検出部61)は、通信部60を介して他のキャリア13へ問い合わせを実行した結果に基づいて、分散処理可否情報を検出する。これによれば、キャリア13は、処理負荷が高い処理を実行する場合などの分散処理が必要な場合に(S11:YES)、他のキャリア13へ分散処理可否情報を問い合わせることができる。これにより、分散処理が必要な時に適宜問い合わせを実行して、依頼先キャリア13Aを決定できる。
【0038】
なお、分散処理可否情報を検出する方法は、上記した問い合わせを行なう方法に限らない。例えば、他のキャリア13が、自身の処理状態に応じて、分散処理の依頼を受けることが可能であるか否かを判断しても良い。例えば、キャリア13は、作業ロボット91による作業を待つため作業工程位置93に一定時間だけ停止する場合、処理負荷が低くなる。そこで、各キャリア13は、例えば、作業工程位置93に停止した場合に、分散処理の依頼を受けることが可能であると判断しても良い。各キャリア13は、依頼を受けられることや、依頼を受けることが可能な時間(停止時間など)を示す分散処理可否情報を、能動的に相互に送受信しても良い。受信したキャリア13の処理部50は、分散処理可否情報の時間情報などに基づいて、依頼先キャリア13Aを決定しても良い。
【0039】
従って、本実施形態の他のキャリア13は、自身の処理状態に基づいて、分散処理の依頼を受けることが可能であると判断すると、分散処理を実行することが可能であることを示す分散処理可否情報を送信しても良い。そして、処理部50は、通信部60を介して他のキャリア13から分散処理可否情報を受信することで、分散処理可否情報を検出しても良い。これによれば、他のキャリア13は、自身の都合の良い状態、例えば、移動を停止して処理負荷が低い状態になると、分散処理の依頼を受けることができることを分散処理可否情報で通知する。また、受信側のキャリア13は、分散処理を実行することが可能であることを示す分散処理可否情報を受信した他のキャリア13に対し、分散処理を適切なタイミングで依頼できる。なお、上記した問い合わせにより分散処理可否情報を検出する方法と、他のキャリア13が自身の処理状態に基づいて分散処理可否情報を送信する方法とを併用しても良い。
【0040】
次に、処理部50は、S17で決定した依頼先キャリア13Aへ、分散処理を依頼するデータを送信する(S19)。処理部50は、通信部60を介して依頼するデータを送信する。依頼先キャリア13Aは、依頼元のキャリア13から受信したデータに対して必要な処理(画像処理計算など)を実行する(
図8参照)。
【0041】
次に、処理部50は、依頼した全ての依頼先キャリア13Aから分散処理の結果を受信できたか否かを判断する(S21)。処理部50は、依頼した全ての依頼先キャリア13Aから分散処理の結果を受信できたと判断すると(S21:YES)、分散処理の処理結果に基づく制御(
図8の結果実行やモータ処理実行)を開始する(S23)。これにより、
図8に示すように、処理負荷の低い状態の他のキャリア13を利用して、処理時間の短縮を図ることができる。処理部50は、S23を実行して
図7に示す分散制御を終了すると、再度S11からの処理を開始する。
【0042】
一方で、処理部50は、S21において、依頼した全ての依頼先キャリア13Aのうち、少なくとも1つ依頼先キャリア13Aから分散処理の結果を受信できない場合(S21:NO)、S19で依頼先キャリア13Aへ依頼するデータを送信した後、所定時間を経過したか否かを判断するタイムアウト処理を実行する(S25)。この所定時間は、依頼先キャリア13Aからの応答を待つのに許容できる時間である。例えば、所定時間は、
図8に示す時間T2が時間T1を超えない時間である。より具体的には、仮に、処理部50が、所定時間だけ、依頼先キャリア13Aから分散処理の結果を待ったとしても、受信した後に必要な処理(
図8のモータ処理実行など)を実行すれば、結果として時間T2が時間T1より短くなる時間を所定時間として設定する。あるいは、処理部50は、後述するように、依頼先キャリア13Aから分散処理の結果を受信できなかった場合、自身でその処理を実行する(S27)。このため、自身で処理し直したとしても、時間T2が時間T1より短くなる時間を所定時間として設定しも良い。
【0043】
処理部50は、S25で否定判断する間、即ち、上記した所定時間だけ経過していない間(S25:NO)、S21を実行して処理結果を待つ。また、処理部50は、S25で肯定判断した場合、即ち、所定時間だけ経過したと判断すると(S25:YES)、処理結果を得られていない処理を自身で処理する(S27)。処理部50は、処理結果を得られていない処理を自身で処理し、S27で全ての処理結果を得ると、S23を実行する。
【0044】
従って、処理部50は、送信部63により依頼先キャリア13Aへ分散処理のデータを送信した後、所定時間だけ経過しても依頼先キャリア13Aから分散処理の結果を取得できない場合(S25:YES)、取得できなかった分散処理を自身で処理する(S27)。通信の切断や他のキャリア13の状態変化によっては、依頼した分散処理の結果を取得できない可能性がある。これに対し、本実施形態のキャリア13では、所定時間だけ経過しても分散処理の結果を取得できない場合、結果を得られなかった分散処理を自身で処理する。これにより、結果を送信してこない他のキャリア13からの応答を長時間に亘って待つことなく、分散処理の結果に基づく制御を開始できる(S23)。
【0045】
また、本実施形態のキャリア13、及び他のキャリア13の各々は、カメラ55と、センサ57とを備える。複数のキャリア13の各々は、カメラ55の撮像データを画像処理した結果、及びセンサ57の検出信号に基づいて次に実行する作業内容を決定し、決定した作業内容に基づいた自律制御を実行する。複数のキャリア13がセンサ57やカメラ55のデータに基づいて自律して個々の作業を行う場合、各キャリア13は、処理負荷の高い状態や処理負荷の低い状態となる。即ち、各キャリア13は、分散処理を依頼したい状態や、分散処理の依頼を受けることが可能な状態となる。このため、カメラ55やセンサ57のデータに基づいて自律した行動を行うキャリア13において、他のキャリア13の処理状態に応じて、分散処理を依頼できることは極めて有効である。
【0046】
なお、キャリア13及び他のキャリア13は、カメラ55の撮像データを画像処理した結果、及びセンサ57の検出信号の少なくとも一方に基づいて、次に実行する作業内容を決定しても良い。また、複数のキャリア13の少なくとも一つは、人口知能等を搭載せず自律した制御を実行しない構成でも良い。
【0047】
因みに、キャリア13は、キャリア及び他のキャリアの一例である。
【0048】
以上、上記した本実施例によれば以下の効果を奏する。
本実施例の一態様では、キャリア13の処理部50(検出部61)は、他のキャリア13が分散処理を実行することが可能か否かを示す分散処理可否情報を、通信部60を介して検出する(S13、S15)。処理部50(決定部62)は、他のキャリア13のうち、分散処理を依頼する依頼先キャリア13Aを、分散処理可否情報に基づいて決定する(S17)。処理部50(送信部63)は、決定部62により決定した依頼先キャリア13Aへ分散処理のデータを送信する(S19)。処理部50(取得部64)は、分散処理の結果を、通信部60を介して依頼先キャリア13Aから取得する(S21)。
【0049】
これによれば、キャリア13の処理部50は、他のキャリア13の分散処理可否情報を確認した上で、分散処理を依頼する依頼先キャリア13Aを決定する。そして、処理部50は、依頼先キャリア13Aへ分散処理のデータを送信して、処理結果を取得する。これにより、複数のキャリア13がそれぞれの処理を実行し処理負荷が変動する場合において、他のキャリア13の処理状態に応じて分散処理を依頼し、処理結果を取得できる。
【0050】
なお、本願は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。
例えば、上記実施形態では、本願のキャリアとして、固定装置11の搬送路87で物品89を搬送するキャリア13を採用したが、これに限らない。本願のキャリアは、例えば、決まったレールのない場所を移動する装置でも良い。
図9は、別例のキャリア101を示している。キャリア101は、複数の生産ライン103が設置された生産工場のフロアーを移動する装置である。キャリア101は、例えば、モータの駆動によりタイヤを動かしてフロアー上を走行する。生産ライン103は、例えば、電子部品を基板に実装する装置、半田を塗布する装置、基板の検査装置等を連結させて構成した回路基板を生産する生産ラインである。キャリア101は、電子部品を収納した倉庫105から各生産ライン103に電子部品を補充する装置である。キャリア101は、例えば、自身が担当する生産ライン103の電子部品の残数を監視し、電子部品の補充の必要性を判断する。このような場合に、キャリア101は、生産ライン103を監視して補充する必要がある電子部品を判断し、次に実行すべき作業内容(補充作業など)を決定する。そして、キャリア101は、このような次の作業内容の決定時に、他のキャリア101へ分散処理を依頼しても良い。即ち、生産工場のフロアーを自由に移動するキャリア101が、自身の作業内容を決定しつつ、分散処理を他のキャリア101へ依頼いても良い。
【0051】
また、上記実施形態では、キャリア13は、分散処理を依頼して所定時間が経過すると自身で処理するタイムアウト処理を実行したが(S25、S27)、タイムアウト処理を実行しなくとも良い。例えば、キャリア13は、他のキャリア13へ再度問い合わせを行なっても良く、分散処理の結果を得られるまで待機しても良く、アラームを報知しても良い。
また、キャリア13は、カメラ55やセンサ57を備えない構成でも良い。
【符号の説明】
【0052】
13,101 キャリア(キャリア、他のキャリア)、13A 依頼先キャリア、50 処理部、60 通信部、61 検出部、62 決定部、63 送信部、64 取得部。