JP7342664B2 - ロボット、制御方法、およびプログラム - Google Patents

ロボット、制御方法、およびプログラム Download PDF

Info

Publication number
JP7342664B2
JP7342664B2 JP2019217132A JP2019217132A JP7342664B2 JP 7342664 B2 JP7342664 B2 JP 7342664B2 JP 2019217132 A JP2019217132 A JP 2019217132A JP 2019217132 A JP2019217132 A JP 2019217132A JP 7342664 B2 JP7342664 B2 JP 7342664B2
Authority
JP
Japan
Prior art keywords
robot
learning model
output
information indicating
output information
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.)
Active
Application number
JP2019217132A
Other languages
English (en)
Other versions
JP2021086541A (ja
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.)
Sintokogio Ltd
Original Assignee
Sintokogio Ltd
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 Sintokogio Ltd filed Critical Sintokogio Ltd
Priority to JP2019217132A priority Critical patent/JP7342664B2/ja
Priority to CN202011145337.3A priority patent/CN112882461A/zh
Publication of JP2021086541A publication Critical patent/JP2021086541A/ja
Application granted granted Critical
Publication of JP7342664B2 publication Critical patent/JP7342664B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Description

本発明は、自走するロボットを制御する方法に関する。
自走するロボットを制御する技術が知られている。例えば、特許文献1には、ロボットから送信されてくる動画像から、機械学習によって、動画像に映っている被写体との接触の危険の程度を測定し、測定された危険の程度が所定の閾値以上である場合に、ロボットに停止を指令する技術が記載されている。
特許第6393433号明細書(2018年8月31日登録)
ここで、ロボットを所定の対象物(例えば、特定の人)に追従させる用途では、ロボットの周囲に存在する物体のうちロボットが向かうべき所定の対象物を検知する必要がある。このような用途において特許文献1に記載された技術を用いる場合、動画像には被写体までの距離情報が含まれないため、動画像を用いた機械学習により対象物を検知する検知精度に改善の余地がある。そのため、ロボットが意図しない方向に走行する可能性がある。
本発明の一態様は、対象物に向かって走行するロボットの走行方向をより精度よく決定する技術を提供することを目的とする。
上記の課題を解決するために、本発明の一態様に係るロボットは、自走するロボットであって、前記ロボットから周囲に存在する物体までの距離を方向毎に計測するセンサと、前記センサから出力される測距データを参照して前記ロボットを制御するコントローラと、を備え、前記コントローラは、前記測距データを入力として、前記物体のうち所定の対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習された第1学習モデルを用いて、前記第1学習モデルの出力情報を参照して、前記所定の対象物に向かうよう前記ロボットの走行方向を決定する処理を実行する。
上記の構成によれば、測距データを入力とする第1学習モデルを用いて、所定の対象物に向かうようロボットの走行方向が決定される。これにより、物体までの距離情報を含まない撮像画像を入力とする機械学習モデルを用いる場合と比べて、ロボットの走行方向をより精度よく決定することができる。例えば、ロボットの周囲には、人、壁、車椅子等の物体が存在する。そのうち、所定の対象物とは、例えば、特定の人、特定の車椅子等である。上記構成では、人、壁、車椅子等の物体までの距離情報を含む測距データを入力とする第1学習モデルからの出力は、物体までの距離が反映された情報となる。したがって、上記構成では、人、壁、車椅子等の物体までの距離が考慮され、特定の人、特定の車椅子等に向かうロボットの走行方向がより精度よく決定される。
本発明の一態様に係るロボットにおいて、前記所定の対象物は移動体であり、前記センサは、前記距離を方向毎に計測する処理を周期的に実行し、前記第1学習モデルは、少なくとも2周期分以上の前記測距データを入力として、前記物体のうち移動体が存在する1または複数の方向を示す情報を、前記所定の対象物が存在し得る1または複数の方向として出力する、ことが好ましい。
上記の構成によれば、ロボットの周囲に存在する物体のうち移動体のいずれかが所定の対象物であるとして、ロボットの走行方向をより精度よく決定することができる。なお、移動体とは、移動可能な物体であり、例えば、人、車椅子、台車等である。
本発明の一態様に係るロボットにおいて、前記ロボットの周囲を撮像する撮像装置をさらに備え、前記コントローラは、前記撮像装置が生成する撮像画像を入力として、前記撮像画像において前記所定の対象物を含み得る1または複数の画像領域を示す情報を出力するよう機械学習された第2学習モデルをさらに用いて、前記決定する処理において、前記第1学習モデルから出力される1または複数の方向のうち、前記第2学習モデルの出力情報を参照して抽出される1または複数の方向を参照して、前記ロボットの走行方向を決定する、ことが好ましい。
上記の構成によれば、測距データを参照して検知された所定の対象物が存在し得る1または複数の方向のうち、所定の対象物が存在する可能性がより高い方向が撮像画像を参照して抽出されるので、ロボットの走行方向をより精度よく決定することができる。
本発明の一態様に係るロボットにおいて、前記コントローラは、前記所定の対象物の方向を示す情報と、障害物が存在する空間領域を示す情報とを入力として、前記障害物を回避しながら前記所定の対象物に向かうための方向を示す情報を出力するよう機械学習された第3学習モデルをさらに用いて、前記決定する処理において、前記測距データおよび前記第1学習モデルの出力情報を参照して前記所定の対象物の方向および前記障害物の空間領域を特定し、特定した情報を前記第3学習モデルに入力することにより、前記第3学習モデルの出力情報が示す方向を、前記ロボットの走行方向として決定する、ことが好ましい。
上記の構成によれば、障害物を回避しながら所定の対象物に向かうためのロボットの走行方向を、より精度よく決定することができる。
本発明の一態様に係るロボットにおいて、前記コントローラは、前記センサから出力される測距データを取得する入力インタフェースと、プログラムに従って前記各処理を実行するプロセッサと、前記プログラムを格納したメモリと、を備えている、ことが好ましい。
上記の構成によれば、上述したロボットを、プログラムを用いて制御することができる。
上記の課題を解決するために、本発明の一態様に係る制御方法は、自走するロボットの制御方法であって、前記ロボットから周囲に存在する物体までの距離を方向毎に計測する工程と、前記計測する工程において出力される測距データを参照して前記ロボットを制御する工程と、を備え、前記制御する工程は、前記測距データを入力として、前記物体のうち所定の対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習された第1学習モデルを用いて、前記第1学習モデルの出力情報を参照して、前記所定の対象物に向かうよう前記ロボットの走行方向を決定する処理を含む。
上記の構成によれば、上述したロボットと同様の効果を奏する。
上記の課題を解決するために、本発明の一態様に係るプログラムは、上述したロボットを制御するプログラムであって、前記コントローラに前記各処理を実行させる。
上記の構成によれば、上述したロボットを制御するためにコンピュータによって実行されるプログラムを提供することができる。
なお、上記プログラムを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明の一態様によれば、対象物に向かって走行するロボットの走行方向をより精度よく決定する技術を提供することができる。
本発明の実施形態1に係るロボットの主要な構成を示すブロック図である。 本発明の実施形態1に係るロボットのハードウェア構成の一例を示す図である。 本発明の実施形態1における第1学習モデルの入出力を説明する図である。 本発明の実施形態1においてロボットを制御する制御方法を示すフローチャートである。 本発明の実施形態2に係るロボットの主要な構成を示すブロック図である。 本発明の実施形態2に係るロボットのハードウェア構成の一例を示す図である。 本発明の実施形態2における第2学習モデルの入出力を説明する図である。 本発明の実施形態2においてロボットを制御する制御方法を示すフローチャートである。 本発明の実施形態3に係るロボットの主要な構成を示すブロック図である。 本発明の実施形態3における第3学習モデルの入出力を説明する図である。 本発明の実施形態3における障害物マッピング情報の一例を示す略平面図である。 本発明の実施形態3における障害物グリッドマップの一例を示す図である。 本発明の実施形態3における拡大障害物グリッドマップの一例を示す図である。 本発明の実施形態3においてロボットを制御する制御方法を示すフローチャートである。
本発明の各実施形態に係るロボットについて、図面を参照して説明する。各実施形態に係るロボットは、施設内の見回りを職員に代わって実施する自走式のロボットである。ロボットが配備される施設の一例としては、医療施設、介護施設、幼稚園等が挙げられるが、これらに限られない。ロボットは、ロボットの周囲に存在する物体のうち、所定の対象物に向かって走行する。例えば、ロボットは、施設内を巡回しながら特定の条件を満たす物体を所定の対象物として特定し、当該所定の対象物を追従して走行する。特定の条件とは、例えば、ロボットが何れの対象物も追従していない状態において最初に認識した移動体であってもよい。具体例として、ロボットは、施設内を徘徊する人を発見して追従する。また、特定の条件とは、入力により指定された移動体であってもよい。具体例として、ロボットは、散歩する人を載せた特定の車椅子を追従する。
本実施形態では、ロボットの周囲に存在する物体は、人、車椅子、台車、壁、柱等である。また、本実施形態では、ロボットが向かうべき所定の対象物は、移動体である。移動体とは、移動可能な物体であり、一例として、人、車椅子、台車等である。以降では、ロボットが向かうべき所定の対象物を、「追従対象物」とも記載する。
〔実施形態1〕
本発明の実施形態1に係るロボット10について、図1~4を参照しながら以下に説明する。
<ロボット10の主要な構成>
図1は、ロボット10の主要な構成を示すブロック図である。図1に示すように、ロボット10は、コントローラ11と、測域センサ12と、走行装置13とを含む。
コントローラ11は、機能的な構成として、測距データ取得部111と、走行方向決定部112と、走行制御部113と、第1学習モデルM1とを含む。各機能ブロックの詳細な構成については後述する。
図2は、ロボット10のハードウェア構成の一例を示すブロック図である。図2に示すようにコントローラ11は、プロセッサ101と、メモリ102と、通信インタフェース103とを含むコンピュータによって構成される。なお、通信インタフェース103は、本発明における入力インタフェースの一例である。また、コントローラ11は、スイッチングハブSWを介して測域センサ12および走行装置13と、それぞれ通信可能に接続される。
プロセッサ101、メモリ102、および通信インタフェース103は、バスを介して互いに接続されている。プロセッサ101としては、例えば、マイクロプロセッサ、デジタルシグナルプロセッサ、マイクロコントローラ、又はこれらの組み合わせが用いられる。メモリ102としては、例えば、半導体RAM(random access memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又はこれらの組み合わせが用いられる。
メモリ102には、後述するコントローラ11の制御方法S1をプロセッサ101に実行させるためのプログラムが格納されている。プロセッサ101は、メモリ102に格納されたプログラムを読み込んで実行することによって、制御方法S1を実行する。また、メモリ102には、制御方法S1を実行するためにプロセッサ101が参照する各種データが格納されている。
通信インタフェース103は、他の装置との通信を行うためのインタフェースである。例えば、通信インタフェース103は、有線LAN(Local Area Network)通信を行うインタフェースである。この場合、通信インタフェース103は、スイッチングハブSWに接続され、スイッチングハブSWを介して測域センサ12および走行装置13と通信する。なお、通信インタフェース103は、有線LAN通信に限らず、他の通信を行うインタフェースであってもよい。例えば、通信インタフェース103は、無線LAN通信を行うインタフェースであってもよい。この場合、通信インタフェース103は、アクセスポイント(図示せず)を介して測域センサ12および走行装置13と通信する。また、通信インタフェース103は、USB(Universal Serial Bus)インタフェース、RS-232C、RS-422、RS-485などのシリアル通信インタフェース、赤外線、Bluetooth(登録商標)等の近距離通信インタフェース、又はこれらの組み合わせにより構成されてもよい。
<測域センサ12の構成>
測域センサ12は、本発明におけるセンサの一例である。測域センサ12は、ロボット10から周囲に存在する物体までの距離を方向毎に計測する。また、測域センサ12は、周囲に存在する物体までの距離を方向毎に計測する計測処理を、周期的に実行する。計測処理を実行する周期は、コントローラ11によって制御される。測域センサ12は、周期的に実行する計測処理において、計測した各方向における物体の距離を示す測距データを出力する。
例えば、測域センサ12は、2次元レーザスキャナによって構成される。この場合、測域センサ12は、ロボット10の設置面から所定の高さに設置され、当該高さの水平面において、走査範囲に含まれる各方向に存在する物体までの距離を計測する。走査範囲とは、ロボット10の進行方向に対して左右それぞれに所定角度までの範囲である。具体的には、測域センサ12は、走査範囲において所定の分解能で方向を変化させながらレーザビームを放射する。また、測域センサ12は、レーザビームを放射した各方向に存在する物体の表面で反射される反射光を受けて反射点までの距離を計算し、各方向における反射点の位置を示す測距データを出力する。走査範囲にレーザビームを放射して測距データを出力する計測処理は、周期的に実行される。なお、測域センサ12は、上述した構成に限らず、ロボット10の周囲に存在する物体までの距離を方向毎に計測することができる構成であれば、その他の公知の構成を採用可能である。
なお、一例として、測域センサ12は、床から約40センチメートルの高さに設置される。また、一例として、測域センサ12の走査範囲は±115度であり、計測可能な距離は20ミリメートル以上10000ミリメートル以下であり、分解能は0.25度である。ただし、測域センサ12が設置される高さ、走査範囲、計測可能な距離、および分解能は、これらの値に限られない。
<走行装置13の構成>
走行装置13の構成について、図2を参照して説明する。走行装置13は、施設の床面に配置されたロボット10を任意の方向に走行させる装置である。一例として、図2に示すように、走行装置13は、自装置の各部を制御するPLC(programmable logic controller)131と、複数の車輪132(132aおよび132b)と、各車輪132を駆動するモータ133(133aおよび133b)と、各モータ133を回転させる駆動回路134(134aおよび134b)と、各モータ133の回転数を検知するエンコーダ135(135aおよび135b)とを含む。各車輪132は、走行方向を変更可能にロボット10の下面に取り付けられている。ロボット10は、各車輪132が配置面(例えば、床面)に接するように配置される。PLC131は、コントローラ11からの制御信号を基に、各車輪132を所望の回転速度で回転させるよう、各駆動回路134を制御する。各駆動回路134は、各モータ133に駆動信号を供給して回転させることにより、各車輪132を所望の回転速度で回転させる。ロボット10の下部の左右に配置された車輪132aおよび132bが異なる回転速度で回転する場合、ロボット10は、走行方向を変更しながら走行する。なお、走行装置13は、上述した構成に限らず、ロボット10を任意の方向に走行させることが可能な構成であれば、公知の構成を採用可能である。なお、走行装置13は、PLC131に替えて、上述のように機能する他のコントローラを含んでいてもよい。
<コントローラ11の各機能ブロックの詳細な構成>
(測距データ取得部111の構成)
図1に示す通り、測距データ取得部111は、測域センサ12から測距データを取得する。具体的には、測距データ取得部111は、予め定められた周期毎に、測域センサ12に対して計測処理を指示することにより、測域センサ12から出力される測距データを取得する。測距データ取得部111は、取得した測距データを第1学習モデルM1に入力する。一例として、測距データの取得周期は、50ミリ秒である。このため、第1学習モデルM1に測距データが入力される周期も、50ミリ秒である。ただし、当該周期はこれに限定されない。
(第1学習モデルM1の構成)
第1学習モデルM1は、測域センサ12から出力される測距データを入力として、ロボット10の周囲に存在する物体のうち追従対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習されているプログラムである。
図3は、第1学習モデルM1の入出力を説明する図である。第1学習モデルM1には、2周期分以上の測距データが入力される。なお、図3には、3周期分の測距データを示しているが、第1学習モデルM1に入力される測距データの周期の数を限定するものではない。第1学習モデルM1からは、追従対象物が存在し得る1または複数の方向として、移動体が存在する1または複数の方向が出力される。具体例として、第1学習モデルM1からは、追従対象物である「特定の人」が存在し得る方向として、移動体である「人」が存在する1または複数の方向が出力される。
具体的には、例えば、1周期分の測距データは、D(f)=(d_f1、d_f2、・・・、d_fn)と表される。nは2以上の整数であり、走査範囲を所定の分解能で計測して得られる距離情報の個数である。d_fi(i=1、2、・・・n)は、周期fにおいて計測された方向ri(i=1、2、・・・n)に存在する物体までの距離を示す。第1学習モデルM1には、直近に計測されたm周期分の測距データD(f1)、D(f2)、・・・、D(fm)が入力される。mは2以上の整数である。第1学習モデルM1からの出力情報は、(c1、c2、・・・、cn)と表される。
例えば、出力情報ci(i=1、2、・・・n)は、物体の種類(例えば、種類「人」、「人以外の物体」、および「物体無し」の何れか)を示す。この場合、追従対象物の種類(ここでは、「人」)を示す出力情報ciに対応する方向riの何れかに、追従対象物が存在する。換言すると、追従対象物の種類を示す出力情報ciに対応する方向riは、追従対象物が存在し得る方向である。
なお、第1学習モデルM1は、教師データを用いて機械学習される。例えば、コントローラ11は、教師データを生成して第1学習モデルM1を機械学習させる処理を、予め実行しておく。例えば、コントローラ11は、複数の移動体(人、車椅子、台車等)がロボット10の周囲に存在する状況において、複数の移動体のうち追従対象物と同種類の「人」がそれぞれ存在する方向を示す情報を取得する。人がそれぞれ存在する方向は、オペレータの入力により取得される。また、コントローラ11は、当該状況において測域センサ12を用いて計測された複数周期分の測距データを取得する。また、コントローラ11は、取得した複数周期分の測距データおよび人がそれぞれ存在する方向を関連付けたデータを教師データとして、第1学習モデルM1を機械学習させる。なお、第1学習モデルM1は、当該ロボット10のコントローラ11によって機械学習されたものに限らず、他のロボット10のコントローラ11、または、ロボット10の外部の装置によって機械学習されたものであってもよい。
また、第1学習モデルM1の機械学習には、公知の機械学習アルゴリズムを適用可能である。公知の機械学習アルゴリズムとしては、例えば、CNN(Convolutional Neural Networks)、RNN(Recurrent Neural Network)、GAN(Generative Adversarial Network)等のディープラーニングソフト(アルゴリズム)がある。また、第1学習モデルM1を学習させるアルゴリズムは、ディープラーニングに限らず、サポートベクタマシン等といったその他の機械学習アルゴリズムであってもよい。また、第1学習モデルM1は、教師あり学習に限らず、教師なし学習、半教師あり学習等によって機械学習されてもよい。
(走行方向決定部112の構成)
図1に示す走行方向決定部112は、第1学習モデルM1の出力情報を参照して、追従対象物に向かうようロボット10の走行方向を決定する。
具体的には、走行方向決定部112は、第1学習モデルM1の出力情報に加えて直近で得られた測距データを参照し、出力情報が示す1または複数の方向のうち物体までの距離が最も近い方向を走行方向として決定する。ただし、走行方向を決定する処理は、上述した処理に限られない。例えば、走行方向決定部112は、出力情報が示す1または複数の方向のうち、物体までの距離が最も近い方向と、当該方向に近接する方向とを、追従対象物である特定の人の左足の方向および右足の方向であるとみなして、これらの方向の間の方向を走行方向として決定してもよい。また、走行方向決定部112は、出力情報が示す1または複数の方向のうち、1制御周期前に決定した走行方向と、当該方向の近接する方向との中で、物体までの距離が最も近い方向を走行方向として決定してもよい。
(走行制御部113の構成)
走行制御部113は、決定された走行方向にロボット10を走行させるよう走行装置13を制御する。具体的には、走行制御部113は、ロボット10の現在の向きを示す情報を取得する。走行制御部113は、現在の向きと決定した走行方向とが同一の場合は、ロボット10を現在の向きのまま走行させる。また、走行制御部113は、現在の向きと決定した走行方向とが異なる場合は、ロボット10が決定した走行方向を向くように走行装置13を制御しながら、ロボット10を走行させる。具体的には、走行制御部113は、走行装置13に含まれる各エンコーダ135の出力情報を基にロボット10の現在の向きを示す情報を算出する。また、走行制御部113は、走行装置13に含まれる各車輪132の回転速度を異ならせることにより、ロボット10が走行方向を向くよう制御する。
<ロボット10の制御方法>
以上のように構成されたロボット10の制御方法S1について説明する。図4は、ロボット10の制御方法S1を説明するフローチャートである。なお、以下に説明する制御方法S1は、測距データの取得周期毎に実行される。
ステップS101において、測距データ取得部111は、測域センサ12から出力される測距データを取得して、メモリ102に格納する。
ステップS102において、走行方向決定部112は、メモリ102に格納された直近2周期分以上の測距データを第1学習モデルM1に入力し、その出力情報を取得する。本実施形態では、前述したように、第1学習モデルM1からは、追従対象物が存在し得る1または複数の方向として、各方向に存在する物体の種類(例えば、「人」、「人以外」および「物体なし」の何れか)を示す情報が出力される。
ステップS103において、走行方向決定部112は、第1学習モデルM1の出力情報を参照して、ロボット10の走行方向を決定する。本実施形態では、第1学習モデルM1から出力された、種類が「人」である1または複数の方向のうち、ロボット10からの距離が最も近い方向が走行方向として決定される。
ステップS104において、走行制御部113は、ステップS103で決定された方向にロボット10を走行させる。
以上で、コントローラ11は、制御方法S1を終了する。
<ロボット10の効果>
本実施形態に係るロボット10は、2周期分以上の測距データを入力とする第1学習モデルM1から出力される移動体の方向を示す情報を参照して、そのうちロボット10に最も近い距離に存在する物体が追従対象物であるとみなす。そして、ロボット10は、当該追従対象物が存在する方向に走行方向を決定する。このように、2周期分以上の測距データを入力とする第1学習モデルM1からの出力は、周囲に存在する物体までの距離の変化が反映されるため、本実施形態は、ロボット10が向かうべき追従対象物が存在する方向をより精度よく決定することができる。
〔実施形態2〕
本発明の実施形態2に係るロボット20について、図5~8を参照しながら以下に説明する。なお、説明の便宜上、実施形態1にて説明した構成と同じ機能を有する構成については、同じ符号を付記し、その説明を繰り返さない。
<ロボット20の主要な構成>
図5は、ロボット20の主要な構成を示す概略図である。図5に示すように、ロボット20は、コントローラ21と、測域センサ12と、走行装置13と、撮像装置24とを備える。コントローラ21は、機能的な構成として、測距データ取得部111と、走行方向決定部212と、走行制御部113と、撮像画像取得部214と、第1学習モデルM1と、第2学習モデルM2とを含む。撮像画像取得部214と、第2学習モデルM2とは、撮像装置24に含まれていてもよい。測域センサ12、走行装置13、測距データ取得部111、走行制御部113、および第1学習モデルM1の構成については、実施形態1にて説明した通りであるため、説明を繰り返さない。他の構成の詳細については後述する。
図6は、ロボット20のハードウェア構成の一例を示すブロック図である。図6に示すようにコントローラ21は、プロセッサ101と、メモリ102と、通信インタフェース103とを含むコンピュータによって構成される。また、コントローラ21は、スイッチングハブSWを介して測域センサ12、走行装置13、および撮像装置24と、それぞれ通信可能に接続される。
プロセッサ101、メモリ102、通信インタフェース103については、実施形態1にて説明した通りであるが、次の点が異なる。メモリ102には、後述するコントローラ21の制御方法S2をプロセッサ101に実行させるためのプログラムが格納されている。プロセッサ101は、メモリ102に格納されたプログラムを読み込んで実行することによって、制御方法S2を実行する。また、メモリ102には、制御方法S2を実行するためにプロセッサ101が参照する各種データが格納されている。
<撮像装置24の構成>
撮像装置24は、ロボット20の周囲を撮像する。具体的には、撮像装置24は、ロボット20の進行方向に向けて撮像処理を行うことにより二次元の撮像画像を生成する。撮像装置24は、シングルボードコンピュータ241と、撮像素子242とを含む。
撮像素子242は、たとえばCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの光電変換素子であり、レンズ(図示せず)を通して所定の画角の範囲から入射される光を画像信号に変換する。シングルボードコンピュータ241は、コントローラ21からの制御の基に、シャッター(図示せず)を開いて露光し、撮像素子242から画像信号に基づいて撮像画像を生成する撮像処理を、周期的に実行する。一例として、撮像素子242の水平画角は±66度である。ただし、水平画角はこれに限られない。
<コントローラ21の各機能ブロックの詳細な構成>
(撮像画像取得部214の構成)
撮像画像取得部214は、撮像装置24から撮像画像を取得する。具体的には、撮像画像取得部214は、予め定められた周期毎に、撮像装置24に対して撮像処理を指示することにより、撮像装置24から出力される撮像画像を取得する。撮像画像取得部214は、取得した撮像画像を第2学習モデルM2に入力する。なお、撮像画像の取得周期と、測距データの取得周期とは、同一であってもよいし、異なっていてもよい。ただし、測距データより容量の大きい撮像画像の取得には、測距データの取得よりも時間を要すると考えられる。このため、測距データの取得周期より、撮像画像の取得周期の方が長く設定されることがある。一例として、測距データの取得周期が50ミリ秒であり、撮像画像の取得周期が500ミリ秒である。ただし、各周期はこれに限定されない。
(第2学習モデルM2の構成)
図5に示す通り、第2学習モデルM2は、撮像装置24が生成する撮像画像を入力として、当該撮像画像において追従対象物を含み得る1または複数の画像領域を示す情報を出力するよう機械学習されているプログラムである。
図7は、第2学習モデルM2の入出力を説明する図である。第2学習モデルM2には、撮像画像が入力される。なお、図7には、1周期分の撮像画像を示しているが、第2学習モデルM2に入力される撮像画像の周期の数を限定するものではない。第2学習モデルM2には、1周期分以上の撮像画像が入力される。第2学習モデルM2からは、追従対象物を含み得る1または複数の画像領域を示す情報が出力される。例えば、第2学習モデルM2からは、追従対象物と同種類の物体(例えば、「人」)を被写体として含む画像領域を示す情報が出力される。
なお、第2学習モデルM2は、教師データを用いて機械学習される。例えば、コントローラ21は、教師データを生成して第2学習モデルM2を機械学習させる処理を、予め実行しておく。例えば、コントローラ21は、複数の移動体(人、車椅子、台車等)がロボット20の周囲に存在する状況において、撮像装置24を用いて撮像画像を取得する。また、コントローラ21は、当該撮像画像において、追従対象物と同種類の物体である「人」がそれぞれ存在する画像領域を示す情報を取得する。人がそれぞれ存在する画像領域は、オペレータの入力により取得される。また、コントローラ21は、取得した撮像画像および人がそれぞれ存在する画像領域を関連付けたデータを教師データとして、第2学習モデルM2を機械学習させる。
第2学習モデルM2の機械学習に用いる機械学習アルゴリズムについては、第1学習モデルM1で説明した通りであるため、説明を繰り返さない。また、第2学習モデルM2は、当該ロボット20のコントローラ21によって機械学習されたものに限らず、他のロボット20のコントローラ21、または、ロボット20の外部の装置によって機械学習されたものであってもよい。
(走行方向決定部212の構成)
図5に示す走行方向決定部212は、第1学習モデルM1から出力される1または複数の方向のうち、第2学習モデルM2の出力情報を参照して抽出される1または複数の方向を参照して、ロボット20の走行方向を決定する。換言すると、走行方向決定部212は、第1学習モデルM1から出力される1または複数の方向を、第2学習モデルM2の出力情報を参照して絞り込む。また、走行方向決定部212は、直近で得られた測距データを参照し、第2学習モデルM2の出力情報を参照して抽出した方向に存在する物体のうち、距離が最も近い物体に向かう方向を、ロボット20の走行方向として決定する。
ここで、第1学習モデルM1から出力される1または複数の方向を、第2学習モデルM2の出力情報を参照して絞り込む処理の具体例について説明する。例えば、走行方向決定部212は、第1学習モデルM1から出力される、種類「人」の物体が存在する1または複数の方向のうち、第2学習モデルM2から出力される画像領域に含まれる被写体が存在する方向を抽出する。例えば、走行方向決定部212は、第1学習モデルM1から出力される1または複数の方向のうち、第2学習モデルM2から出力される画像領域に対応する方向の範囲に含まれる方向を抽出する。
<ロボット20の制御方法>
以上のように構成されたロボット20の制御方法S2について説明する。図8は、ロボット20の制御方法S2を説明するフローチャートである。なお、以下に説明する制御方法S2は、測距データの取得周期毎に実行される。
ステップS201~S202におけるコントローラ21の動作は、ステップS101におけるコントローラ11の動作と同様であるため、説明を繰り返さない。
次のステップS203~S204の処理は、撮像画像の取得周期に該当する場合に実行され、該当しない場合には省略される。
ステップS203において、撮像画像取得部214は、撮像装置24から撮像画像を取得する。
ステップS204において、走行方向決定部212は、シングルボードコンピュータ241上の図示しないメモリに格納された直近の撮像画像を第2学習モデルM2に入力し、その出力情報を取得してメモリ102に格納する。
ステップS205において、走行方向決定部212は、ステップS202で第1学習モデルM1から出力される1または複数の方向を、第2学習モデルM2の出力情報を参照して絞り込む。また、走行方向決定部212は、絞り込まれた1または複数の方向を参照して、ロボット20の走行方向を決定する。
ステップS206におけるコントローラ21の動作は、ステップS104におけるコントローラ11の動作と同様であるため、説明を繰り返さない。
以上で、コントローラ21は、制御方法S2を終了する。
上述の制御方法S2において、測距データの取得周期(例えば50ミリ秒)が、撮像画像の取得周期(例えば500ミリ秒)より短いことについて説明する。コントローラ21は、撮像画像の取得に応答して第2学習モデルM2から出力される情報をメモリ102に格納しておく。これにより、コントローラ21は、測距データの取得に応答して第1学習モデルM1から出力される情報と、直近でメモリ102に格納した第2学習モデルM2からの出力情報とを基に、ロボット20の走行方向を決定する。
<ロボット20の効果>
本実施形態では、第1学習モデルM1の出力情報には、物体までの距離の変化が反映されるのに対して、第2学習モデルM2の出力情報には、周囲に存在する物体の二次元的な外観情報が反映される。また、測距データの取得周期が撮像画像の取得周期より短いため、測距データの取得に応答して第1学習モデルM1から出力される情報は、撮像画像の取得に応答して第2学習モデルM2から出力される情報と比較して、リアルタイム性が高い。そこで、コントローラ21は、よりリアルタイム性が高く、且つ、物体までの距離の変化が反映された第1学習モデルM1の出力情報を、二次元的な外観情報が反映された第2学習モデルM2の出力情報を用いて絞り込む。これにより、本実施形態は、ロボットの走行方向をより精度よく決定することができる。
〔実施形態3〕
本発明の実施形態3に係るロボット30について、図9~14を参照しながら以下に説明する。なお、説明の便宜上、実施形態1~2にて説明した構成と同じ機能を有する構成については、同じ符号を付記し、その説明を繰り返さない。
<ロボット30の主要な構成>
図9は、ロボット30の主要な構成を示すブロック図である。図9に示すように、ロボット30は、コントローラ31と、測域センサ12と、走行装置13と、撮像装置24とを備える。コントローラ31は、機能的な構成として、測距データ取得部111と、走行方向決定部312と、走行制御部113と、撮像画像取得部214と、対象方向特定部315と、障害物領域特定部316とを含む。また、コントローラ31は、第1学習モデルM1と、第2学習モデルM2と、第3学習モデルM3とを含む。撮像画像取得部214と、第2学習モデルM2とは、撮像装置24に含まれていてもよい。測域センサ12、走行装置13、測距データ取得部111、走行制御部113、撮像画像取得部214、第1学習モデルM1、および第2学習モデルM2の構成については、実施形態1~2にて説明した通りであるため、説明を繰り返さない。他の構成の詳細については後述する。
また、ロボット30のハードウェア構成の一例としては、図6に示したロボット20と同様のハードウェア構成が可能である。プロセッサ101、メモリ102、通信インタフェース103については、実施形態1にて説明した通りであるが、次の点が異なる。メモリ102には、後述するコントローラ31の制御方法S3をプロセッサ101に実行させるためのプログラムが格納されている。プロセッサ101は、メモリ102に格納されたプログラムを読み込んで実行することによって、制御方法S3を実行する。また、メモリ102には、制御方法S3を実行するためにプロセッサ101が参照する各種データが格納されている。
<コントローラ31の各機能ブロックの詳細な構成>
(第3学習モデルM3の構成)
図9に示す通り、第3学習モデルM3は、追従対象物の方向を示す情報と、障害物が存在する空間領域を示す情報とを入力として、障害物を回避しながら追従対象物に向かうための方向を示す情報を出力するよう機械学習されている。
図10は、第3学習モデルM3の入出力を説明する図である。第3学習モデルM3には、追従対象物の方向を示す情報と、障害物が存在する空間領域を示す情報とが入力される。これらの入力情報の詳細については後述する。第3学習モデルM3からは、障害物を回避しながら追従対象物に向かうためのロボット30の方向を示す情報が出力される。以降、障害物を回避しながら追従対象物に向かうためのロボット30の方向を、回避方向とも記載する。
なお、第3学習モデルM3は、教師データを用いて機械学習される。例えば、コントローラ31は、教師データを生成して第3学習モデルM3を機械学習させる処理を、予め実行しておく。例えば、コントローラ31は、追従対象物である特定の人および障害物がロボット30の周囲に存在する状況において、特定の人の方向を示す情報を取得する。特定の人の方向を示す情報は、後述する対象方向特定部315から取得されてもよいし、オペレータの入力により取得されてもよい。また、コントローラ31は、当該状況において得られる測距データに基づいて、障害物が存在する空間領域を示す情報を生成する。また、コントローラ31は、障害物を回避しながら追従対象物に向かうための回避方向を示す情報を取得する。回避方向を示す情報は、計算により取得可能である。例えば、コントローラ31は、特定の人の方向を示す情報と、障害物が存在する空間領域を示す情報とに基づいて、障害物を回避しながら追従対象物に向かうための回避方向を算出する公知の手法を用いることが可能である。また、コントローラ31は、取得した特定の人の方向を示す情報および障害物が存在する空間領域を示す情報と、計算した回避方向とを関連付けたデータを教師データとして、第3学習モデルM3を機械学習させる。
第3学習モデルM3の機械学習に用いる機械学習アルゴリズムについては、第1学習モデルM1で説明した通りであるため、説明を繰り返さない。また、第3学習モデルM3は、当該ロボット30のコントローラ31によって機械学習されたものに限らず、他のロボット30のコントローラ31、または、ロボット30の外部の装置によって機械学習されたものであってもよい。
(対象方向特定部315の構成)
図9に示す通り、対象方向特定部315は、測距データおよび第1学習モデルM1の出力情報を参照して、追従対象物の方向を特定する。測距データとしては、直近で得られたデータが参照される。追従対象物が存在する方向を示す情報は、後述する障害物領域特定部316によって特定される障害物が存在する空間領域を示す情報と共に、第3学習モデルM3に入力される。
詳細には、対象方向特定部315は、第1学習モデルM1から出力される1または複数の方向のうち、第2学習モデルM2の出力情報を参照して抽出される1または複数の方向を参照して、追従対象物の方向を特定する。換言すると、対象方向特定部315は、第1学習モデルM1から出力される1または複数の方向を、第2学習モデルM2の出力情報を参照して絞り込む。また、対象方向特定部315は、直近で得られた測距データを参照し、第2学習モデルM2の出力情報を参照して抽出した方向に存在する物体のうち、距離が最も近い物体に向かう方向を、追従対象物が存在する方向として特定する。なお、第1学習モデルM1から出力される1または複数の方向を、第2学習モデルM2の出力情報を参照して絞り込む処理の具体例については、実施形態2で説明した通りであるため、説明を繰り返さない。
(障害物領域特定部316の構成)
障害物領域特定部316は、測距データおよび追従対象物の方向を参照して、障害物が存在する空間領域を特定する。測距データとしては、直近で計測されたデータが参照される。追従対象物の方向としては、対象方向特定部315によって特定された方向が参照される。障害物が存在する空間領域を示す情報は、対象方向特定部315によって特定された、追従対象物が存在する方向を示す情報と共に、第3学習モデルM3に入力される。
ここで、障害物が存在する空間領域を示す情報の一例として、拡大障害物グリッドマップが挙げられる。拡大障害物グリッドマップは、ロボット30の周囲の空間を上面視した平面において、拡大された障害物の領域を示すグリッドマップである。具体的には、障害物領域特定部316は、測距データが示す複数の方向のうち、対象方向特定部315によって特定された追従対象物の方向を除外した方向に存在する物体を、障害物とする。このようにして特定される障害物には、(1)測距データが示す複数の方向のうち、第1学習モデルM1からの出力情報が示さない方向に存在する物体(一例として、「人」以外の物体)と、(2)第1学習モデルM1からの出力情報が示す追従対象物以外の方向に存在する物体(一例として、「特定の人」以外の「人」)が含まれる。また、障害物領域特定部316は、測距データに基づいて、ロボット30の周囲の空間を上面視した平面に障害物を二次元的にマッピングした障害物マッピング情報を生成する。また、障害物領域特定部316は、障害物マッピング情報を離散化した障害物グリッドマップを生成する。また、障害物領域特定部316は、障害物グリッドマップにおいて障害物の領域を拡大した拡大障害物グリッドマップを生成する。
図11は、障害物マッピング情報を模式的に示す概略平面図である。図11では、ロボット30の筐体に搭載された測域センサ12の位置を原点とし、ロボット30の前進方向をx軸正方向とし、x軸に直交する方向をy軸としている。図11において、障害物は小さな丸印によって表されている。測域センサ12の走査範囲は±θ度(ここでは、θ=115)の範囲であるため、図11においても、障害物を示す丸印は、ロボット30の前進方向に対して±θ度の範囲にプロットされている。
図12は、障害物グリッドマップの一例を示す。ここでは、障害物領域特定部316は、図11に示した障害物マッピング情報が示す平面のうち、x軸方向4m×y軸方向5mの領域を、0.1m×0.1mのグリッドに離散化することにより、図12に示す障害物グリッドマップを生成する。
図13は、拡大障害物グリッドマップの一例を示す。障害物領域特定部316は、図12の障害物グリッドマップに対して、障害物の領域をロボット30のフットプリントの半径分だけ膨張させるモフォロジー処理を施すことにより、図13に示す拡大障害物グリッドマップを生成する。このような拡大障害物グリッドマップでは、グリッドが1マスでも空いていれば、ロボット30は、障害物の間を通過することができる。
(走行方向決定部312の構成)
図9に示す通り、走行方向決定部312は、追従対象物の方向および障害物の空間領域をそれぞれ示す情報を、第3学習モデルM3に入力することにより、第3学習モデルM3の出力情報が示す回避方向を、ロボット30の走行方向として決定する。第3学習モデルM3から出力される回避方向は、ロボット30から見た追従対象物が存在する方向とは異なる場合がある。これは、追従対象物とロボット30との間に障害物が存在する場合である。これにより、ロボット30は、障害物に衝突する可能性を低減しながら、追従対象物を追従するよう走行することができる。
<ロボット30の制御方法>
以上のように構成されたロボット30の制御方法S3について説明する。図14は、ロボット30の制御方法S3を説明するフローチャートである。なお、以下に説明する制御方法S3は、測距データの取得周期毎に実行される。
ステップS301において、コントローラ31は、第1学習モデルM1からの出力情報および第2学習モデルM2からの出力情報を取得する。ステップS301の処理の詳細については、図8のステップS201~S204で説明した通りであるため、説明を繰り返さない。
ステップS302において、対象方向特定部315は、ステップS301で第1学習モデルM1から出力される1または複数の方向のうち、第2学習モデルM2からの出力情報を参照して抽出される1または複数の方向を参照して、追従対象物が存在する方向を特定する。
ステップS303において、障害物領域特定部316は、直近で取得された測距データおよび第1学習モデルM1からの出力情報に基づいて、ロボット30の周囲に存在する障害物の空間領域を示す情報を生成する。ここでは、前述した拡大障害物グリッドマップが生成される。
ステップS304において、走行方向決定部312は、追従対象物が存在する方向を示す情報と、障害物の空間領域を示す情報(拡大障害物グリッドマップ)とを、第3学習モデルM3に入力し、その出力情報を取得する。
ステップS305において、走行方向決定部312は、第3学習モデルM3から出力される回避方向を、ロボット30の走行方向として決定する。
ステップS306におけるコントローラ31の動作は、ステップS101におけるコントローラ11の動作と同様であるため、説明を繰り返さない。
以上で、コントローラ31は、制御方法S3を終了する。
<ロボット30の効果>
本実施形態は、直近で取得された測距データと第1学習モデルM1からの出力とを用いて、追従対象物の方向および障害物の空間領域を特定する。ここで、第1学習モデルM1からの出力には、各方向に存在する物体までの距離の変化が反映されているので、本実施形態は、移動体である追従対象物の方向を精度よく特定することができる。また、追従対象物が存在する方向以外の方向に存在する物体を障害物として特定するので、本実施形態は、障害物が存在する空間領域を精度よく特定することができる。その結果、本実施形態は、そのようにして特定した追従対象物の方向および障害物の空間領域をそれぞれ示す情報を入力とする第3学習モデルM3を用いるので、障害物を回避しながら追従対象物を追従するための回避方向を、より精度よく決定することができる。
〔変形例〕
<第1学習モデルM1からの出力情報のバリエーション>
上述した各実施形態において、第1学習モデルM1からの出力情報であるciが、方向riに存在する物体の種類を示す例について説明した。これに限らず、第1学習モデルM1からの出力情報である方向毎のci(i=1、2、・・・、n)は、方向riに追従対象物が存在する確率を示していてもよい。この場合、第1学習モデルM1を機械学習させる際に用いられる教師データとしては、2周期分以上の測距データと、追従対象物が存在する方向とを関連付けた情報が用いられる。なお、第1学習モデルM1からの出力情報は、追従対象物が存在し得る1または複数の方向を示す情報であれば、その他の情報であってもよい。
<第2学習モデルM2からの出力情報のバリエーション>
上述した各実施形態において、第2学習モデルM2からの出力情報である画像領域が、追従対象物である「特定の人」と同種類の物体である「人」を被写体として含む画像領域を示すものとして説明した。これに限らず、第2学習モデルM2からの出力情報は、追従対象物が被写体として含まれる確率を画素ごとに示す情報であってもよい。この場合、第2学習モデルM2を機械学習させる際に用いられる教師データとしては、撮像画像と、追従対象物が含まれる領域とを関連付けた情報が用いられる。なお、第2学習モデルM2からの出力情報は、追従対象物を含み得る1または複数の画像領域を示す情報であれば、その他の情報であってもよい。
<追従対象物以外の目標物>
上述した実施形態3において、コントローラ31は、予め定められたタイミングにおいて、または、外部からの指示に応答して、追従対象物に追従する代わりに、目標位置に向かって走行するようロボット30を制御してもよい。この場合、障害物領域特定部316は、測距データを参照して、障害物が存在する空間領域を特定する。また、対象方向特定部315は、追従対象物の方向を特定する代わりに、目標位置に向かう目標方向を特定する。目標方向は、ロボット30の現在地から目標位置に向かう方向である。また、第3学習モデルM3には、目標方向を示す情報と、障害物が存在する空間領域を示す情報とが入力される。目標位置は、例えば、施設内の巡回コースにおいて予め設定された通過ポイントであってもよい。これにより、ロボット30は、通常は追従対象物に追従するよう走行しながらも、予め定められたタイミングが到来した場合、または、外部からの指示を受け付けた場合には、目標位置に向かうよう走行可能である。ただし、目標位置は、上述した通過ポイントに限られない。例えば、目標位置は、外部から入力される位置であってもよい。
<所定の対象物のバリエーション>
上述した各実施形態において、本発明における所定の対象物が移動体であり、ロボットが当該移動体である追従対象物を追従する例について説明した。これに限らず、本発明における所定の対象物は、移動しない物体であってもよい。
〔ソフトウェアおよびハードウェアによる実現例〕
上述した各実施形態において、内部記憶媒体であるメモリ102に格納されているプログラムに従ってプロセッサ101が制御方法S1~S3を実行する形態で、コントローラ11~31が実現されることについて説明したが、これに限定されない。例えば、外部記録媒体に格納されているに従ってプロセッサ101が制御方法S1~S3を実行する形態を採用してもよい。この場合、外部記録媒体としては、コンピュータが読み取り可能な「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、又はプログラマブル論理回路などを用いることができる。あるいは、また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
また、上述した各実施形態において、コントローラ11~31は、メモリ102に格納されているプログラムに従ってプロセッサ101が動作する形態に限らず、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現されてもよい。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
10、20、30 ロボット
11、21、31 コントローラ
12 測域センサ
111 測距データ取得部
112、212、312 走行方向決定部
113 走行制御部
214 撮像画像取得部
315 対象方向特定部
316 障害物領域特定部
101 プロセッサ
102 メモリ
103 通信インタフェース
13 走行装置
131 PLC
132 車輪
133 モータ
134 駆動回路
135 エンコーダ
24 撮像装置
241 シングルボードコンピュータ
242 撮像素子

Claims (7)

  1. 自走するロボットであって、
    前記ロボットから周囲に存在する物体までの距離を方向毎に計測するセンサと、
    前記ロボットの周囲を撮像する撮像装置と、
    前記センサから出力される測距データを入力として、前記物体のうち所定の対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習された第1学習モデルと、
    前記撮像装置が生成する撮像画像を入力として、前記撮像画像において前記所定の対象物を含み得る1または複数の画像領域を示す情報を出力するよう機械学習された第2学習モデルと、
    記測距データと、前記第1学習モデルの出力情報と、前記第2学習モデルの出力情報と、を参照して前記ロボットを制御するコントローラと、を備え、
    前記コントローラは、
    前記第1学習モデルから出力される1または複数の方向のうち、前記第2学習モデルの出力情報を参照して抽出される1または複数の方向を参照して、前記所定の対象物に向かうよう前記ロボットの走行方向を決定する処理を実行する、
    ことを特徴とするロボット。
  2. 自走するロボットであって、
    前記ロボットから周囲に存在する物体までの距離を方向毎に計測するセンサと、
    前記センサから出力される測距データを入力として、前記物体のうち所定の対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習された第1学習モデルと、
    前記所定の対象物の方向を示す情報と、障害物が存在する空間領域を示す情報とを入力として、前記障害物を回避しながら前記所定の対象物に向かうための方向を示す情報を出力するよう機械学習された第3学習モデルと、
    前記測距データと、前記第1学習モデルの出力情報と、前記第3学習モデルの出力情報と、を参照して前記ロボットを制御するコントローラと、を備え、
    前記コントローラは、
    前記測距データおよび前記第1学習モデルの出力情報を参照して、前記所定の対象物の方向および前記障害物の空間領域を特定し、特定した情報を前記第3学習モデルに入力することにより、前記第3学習モデルの出力情報が示す方向を、前記ロボットの走行方向として決定する処理を実行する、
    ことを特徴とするロボット。
  3. 前記所定の対象物は移動体であり、
    前記センサは、前記距離を方向毎に計測する処理を周期的に実行し、
    前記第1学習モデルは、少なくとも2周期分以上の前記測距データを入力として、前記物体のうち移動体が存在する1または複数の方向を示す情報を、前記所定の対象物が存在し得る1または複数の方向として出力する、
    ことを特徴とする請求項1又は2に記載のロボット。
  4. 前記コントローラは、
    前記センサから出力される測距データを取得する入力インタフェースと、
    プログラムに従って前記各処理を実行するプロセッサと、
    前記プログラムを格納したメモリと、を備えている、
    ことを特徴とする請求項1からまでの何れか1項に記載のロボット。
  5. 自走するロボットの制御方法であって、
    前記ロボットから周囲に存在する物体までの距離を方向毎に計測する工程と、
    前記ロボットの周囲を撮像して撮像画像を生成する工程と、
    前記計測する工程において出力される測距データを参照して前記ロボットを制御する工程と、を備え、
    前記制御する工程は、
    前記測距データを入力として、前記物体のうち所定の対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習された第1学習モデルと、
    前記撮像画像を入力として、前記撮像画像において前記所定の対象物を含み得る1または複数の画像領域を示す情報を出力するよう機械学習された第2学習モデルと、を用いて、
    前記第1学習モデルから出力される1または複数の方向のうち、前記第2学習モデルの出力情報を参照して抽出される1または複数の方向を参照して、前記所定の対象物に向かうよう前記ロボットの走行方向を決定する処理を含む、
    ことを特徴とする制御方法。
  6. 自走するロボットの制御方法であって、
    前記ロボットから周囲に存在する物体までの距離を方向毎に計測する工程と、
    前記計測する工程において出力される測距データを参照して前記ロボットを制御する工程と、を備え、
    前記制御する工程は、
    前記測距データを入力として、前記物体のうち所定の対象物が存在し得る1または複数の方向を示す情報を出力するよう機械学習された第1学習モデルと、
    前記所定の対象物の方向を示す情報と、障害物が存在する空間領域を示す情報とを入力として、前記障害物を回避しながら前記所定の対象物に向かうための方向を示す情報を出力するよう機械学習された第3学習モデルと、を用いて、
    前記測距データおよび前記第1学習モデルの出力情報を参照して前記所定の対象物の方向および前記障害物の空間領域を特定し、特定した情報を前記第3学習モデルに入力することにより前記第3学習モデルの出力情報が示す方向を前記ロボットの走行方向として決定する処理を含む、
    ことを特徴とする制御方法。
  7. 請求項1からの何れか1項に記載のロボットを制御するプログラムであって、前記コントローラに前記各処理を実行させることを特徴とするプログラム。
JP2019217132A 2019-11-29 2019-11-29 ロボット、制御方法、およびプログラム Active JP7342664B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019217132A JP7342664B2 (ja) 2019-11-29 2019-11-29 ロボット、制御方法、およびプログラム
CN202011145337.3A CN112882461A (zh) 2019-11-29 2020-10-23 机器人、控制方法以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019217132A JP7342664B2 (ja) 2019-11-29 2019-11-29 ロボット、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2021086541A JP2021086541A (ja) 2021-06-03
JP7342664B2 true JP7342664B2 (ja) 2023-09-12

Family

ID=76042958

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019217132A Active JP7342664B2 (ja) 2019-11-29 2019-11-29 ロボット、制御方法、およびプログラム

Country Status (2)

Country Link
JP (1) JP7342664B2 (ja)
CN (1) CN112882461A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115164910B (zh) * 2022-06-22 2023-02-21 小米汽车科技有限公司 行驶路径生成方法、装置、车辆、存储介质及芯片

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008204102A (ja) 2007-02-19 2008-09-04 Yokohama National Univ 画像処理システム
JP2018085065A (ja) 2016-11-25 2018-05-31 株式会社竹中工務店 電動走行台車
JP2018147474A (ja) 2017-03-01 2018-09-20 オムロン株式会社 学習装置、学習結果利用装置、学習方法及び学習プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134003A (ja) * 1997-10-31 1999-05-21 Mitsubishi Electric Corp モジュール型学習制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008204102A (ja) 2007-02-19 2008-09-04 Yokohama National Univ 画像処理システム
JP2018085065A (ja) 2016-11-25 2018-05-31 株式会社竹中工務店 電動走行台車
JP2018147474A (ja) 2017-03-01 2018-09-20 オムロン株式会社 学習装置、学習結果利用装置、学習方法及び学習プログラム

Also Published As

Publication number Publication date
CN112882461A (zh) 2021-06-01
JP2021086541A (ja) 2021-06-03

Similar Documents

Publication Publication Date Title
KR102361261B1 (ko) 이동 바디들 주위의 로봇 행동을 위한 시스템들 및 방법들
US20200333789A1 (en) Information processing apparatus, information processing method, and medium
JP6633568B2 (ja) 自律式カバレッジロボット
US11407116B2 (en) Robot and operation method therefor
KR101999033B1 (ko) 자동 로봇을 위한 장애물의 존재 및 부재 중 하나의 확률 맵 구축 방법
KR102235003B1 (ko) 충돌 검출, 추정 및 회피
KR20180087798A (ko) 이동 로봇 및 그 제어방법
KR20180058511A (ko) 이동 로봇 및 그 제어방법
KR20180055571A (ko) 이동 로봇 시스템, 이동 로봇 및 이동 로봇 시스템의 제어 방법
CA2824606A1 (en) Mobile human interface robot
US11112780B2 (en) Collaborative determination of a load footprint of a robotic vehicle
KR102615685B1 (ko) 멀티 센서를 동기화시켜 위치를 추정하는 방법 및 이를 구현하는 로봇
JP2010061484A (ja) 移動体および移動体の位置推定誤り状態からの復帰方法
KR20200027087A (ko) 로봇 및 그의 제어 방법
JP4411248B2 (ja) 移動監視ロボット
JP7342664B2 (ja) ロボット、制御方法、およびプログラム
KR20180098040A (ko) 이동 로봇 및 그 제어방법
JP2018005470A (ja) 自律移動装置、自律移動方法及びプログラム
KR102350934B1 (ko) 이동 로봇
WO2022116628A1 (zh) 避障控制系统、方法、存储介质、计算机程序产品及移动设备
WO2019088990A1 (en) Control system for mobile robots
JP4235858B2 (ja) ロボット装置及びロボット装置の障害物マップ生成方法
SHARMA et al. Human following robot
US20230244835A1 (en) 6d object pose estimation with 2d and 3d pointwise features
Sikdar et al. An iterative clustering algorithm for classification of object motion direction using infrared sensor array

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230404

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230814

R150 Certificate of patent or registration of utility model

Ref document number: 7342664

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150