(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024173582
(43)【公開日】2024-12-12
(54)【発明の名称】制御装置
(51)【国際特許分類】
G05D 1/249 20240101AFI20241205BHJP
G06T 7/00 20170101ALI20241205BHJP
G06T 7/70 20170101ALI20241205BHJP
G08G 1/00 20060101ALI20241205BHJP
【FI】
G05D1/249
G06T7/00 300D
G06T7/00 650B
G06T7/70 Z
G08G1/00 X
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023181556
(22)【出願日】2023-10-23
(31)【優先権主張番号】P 2023089445
(32)【優先日】2023-05-31
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110000028
【氏名又は名称】弁理士法人明成国際特許事務所
(72)【発明者】
【氏名】池田 圭吾
(72)【発明者】
【氏名】齋藤 恭裕
(72)【発明者】
【氏名】横山 大樹
【テーマコード(参考)】
5H181
5H301
5L096
【Fターム(参考)】
5H181AA01
5H181AA27
5H181BB04
5H181BB08
5H181BB20
5H181CC03
5H181CC04
5H181CC11
5H181CC12
5H181CC14
5H181FF04
5H181FF10
5H181FF13
5H181FF27
5H181LL09
5H181MB01
5H301GG08
5H301GG09
5H301MM00
5L096AA09
5L096BA04
5L096EA37
5L096FA66
5L096JA09
(57)【要約】
【課題】測距装置に死角が生じている場合にも移動体の位置や向きを正しく推定できる技術を提供する。
【解決手段】本開示の制御装置は、測距装置を用いて測定された移動体の3次元点群データを用いて、移動体を制御するための制御指令を生成する。制御装置は、測距装置から取得した3次元点群データに欠損部分が生じている場合に、テンプレート点群から欠損部分に相当する欠損相当部分を除外した実質点群部分と、3次元点群データとのマッチングを行うことによって移動体の位置及び向きの少なくとも一方を推定する推定部を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
測距装置を用いて測定された移動体の3次元点群データを用いて、前記移動体を制御するための制御指令を生成する制御装置であって、
前記測距装置から取得した前記3次元点群データに欠損部分が生じている場合に、テンプレート点群から前記欠損部分に相当する欠損相当部分を除外した実質点群部分と、前記3次元点群データとのマッチングを行うことによって前記移動体の位置及び向きの少なくとも一方を推定する推定部、を備える制御装置。
【請求項2】
請求項1に記載の制御装置であって、更に、
前記テンプレート点群から前記欠損相当部分を削除することによって修正テンプレート点群を作成するテンプレート点群修正部を備え、
前記推定部は、前記3次元点群データと前記修正テンプレート点群とのマッチングを行うことによって前記移動体の位置及び向きの少なくとも一方を推定する、制御装置。
【請求項3】
請求項1に記載の制御装置であって、更に、
前記3次元点群データの前記欠損部分を特定する欠損特定部を備える、制御装置。
【請求項4】
請求項3に記載の制御装置であって、
前記欠損特定部は、前記3次元点群データの履歴を参照して、前記測距装置から取得した前記3次元点群データの前記欠損部分を特定する、制御装置。
【請求項5】
請求項3に記載の制御装置であって、
前記欠損特定部は、前記移動体と前記測距装置の距離に応じた前記欠損部分が登録されたマップを用いて、前記移動体と前記測距装置の距離に応じて前記欠損部分を特定する、制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、移動体の制御装置に関する。
【背景技術】
【0002】
車両の製造工程において、車両を自走搬送させる技術が知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
車両などの移動体を自走搬送により移動させる際に、移動体の位置や向きを推定する処理が実行される。移動体の位置や向きは、カメラやレーダーなどの測距装置を用いて取得した3次元点群データを用いて推定できる。しかしながら、測距装置に死角が生じている場合に、3次元点群データをそのまま用いて推定処理を実行すると、正しい推定結果が得られない可能性がある。
【課題を解決するための手段】
【0005】
本開示は、以下の形態として実現することが可能である。
【0006】
(1)本開示の一形態によれば、測距装置を用いて測定された移動体の3次元点群データを用いて、前記移動体を制御するための制御指令を生成する制御装置が提供される。この制御装置は、前記測距装置から取得した前記3次元点群データに欠損部分が生じている場合に、テンプレート点群から前記欠損部分に相当する欠損相当部分を除外した実質点群部分と、前記3次元点群データとのマッチングを行うことによって前記移動体の位置及び向きの少なくとも一方を推定する推定部を備える。
この制御装置によれば、3次元点群データに欠損部分が生じている場合にも、移動体の位置及び向きの少なくとも一方を正しく推定できる。
(2)上記制御装置は、更に、前記テンプレート点群から前記欠損相当部分を削除することによって修正テンプレート点群を作成するテンプレート点群修正部を備え、前記推定部は、前記3次元点群データと前記修正テンプレート点群とのマッチングを行うことによって前記移動体の位置及び向きの少なくとも一方を推定するものとしてもよい。
この制御装置によれば、修正テンプレート点群を用いるので、推定の処理速度を高めることができる。
(3)上記制御装置は、更に、前記3次元点群データの前記欠損部分を特定する欠損特定部を備えるものとしてもよい。
この制御装置によれば、欠損部分を特定した上で、テンプレート点群から欠損相当部分を除外できる。
(4)上記制御装置において、前記欠損特定部は、前記3次元点群データの履歴を参照して、前記測距装置から取得した前記3次元点群データの前記欠損部分を特定するものとしてもよい。
この制御装置によれば、欠損部分を正しく特定できる。
(5)上記制御装置において、前記欠損特定部は、前記移動体と前記測距装置の距離に応じた前記欠損部分が登録されたマップを用いて、前記移動体と前記測距装置の距離に応じて前記欠損部分を特定するものとしてもよい。
この制御装置によれば、欠損部分を容易に特定できる。
【図面の簡単な説明】
【0007】
【
図1】実施形態における遠隔制御システムの構成を示す概念図。
【
図2】第1実施形態における車両と遠隔制御装置の構成を示すブロック図。
【
図3】第1実施形態における遠隔制御の処理手順を示すフローチャート。
【
図4】3次元点群データの欠損部分の例を示す説明図。
【
図5】第2実施形態における車両と遠隔制御装置の構成を示すブロック図。
【
図6】第2実施形態における車両制御の処理手順を示すフローチャート。
【発明を実施するための形態】
【0008】
A.第1実施形態
図1は、実施形態における遠隔制御システム10の構成を示す概念図である。遠隔制御システム10は、移動体としての1台以上の車両100と、車両100を遠隔制御するための制御指令を生成して車両100に送信する遠隔制御装置200と、車両100の3次元点群データを測定する複数の測距装置300と、車両100の製造工程の管理を行う工程管理装置400と、を備える。第1実施形態では、遠隔制御装置200が本開示の「制御装置」に相当する。
【0009】
車両100は、電気自動車(BEV:Battery Electric Vehicle)であることが好ましい。なお、移動体は、電気自動車に限られず、例えば、ガソリン自動車や、ハイブリッド自動車や、燃料電池自動車でもよい。移動体は、車両100に限られず、例えば、電動垂直離着陸機(いわゆる空飛ぶ自動車)でもよい。工場内の任意の位置は、基準座標系Σrのxyz座標値で表現される。
【0010】
本開示において、「移動体」は、移動し得る物体を意味する。車両は、車輪によって走行する車両であっても無限軌道によって走行する車両であってもよく、例えば、乗用車、トラック、バス、二輪車、四輪車、戦車、工事用車両などである。移動体が車両以外である場合には、本開示における「車両」「車」との表現を、適宜に「移動体」に置き換えることができ、「走行」との表現を、適宜に「移動」に置き換えることができる。
【0011】
車両100は、無人運転により走行可能に構成されている。「無人運転」とは、搭乗者の走行操作によらない運転を意味する。走行操作とは、車両100の「走る」、「曲がる」、「止まる」の少なくともいずれかに関する操作を意味する。無人運転は、車両100の外部に位置する装置を用いた自動または手動の遠隔制御によって、あるいは、車両100の自律制御によって実現される。無人運転によって走行している車両100には、走行操作を行わない搭乗者が搭乗していてもよい。走行操作を行わない搭乗者には、例えば、単に車両100の座席に着座している人や、組み付け、検査、スイッチ類の操作といった走行操作とは異なる作業を車両100に乗りながら行っている人が含まれる。なお、搭乗者の走行操作による運転は、「有人運転」と呼ばれることがある。
【0012】
本明細書において、「遠隔制御」は、車両100の外部から車両100の動作の全てが完全に決定される「完全遠隔制御」と、車両100の外部から車両100の動作の一部が決定される「部分遠隔制御」とを含む。また、「自律制御」は、車両100の外部の装置から一切の情報を受信することなく車両100が自身の動作を自律的に制御する「完全自律制御」と、車両100の外部の装置から受信した情報を用いて車両100が自身の動作を自律的に制御する「部分自律制御」とを含む。
【0013】
本実施形態では、車両100を製造する工場において、車両100の遠隔制御が実行される。工場は、第1場所PL1と第2場所PL2とを備えている。第1場所PL1は、例えば、車両100の組み立てが実施される場所であり、第2場所PL2は、例えば、車両100の検査が実施される場所である。第1場所PL1と第2場所PL2とは、車両100が走行可能な走行路SRによって接続されている。
【0014】
走行路SRの周辺には、個々の車両100を測定対象とする複数の測距装置300が設置されている。遠隔制御装置200は、各測距装置300で測定された3次元点群データを用いて、リアルタイムで、目標ルートTRに対する車両100の相対的な位置および向きを取得することができる。測距装置300としては、カメラやLiDAR(Light Detection And Ranging)を使用できる。特に、LiDARは、高精度の3次元点群データが得られる点で好ましい。個々の測距装置300の位置は固定されており、基準座標系Σrと個々の測距装置300の装置座標系との相対関係は既知である。基準座標系Σrの座標値と個々の測距装置300の装置座標系の座標値とを相互に変換するための座標変換行列は、遠隔制御装置200内に予め格納されている。
【0015】
制御対象となる車両100の3次元点群データを測距装置300で測定する場合に、測距装置300と制御対象車両の位置関係や、制御対象車両と他の車両との位置関係によっては、測距装置300の視野範囲に死角が生じる可能性がある。このような死角が存在すると、3次元点群データに欠損部分が生じてしまい、制御対象車両の位置及び向きを正しく推定できない可能性がある。後述するように、本開示では、3次元点群データに欠損部分が生じた場合にも、車両100の位置及び向きを正しく推定できるように工夫されている。
【0016】
遠隔制御装置200は、車両100を目標ルートTRに沿って走行させるための制御指令を生成し、制御指令を車両100に送信する。車両100は、受信した制御指令に従って走行する。したがって、遠隔制御システム10により、クレーンやコンベアなどの搬送装置を用いずに、車両100を第1場所PL1から第2場所PL2まで遠隔制御により移動させることができる。
【0017】
図2は、車両100と遠隔制御装置200の構成を示すブロック図である。車両100は、車両100の各部を制御するための車両制御装置110と、車両制御装置110の制御下で駆動するアクチュエータ群120と、無線通信により遠隔制御装置200と通信するための通信装置130と、車両100の位置情報を取得するためのGPS受信機140とを備えている。本実施形態では、アクチュエータ群120には、車両100を加速させるための駆動装置のアクチュエータ、車両100の進行方向を変更するための操舵装置のアクチュエータ、および、車両100を減速させるための制動装置のアクチュエータが含まれている。駆動装置には、バッテリ、バッテリの電力により駆動する走行用モータ、および、走行用モータにより回転する駆動輪が含まれている。駆動装置のアクチュエータには、走行用モータが含まれている。なお、アクチュエータ群120には、さらに、車両100のワイパーを揺動させるためのアクチュエータや、車両100のパワーウィンドウを開閉させるためのアクチュエータなどが含まれてもよい。
【0018】
車両制御装置110は、プロセッサ111と、メモリ112と、入出力インタフェース113と、内部バス114とを備えるコンピュータにより構成されている。プロセッサ111、メモリ112、および、入出力インタフェース113は、内部バス114を介して、双方向に通信可能に接続されている。入出力インタフェース113には、アクチュエータ群120、通信装置130、および、GPS受信機140が接続されている。
【0019】
本実施形態では、プロセッサ111は、メモリ112に予め記憶されているプログラムPG1を実行することにより、車両制御部115及び位置情報取得部116として機能する。車両制御部115は、アクチュエータ群120を制御する。車両制御部115は、車両100に運転者が搭乗している場合に、運転者の操作に応じてアクチュエータ群120を制御することにより、車両100を走行させることができる。車両制御部115は、車両100に運転者が搭乗しているか否かにかかわらず、遠隔制御装置200から送信される制御指令に応じてアクチュエータ群120を制御することにより、車両100を走行させることもできる。位置情報取得部116は、GPS受信機140を用いて、車両100の現在地を示す位置情報を取得する。但し、位置情報取得部116とGPS受信機140は省略可能である。
【0020】
遠隔制御装置200は、プロセッサ201と、メモリ202と、入出力インタフェース203と、内部バス204とを備えるコンピュータにより構成されている。プロセッサ201、メモリ202、および、入出力インタフェース203は、内部バス204を介して、双方向に通信可能に接続されている。入出力インタフェース203には、無線通信により車両100,測距装置300,及び,工程管理装置400と通信するための通信装置205が接続されている。
【0021】
本実施形態では、プロセッサ201は、メモリ202に予め記憶されているプログラムPG2を実行することにより、3次元点群データ取得部210,欠損特定部220,テンプレート点群修正部230,推定部240,及び,遠隔制御指令生成部250として機能する。
【0022】
3次元点群データ取得部210は、制御対象となる車両100について、測距装置300で測定された3次元点群データを取得する。3次元点群データは、測距装置300で検出された点群の3次元位置を示すデータである。
【0023】
欠損特定部220は、3次元点群データのうちの欠損部分を特定する。この特定の方法については後述する。
【0024】
テンプレート点群修正部230は、テンプレート点群TPから欠損部分に相当する欠損相当部分を削除することによって修正テンプレート点群を作成する。テンプレート点群TPは、メモリ202に予め格納されている。
【0025】
推定部240は、制御対象となる車両100の3次元点群データと、修正テンプレート点群とのマッチングを行うことによって、車両100の位置及び向きを推定する。なお、推定部240は、3次元点群データが利用できない場合に、車両100の走行履歴や、車両100に搭載されているGPS受信機140で検出された位置情報を用いて、車両100の位置および向きを推定することが可能である。推定部240は、車両100の位置及び向きの一方のみを推定するようにしてもよい。この場合には、車両100の位置及び向きの他方は、車両100の走行履歴などを用いて決定される。
【0026】
車両の位置及び向きを「車両位置情報」とも呼ぶ。本実施形態では、車両位置情報には、工場の基準座標系における車両100の位置及び向きが含まれている。
【0027】
遠隔制御指令生成部250は、推定された車両100の位置及び向きを用いて、遠隔制御のための制御指令を生成して車両100に送信する。この制御指令は、メモリ202に格納された目標ルートTRに従って車両100を走行させる指令である。制御指令は、駆動力又は制動力と、舵角とを含む指令として生成することができる。或いは、制御指令を、車両100の位置及び向きの少なくとも一方と、今後の走行ルートとを含む指令として生成してもよい。
【0028】
本実施形態では、制御指令は、車両100の加速度および操舵角をパラメータとして含んでいる。他の実施形態では、制御指令は、車両100の加速度に代えて、あるいは、これに加えて、車両100の速度をパラメータとして含んでいてもよい。
【0029】
工程管理装置400は、工場における車両100の製造工程全般の管理を実行する。例えば、1台の車両100が目標ルートTRに沿った走行を開始する際には、その車両100の識別番号や型式などを示す個体情報が、工程管理装置400から遠隔制御装置200に送信される。遠隔制御装置200で検出された車両100の位置は、工程管理装置400にも送信される。なお、工程管理装置400の機能を、遠隔制御装置200と同じ装置に実装するようにしてもよい。
【0030】
遠隔制御装置200を「サーバ」とも呼び、測距装置300を「外部センサ」とも呼ぶ。また、制御指令を「走行制御信号」とも呼び、目標ルートTRを「参照経路」とも呼び、基準座標系を「グローバル座標系」とも呼ぶ。
【0031】
図3は、第1実施形態における遠隔制御の処理手順を示すフローチャートである。遠隔制御装置200の処理は、一定の周期毎に実行される。或いは、3次元点群データ取得部210が、制御対象となる車両100の測定を担当する測距装置300から3次元点群データを新たに取得するたびに
図3に示す遠隔制御装置200の処理を実行するようにしてもよい。3次元点群データ取得部210は、新たに取得した3次元点群データから、静止物を表す背景点群データを除去する前処理を実行するようにしてもよい。
【0032】
ステップS10では、欠損特定部220が、3次元点群データに欠損部分があるか否かを判定する。
【0033】
図4は、3次元点群データの欠損部分の例を示す説明図である。
図4の上方は欠損部分が無い3次元点群データPGaを示し、
図4の下方は欠損部分DFがある3次元点群データPGcを示す。欠損部分DFは、他の車両や静止物によって測距装置300の視野が一部遮蔽されることによって生じ得る。
【0034】
ステップS10における欠損部分DFの有無の判定方法としては、例えば、以下のいずれかの方法を使用することができる。
【0035】
<欠損部分の有無の判定方法A1>
3次元点群データにおける点群の分布において、点群の密度が密度基準値以下の部分のサイズを求め、このサイズがサイズ閾値以上の場合に欠損部分DFがあるものと判定する。なお、「密度基準値」はゼロとしてもよい。
【0036】
<欠損部分の有無の判定方法A2>
3次元点群データにおいて点群が密集している部分を包囲するバウンディングボックスを決定し、バウンディングボックスの中で、点群の密度が密度基準値以下の部分のサイズを求め、このサイズがサイズ閾値以上の場合に欠損部分DFがあるものと判定する。
【0037】
<欠損部分の有無の判定方法A3>
車両100と測距装置300の距離に応じて、欠損部分DFがあるか否かを判定する。車両100と測距装置300の距離としては、点群が密集している部分を包囲するバウンディングボックスの基準位置までの距離を使用することができる。車両100の走行環境がほぼ一定の場合には、車両100と測距装置300の距離に応じて、静止物による欠損部分DFが一定の場所に生じるので、距離に応じて欠損部分DFが存在するか否かを予め決定することが可能である。
【0038】
上記判定方法A1,A2において、点群の密度が密度基準値以下の部分のサイズを求める処理は、車両100の点群が存在するものと推定される部分のみについて実行するようにしてもよい。車両100の点群が存在するものと推定される部分の位置は、車両100の型式に応じて決まっており、型式毎に車両情報VIとして格納されている。また、上記判定方法A2では、バウンディングボックスを複数のボクセル(微小ボックス)に分割してボクセル毎に点群の密度を算出し、点群の密度が密度基準値以下のボクセルが集合している部分のサイズがサイズ閾値以上の場合に、欠損部分DFがあるものと判定するようにしてもよい。
【0039】
欠損部分DFが無い場合にはステップS50に進み、推定部240が、テンプレート点群TPと3次元点群データのマッチングを行うことによって、車両100の位置及び向きを推定する。
【0040】
一方、欠損部分DFがある場合にはステップS10からステップS20に進み、欠損特定部220が、3次元点群データの欠損部分DFを特定する。欠損部分DFの特定方法としては、例えば、以下のいずれかを使用できる。
【0041】
<欠損部分の特定方法B1>
上記判定方法A1又はA2によって欠損部分DFがあることが判定された場合に、点群の密度が密度基準値以下で連続する部分を欠損部分DFとして特定する。この場合に、欠損部分をボクセルの集合として特定するようにしてもよい。
【0042】
<欠損部分の特定方法B2>
同じ制御対象車両に関する3次元点群データの履歴を参照して、今回の3次元点群データPGcの欠損部分DFを特定する。例えば、3次元点群データの履歴の代表的な3次元点群データと、今回の3次元点群データPGcとのマッチングを行うことによって、今回の3次元点群データPGcに存在しない部分を欠損部分DFとして特定することができる。「代表的な3次元点群データ」としては、最近の1回分の3次元点群データや、最近の複数回分の3次元点群データから推定された現時点でのデータなどを使用できる。また、マッチングの処理速度を高めるために、マッチング対象となる2つの3次元点群データに対して点群を間引く前処理を実行してもよい。
【0043】
<欠損部分の特定方法B3>
上記判定方法A3によって欠損部分DFがあることが判定された場合に、車両100と測距装置300の距離に応じた欠損部分DFが登録された欠損部分マップDMを用いて、車両100と測距装置300の距離に応じて欠損部分DFを特定する。欠損部分マップDMは、メモリ202に予め登録されている。車両100の走行環境がほぼ一定の場合には、車両100と測距装置300の距離に応じて、静止物による欠損部分DFが一定の場所に生じるので、欠損部分マップDMを予め作成して登録しておくことが可能である。
【0044】
ステップS30では、テンプレート点群修正部230が、テンプレート点群TPから欠損部分DFに相当する部分を削除して、修正テンプレート点群を作成する。修正テンプレート点群は、テンプレート点群TPから欠損部分DFに相当する欠損相当部分を除外した実質点群部分を表すテンプレートデータである。ステップS40では、推定部240が、修正テンプレート点群と3次元点群データのマッチングを行うことによって、車両100の位置及び向きを推定する。
【0045】
なお、修正テンプレート点群を作成する代わりに、テンプレート点群TPから欠損部分DFに相当する欠損相当部分を除外して、ステップS40における推定処理を実行するようにしてもよい。この場合に、テンプレート点群TPのうち、欠損相当部分に含まれる点については、推定処理のルーチンから除外される。このような処理は、テンプレート点群TPから欠損部分DFに相当する欠損相当部分を除外した実質点群部分と、3次元点群データとのマッチングを行う点では、ステップS30,S40の処理と共通する。但し、修正テンプレート点群を作成してマッチングを行うようにすれば、推定の処理速度を高めることができる。
【0046】
ステップS60では、ステップS40又はステップS50で推定された車両100の位置及び向きを用いて、遠隔制御指令生成部250が制御指令値を生成して車両100に送信する。ステップS60の詳細は以下の通りである。
【0047】
ステップS60において、遠隔制御指令生成部250は、まず、車両100の位置及び向きを含む車両位置情報と、目標ルートTRとを用いて、次に車両100が向かうべき目標位置を決定する。遠隔制御指令生成部250は、車両100の現在地よりも先の目標ルートTR上に目標位置を決定し、その目標位置に向かって車両100を走行させるための制御指令値を生成する。本実施形態では、制御指令値は、車両100の加速度および操舵角をパラメータとして含んでいる。遠隔制御指令生成部250は、車両100の位置の推移から車両100の走行速度を算出し、算出した走行速度と目標速度とを比較する。遠隔制御指令生成部250は、全体として、走行速度が目標速度よりも低い場合には、車両100が加速するように加速度を決定し、走行速度が目標速度よりも高い場合には、車両100が減速するように加速度を決定する。また、遠隔制御指令生成部250は、車両100が目標ルートTR上に位置している場合には、車両100が目標ルートTR上から逸脱しないように操舵角および加速度を決定し、車両100が目標ルートTR上に位置していない場合、換言すれば、車両100が目標ルートTR上から逸脱している場合には、車両100が目標ルートTR上に復帰するように操舵角および加速度を決定する。他の実施形態では、制御指令値は、車両100の加速度に代えて、あるいは、これに加えて、車両100の速度をパラメータとして含んでいてもよい。こうして生成された制御指令値は、遠隔制御装置200から車両100に送信される。
【0048】
車両100のプロセッサ111による制御処理は、ステップS70とステップS80を含む。ステップS70では、車両制御部115が、遠隔制御装置200から制御指令値を取得するまで待機する。制御指令値が取得されると、ステップS80に進み、車両制御部115が、取得した制御指令値に応じてアクチュエータ群120を制御する。本実施形態の遠隔制御システム10によれば、車両100を遠隔制御により走行させることができ、クレーンやコンベア等の搬送設備を用いずに車両100を目標ルートTRに沿って移動させることができる。
【0049】
以上のように、第1実施形態では、3次元点群データの欠損部分に相当する欠損相当部分をテンプレート点群から除外してテンプレートマッチングを行うので、3次元点群データに欠損部分が生じている場合にも、車両100の位置及び向きの少なくとも一方を正しく推定できる。また、
図3の処理手順によれば、欠損特定部220が、車両100の移動に応じて欠損部分を更新するので、欠損部分を適切な状態に更新できる。
【0050】
上記実施形態において、車両100は、遠隔制御により移動可能な構成を備えていれば良く、例えば、以下に述べる構成を備えるプラットフォームの形態であっても良い。具体的には、車両100は、遠隔制御により「走る」、「曲がる」、「止まる」の3つの機能を発揮するために、少なくとも、車両制御部115と通信装置150とを備えていれば良い。すなわち、遠隔制御により移動可能な車両100は、運転席やダッシュボードなどの内装部品の少なくとも一部が装着されていなくてもよく、バンパーやフェンダーなどの外装部品の少なくとも一部が装着されていなくてもよく、ボディシェルが装着されていなくてもよい。この場合、車両100が工場から出荷されるまでの間に、ボディシェル等の残りの部品が車両100に装着されてもよいし、ボディシェル等の残りの部品が車両100に装着されていない状態で、車両100が工場から出荷された後にボディシェル等の残りの部品が車両100に装着されてもよい。なお、プラットフォームの形態に対しても、各実施形態における車両100と同様にして位置決定がなされ得る。
【0051】
B.第2実施形態
図5は、第2実施形態における車両100と遠隔制御装置200の構成を示すブロック図である。
図2に示した第1実施形態の構成との違いは、主に以下の3点である。
(1)車両100のプロセッサ111の機能に、3次元点群データ取得部121と欠損特定部122とテンプレート点群修正部123と推定部124と制御指令生成部125の機能が追加されている点。
(2)車両100のメモリ112に、テンプレート点群TPと車両情報VIと目標ルートTRと欠損部分マップDMとが格納されている点。
(3)遠隔制御装置200のプロセッサ201の機能から、3次元点群データ取得部210と欠損特定部220とテンプレート点群修正部230と推定部240と遠隔制御指令生成部250の機能が省略されている点。
【0052】
3次元点群データ取得部121と欠損特定部122とテンプレート点群修正部123と推定部124と制御指令生成部125の機能は、3次元点群データ取得部210と欠損特定部220とテンプレート点群修正部230と推定部240と遠隔制御指令生成部250の機能とそれぞれほぼ同じなので、それらの説明は省略する。
【0053】
第2実施形態では、3次元点群データの欠損部分に相当する欠損相当部分をテンプレート点群から除外してテンプレートマッチングを行うことによって車両100の位置及び向きの少なくとも一方を推定する処理を、車両100が実行する。すなわち、第2実施形態では、車両100の車両制御装置110が本開示の「制御装置」に相当する。
【0054】
図6は、第2実施形態における車両制御の処理手順を示すフローチャートである。
図6のステップS110~S160は、
図3に示した第1実施形態におけるステップS10~S60にそれぞれ対応する。但し、ステップS160では、車両100の制御指令生成部125によって制御指令値が作成されるので、遠隔制御装置200と車両100との間で制御指令値の送受信を行うことなく、車両100のアクチュエータ群120の制御が実行される。
【0055】
なお、テンプレート点群TPと車両情報VIと目標ルートTRと欠損部分マップDMは、車両100が目標ルートTRに沿って走行を開始する前に、車両100のメモリ112に格納される。これらのデータは、遠隔制御装置200又は工程管理装置400から供給されるものとしてもよく、他の手段を用いて車両100のメモリ112に書き込まれるようにしてもよい。
【0056】
以上のように、第2実施形態においても、第1実施形態と同様に、3次元点群データの欠損部分に相当する欠損相当部分をテンプレート点群から除外してテンプレートマッチングを行うので、3次元点群データに欠損部分が生じている場合にも、車両100の位置及び向きの少なくとも一方を正しく推定できる。
【0057】
C.他の実施形態
以下に説明する各種の実施形態において、「サーバ200」は遠隔制御装置200を意味し、「外部センサ」は測距装置300を意味する。また、「走行制御信号」は制御指令を意味し、「参照経路」は目標ルートTRを意味し、「グローバル座標系」は基準座標系Σrを意味する。
【0058】
(C1)上記各実施形態では、外部センサは、LiDAR(Light Detection And Ranging)である。これに対して、外部センサは、LiDARでなくてもよく、例えば、カメラであってもよい。外部センサがカメラの場合に、サーバ200は、例えば、撮像画像から車両100の外形を検出し、撮像画像の座標系、すなわち、ローカル座標系における車両100の測位点の座標を算出し、算出された座標をグローバル座標系における座標に変換することによって、車両100の位置を取得する。撮像画像に含まれる車両100の外形は、例えば、人工知能を活用した検出モデルに撮像画像を入力することで検出できる。検出モデルは、例えば、システム10内やシステム10外で準備され、サーバ200のメモリに予め記憶される。検出モデルとしては、例えば、セマンティックセグメンテーションとインスタンスセグメンテーションとのいずれかを実現するように学習された学習済みの機械学習モデルが挙げられる。この機械学習モデルとしては、例えば、学習用データセットを用いた教師あり学習によって学習された畳み込みニューラルネットワーク(以下、CNN)を用いることができる。学習用データセットは、例えば、車両100を含む複数の訓練画像と、訓練画像における各領域が車両100を示す領域と車両100以外を示す領域とのいずれであるかを示すラベルとを有している。CNNの学習時には、バックプロパゲーション(誤差逆伝播法)により、検出モデルによる出力結果とラベルとの誤差を低減するように、CNNのパラメータが更新されることが好ましい。また、サーバ200は、例えば、オプティカルフロー法を利用して、撮像画像のフレーム間における車両100の特徴点の位置変化から算出された車両100の移動ベクトルの向きに基づいて推定することによって、車両100の向きを取得できる。
【0059】
(C2)上記第1実施形態では、サーバ200により、車両100の位置及び向きを含む車両位置情報の取得から、走行制御信号の生成までの処理が実行される。これに対して、車両100により車両位置情報の取得から走行制御信号の生成までの処理の少なくとも一部が実行されてもよい。例えば、以下の(1)から(3)の形態であってもよい。
【0060】
(1)サーバ200は、車両位置情報を取得し、車両100が次に向かうべき目標位置を決定し、取得した車両位置情報に表されている車両100の現在地から目標位置までの経路を生成してもよい。サーバ200は、現在地と目的地との間の目標位置までの経路を生成してもよいし、目的地までの経路を生成してもよい。サーバ200は、生成した経路を車両100に対して送信してもよい。車両100は、サーバ200から受信した経路上を車両100が走行するように走行制御信号を生成し、生成した走行制御信号を用いて車両100のアクチュエータを制御してもよい。
【0061】
(2)サーバ200は、車両位置情報を取得し、取得した車両位置情報を車両100に対して送信してもよい。車両100は、車両100が次に向かうべき目標位置を決定し、受信した車両位置情報に表されている車両100の現在地から目標位置までの経路を生成し、生成した経路上を車両100が走行するように走行制御信号を生成し、生成した走行制御信号を用いて車両100のアクチュエータを制御してもよい。
【0062】
(3)上記(1),(2)の形態において、車両100に内部センサが搭載されており、経路の生成と走行制御信号の生成との少なくとも一方に、内部センサから出力される検出結果が用いられてもよい。内部センサは、車両100に搭載されたセンサである。具体的には、内部センサには、例えば、カメラ、LiDAR、ミリ波レーダー、超音波センサ、GPSセンサ、加速度センサ、ジャイロセンサなどが含まれ得る。例えば、上記(1)の形態において、サーバ200は、内部センサの検出結果を取得し、経路を生成する際に内部センサの検出結果を経路に反映してもよい。上記(1)の形態において、車両100は、内部センサの検出結果を取得し、走行制御信号を生成する際に内部センサの検出結果を走行制御信号に反映してもよい。上記(2)の形態において、車両100は、内部センサの検出結果を取得し、経路を生成する際に内部センサの検出結果を経路に反映してもよい。上記(2)の形態において、車両100は、内部センサの検出結果を取得し、走行制御信号を生成する際に内部センサの検出結果を走行制御信号に反映してもよい。
【0063】
(C3)上記各実施形態において、車両100に内部センサが搭載されており、経路の生成と走行制御信号の生成との少なくとも一方に、内部センサから出力される検出結果が用いられてもよい。例えば、車両100は、内部センサの検出結果を取得し、経路を生成する際に内部センサの検出結果を経路に反映してもよい。車両100は、内部センサの検出結果を取得し、走行制御信号を生成する際に内部センサの検出結果を走行制御信号に反映してもよい。
【0064】
(C4)上記第1実施形態では、サーバ200は、車両100に対して送信する走行制御信号を自動で生成している。これに対して、サーバ200は、車両100の外部に位置している外部オペレータの操作に従って、車両100に対して送信する走行制御信号を生成してもよい。例えば、外部センサから出力される撮像画像を表示するディスプレイ、車両100を遠隔操作するためのステアリング、アクセルペダル、ブレーキペダル、および、有線通信あるいは無線通信によりサーバ200と通信するための通信装置を備える操縦装置を外部オペレータが操作し、サーバ200は、操縦装置に加えられた操作に応じた走行制御信号を生成してもよい。
【0065】
(C5)上記各実施形態において、車両100は、無人運転により移動可能な構成を備えていればよく、例えば、以下に述べる構成を備えるプラットフォームの形態であってもよい。具体的には、車両100は、無人運転により「走る」、「曲がる」、「止まる」の3つの機能を発揮するために、少なくとも、車両100の走行を制御する制御装置と、車両100のアクチュエータとを備えていればよい。無人運転のために車両100が外部から情報を取得する場合に、車両100は、さらに、通信装置を備えていればよい。すなわち、無人運転により移動可能な車両100は、運転席やダッシュボードなどの内装部品の少なくとも一部が装着されていなくてもよく、バンパーやフェンダーなどの外装部品の少なくとも一部が装着されていなくてもよく、ボディシェルが装着されていなくてもよい。この場合、車両100が工場から出荷されるまでの間に、ボディシェル等の残りの部品が車両100に装着されてもよいし、ボディシェル等の残りの部品が車両100に装着されていない状態で、車両100が工場から出荷された後にボディシェル等の残りの部品が車両100に装着されてもよい。各部品は、車両100の上側、下側、前側、後側、右側あるいは左側といった任意の方向から装着されてよく、それぞれ同じ方向から装着されてもよいし、それぞれ異なる方向から装着されてもよい。なお、プラットフォームの形態に対しても、第1実施形態における車両100と同様にして位置決定がなされ得る。
【0066】
(C6)車両100は、複数のモジュールを組み合わせることによって製造されてもよい。モジュールは、車両100の部位や機能に応じて纏められた複数の部品によって構成されるユニットを意味する。例えば、車両100のプラットフォームは、プラットフォームの前部を構成する前方モジュールと、プラットフォームの中央部を構成する中央モジュールと、プラットフォームの後部を構成する後方モジュールとを組み合わせることで製造されてもよい。なお、プラットフォームを構成するモジュールの数は、3つに限られず、2つ以下や4つ以上であってもよい。また、プラットフォームを構成する部品に加えて、あるいは、これに代えて、車両100のうちプラットフォームとは異なる部分を構成する部品がモジュール化されてもよい。また、各種モジュールは、バンパーやグリルといった任意の外装部品や、シートやコンソールといった任意の内装部品を含んでいてもよい。また、車両100に限らず、任意の態様の移動体が、複数のモジュールを組み合わせることによって製造されてもよい。こうしたモジュールは、例えば、複数の部品を溶接や固定具等によって接合することで製造されてもよいし、モジュールを構成する部品の少なくとも一部を鋳造によって一の部品として一体的に成型することで製造されてもよい。一の部品、特に比較的大型の部品を一体的に成型する成型手法は、ギガキャストやメガキャストとも呼ばれる。例えば、上記の前方モジュールや中央モジュールや後方モジュールは、ギガキャストを用いて製造されてもよい。
【0067】
(C7)無人運転による車両100の走行を利用して車両100を搬送させることを「自走搬送」とも呼ぶ。また、自走搬送を実現するための構成を、「車両遠隔制御自律走行搬送システム」とも呼ぶ。また、自走搬送を利用して車両100を生産する生産方式のことを「自走生産」とも呼ぶ。自走生産では、例えば、車両100を製造する工場において、車両100の搬送の少なくとも一部が、自走搬送によって実現される。
【0068】
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【符号の説明】
【0069】
10…遠隔制御システム、100…車両、110…車両制御装置、111…プロセッサ、112…メモリ、113…入出力インタフェース、114…内部バス、115…車両制御部、116…位置情報取得部、120…アクチュエータ群、121…3次元点群データ取得部、122…欠損特定部、123…テンプレート点群修正部、124…推定部、125…制御指令生成部、130…通信装置、140…GPS受信機、150…通信装置、200…遠隔制御装置(サーバ)、201…プロセッサ、202…メモリ、203…入出力インタフェース、204…内部バス、205…通信装置、210…3次元点群データ取得部、220…欠損特定部、230…テンプレート点群修正部、240…推定部、250…遠隔制御指令生成部、300…測距装置(外部センサ)、400…工程管理装置