(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-09
(45)【発行日】2024-09-18
(54)【発明の名称】飛行体、制御方法及びプログラム
(51)【国際特許分類】
G05D 1/654 20240101AFI20240910BHJP
B64C 27/08 20230101ALI20240910BHJP
B64C 39/02 20060101ALI20240910BHJP
B64C 13/18 20060101ALI20240910BHJP
G05D 1/46 20240101ALI20240910BHJP
【FI】
G05D1/654
B64C27/08
B64C39/02
B64C13/18 Z
G05D1/46
(21)【出願番号】P 2021546516
(86)(22)【出願日】2020-07-03
(86)【国際出願番号】 JP2020026186
(87)【国際公開番号】W WO2021053929
(87)【国際公開日】2021-03-25
【審査請求日】2023-05-15
(31)【優先権主張番号】P 2019167955
(32)【優先日】2019-09-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100082762
【氏名又は名称】杉浦 正知
(74)【代理人】
【識別番号】100123973
【氏名又は名称】杉浦 拓真
(72)【発明者】
【氏名】早川 康一
【審査官】尾形 元
(56)【参考文献】
【文献】特開2008-290704(JP,A)
【文献】国際公開第2017/098571(WO,A1)
【文献】特表2015-530318(JP,A)
【文献】米国特許出願公開第2017/0355453(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/46
G05D 1/654
B64C 27/08
B64C 39/02
B64C 13/18
(57)【特許請求の範囲】
【請求項1】
着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報を使用した演算により得られる水平方向速度を設定する制御部を有する飛行体であって、
前記制御部が設定した水平方向速度は、
前記飛行体の重力方向に対して垂直な方向速度成分であり、前記着陸点で略0となる速度であり、且つ、前記傾斜を登る方向に与えられる速度であ
り、
前記制御部は、前記着陸点の上方に位置し、前記飛行体の機体が地面に接触しない点で、前記飛行体の傾きが前記着陸点の傾斜角度に略等しくなるように制御する
飛行体。
【請求項2】
着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報を使用した演算により得られる水平方向速度を設定する制御部を有する飛行体であって、
前記制御部が設定した水平方向速度は、前記飛行体の重力方向に対して垂直な方向速度成分であり、前記着陸点で略0となる速度であり、且つ、前記傾斜を登る方向に与えられる速度であり、
前記傾斜情報は、撮像画像または前記飛行体の位置情報に基づいて推定される情報、または、予め地上で測定された情報である
飛行体。
【請求項3】
複数のモータを備え、
前記制御部は、設定された水平方向速度となるように前記複数のモータの回転数を制御する
請求項1
または2に記載の飛行体。
【請求項4】
前記制御部は、前記着陸点の上方に位置
し、前記飛行体の機体が地面に接触しない点で前記設定された水平方向速度となるように制御する
請求項1
または2に記載の飛行体。
【請求項5】
前記制御部は、前記着陸点の上方に位置
し、前記飛行体の機体が地面に接触しない点で、前記傾斜に対応する姿勢となるように制御する
請求項
4に記載の飛行体。
【請求項6】
前記着陸点の上方に位置
し、前記飛行体の機体が地面に接触しない点は、着陸動作を開始する点である
請求項
4に記載の飛行体。
【請求項7】
前記制御部は、前記着陸動作を開始する点から前記着陸点までの間に、機体の傾き及び対地速度の少なくとも一方が許容範囲を超える場合に、機体を上昇させる制御を行う
請求項
6に記載の飛行体。
【請求項8】
前記傾斜情報を取得する傾斜情報取得部を有する
請求項1
または2に記載の飛行体。
【請求項9】
前記傾斜情報取得部は、前記傾斜情報を外部機器から取得する
請求項8に記載の飛行体。
【請求項10】
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法であって、
前記制御部が設定した水平方向速度は、
前記飛行体の重力方向に対して垂直な方向速度成分であり、前記着陸点で略0となる速度であり、且つ、前記傾斜を登る方向に与えられる速度であ
り、
前記制御部は、前記着陸点の上方に位置し、前記飛行体の機体が地面に接触しない点で、前記飛行体の傾きが前記着陸点の傾斜角度に略等しくなるように制御する
制御方法。
【請求項11】
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法をコンピュータに実行させるプログラムであって、
前記制御部が設定した水平方向速度は、
前記飛行体の重力方向に対して垂直な方向速度成分であり、前記着陸点で略0となる速度であり、且つ、前記傾斜を登る方向に与えられる速度であ
り、
前記制御部は、前記着陸点の上方に位置し、前記飛行体の機体が地面に接触しない点で、前記飛行体の傾きが前記着陸点の傾斜角度に略等しくなるように制御する
制御方法をコンピュータに実行させるプログラム。
【請求項12】
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法であって、
前記制御部が設定した水平方向速度は、前記飛行体の重力方向に対して垂直な方向速度成分であり、前記着陸点で略0となる速度であり、且つ、前記傾斜を登る方向に与えられる速度であり、
前記傾斜情報は、撮像画像または前記飛行体の位置情報に基づいて推定される情報、または、予め地上で測定された情報である
制御方法。
【請求項13】
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法をコンピュータに実行させるプログラムであって、
前記制御部が設定した水平方向速度は、前記飛行体の重力方向に対して垂直な方向速度成分であり、前記着陸点で略0となる速度であり、且つ、前記傾斜を登る方向に与えられる速度であり、
前記傾斜情報は、撮像画像または前記飛行体の位置情報に基づいて推定される情報、または、予め地上で測定された情報である
制御方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、飛行体、制御方法及びプログラムに関する。
【背景技術】
【0002】
近年、UAV(Unmanned Aerial Vehicle)やマルチコプタ、ドローンと称される無人の自律飛行体(以下、ドローンと適宜、称する)が各種の撮影や観測、災害救助等の様々な場面で使用されている。これに伴って、ドローンに関する各種の制御方法が提案されている(例えば、特許文献1を参照のこと。)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ドローンが着地する箇所は、必ずしも水平とは限らず傾斜面の場合もあり得る。傾斜面にドローンが着陸する際に、ドローンの機体が不安定になり易いことから、ドローンに対して適切な制御が行われることが望まれる。
【0005】
本開示は、上述した点に鑑みてなされたものであり、着陸箇所が傾斜面であっても安定した姿勢でドローンが着陸できる制御が行われる飛行体、制御方法及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【0006】
本開示は、例えば、
着陸点の傾斜に関する傾斜情報を取得し、傾斜情報を使用した演算により得られる水平方向速度を設定する制御部を有する飛行体であって、
制御部が設定した水平方向速度は、飛行体の重力方向に対して垂直な方向速度成分であり、着陸点で略0となる速度であり、且つ、傾斜を登る方向に与えられる速度であり、
制御部は、着陸点の上方に位置し、飛行体の機体が地面に接触しない点で、飛行体の傾きが着陸点の傾斜角度に略等しくなるように制御する
飛行体である。
また、本開示は、例えば、
着陸点の傾斜に関する傾斜情報を取得し、傾斜情報を使用した演算により得られる水平方向速度を設定する制御部を有する飛行体であって、
制御部が設定した水平方向速度は、飛行体の重力方向に対して垂直な方向速度成分であり、着陸点で略0となる速度であり、且つ、傾斜を登る方向に与えられる速度であり、
傾斜情報は、撮像画像または飛行体の位置情報に基づいて推定される情報、または、予め地上で測定された情報である
飛行体である。
【0007】
本開示は、例えば、
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法であって、
制御部が設定した水平方向速度は、飛行体の重力方向に対して垂直な方向速度成分であり、着陸点で略0となる速度であり、且つ、傾斜を登る方向に与えられる速度であり、
制御部は、着陸点の上方に位置し、飛行体の機体が地面に接触しない点で、飛行体の傾きが着陸点の傾斜角度に略等しくなるように制御する
制御方法である。
また、本開示は、例えば、
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法であって、
制御部が設定した水平方向速度は、飛行体の重力方向に対して垂直な方向速度成分であり、着陸点で略0となる速度であり、且つ、傾斜を登る方向に与えられる速度であり、
傾斜情報は、撮像画像または飛行体の位置情報に基づいて推定される情報、または、予め地上で測定された情報である
制御方法である。
【0008】
本開示は、例えば、
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法をコンピュータに実行させるプログラムであって、
制御部が設定した水平方向速度は、飛行体の重力方向に対して垂直な方向速度成分であり、着陸点で略0となる速度であり、且つ、傾斜を登る方向に与えられる速度であり、
制御部は、着陸点の上方に位置し、飛行体の機体が地面に接触しない点で、飛行体の傾きが着陸点の傾斜角度に略等しくなるように制御する
制御方法をコンピュータに実行させるプログラムである。
また、本開示は、例えば、
飛行体が有する制御部が、着陸点の傾斜に関する傾斜情報を取得し、傾斜情報を使用した演算により得られる水平方向速度を設定する制御方法をコンピュータに実行させるプログラムであって、
制御部が設定した水平方向速度は、飛行体の重力方向に対して垂直な方向速度成分であり、着陸点で略0となる速度であり、且つ、傾斜を登る方向に与えられる速度であり、
傾斜情報は、撮像画像または飛行体の位置情報に基づいて推定される情報、または、予め地上で測定された情報である
制御方法をコンピュータに実行させるプログラムである。
【図面の簡単な説明】
【0009】
【
図1】
図1A及び
図1Bは、実施形態において考慮すべき問題を説明する際に参照される図である。
【
図2】
図2は、実施形態の概要を説明する際に参照される図である。
【
図3】
図3は、実施形態の概要を説明する際に参照される図である。
【
図4】
図4は、実施形態の概要を説明する際に参照される図である。
【
図5】
図5は、実施形態における接地シーケンスの開始点の設定例を説明する際に参照される図である。
【
図6】
図6は、第1の実施形態に係るドローンの構成例を示すブロック図である。
【
図7】
図7は、第1の実施形態に係るドローンで行われる処理の流れを示すフローチャートである。
【
図8】
図8は、第2の実施形態に係るドローンで行われる処理の流れを示すフローチャートである。
【
図9】
図9は、第3の実施形態に係るドローンの構成例を示すブロック図である。
【
図10】
図10は、第3の実施形態に係るドローンで行われる処理の流れを示すフローチャートである。
【
図11】
図11は、第3の実施形態に係るドローンで行われる処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本開示の実施形態等について図面を参照しながら説明する。なお、説明は以下の順序で行う。
<実施形態において考慮すべき問題>
<実施形態の概要>
<第1の実施形態>
<第2の実施形態>
<第3の実施形態>
<変形例>
以下に説明する実施形態等は本開示の好適な具体例であり、本開示の内容がこれらの実施形態等に限定されるものではない。
【0011】
<実施形態において考慮すべき問題>
始めに、本開示の理解を容易とするために、
図1A及び
図1Bを参照して、実施形態において考慮すべき問題について説明がなされる。
【0012】
図1A及び
図1Bは、飛行体の一例であるドローン1が着陸する様子を模式的に示した図である。
図1A及び
図1Bに示す例は、ドローン1が着陸する箇所(以下、着陸点と適宜、称する)が傾斜面2である例である。一般に、ドローン1は、機体を水平にしながら垂直に降下し着陸する。着陸点が水平でなく傾斜がある場合、プロペラにかかる地面効果がプロペラごとに異なってしまうため、機体に回転モーメントが発生してしまい、姿勢を維持できなくなり着陸に失敗する。また、仮に着陸できた場合でも不等接地が発生し、ドローン1の機体が不安定になる。具体的には、
図1Aに示すように、傾斜面2によりドローン1の地面に近い側の地面効果が大きくなり、地面に遠い側の地面効果が小さくなる。係る地面効果の違いに起因して生じる回転モーメントによりドローン1の姿勢が不安定になる。また、
図1Bに示すように、斜面の高い側に接地したドローン1の脚部による回転モーメントによりドローン1の姿勢が不安定になる。
【0013】
一方、ドローン1の機体を傾斜面2に合わせるように傾けながら、ドローン1を着陸させる方法も考えられる。ドローン1の機体を傾斜面2に合わせるように傾けると、ドローン1に対して傾斜面2を下る方向への力が発生してしまう。そのため、垂直に降下しながらドローン1の機体を傾けると、ドローン1の機体が傾斜面2を下る方向に水平の速度を持つことになり、ドローン1が安定に着陸することができない。ドローン1が着陸する際には、水平方向の速度が略0になることが望ましい。係る観点を踏まえつつ、本開示の実施形態について詳細に説明する。
【0014】
<実施形態の概要>
次に、本開示の実施形態の概要についての説明がなされる。なお、本説明では、各実施形態に共通する事項についての説明もなされる。
【0015】
[実施形態の概要]
図2及び
図3は、実施形態の概要を説明するための図である。ドローン1は、
図2に示す傾斜を有する着陸点LPに着陸するものとする。着陸点LPは、予め設定された座標の位置でも良いし、地上の適宜な機器(以下、地上局と適宜、称する)から指示された座標の位置でも良い。
【0016】
空間上の適宜な位置には、
図2に示すように遷移点PAが設定される。遷移点PAは、着陸点LPの上方に位置する点であり、ドローンが着陸動作を開始する点である。ある空間上(遷移点PAより上方)の位置に存在するドローン1は、着陸することを決定する。例えば、ドローン1は、リモートコントロールによる指示、与えられたタスクの完了、電池の残容量の低下、ドローン1が有するセンサの故障、通信障害の発生等に応じて、自身が着陸することを決定する。
【0017】
着陸が決定されると、ドローン1は、着陸点LPの傾斜に関する傾斜情報を取得する。係る傾斜情報は、ドローン1が有するセンサによって取得されても良いし、地上局からドローン1に送信されても良い。また、ドローン1の現在位置からドローン1が有する数値地図を参照して取得しても良い。
【0018】
ドローン1は、着陸進入シーケンス及び接地シーケンスを決定する(
図3参照)。着陸進入シーケンスは、自身の現在位置(
図3におけるPB)から遷移点PAまでに行われるドローン1に対する制御である。着陸進入シーケンスの具体例としては、現在位置PBから遷移点PAまでのドローン1の時系列の位置及び各位置でのドローン1の速度を示す情報である。ここで、ドローン1が安定して着陸するためには、着陸時における水平方向速度が略0であることが望まれる。略0とは、水平方向速度が0又はドローン1が安全に着陸できる程度に0に近いことを意味する。そこで、着陸進入シーケンスでは、遷移点PAにおいて、着陸点LPでのドローン1の水平方向速度が略0となるような水平方向速度、より具体的には着陸点LPの斜面を登る方向に向かう水平方向速度をドローン1に予め与える制御がなされる。具体的には、設定された水平方向速度となるように、ドローンが有する複数のモータの回転数が制御される。遷移点PAにおいて所定の水平方向速度が与えられるように、現在位置PBから遷移点PAまでのドローン1の移動軌跡や各位置での水平方向速度が演算され、演算結果に基づいてドローン1の動作が適切に制御される。
【0019】
接地シーケンスは、遷移点PAから着陸点LPまでに行われるドローン1に対する制御である。遷移点PAを通過したことがドローン1により検出されると、ドローン1は、接地シーケンスにより制御される、接地シーケンスは、例えば、着陸までの時系列の位置と各位置の上下方向の速度を示す情報である。具体的には、遷移点PAにおいて、ドローン1の姿勢が着陸点LPの傾斜と略同じ傾斜となるように、ドローン1の姿勢が制御される。接地シーケンスに基づいて制御されることにより、
図3に示すように、ドローン1が着陸点LPに向かって下降し、遷移点PAで与えられた水平対地速度が徐々に減少する。着陸点LPにおいては、水平対地速度が略0となり、且つ、ドローン1の姿勢が着陸点LPの傾斜と略等しくなるため、ドローン1が安定した姿勢で着陸することができる。
【0020】
[各実施形態に共通する事項]
次に、各実施形態に共通する事項についての説明がなされる。なお、以下の説明では、着陸点LPの座標が(x,y,0)と表記され、遷移点PAの座標が(x',y',H)と表記される。遷移点PAの高さは、以下の説明において、接地シーケンス開始高度Hと適宜、称される。また、着陸点LPの傾斜の角度をθとする。θは後述するように、ドローン1が有するセンサ等によって取得される。
【0021】
図4は、姿勢が傾いているドローン1にかかる各種の力を分析的に示した図である。ここでMはドローン1の質量を示し、θはピッチ角(ドローン1の姿勢及び着陸点LPの傾斜角に対応する角度)であり、gは重力加速度である。ドローン1は、地面に対して垂直下方向にMgの重力を受ける。一般に、ドローン1に対しては、バランスを取るために、重力Mgに対して若干、大きい力F
vを地面に対して垂直上方向に与える制御がなされる。
【0022】
また、
図4において、ドローン1が有する全ローターの合計推力(ドローン1の機体の垂直上方向に発生する力)をF
rとする。また、ドローン1に対するZ方向の空気抵抗をD
hとし、ドローン1に対する(地面に対して)横方向の空気抵抗をD
vとする。また、ドローン1の速度をvとすると、速度vは、水平方向速度v
hと垂直方向速度v
vに分解することができる。なお、速度v、水平方向速度v
h及び垂直方向速度v
vはそれぞれ対地速度である。
【0023】
ドローン1の水平方向の加速度(水平方向加速度)は、下記の式1により表すことができる。
(式1)
【0024】
ドローン1の垂直方向の加速度(垂直方向加速度)は、下記の式2により表すことができる。
(式2)
【0025】
Wh、Wvは、風の水平、垂直成分である。本実施形態では無視する(考慮しないものとする)。空気抵抗の項Dh(vh-wh,θ)、Dv(vv-wv,θ)は解析的に求めることは非常に難しく、通常は、実験により求め表を作成する。空気抵抗の垂直成分Dv(vv-wv,θ)は、重力と比較して十分に小さいため、本実施形態では無視する。
【0026】
続いて、接地シーケンス開始時の高度、換言すれば、遷移点PAの高さで接地シーケンス開始高度H、接地シーケンス開始時のドローン1の垂直方向の降下速度vvs、接地シーケンスを実行する時間ttに基づいて、接地シーケンスにおけるドローン1の垂直方向速度vv(t)、接地シーケンスにおける水平方向速度vh(t)の時刻プロファイルを決定することを考える。
【0027】
始めに、接地シーケンス開始高度H、降下速度v
vsの関係を求める。高度は、下記の式3に示すように、接地シーケンスにおける垂直方向速度v
v(t)を積分することにより求まる。
(式3)
【0028】
時刻tは、遷移点PAにおいて接地シーケンスが開始されたタイミングを0とする。式3における第2項のHは積分定数であり、t=0のとき高度h(0)=Hであることから決められる。そして、接地シーケンス終了時(ドローン1の接地時刻)、即ち、t=t
tのとき高度が0であるため、下記の式4を満たす必要がある。
(式4)
【0029】
式4中、vv(t)は、ドローン1が自由に決定することができるので、数値積分することにより式4を満たすようなvv(t)の関数を決定すれば良い。
【0030】
ドローン1の垂直方向速度v
v(t)は、式5に示すように、ドローン1の垂直方向加速度a
v(s)を積分することにより得られる。
(式5)
【0031】
降下速度v
vsは、接地シーケンス開始時、即ち、t=0のときの降下速度であるから、v
v(0)=-v
vsである。接地時、即ち、t=t
tのときの垂直方向の降下速度をv
vtとするとv
vtは、以下の式6により表すことができる。
(式6)
【0032】
次に、ドローン1の水平方向速度v
h(t)の満たすべき関数を求める。水平方向速度v
h(t)は、下記の式7に示すように水平方向加速度a
h(s)を積分することにより得られる。
(式7)
【0033】
式7中、a
h(s)は水平方向加速度、Cは積分定数である。境界条件は2つあり接地時に水平方向速度が0になることと、接地時のドローン1の傾きが着陸点LPの傾きθと等しいことである。第1の境界条件は、下記の式8に示すように書き換えられる。
(式8)
【0034】
式8から積分定数Cが求められ、水平方向速度v
h(t)は、下記の式9により表すことができる。
(式9)
【0035】
第2の境界条件に基づいて、ドローン1の接地時の水平方向加速度は、下記の式10により表すことができる。
(式10)
【0036】
式10中、D
h(w
h,θ)/Mの項は空気抵抗の項であり、ドローン1の水平方向速度が遅くなる着陸時には無視することができる。そのため、ドローン1の着陸時の水平方向加速度と垂直方向加速度との関係は、下記の式11により表すことができる。
(式11)
【0037】
これまで説明した境界条件を満たす加速度プロファイルであるa
v(t)、a
h(t)、速度プロファイルであるv
v(t)、v
h(t)には、無数の自由度がある。そこで、本実施形態では、接地シーケンス中には、ドローン1の垂直方向加速度a
vと姿勢θとが一定であると仮定して具体的な速度プロファイルを求めることにする。係る仮定に基づいて垂直方向加速度a
vを定数とすると、垂直方向速度v
v(t)は、下記の式12により表すことができる。
(式12)
【0038】
ドローン1の接地時刻(t=t
t)のときv
v(t)=-v
vtであるから、
a
v=-(v
vs-v
vt)/t
tとなる。よって、v
v(t)は下記の式13により表すことができる。
(式13)
【0039】
式13を式2に代入し積分することにより、下記の式14に示す関係が得られる。
(式14)
【0040】
式14から、接地シーケンス開始高度H、接地シーケンスにかかる時間tt、接地シーケンス開始時のドローン1の降下速度vvs、接地シーケンス終了時(接地時)のドローン1の降下速度vvtの関係が得られたことになる。
【0041】
次に、水平方向速度についても等加速度として積分を実行する。垂直方向加速度a
vが定数であるので、水平方向加速度a
h(t)は、下記の式15により表すことができる。(式15)
【0042】
垂直方向加速度a
v、姿勢θが共に定数であるので、水平方向加速度も定数となる。すると、水平方向速度v
h(t)は、下記の式16により表すことができる。
(式16)
【0043】
ここで、上述したように、a
v=-(v
vs-v
vt)/t
tであることから、v
h(t)は、下記の式17により表すことができる。
(式17)
【0044】
接地時の降下速度vvtは、ドローン1の機体が許容する範囲で適切に定める必要がある。また、この値を0にすると、高度の見積もり精度が低く、実際よりも高度を低く見積もってしまった場合、着陸前に機体が再浮上してしまう虞があるので、必ず正の値(鉛直方向を正としvv(tt)は負の値)になるようにする。
【0045】
式17に基づいて、t=0の各値を使用した演算を行うことにより、接地シーケンス開始時のドローン1の水平方向速度であり、且つ、接地時には略0となる水平方向速度を求めることが可能となる。このように、本開示では傾斜情報に応じた水平方向速度が設定される。
【0046】
勿論、上述した演算は一例であり、他の方法によりドローン1の接地シーケンス開始時における水平方向速度等が求められても良い。
【0047】
続いて、
図5が参照されつつ、接地シーケンスを開始する遷移点PAの設定例についての説明がなされる。なお、接地シーケンス開始高度Hの設定例については既に説明してあるため、ここでは、遷移点PAのX-Y平面上における座標(x’,y’)の設定例について説明する。
【0048】
図5に示すように、着陸点LP(ドローン1の接地点)を原点(0,0)として、遷移点PA(接地シーケンス開始点)の座標(x’,y’)を計算する。座標系を
図5に示すように設定し、着陸点LPの登坂方向に向かう傾きの最大をαとする。ドローン1の接地シーケンスにおける水平経路長をl
hとすると、水平経路長l
hは、接地シーケンスの水平方向速度を積分したものなので、以下の式18により表すことができる。
(式18)
【0049】
遷移点PAは、着陸点LPの傾き最大の方向とは反対の方向となるので、下記の式19により表すことができる。
(式19)
【0050】
垂直方向加速度を一定と仮定した場合に、ドローン1の水平方向速度は、上述したように下記の式20により表すことができる。
(式20)
【0051】
よって、水平経路長l
hは、下記の式21となる。
(式21)
【0052】
係る水平経路長lhを満たす座標(x’,y’)が遷移点PAとして設定される。勿論、上述した方法以外の方法により遷移点PAの座標(x’,y’)が設定されても良い。
【0053】
<第1の実施形態>
[ドローンの内部構成例]
図6は、第1の実施形態に係るドローン(以下、ドローン1Aと適宜、称する)の内部構成例を示すブロック図である。ドローン1Aは、例えば、制御部101と、機体制御部102と、センサ部103と、機体情報取得部104と、傾斜情報取得部105と、地上局GSと通信を行う通信部106とを有している。制御部101は、機能ブロックとして、飛行状態管理部101Aと、飛行プランナ101Bと、姿勢プランナ101Cとを有している。また、図示はしていないが、ドローン1Aは自身を移動させるためのモータ、プロペラ等の機構を有している。
【0054】
制御部101は、ドローン1Aを統括的に制御する。例えば、制御部101は、着陸点の傾斜に関する傾斜情報を取得し、傾斜情報に応じた水平方向速度を設定する。そして、制御部101は、設定された水平方向速度となるように複数のモータの回転数を制御する。制御部101による制御に応じて機体制御部102が動作して複数のモータの回転数が制御される。なお、制御部101により設定される水平方向速度は、上述したように、例えば、着陸点LPで略0となる速度である。
【0055】
飛行状態管理部101Aは、ドローン1Aの飛行状態を統括的に管理する。例えば、飛行状態管理部101Aは、リモートコントロールによる指示、与えられたタスクの完了、電池の残容量の低下、ドローン1が有するセンサの故障、通信障害の発生等に応じて、ドローン1Aが着陸することを決定する。
【0056】
飛行プランナ101Bは、ドローン1Aの飛行コースプランを生成する。飛行コースプランは、例えば、ドローン1Aが飛行する時系列の位置及び当該位置における速度が規定された情報である。飛行コースプランは、予め設定されている場合もあれば、ドローン1Aに与えられたタスク等に応じて飛行プランナ101Bにより生成される場合もある。飛行プランナ101Bは、飛行コースプランを姿勢プランナ101Cに出力する。
【0057】
また、飛行プランナ101Bは、進入コースプラン及び接地コースプランを生成する。進入コースプランは、ドローン1Aの現在位置から遷移点PAまでの時系列の位置及び当該位置での速度が規定された情報である。また、本実施形態にかかる接地コースプランは、遷移点PAから着陸点LPまでの姿勢、時系列の位置及び当該位置における上下方向の速度が規定された情報である。飛行プランナ101Bは、進入コースプラン及び接地コースプランを姿勢プランナ101Cに出力する。
【0058】
姿勢プランナ101Cは、飛行プランナ101Bから与えられる飛行コースプラン及び接地コースプランに応じた機体制御情報を生成する。姿勢プランナ101Cは、例えば、飛行コースプランに規定された位置及び当該位置での速度(具体的には、上下左右の対地速度)となるようなドローン1Aの機体制御情報を生成する。姿勢プランナ101Cは、例えば、飛行コースプランに従って、機体の位置や速度のずれも考慮して姿勢や上下方向の加速度等を含む機体制御情報を決定する。
【0059】
また、姿勢プランナ101Cは、例えば、進入コースプランに規定された位置及び当該位置での速度(具体的には、上下左右の対地速度)となるようなドローン1Aの機体制御情報を生成する。また、姿勢プランナ101Cは、例えば、接地コースプランに規定された位置、当該位置での上下方向の速度、姿勢となるようなドローン1Aの機体制御情報を生成する。姿勢プランナ101Cは、機体制御情報を機体制御部102に出力する。
【0060】
機体制御部102は、姿勢プランナ101Cから供給される機体制御情報に応じた制御を行う。機体制御部102は、例えば、ドローン1Aが機体制御情報に応じた姿勢や速度となるように、ドローン1Aが有するモータの回転数等を制御する。
【0061】
センサ部103は、ドローン1Aの機体情報(例えば、ドローン1Aの現在位置、速度、姿勢等)を取得する複数のセンサを総称したものである。センサ部103を構成するセンサとしては、GPS(Global Positioning System)、SLAM(Simultaneous Localization and Mapping)、加速度センサ、ジャイロセンサ、気圧センサ等が挙げられる。
【0062】
機体情報取得部104は、センサ部103から入力されたセンシングデータを、適宜、アナログデータからデジタルデータに変換する。そして、機体情報取得部104は、デジタルデータに変換したセンシングデータを制御部101に対して出力する。機体情報取得部104により、ドローン1Aの現在位置や加速度、ドローン1Aの周囲の環境(風速や気圧等)の情報が取得される。
【0063】
傾斜情報取得部105は、上述したθに対応する傾斜情報を取得し、取得した傾斜情報を制御部101に出力する。傾斜情報は、例えば、着陸点LP付近をカメラで撮像し、撮像画像に基づいて着陸点LPの傾斜及び法線を取得することにより推定することができる。また、傾斜情報は、現在のドローン1Aの位置情報から傾斜を求めるための傾斜地図を作成し、傾斜地図に基づいて推定することもできる。また、傾斜情報は、予め地上で測定されたものであっても良い。地上局GS等の外部機器から通信部106に対して傾斜情報が送信されても良い。このように、傾斜情報は、様々な方法で取得することができる。従って、傾斜情報を取得する方法によっては、センサ部103及び機体情報取得部104が傾斜情報取得部として機能する場合もあれば、通信部106が傾斜情報取得部として機能する場合もある。
【0064】
通信部106は、ドローン1Aが他の機器と通信を行うためのものである。通信部106は、通信方式に応じた変復調回路等を有している。通信部106は、例えば、地上局GSと通信を行う。
【0065】
[処理の流れ]
図7は、第1の実施形態にかかるドローン1Aで行われる処理の流れを示すフローチャートである。なお、以下に説明する処理は、例えば、飛行状態管理部101Aが着陸を決定した後に行われる。
【0066】
ステップST101では、着陸点LPの座標及び着陸点LPの法線の情報(着陸点LPの面に対する法線の情報)が取得される。着陸点LPの座標は、地上局GS側で指定された座標でも良いし、ドローン1Aの制御部101により適宜な方法で決定されても良い。着陸点LPの座標は、傾斜情報取得部105に供給される。着陸点LPの法線の情報は、例えば、傾斜情報取得部105により撮像等により取得される。着陸点LPの法線の情報は、センサ部103により取得されても良いし、地上局GS側から指示されても良い。そして、処理がステップST102に進む。
【0067】
ステップST102では、着陸点LPの法線の情報から着陸点LPの傾斜角θと傾斜を登る方向のベクトルとが計算される。係る計算は、例えば、傾斜情報取得部105により行われる。計算結果が、制御部101に供給される。そして、処理がステップST103に進む。
【0068】
ステップST103では、飛行プランナ101Bが、傾斜角θ、接地シーケンス開始高度H、ドローン1Aの接地時の垂直方向速度vvt、接地シーケンスにかける時間ttから、垂直方向加速度av、水平方向加速度ah、接地シーケンス開始時の垂直方向速度vvsを決定する。そして、処理がステップST104に進む。
【0069】
ステップST104では、飛行プランナ101Bが、接地シーケンスの開始時の水平方向速度(水平対地速度)vhsを水平方向加速度、接地シーケンスにかける時間ttを使用して求める。求められた水平方向速度vhsは、ドローン1Aの着陸時に略0となる速度である。そして、処理がステップST105に進む。なお、ステップST103、104の処理の具体例については既に説明しているため、重複した説明は省略される。
【0070】
本実施形態では、飛行プランナ101Bが、計算結果が機体の運用範囲内か否かを判定するようにしている。具体的には、ステップST105では、垂直方向加速度av、接地シーケンス開始時、終了時のそれぞれの垂直方向速度vvs、vvtが機体の運用範囲内か否かが飛行プランナ101Bにより判定される。そして、処理がステップST106に進む。
【0071】
ステップST106において、ステップST105の判定結果が機体の運用範囲内でなければ、処理がステップST103に戻る。なお、処理がステップST103に戻った場合には、例えば、接地シーケンス開始高度H等が適宜、変更された上で、ステップST103、104における計算処理が行われる。ステップST106において、ステップST105の判定結果が機体の運用範囲内であれば、処理がステップST107に進む。
【0072】
ステップST107では、飛行プランナ101Bが、遷移点PAの位置(x’,y’,H)を求める。遷移点PAの位置の設定例については既に説明しているため、重複した説明は省略される。また、飛行プランナ101Bは、遷移点PAにおける姿勢(本例では、傾斜角θと略同じに傾く姿勢)及び遷移点PAから着陸点LPまでの時系列の位置及び当該位置での上下方向の加速度等を含む接地コースプランを生成する。そして、処理がステップST108に進む。
【0073】
ステップST108では、飛行プランナ101Bが、遷移点PAの位置及び遷移点PAにおけるドローン1Aの速度がステップST104で決定された水平方向速度となるように、現在の位置から遷移点PAまでの進入コースプランを生成する。進入コースプランは、適宜な方法で作成することができる。進入コースプランは、例えば、現在の位置から遷移点PAまでの適宜なコース上に幾つかの離散的な位置が設定され、最終的にステップST104で決定された水平方向速度となるように複数の位置における水平方向速度等が規定されたものである。そして、処理がステップST109に進む。
【0074】
ステップST109では、飛行プランナ101Bが進入コースプランを姿勢プランナ101Cに渡す。そして、処理がステップST110に進む。
【0075】
ステップST110では、姿勢プランナ101Cが、進入コースプランに基づいて、各位置での機体の姿勢や上下方向の加速度を求め、求めた姿勢等を実現するための機体制御情報を生成する。具体的には、姿勢プランナ101Cは、自身に与えられたコースプランで指定された位置と現在位置との位置誤差に基づいて、その位置誤差を修正するように、その時点での機体の姿勢と上下方向の加速度を求め、それらが規定された機体制御情報を生成する。そして、姿勢プランナ101Cは、求めた機体制御情報を機体制御部102に与える(渡す)。そして、処理がステップST111に進む。
【0076】
ステップST111では、機体制御部102が、機体制御情報に基づく機体制御を行う。係る機体制御により、進入コースプランで計画された軌道に従うようにドローン1Aが移動する。そして、処理がステップST112に進む。
【0077】
ステップST112では、ステップST107で求められた遷移点PAをドローン1Aが通過したか否かが判断される。係る判断は、例えば、センサ部103で取得され、機体情報取得部104で取得されたドローン1Aの現在位置に基づいて、飛行プランナ101Bにより判断される。ドローン1Aが遷移点PAを通過していない場合は、処理がステップST110に戻る。ドローン1Aが遷移点PAを通過した場合は、処理がステップST113に進む。
【0078】
本実施形態では、ドローン1Aが遷移点PAを通過した後は、ドローン1Aの姿勢の制御と上下方向の加速度の制御が行われる。ステップST113では、飛行プランナ101Bが接地コースプランを姿勢プランナ101Cに渡す。そして、処理がステップST114に進む。
【0079】
ステップST114では、姿勢プランナ101Cは、飛行プランナ101Bより受けたコースで指定された機体の姿勢と、ドローン1Aの上下方向の加速度を制御するための機体制御情報を生成する。そして、姿勢プランナ101Cは、生成した機体制御情報を機体制御部102に供給する。そして、処理がステップST115に進む。
【0080】
ステップST115では、接地コースプランに基づく機体制御が機体制御部102により行われる。これにより、計画された軌道に従うように、傾斜角θと略同じ角度で傾いた姿勢のドローン1Aが下降する。そして、処理がステップST116に進む。
【0081】
ステップST116では、例えば、センサ部103により得られるセンサ情報に基づいて、ドローン1Aが接地したか否かが判断される。係る判断は、例えば、制御部101により行われる。ドローン1Aが接地していない場合には、処理がステップST114に戻る。ドローン1Aが接地した場合には、制御部101は、判断結果を機体制御部102に出力する。そして、処理がステップST117に進む。
【0082】
ステップST117では、ドローン1Aの推力をアイドリングする制御が機体制御部102により行われる。例えば、機体制御部102により、所定以下の回転数(ドローン1Aの機体が上昇しない程度の回転数)でドローン1Aのプロペラを回転させるアイドリング制御が行われる。係る制御が行われることにより、ユーザは、接地したドローン1Aが壊れていないことを認識することができる。なお、接地したドローン1Aのプロペラが停止されても良い。そして、処理がステップST118に進み、ドローン1Aの着陸動作が完了する。
【0083】
以上説明した第1の実施形態によれば、着陸時における水平対地速度が0又は略0となるように、遷移点PAにおいて予め水平対地速度がドローン1Aに与えられる。また、遷移点PA以降は、ドローン1Aの姿勢が傾斜角θと略同じ角度となるように制御される。従って、ドローン1Aを安定して着陸させることができる。
【0084】
<第2の実施形態>
次に、第2の実施形態についての説明がなされる。なお、第2の実施形態の説明において、上述した説明における同一又は同質の構成については同一の参照符号を付し、重複した説明は適宜、省略される。また、特に断らない限り、第1の実施形態で説明した事項は第2の実施形態に対して適用することができる。
【0085】
第2の実施形態にかかるドローン(以下、ドローン1Bと適宜、称する)の構成としては、第1の実施形態で説明したドローン1Aと同様の構成を適用することができる。第1の実施形態では、接地コースプランとして遷移点PA以降の姿勢(水平)が与えられていたが、第2の実施形態では、接地コースプランとして遷移点PAから着陸点LPまでの水平方向速度が与えられる点が第1の実施形態と異なる。
【0086】
図8は、ドローン1Bで行われる処理の流れを示すフローチャートである。ステップST101~ST108にかかる処理の内容は既に説明しているため、重複した説明が省略される。なお、本実施形態では、ステップST107で生成される接地コースプランには、遷移点PAにおける水平方向速度及び遷移点PAから着陸点LPまでの各位置における水平方向速度が規定される。各位置の水平方向速度v
hsは、例えば、遷移点PAから着陸点LPまでの距離に応じて設定される。水平方向速度v
hsが与えられたドローン1Bは、遷移点PA以降は着陸点LPの傾斜角θと略同じとなる姿勢(傾斜を登る方向に傾いた姿勢)になる。
【0087】
ステップST108に続くステップST201では、飛行プランナ101Bが、接地コースプランと進入コースプランとを統合する。そして、飛行プランナ101Bは、統合したコースプランを姿勢プランナ101Cに与える。そして、処理がステップST202に進む。
【0088】
ステップST202では、姿勢プランナ101Cが、自身に与えられたコースプランを実現する機体制御情報を生成する。そして、姿勢プランナ101Cは、生成した機体制御情報を機体制御部102に出力する。そして、処理がステップST203に進む。
【0089】
ステップST203では、機体制御部102が機体制御情報に応じて動作することにより、ドローン1Bは、飛行プランナ101Bにより統合されたコースプランに従った位置や当該位置における姿勢、水平方向速度になる。そして、処理がステップST116に進む。ステップST116以降のステップST116、ST117、ST118の内容については既に説明しているため重複した説明は省略される。
【0090】
以上、第2の実施形態によれば、ドローン1Bに遷移点PAから着陸点LPまでの水平対地速度を与えることにより、ドローン1Bを安定した姿勢で着陸させることができる。
【0091】
<第3の実施形態>
次に、第3の実施形態についての説明がなされる。なお、第3の実施形態の説明において、上述した説明における同一又は同質の構成については同一の参照符号を付し、重複した説明は適宜、省略される。また、特に断らない限り、第1、第2の実施形態で説明した事項は第3の実施形態に対して適用することができる。
【0092】
図9は、第3の実施形態にかかるドローン(以下、ドローン1Cと適宜、称する)の構成例を示すブロック図である。ドローン1Cは、着陸復行プランナ101Dを有する点がドローン1A、1Bと異なっている。着陸復行プランナ101Dは、ドローン1Cの着陸時における姿勢や水平方向速度、垂直方向速度等(以下、姿勢等と適宜、称する)が許容範囲内でない場合は、着陸を中止して安全な高度までドローン1Cを上昇させる制御を行うプランナである。
【0093】
図10及び
図11は、ドローン1Cで行われる処理の流れを示すフローチャートである。なお、
図10及び
図11に示す「A」は、処理の連続性を示すものであり、特定の処理を示すものではない。ステップST101~ステップST108に係る処理及びステップST201~ST203に係る処理の内容については、既に説明しているため重複した説明は省略される。ステップST116の判断処理でドローン1Cが接地していないと判断された場合(Noの場合)には、処理がステップST301に進む。
【0094】
ステップST301では、ドローン1Cの姿勢等が許容範囲内であるか否かが判断される。この判断は、例えば、着陸復行プランナ101Dで行われる。また、許容範囲は、ドローン1Cの性能、大きさ等に応じて予め設定されている。そして、処理がステップST302に進む。
【0095】
ステップST302において、ステップST301の判断処理の結果がドローン1Cの姿勢等が許容範囲内である場合(Yesの場合)には、処理がステップST203に戻る。ステップST302において、ステップST301の判断処理の結果がドローン1Cの姿勢等が許容範囲内でない場合(Noの場合)には、処理がステップST303に進む。
【0096】
ステップST303では、ドローン1Cの姿勢等が許容範囲内でないことから、着陸復行プランナ101Dが着陸復行を決定する。そして、着陸復行プランナ101Dは、現在位置から十分高い箇所に目標点を設定し、設定した目標点を飛行プランナ101Bに与える。そして、処理がステップST304に進む。
【0097】
ステップST304では、飛行プランナ101Bが、現在位置から目標点までのコースプランを生成する。係るコースプランは、現在位置から目標点までの経路、経路上に設定される任意の複数の位置、各位置におけるドローン1Cの姿勢や速度が規定されたコースプランである。飛行プランナ101Bは、生成したコースプランを姿勢プランナ101Cに与える。そして、処理がステップST305に進む。
【0098】
ステップST305では、姿勢プランナ101Cが、自身に与えられたコースプランを実現するための機体制御情報を生成する。具体的には、姿勢プランナ101Cは、自身に与えられたコースプランで指定された位置と現在位置との位置誤差に基づいて、その位置誤差を修正するように、その時点での機体の姿勢と上下方向の加速度を求め、それらが規定された機体制御情報を生成する。姿勢プランナ101Cは、生成した機体制御情報を機体制御部102に与える。そして、処理がステップST306に進む。
【0099】
ステップST306では、機体制御部102が、姿勢プランナ101Cから与えられた機体制御情報で指示された姿勢、上下方向の加速度を満たすように、モータ等を制御する。そして、処理がステップST307に進む。
【0100】
ステップST307では、ドローン1Cの現在位置が目標点であるか否かが判断される。係る判断は、例えば、着陸復行プランナ101Dにより行われるが、他の機能ブロックにより行われても良い。ドローン1Cの現在位置が目標点でない場合には、処理がステップST305に戻る。ドローン1Cの現在位置が目標点に到達した場合には、処理がステップST308に進む。
【0101】
ステップST308では、一連の着陸復行制御が完了する。安全な高度まで上昇したドローン1Cは、次の指示を待つ待機状態となる。ドローン1Cに対しては、再度、ドローン1Cを着陸させるための制御や、着陸を中止する等の適宜な指示が与えられる。
【0102】
なお、本実施形態では、ドローン1Cの機体の傾き等が許容範囲内であるか否かが判断されるようにしたが、傾き、水平方向速度、垂直方向速度の何れか一つ若しくは二つが許容範囲内であるか否かが判断されるようにしても良いし、その他のパラメータが許容範囲内であるか否かが判断されるようにしても良い。
【0103】
以上説明した第3の実施形態によれば、機体の傾き等が許容範囲内でない場合にドローン1Cを安全な高度まで上昇させることができる。従って、不適切な姿勢等でドローン1Cが着陸動作を行うことによりドローン1Cの着陸が失敗してしまうことを防止することができる。
【0104】
<変形例>
以上、本開示の実施形態について具体的に説明したが、本開示の内容は上述した実施形態に限定されるものではなく、本開示の技術的思想に基づく各種の変形が可能である。以下、変形例について説明する。
【0105】
上述した各実施形態では、説明の便宜を考慮して、制御部が複数のプランナを有する構成について説明したが、これに限定されるものではない。例えば、飛行プランナと姿勢プランナとが一つの機能ブロックにより構成されても良い。
【0106】
上述した各実施形態におけるドローンに対しては、公知のドローンに対する制御方法を適用することができる。
【0107】
本開示は、装置、方法、プログラム、システム等により実現することもできる。例えば、上述した実施形態で説明した機能を行うプログラムをダウンロード可能とし、実施形態で説明した機能を有しない装置が当該プログラムをダウンロードしてインストールすることにより、当該装置において実施形態で説明した制御を行うことが可能となる。本開示は、このようなプログラムを配布するサーバにより実現することも可能である。また、本開示は、実施形態で説明したフライトプランを容易に作成するツールとして実現することも可能である。また、各実施形態、変形例で説明した事項は、適宜組み合わせることが可能である。
【0108】
本明細書中に記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれの効果であっても良い。また、例示された効果により本開示の内容が限定して解釈されるものではない。
【0109】
本開示は、以下の構成も採ることができる。
(1)
着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報に応じた水平方向速度を設定する制御部を有する
飛行体。
(2)
複数のモータを備え、
前記制御部は、設定された水平方向速度となるように前記複数のモータの回転数を制御する
(1)に記載の飛行体。
(3)
前記制御部が設定した水平方向速度は、着陸点で略0となる速度である
(1)又は(2)に記載の飛行体。
(4)
前記水平方向速度は、前記傾斜を登る方向に与えられる速度である
(3)に記載の飛行体。
(5)
前記制御部は、前記着陸点の上方に位置する点で前記設定された水平方向速度となるように制御する
(1)から(4)までの何れかに記載の飛行体。
(6)
前記制御部は、前記着陸点の上方に位置する点で、前記傾斜に対応する姿勢となるように制御する
(5)に記載の飛行体。
(7)
前記着陸点の上方に位置する点は、着陸動作を開始する点である
(5)又は(6)に記載の飛行体。
(8)
前記制御部は、前記着陸動作を開始する点から前記着陸点までの間に、機体の傾き及び対地速度の少なくとも一方が許容範囲を超える場合に、機体を上昇させる制御を行う
(7)に記載の飛行体。
(9)
前記傾斜情報を取得する傾斜情報取得部を有する
(1)から(8)までの何れかに記載の飛行体。
(10)
前記傾斜情報取得部は、前記傾斜情報を外部機器から取得する
(9)に記載の飛行体。
(11)
制御部が、着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報に応じた水平方向速度を設定する
制御方法。
(12)
制御部が、着陸点の傾斜に関する傾斜情報を取得し、前記傾斜情報に応じた水平方向速度を設定する
制御方法をコンピュータに実行させるプログラム。
【符号の説明】
【0110】
1,1A,1B,1C・・・ドローン
101・・・制御部、
101A・・・飛行状態管理部
101B・・・飛行プランナ
101C・・・姿勢プランナ
102・・・機体制御部
103・・・センサ部
105・・・傾斜情報取得部
106・・・通信部
PA・・・遷移点
LP・・・着陸点