JP2024061572A - シミュレーションシステム及びプログラム - Google Patents

シミュレーションシステム及びプログラム Download PDF

Info

Publication number
JP2024061572A
JP2024061572A JP2022203354A JP2022203354A JP2024061572A JP 2024061572 A JP2024061572 A JP 2024061572A JP 2022203354 A JP2022203354 A JP 2022203354A JP 2022203354 A JP2022203354 A JP 2022203354A JP 2024061572 A JP2024061572 A JP 2024061572A
Authority
JP
Japan
Prior art keywords
simulation
robot
model data
human
situation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022203354A
Other languages
English (en)
Inventor
正義 孫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SoftBank Group Corp
Original Assignee
SoftBank Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SoftBank Group Corp filed Critical SoftBank Group Corp
Priority to PCT/JP2023/037597 priority Critical patent/WO2024085160A1/ja
Publication of JP2024061572A publication Critical patent/JP2024061572A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Manipulator (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】人間ワーカーと第1ロボットとが混在して作業を行う状況を模擬するシミュレーションの精度を向上させる。【解決手段】シミュレーションシステムの取得部30は、人間ワーカーおよび第1ロボットが移動を伴う作業を各々行う作業空間を検知対象とする複数のセンサにより検知されたセンサ情報を取得し、生成部32は、取得部30によって取得されたセンサ情報に基づいて、人間ワーカーによる前記作業をモデル化した第1のモデルデータおよび第1ロボットによる前記作業をモデル化した第2のモデルデータを生成し、制御部34は、生成部32によって生成された第1のモデルデータおよび第2のモデルデータに基づいて、、作業空間で人間ワーカーと第1ロボットとが前記作業を各々行う状況を模擬した第1シミュレーションを行う。【選択図】図2

Description

本開示はシミュレーションシステム及びプログラムに関する。
特許文献1には、工場の生産ラインにおいて、作業を自動で行うための人型ロボットの姿勢制御について記載されている。
特開2019-093506号公報
人型ロボットは人間ワーカーと同様の作業を行うことが可能である。しかし、例えば人間ワーカーによる作業を人型ロボットなどのロボットに置き換える場合、作業に従事している全ての人間ワーカーを一度にロボットへ置き換えることは現実的ではなく、作業のロボット化の過程では、人間ワーカーとロボットとが作業空間内に混在して作業をする状況が生じる。
本開示は上記事実を考慮して成されたもので、人間ワーカーと第1ロボットとが混在して作業を行う状況を模擬するシミュレーションの精度を向上できるシミュレーションシステム及びプログラムを得ることが目的である。
第1の態様に係るシミュレーションシステムは、人間ワーカーおよび第1ロボットが移動を伴う作業を各々行う作業空間を検知対象とする複数のセンサにより検知されたセンサ情報を取得する取得部と、前記取得部によって取得されたセンサ情報に基づいて、前記人間ワーカーによる前記作業をモデル化した第1のモデルデータおよび前記第1ロボットによる前記作業をモデル化した第2のモデルデータを生成する生成部と、前記生成部によって生成された第1のモデルデータおよび第2のモデルデータに基づいて、前記作業空間で前記人間ワーカーと前記第1ロボットとが前記作業を各々行う状況を模擬した第1シミュレーションを行う制御部と、を含んでいる。
第1の態様によれば、人間ワーカーと第1ロボットとが混在して作業を行う状況を模擬する第1シミュレーションの精度を向上させることができる。
第2の態様は、第1の態様において、前記制御部は、前記第1シミュレーションの結果が所定の条件を満たした場合、前記第1シミュレーションに対して前記第1ロボットの作業速度を変更した状況を模擬する第2シミュレーション、および、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションの少なくとも一方の実行を提案する処理を行う。
第2の態様によれば、第1シミュレーションの結果が所定の条件、例えば、作業空間全体としての作業速度が目標に達していないなどの条件を満たした場合に、第1ロボットの作業速度の変更、人間ワーカーの少なくとも一部の第2ロボットへの置き換え、といった対策が存在することをユーザーに認識されることができる。
第3の態様は、第1の態様または第2の態様において、前記制御部は、前記第1シミュレーションに対して前記第1ロボットの作業速度を変更した状況を模擬する第2シミュレーションを行う場合、前記第2シミュレーション上での前記第1ロボットの作業速度を、個々の前記人間ワーカーに対応する前記第1のモデルデータに含まれる、個々の前記人間ワーカーの作業速度に基づいて設定する。
第3の態様によれば、人間ワーカーと混在して作業を行う第1ロボットの作業速度を変更した状況を模擬する第2シミュレーションを行う場合に、第1ロボットの作業速度を人間ワーカーの作業速度に基づいて適切に設定することができる。
第4の態様は、第1の態様または第2の態様において、前記制御部は、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合、前記第3シミュレーション上で前記第2ロボットへ置き換える人間ワーカーを、個々の前記人間ワーカーに対応する前記第1のモデルデータに含まれる、個々の人間ワーカーの作業速度に基づいて選択する。
第4の態様によれば、第1ロボットとが混在して作業を行う人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合に、第2ロボットへ置き換える人間ワーカーを、個々の人間ワーカーの作業速度に基づいて適切に選択することができる。
第5の態様は、第1の態様または第2の態様において、前記制御部は、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合、前記第3シミュレーション上で前記人間ワーカーの少なくとも一部から置き換える前記第2ロボットを、個々の前記人間ワーカーに対応する前記第1のモデルデータに基づいて複数種類のロボットの中から選択する。
第5の態様によれば、第1ロボットとが混在して作業を行う人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合に、一部の人間ワーカーから置き換える第2ロボットを適切に選択することができる。
第6の態様は、第1の態様または第2の態様において、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合に、前記生成部は、前記第2ロボットによる前記作業をモデル化した第3のモデルデータを生成し、前記制御部は、前記生成部によって生成された前記第3のモデルデータも用いて前記第3シミュレーションを行う。
第6の態様によれば、第1ロボットとが混在して作業を行う人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合に、第2ロボットをモデル化した第3のモデルデータも用いることで、第3シミュレーションの精度をさらに向上させることができる。
第7の態様は、第1の態様または第2の態様において、前記制御部は、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合、前記第3シミュレーション上での前記第2ロボットの作業速度を、個々の前記人間ワーカーに対応する前記第1のモデルデータに含まれる、個々の前記人間ワーカーの作業速度に基づいて設定する。
第7の態様によれば、第1ロボットとが混在して作業を行う人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションにおける第2ロボットの作業速度を、当該第2ロボットへ置き換える人間ワーカーの作業速度に基づいて適切に設定することができる。
第8の態様に係るプログラムは、人間ワーカーおよび第1ロボットが移動を伴う作業を各々行う作業空間を検知対象とする複数のセンサにより検知されたセンサ情報を取得し、取得したセンサ情報に基づいて、前記人間ワーカーによる前記作業をモデル化した第1のモデルデータおよび前記第1ロボットによる前記作業をモデル化した第2のモデルデータを生成し、生成した第1のモデルデータおよび第2のモデルデータに基づいて、前記作業空間で前記人間ワーカーと前記第1ロボットとが前記作業を各々行う状況を模擬した第1シミュレーションを行うことを含む処理をコンピュータによって実行させる。
第8の態様によれば、人間ワーカーと第1ロボットとが混在して作業を行う状況を模擬する第1シミュレーションの精度を向上させることができる。
なお、上記の本開示の概要は、本開示の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
ピッキング作業が行われる倉庫のフロアの平面図である。 情報処理装置の機能的な構成の一例を示すブロック図である。 情報処理装置によって実行される処理ルーチンの一例を示すフローチャートである。 情報処理装置として機能するコンピュータのハードウェア構成の一例を概略的に示すブロック図である。 ロボットのスペックに関するデータの一例を示す図である。
以下、発明の実施の形態を通じて本開示を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが本開示の解決手段に必須であるとは限らない。
倉庫などの作業空間内での人間ワーカーによる作業をロボット化して生産性の大幅な向上を目指す場合、単に人間ワーカーをロボットに置き換えると共にロボットの移動速度及び稼働速度等の作業速度を設定するだけでは実現が難しい。そこで、本実施形態に係るシミュレーションシステムは、人間ワーカーが移動を伴う作業を遂行する倉庫内を検知対象とする複数のセンサにより検知されたセンサ情報に基づいて、ロボット化を実行する対象の倉庫のレイアウト、各機能、人数、自動化マシン、ベルトコンベア、各スピード、オフローディング、ストアリング、ピッキング、ソーティング、パッキング、及びオンローディング等の全てのオペレーションの完全シミュレーションをメタバース等の3次元仮想空間上で行う。これにより、デジタルツインによって倉庫作業を再現し、倉庫作業のロボット化の移行シミュレーションを行うことが可能となる。
なお、倉庫などの作業空間内における人間ワーカーによる作業をロボット化する場合、作業に従事している全ての人間ワーカーを一度にロボットへ置き換えることは、移行シミュレーションに対する誤差が無視できなくなるので現実的ではない。このため、上記のロボット化は、一部の人間ワーカーをロボットに置き換えた場合の移行シミュレーションを行い、その結果に基づき一部の人間ワーカーを実際にロボットへ置き換えることを複数回繰り返すことで実現される。従って、上記のロボット化の過程では、人間ワーカーとロボットとが作業空間内に混在して作業をする状況が生じる。
そこで、本実施形態では、人間ワーカーとロボットとが作業空間内に混在して作業をする状況に対し、詳細は後述するが、まずは、作業空間で人間ワーカーと第1ロボットとが移動を伴う作業を各々行う状況を模擬した第1シミュレーションを行う。また、第1シミュレーションの結果から、フロア50全体としての作業速度が目標に達していないなどの場合には、前記第1シミュレーションに対して第1ロボットの作業速度を変更した状況を模擬する第2シミュレーション、または、前記第1シミュレーションに対して人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う。
図1は、人間ワーカー52およびロボット60が移動を伴う作業を各々行う作業空間の一例としての倉庫のフロア50の平面図である。なお、ロボット化を行う前のタイミングでは、例えば、フロア50には人間ワーカー52のみが存在し、ロボット化が完了した後のタイミングでは、例えば、フロア50にはロボット60のみが存在する状況になるが、図1には、ロボット化の途中のタイミングにおける状況、すなわち、フロア50に人間ワーカー52とロボット60が混在している状況が示されている。図1において、フロア50に配備されているロボット60は、本開示における第1ロボットの一例である。なお、本開示において、ロボット60は、人間ワーカー52と同様の、移動を伴う作業を遂行可能であればよく、人型ロボットであっても人型でないロボットでも構わない。
人間ワーカー52(およびロボット60)が遂行する作業とは、例えば、ピッキング作業である。本実施形態に係るピッキング作業とは、必要な品物を集める(ピックアップする)仕事のことである。ピッキングスタッフである人間ワーカー52は、倉庫内の品物を出荷するために欠かせない役割を持つため、あらゆるジャンルの倉庫に配置される。
例えば、予め指示されたリストや注文書を基に、指定の品物を集め、まとめたものを検品担当者や梱包担当者へと受け流していくのが主な仕事である。倉庫規模が大きいほど、保管されている品物の種類や数も膨大であるため、多数の人間ワーカー52がフロア50内を移動することになる。
図1に示すように、フロア50には、複数の棚54が設置され、各棚54の間、フロア50の壁と棚54との間は、それぞれ人間ワーカー52(およびロボット60)の移動通路56となっている。人間ワーカー52は、フロア50を管理する管理制御装置から、リストや注文書の情報を携帯端末64で受信し、受信した情報に従って、移動通路56を移動し、目的の品物をピックアップする。フロア50には、ベルトコンベア等の棚54以外の物体が設置されてもよい。
フロア50内には、複数のセンサ12が設置される。センサ12は、フロア50内に死角が存在しないように、複数の位置に設置される。センサ12は、人間ワーカー52(およびロボット60)を検知する。また、センサ12は、人間ワーカー52(およびロボット60)だけではなく、品物の大きさ、形、数、及び種類や棚54等の倉庫内の作業を3次元仮想空間上に再現するための各種の情報も検知する。センサ12としては、最高性能のカメラ、ソリッドステートLiDAR、マルチカラーレーザ同軸変位計、又はその他様々なセンサ群が採用され得る。また他には、センサ12としては、振動計、サーモカメラ、硬度計、レーダー、LiDAR、高画素・望遠・超広角・360度・高性能カメラ、ビジョン認識、微細音、超音波、振動、赤外線、紫外線、電磁波、温度、湿度、スポットAI天気予報、高精度マルチチャネルGPS、低高度衛星情報、又はロングテールインシデントAI data等が挙げられる。
なお、センサ12は、上記の情報のほかに、画像、距離、振動、熱、匂い、色、音、超音波、紫外線、又は赤外線等を検知してもよい。他にセンサ12が検知する情報としては、人間ワーカー52の重心移動、人間ワーカー52が移動する床の材質の検知、外気温度の検知、外気湿度の検知、床の上下横斜め傾き角度の検知、又は水分量の検知等が挙げられる。
センサ12は、これらの検知を例えばナノ秒毎に実施する。休憩室等のプライベートエリア及びトイレ等はセンサ12によるモニタリングの対象外とされる。また、各人間ワーカー52のプライバシー保護のため、人間ワーカー52の顔、体型、及びID等は完全にマスキングされる。なお、センサ12はフロア50内に設置されることに限られるものではなく、フロア50内に存在する人間ワーカー52およびロボット60の少なくとも一方に、装着または取り付けられていてもよい。
図2は、本実施形態に係るシミュレーションシステムが備える情報処理装置20の機能的な構成の一例を示すブロック図である。情報処理装置20は、取得部30、生成部32、制御部34および記憶部36を含んでいる。本実施形態では、フロア50内で作業を行う人間ワーカー52から置き換えるロボット60(本開示における第2ロボット60の一例)を、スペックが互いに異なる複数種類のロボット60の中から選択可能とされており、記憶部36にはロボットデータ38が記憶されている。
ロボットデータ38は、複数種類のロボット60のスペックに関するデータを含む。一例として図5に示すように、ロボットデータ38は、ロボット60の型番毎に、ロボット60のスペックとして、ロボット60のサイズ、ロボット60の重量、ロボット60の最大移動速度、ロボット60の運搬可能な品物の最大重量、ロボット60の運搬可能な品物の最大サイズを含む。ロボット60の型番は、ロボット60を識別するための識別情報の一例である。また、ロボット60のサイズは、ロボット60の身長、腕の長さ、及び脚の長さを含む。なお、ロボット60のスペックは、腕の関節数及び脚の関節数等を含んでもよい。
なお、本開示は、フロア50内で作業を行う人間ワーカー52から置き換えるロボット60(第2ロボット60)が、一定スペックで単一種類のロボット60に限られる態様も含んでいる。この態様では、ロボットデータ38(を記憶する記憶部36)を省略すると共に、第2ロボット60として機能するロボット60を選択する処理を省略することも可能である。
取得部30は、フロア50内に設置された複数のセンサ12によりリアルタイムに検知されたセンサ情報を取得する。
生成部32は、取得部30により取得されたセンサ情報に基づいて、フロア50内に存在するマネージャー以外の個々の人間ワーカー52に対応して、個々の人間ワーカー52による作業をモデル化した第1のモデルデータを生成する。なお、個々の人間ワーカー52に対応する第1のモデルデータには、少なくとも、個々の人間ワーカー52の作業速度の情報が含まれている。
また、本実施形態において、第1のモデルデータには、例えば、人間ワーカー52の体格、作業対象の品物の重量、作業対象の品物の個数、人間ワーカー52の移動距離、人間ワーカー52の移動速度などの、人間ワーカー52の作業に関連する作業情報が含まれていてもよい。生成部32は、取得部30により取得されたセンサ情報から上記の作業情報を導出することができる。上記の作業情報は、例えば、センサ情報に含まれるフロア50をデジタルカメラにより撮影した画像を解析することによって導出できる。また、上記の作業情報は、例えば、レーダー又はLiDARなどのセンサ12から得られる人間ワーカー52又は作業対象の品物までの距離を用いて導出できる。
また、生成部32は、フロア50内にロボット60(第1ロボット60)が存在している場合、取得部30により取得されたセンサ情報に基づいて、フロア50内に存在している第1ロボット60による作業をモデル化した第2のモデルデータも生成する。第2のモデルデータには、第1ロボット60の型及び各種スペックが含まれていてもよい。また、第2のモデルデータを生成する際、人間ワーカー52の体型を平均化し、単純なシリアルナンバーによってロボット60を再現してもよい。
さらに、生成部32は、第3シミュレーションが行われる場合、記憶部36に記憶されているロボットデータ38に基づいて、フロア50内で作業を行う人間ワーカー52から置き換える第2ロボット60(後述する制御部34により選択されたロボット60)をモデル化した第3のモデルデータも生成する。なお、生成部32は、第3のモデルデータを生成する際、人間ワーカー52の体型を平均化し、単純なシリアルナンバーによって人間ワーカー52に対応するロボットを再現してもよい。
また、生成部32は、取得部30により取得されたセンサ情報に基づいて、棚54及び移動通路56等の人間ワーカー52およびロボット60以外の物体をモデル化したモデルデータも生成する。生成部32は、取得部30によりセンサ情報が取得される度に、上記の各モデルデータをリアルタイムに生成して更新する。
制御部34は、第1~第3シミュレーションの何れかを行う場合、生成部32によって生成された各モデルデータに基づいて、フロア50における棚54、移動通路56等を模擬した3次元仮想空間を生成する。また制御部34は、第1シミュレーションまたは第2シミュレーションを行う場合、第1のモデルデータに基づいて人間ワーカー52に対応するオブジェクトを3次元仮想空間上に配置すると共に、第2のモデルデータに基づいて、第1ロボット60に対応するオブジェクトを3次元仮想空間上に配置する。なお、第2シミュレーションを行う場合、制御部34は、第1ロボット60に対応するオブジェクトを3次元仮想空間上に配置するのに先立ち、第1モデルデータに含まれる人間ワーカー52の作業速度などに基づいて、第1ロボット60の作業速度を変更設定する(第2のモデルデータを更新する)。
そして、制御部34は、3次元仮想空間上に配置した人間ワーカー52または第1ロボット60に対応する個々のオブジェクトに対し、第1のモデルデータ、第2のモデルデータを含む各モデルデータに基づいて、移動を伴う作業を3次元仮想空間上で行わせるシミュレーションを行う。これにより、人間ワーカー52と第1ロボット60とが混在して作業をしている状況を精度良く模擬する第1シミュレーション、または、第1シミュレーションに対して第1ロボット60の作業速度を変更した状況を精度良く模擬する第2シミュレーションが実現される。
本実施形態において、フロア50内で作業を行う人間ワーカー52の少なくとも一部を第2ロボット60へ置き換える第3シミュレーションを行う場合、制御部34は、第2ロボット60へ置き換える人間ワーカー52(置換対象の人間ワーカー52)を、第1のモデルデータに基づいて選択する。置換対象の人間ワーカー52は、例えば、個々の人間ワーカー52に対応する第1のモデルデータに含まれる、個々の人間ワーカー52の作業速度に基づいて選択することができ、一例としては、置換対象の人間ワーカー52を、作業速度の昇順に所定数選択することができる。これにより、置換対象の人間ワーカー52を、人間ワーカー52の作業速度などに基づいて適切に選択することができる。
また、第3シミュレーションを行う場合、制御部34は、スペックの異なる複数種類のロボット60の中から、置換対象の人間ワーカー52を置き換える第2ロボット60を選択する。具体的には、制御部34は、ロボットデータ38にスペックなどが設定されている複数種類のロボット60の中から、置換対象の人間ワーカー52に対応する第1のモデルデータに含まれる作業情報に基づいて第2ロボット60を選択する。例えば、制御部34は、前記複数種類のロボット60の中から、前記作業情報により示される作業を遂行可能な第2ロボット60を選択する。作業を遂行可能な第2ロボット60の一例は、運搬可能な品物の最大重量が、作業により運搬される作業対象の品物の重量以上のロボット60である。また、作業を遂行可能な第2ロボット60の他の例は、作業対象の品物を運搬する際の最大移動速度が人間ワーカー52の移動速度以上のロボット60である。
制御部34は、作業を遂行可能な第2ロボット60が複数種類存在する場合は、置換対象の人間ワーカー52の体格に最も近いサイズのロボット60を選択してもよい。また、制御部34は、作業を遂行可能な第2ロボット60が複数種類存在する場合は、人間ワーカー52の平均的な体格に最も近いサイズのロボット60を選択してもよい。また、制御部34は、例えば、作業情報を入力とし、その作業情報により示される作業に最適なロボット60の型番を出力する学習済みモデルに対し、作業情報を入力することによって、第2ロボット60を選択してもよい。この場合における学習済みモデルは、教師データを用いた機械学習によって予め得ておけばよい。
制御部34による上記の第2ロボット60の選択は、取得部30によりセンサ情報が取得される度に実行されなくてもよい。この場合、制御部34による第2ロボット60の選択は、例えば、10分等の予め設定された時間間隔毎に、その時間間隔の間に取得されたセンサ情報に基づいて行うようにしてもよい。
また、第3シミュレーションを行う場合、制御部34は、フロア50内で作業を行っている人間ワーカー52のうち、今回のシミュレーションでは第2ロボットへの置き換えが行われない一部の人間ワーカー52(置換対象外の人間ワーカー52)に対応する第1のモデルデータに基づいて、置換対象外の人間ワーカー52に対応するオブジェクトを3次元仮想空間上に配置する。また制御部34は、第2のモデルデータに基づいて、第1ロボット60に対応するオブジェクトを3次元仮想空間上に配置する。さらに制御部34は、第3のモデルデータに基づいて、今回のシミュレーションで置換対象の人間ワーカー52を置き換える第2ロボット60に対応するオブジェクトを3次元仮想空間上に配置する。
なお、このとき制御部34は、置換対象の人間ワーカー52に対応する第1のモデルデータに含まれる置換対象の人間ワーカー52の作業速度に基づいて、第2ロボット60の作業速度を設定してもよい。この場合、シミュレーション上での第2ロボット60の作業速度を、置換対象の人間ワーカー52の作業速度に応じて適切に設定することができる。
そして、制御部34は、3次元仮想空間上に配置した人間ワーカー52、第1ロボット60および第2ロボット60の何れかに対応する個々のオブジェクトに対し、第1のモデルデータ~第3のモデルデータを含む各モデルデータに基づいて、移動を伴う作業を3次元仮想空間上で行わせるシミュレーションを行う。これにより、第1ロボット60と混在して作業を行う人間ワーカー52のうち置換対象の人間ワーカー52を第2ロボット60に置き換えた状況を精度良く推測する第3シミュレーションが実現される。
なお、制御部34は、シミュレーションの途中経過や結果などを、液晶ディスプレイ等の表示装置に適宜表示してもよい。また、制御部34は、生成部32によって各モデルデータが更新された場合、3次元仮想空間内における人間ワーカー52、第1ロボット60および第2ロボット60の何れかに対応する個々のオブジェクトの配置などを更新してもよい。これにより、3次元仮想空間上に倉庫のフロア50の作業が再現される。また、制御部34は、倉庫のピーク時における品物の入荷数及び出荷数を推定し、推定したピーク時の状況をシミュレーションにより推定するようにしてもよい。
また、制御部34(情報処理装置20)は、n倍の品物の入荷数及び出荷数を達成可能な作業速度を完璧に実現させるまで、3次元仮想空間内で倉庫内のレイアウト、ロボット60のスペック、ロボット60の数等の変更といったシミュレーションを繰り返し行ってもよい。この場合の倍率nは、ユーザーにより指定可能であってもよいし、人間ワーカーの能力に応じてオペレーションの倍速度を設定する。
このように、3次元仮想空間上で倉庫内のオペレーションの再現と様々な作業速度のオペレーションの実行を繰り返しシミュレーションすることによって、倉庫内のレイアウト変更やロボット60の台数変更等の対策を見つけることができる。このシミュレーションにより、現状の3~20倍程度の入荷スピード及び出荷スピードでのアウトプットが可能になる。
また、ユーザーは、プロトタイプのロボット60が遂行したピックアップ等の作業の成功率を情報処理装置20に入力し、作業失敗時のモニタリングや人間によるレスキュー作業の試験を行うことも可能となる。
情報処理装置20は、図3にフローチャートで示されている処理を繰り返し実行する。
ステップS10において、取得部30は、フロア50内を検知対象とする複数のセンサ12によりリアルタイムに検知されたセンサ情報を取得する。
ステップS12において、生成部32は、前述したように、ステップS10で取得されたセンサ情報に基づいて、フロア50内に存在する人間ワーカー52による作業をモデル化した第1のモデルデータおよびフロア50内に存在する第1ロボット60による作業をモデル化した第2のモデルデータを各々生成する。なお、ステップS10、S12の処理は、次のステップS14以降の処理が行われている間も、並列に、例えばナノ秒周期で繰り返し実行される。
ステップS14において、制御部34は、前述したように、人間ワーカー52と第1ロボット60が混在する状況を模擬した第1シミュレーションを行い、第1のシミュレーションの実行結果を表示装置などに出力する。
表示装置などに第1のシミュレーションの実行結果が出力されると、ユーザーにより、第1のシミュレーションの実行結果が参照され、シミュレーション結果を検証する作業、例えば、第1シミュレーション上におけるフロア50全体での作業速度が妥当か否かを検証する作業などが行われる(ステップS16)。
ステップS18において、制御部34は、入力装置を介してユーザーによって入力された検証作業の結果などに基づいて、フロア50全体での作業速度が目標に到達したか否か判定する。ステップS18の判定が肯定された場合は図3フローチャートに示されている処理の実行が終了する。
また、ステップS18の判定が否定された場合はステップS20へ移行し、制御部34は、作業速度向上策の選択肢として、第2シミュレーションおよび第3シミュレーションの実行を推奨する情報を表示装置などに出力することで、ユーザーに提案する処理を行う。次のステップS22において、制御部34は、ユーザーによって選択された作業速度向上策を判定し、判定結果に応じて分岐する。
作業速度向上策として第2シミュレーションの実行がユーザーによって選択された場合には、ステップS22からステップS24へ移行する。ステップS24において、制御部34は、前述のように、人間ワーカー52の作業速度などに基づき、第1ロボット60の作業速度が変更されるように第2のモデルデータを変更する。そして、次のステップS26において、制御部34は、第1シミュレーションに対して、第1ロボット60の作業速度を変更した第2シミュレーションを実行し、第2シミュレーションの結果を表示装置などに出力する。ステップS26の処理を終了するとステップS16に戻る。
また、作業速度向上策として第3シミュレーションの実行がユーザーによって選択された場合には、ステップS22からステップS30へ移行する。ステップS30において、制御部34は、前述したように、個々の人間ワーカー52に対応する第1のモデルデータに基づいて、今回のシミュレーションで第2ロボット60へ置き換える置換対象の人間ワーカー52を選択する。
次のステップS32において、制御部34は、ステップS30で選択した置換対象の人間ワーカー52を表示装置などに出力し、置換対象の人間ワーカー52の人数などについてユーザーの承認を求める確認処理を行う。
ステップS34において、制御部34は、前述したように、置換対象の人間ワーカー52に対応する第1のモデルデータに基づいて、置換対象の人間ワーカー52から置き換える第2ロボット60を選択する。
ステップS36において、生成部32は、前述したように、今回のシミュレーションで置換対象の人間ワーカー52から置き換える第2ロボット60による作業をモデル化した第3のモデルデータを生成する。
ステップS38において、制御部34は、ステップS12で生成された第1モデルデータおよび第2モデルデータに加えて、ステップS18で生成された第3モデルデータに基づいて、置換対象外の人間ワーカー52、第1ロボット60および第2ロボットの何れかに対応するオブジェクトを3次元仮想空間上に配置した上で第3シミュレーションを実行する。ステップS38の処理が終了するとステップS16に戻る。
図4は、情報処理装置20として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行される。
本実施形態に係るコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブは、DVD-ROMドライブまたはDVD-RAMドライブ等であってもよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってもよい。コンピュータ1200はまた、ROM1230及びキーボードのようなレガシの入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。
CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブは、プログラム又はデータをDVD-ROM等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
ROM1230は、その中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してもよい。
プログラムは、DVD-ROM又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてもよい。
例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してもよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD-ROM、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
また、CPU1212は、記憶装置1224、DVDドライブ(例えばDVD-ROM)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してもよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてもよい。
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてもよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してもよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してもよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してもよい。
上記で説明したプログラム又はソフトウエアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてもよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表わしてもよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてもよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでいてもよく、集積回路(IC)及び/又はディスクリート回路を含んでいてもよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでいてもよい。
コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでいてもよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれていてもよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれていてもよい。
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでいてもよい。
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてもよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
以上、本開示を実施の形態を用いて説明したが、本開示の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本開示の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
12 センサ、20 情報処理装置、30 取得部、32 生成部、34 制御部、50 フロア、52 人間ワーカー、54 棚、56 移動通路、60 ロボット、64 携帯端末、1200 コンピュータ、1210 ホストコントローラ、1212 CPU、1214 RAM、1216 グラフィックコントローラ、1218 ディスプレイデバイス、1220 入出力コントローラ、1222 通信インタフェース、1224 記憶装置、1230 ROM、1240 入出力チップ

Claims (8)

  1. 人間ワーカーおよび第1ロボットが移動を伴う作業を各々行う作業空間を検知対象とする複数のセンサにより検知されたセンサ情報を取得する取得部と、
    前記取得部によって取得されたセンサ情報に基づいて、前記人間ワーカーによる前記作業をモデル化した第1のモデルデータおよび前記第1ロボットによる前記作業をモデル化した第2のモデルデータを生成する生成部と、
    前記生成部によって生成された第1のモデルデータおよび第2のモデルデータに基づいて、前記作業空間で前記人間ワーカーと前記第1ロボットとが前記作業を各々行う状況を模擬した第1シミュレーションを行う制御部と、
    を含むシミュレーションシステム。
  2. 前記制御部は、前記第1シミュレーションの結果が所定の条件を満たした場合、前記第1シミュレーションに対して前記第1ロボットの作業速度を変更した状況を模擬する第2シミュレーション、および、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションの少なくとも一方の実行を提案する処理を行う請求項1記載のシミュレーションシステム。
  3. 前記制御部は、前記第1シミュレーションに対して前記第1ロボットの作業速度を変更した状況を模擬する第2シミュレーションを行う場合、前記第2シミュレーション上での前記第1ロボットの作業速度を、個々の前記人間ワーカーに対応する前記第1のモデルデータに含まれる、個々の前記人間ワーカーの作業速度に基づいて設定する請求項1または請求項2記載のシミュレーションシステム。
  4. 前記制御部は、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合、前記第3シミュレーション上で前記第2ロボットへ置き換える人間ワーカーを、個々の前記人間ワーカーに対応する前記第1のモデルデータに含まれる、個々の人間ワーカーの作業速度に基づいて選択する請求項1または請求項2記載のシミュレーションシステム。
  5. 前記制御部は、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合、前記第3シミュレーション上で前記人間ワーカーの少なくとも一部から置き換える前記第2ロボットを、個々の前記人間ワーカーに対応する前記第1のモデルデータに基づいて複数種類のロボットの中から選択する請求項1または請求項2記載のシミュレーションシステム。
  6. 前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合に、
    前記生成部は、前記第2ロボットによる前記作業をモデル化した第3のモデルデータを生成し、
    前記制御部は、前記生成部によって生成された前記第3のモデルデータも用いて前記第3シミュレーションを行う請求項1または請求項2記載のシミュレーションシステム。
  7. 前記制御部は、前記第1シミュレーションに対して前記人間ワーカーの少なくとも一部を第2ロボットへ置き換えた状況を模擬する第3シミュレーションを行う場合、前記第3シミュレーション上での前記第2ロボットの作業速度を、個々の前記人間ワーカーに対応する前記第1のモデルデータに含まれる、個々の前記人間ワーカーの作業速度に基づいて設定する請求項1または請求項2記載のシミュレーションシステム。
  8. 人間ワーカーおよび第1ロボットが移動を伴う作業を各々行う作業空間を検知対象とする複数のセンサにより検知されたセンサ情報を取得し、
    取得したセンサ情報に基づいて、前記人間ワーカーによる前記作業をモデル化した第1のモデルデータおよび前記第1ロボットによる前記作業をモデル化した第2のモデルデータを生成し、
    生成した第1のモデルデータおよび第2のモデルデータに基づいて、前記作業空間で前記人間ワーカーと前記第1ロボットとが前記作業を各々行う状況を模擬した第1シミュレーションを行う
    ことを含む処理をコンピュータによって実行させるためのプログラム。
JP2022203354A 2022-10-21 2022-12-20 シミュレーションシステム及びプログラム Pending JP2024061572A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/037597 WO2024085160A1 (ja) 2022-10-21 2023-10-17 シミュレーションシステム及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022169079 2022-10-21
JP2022169079 2022-10-21

Publications (1)

Publication Number Publication Date
JP2024061572A true JP2024061572A (ja) 2024-05-07

Family

ID=90925628

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022179649A Pending JP2024061544A (ja) 2022-10-21 2022-11-09 シミュレーションシステム及びプログラム
JP2022203354A Pending JP2024061572A (ja) 2022-10-21 2022-12-20 シミュレーションシステム及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2022179649A Pending JP2024061544A (ja) 2022-10-21 2022-11-09 シミュレーションシステム及びプログラム

Country Status (1)

Country Link
JP (2) JP2024061544A (ja)

Also Published As

Publication number Publication date
JP2024061544A (ja) 2024-05-07

Similar Documents

Publication Publication Date Title
Guerra et al. Flightgoggles: Photorealistic sensor simulation for perception-driven robotics using photogrammetry and virtual reality
JP6895539B2 (ja) 構築可能性分析に基づくプロジェクトの計画および適応
US11511415B2 (en) System and method for robotic bin picking
JP2018144155A (ja) ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
JP2018144152A (ja) ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
Kokkas et al. An Augmented Reality approach to factory layout design embedding operation simulation
US20170087722A1 (en) Method and a Data Processing System for Simulating and Handling of Anti-Collision Management for an Area of a Production Plant
US20170091999A1 (en) Method and system for determining a configuration of a virtual robot in a virtual environment
JP2018144154A (ja) ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
US11908337B2 (en) Information processing device, intermediation device, simulation system, and information processing method
JP2018144158A (ja) ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
US20190389060A1 (en) Systems and methods for generating control system solutions for robotics environments
JP2020026026A (ja) 情報処理装置、仲介装置、シミュレートシステム及び情報処理方法
WO2020104864A1 (en) Method and system for predicting motion-outcome data of a robot moving between a given pair of robotic locations
Joseph Learning Robotics using Python: Design, simulate, program, and prototype an autonomous mobile robot using ROS, OpenCV, PCL, and Python
CN114329801A (zh) 统一多个模拟模型
KR20200145698A (ko) 증강 현실 기반의 3차원 조립 퍼즐을 제공하는 방법 및 단말
WO2024085160A1 (ja) シミュレーションシステム及びプログラム
Rafi et al. Predart: Towards automatic oracle prediction of object placements in augmented reality testing
JP2024061572A (ja) シミュレーションシステム及びプログラム
Nissanka et al. IoT based automatic storing and retrieval system
KR20230111250A (ko) 로봇 제어 계획들의 생성
Kostylev et al. Development of the complex modelling system for intelligent control algorithms testing
JP2018144156A (ja) ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
JP2018144153A (ja) ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器