JP-7855224-B2 - 制御装置、制御方法、及びプログラム
Inventors
- 和田 大地
- 大瀬戸 篤司
- 久田 深作
Assignees
- 国立研究開発法人宇宙航空研究開発機構
Dates
- Publication Date
- 20260508
- Application Date
- 20220530
Claims (7)
- ユーザが装着可能な飛行装置を制御するための制御装置であって、 前記飛行装置に対する前記ユーザの操作が入力されるユーザインターフェースと、 前記飛行装置に推力を発生させる推力源と、 前記飛行装置を制御する処理部と、を備え、 前記処理部は、 前記飛行装置の状態に関する状態データと、 前記ユーザインターフェースに入力された前記飛行装置に対する前記ユーザの操作 に関する操作データ であって、前記推力源の推力及び前記推力の方向が含まれる操作データ とを取得し、 深層強化学習を用いて学習されたモデルに対して、前記取得した状態データ及び操作データを入力し、 前記状態データ及び操作データが入力された ことに応じて 前記モデル によって出力された前記推力及び前記推力の方向 に基づいて、前記飛行装置 の姿勢 を制御する、 制御装置。
- 前記モデルは、ドメイン-ランダマゼイションによって学習されたニューラルネットワークである、 請求項1に記載の制御装置。
- 前記モデルは、記憶層が含まれるリカレントニューラルネットワークである、 請求項1又は2に記載の制御装置。
- 前記 推力源に は、ジェットエンジンが含まれ、 前記状態データには、前記飛行装置の姿勢、位置、速度、及び角速度のうち少なくとも一つが含まれ、 前記操作データには、前記ジェットエンジンの推力及び前記推力の方向が含まれ、 前記処理部は、前記モデルによって出力された前記推力及び前記推力の方向に基づいて、前記飛行装置の姿勢を制御する、 請求項1又は2に記載の制御装置。
- 前記飛行装置には、更に、可変翼が含まれ、 前記操作データには、更に、前記可変翼の操作量が含まれ、 前記処理部は、前記モデルによって出力された前記推力、前記推力の方向、及び前記可変翼の操作量に基づいて、前記飛行装置の姿勢を制御する、 請求項4に記載の制御装置。
- ユーザが装着可能な飛行装置をコンピュータを用いて制御するための制御方法であって、 前記飛行装置の状態に関する状態データと、 ユーザインターフェースに入力された前記飛行装置に対する前記ユーザの操作 に関する操作データ であって、前記飛行装置に推力を発生させる推力源の推力及び前記推力の方向が含まれる操作データ とを取得すること 深層強化学習を用いて学習されたモデルに対して、前記取得した状態データ及び操作データを入力すること、 前記状態データ及び操作データが入力された ことに応じて 前記モデル によって出力された前記推力及び前記推力の方向 に基づいて、前記飛行装置 の姿勢 を制御すること、 を含む制御方法。
- ユーザが装着可能な飛行装置を制御するようコンピュータに実行させるためのプログラムであって、 前記飛行装置の状態に関する状態データと、 ユーザインターフェースに入力された前記飛行装置に対する前記ユーザの操作 に関する操作データ であって、前記飛行装置に推力を発生させる推力源の推力及び前記推力の方向が含まれる操作データ とを取得すること 深層強化学習を用いて学習されたモデルに対して、前記取得した状態データ及び操作データを入力すること、 前記状態データ及び操作データが入力された ことに応じて 前記モデル によって出力された前記推力及び前記推力の方向 に基づいて、前記飛行装置 の姿勢 を制御すること、 を含むプログラム。
Description
本発明は、制御装置、制御方法、及びプログラムに関する。 ジェットやロケットの推力を利用してユーザを飛行させる装着型の飛行装置(飛行器具)が知られている。このような飛行装置は、ポータブル・パーソナル・エアモビリティ・システムとも呼ばれている。一方で、深層強化学習を用いてロボットを制御する技術が知られている(例えば非特許文献1参照)。 X. B. Peng, M. Andrychowicz, W. Zaremba, and P. Abbeel, “Sim-to-real transfer of robotic control with dynamics randomization,” in 2018 IEEE International Conference on Robotics and Automation (ICRA), 2018, pp. 3803-3810. 実施形態に係る飛行装置1の利用場面を説明するための図である。実施形態に係る飛行装置1の構成例を表す図である。実施形態に係る制御装置100の構成例を表す図である。処理部170の一連の処理の流れを示すフローチャートである。深層強化学習モデルMDLの一例を表す図である。 以下、図面を参照し、本発明の制御装置、制御方法、及びプログラムの実施形態について説明する。 [飛行装置の利用場面] 図1は、実施形態に係る飛行装置1の利用場面を説明するための図である。図示のように、飛行装置1はユーザUによって装着される。ユーザUによって装着された飛行装置1は、ユーザUの操縦によって飛行したり、又はオートパイロットのように自律的に飛行したりする。例えば、飛行装置1は、出発地Aから目的地Bまで移動するために利用される。飛行装置1を装着したユーザUが出発地Aから目的地Bまで移動した後、飛行装置1を脱着して目的地Bに降り立った場合、飛行装置1は再度ユーザUが装着するまで目的地Bの周辺でホバリングし続けてもよいし、自律飛行によって目的地Bから出発地Aまで戻ってもよい。飛行装置1は、予め決められた単独のユーザだけでなく、不特定多数のユーザによって利用されてよい。 例えば、飛行装置1は、山岳救助隊が、山のふもとに設置された本部基地(出発地A)から登山道内の救助現場(目的地B)に空路で向かうために利用されてよい。この際、1人目の救助隊員が目的地Bに到着した後、飛行装置1を脱着して目的地Bに降り立ち、その後、飛行装置1が単独で出発地Aまで戻ることで、2人目の救助隊員が飛行装置1を装着して救助現場に向かう。これを繰り返すことで、1つの飛行装置1によって複数の救助隊員を目的地Bに出動させることができる。また、救助隊員が目的地Bに到着した後、飛行装置1を脱着して目的地Bに降り立ち、その後、飛行装置1が単独で出発地Aや給油地Cまで向かい、出発地Aや給油地Cにおいて給油を終えた後に飛行装置1が単独で目的地Bまで戻るようにしてもよい。この場合、出発地Aから目的地Bまでの片道分の燃料しか搭載しておらず、往路しか有人飛行できない場合であっても、途中で飛行装置1単独による給油を挟むことで、目的地Bから出発地Aまでの復路も有人飛行することができる。このように、航続距離をより長くすることもできる。 また、飛行装置1は、前述の用途に加え、地上の要救助者を上空で待機中のヘリコプターまで移送させるために利用されてもよい。更に、飛行装置1は地上に限られず、海上でも利用されてよい。例えば、飛行装置1は、海上遭難者を上空のヘリコプターや海上の船舶まで移送させるために利用されてもよい。 [飛行装置の構成] 図2は、実施形態に係る飛行装置1の構成例を表す図である。図示のように、飛行装置1は、例えば、推力装置10と、翼20と、着脱部30と、制御装置100とを備える。 図2に示すΣWは慣性座標系の一つの地球固定座標ΣWを表し、OWは地球固定座標ΣWの原点を表し、XW軸は真北を表し、YW軸は東を表し、ZW軸は鉛直下方を表している。また、慣性主軸を機体固定座標系として定義した場合、図中XB軸は、飛行装置1の重心を原点としたときの機体の慣性主軸を表し、ZB軸は、機体の下方向を表し、YB軸は、機体の進行方向右側の方向を表している。言い換えれば、XB軸はロール軸を表し、ZB軸はヨー軸を表し、YB軸はピッチ軸を表している。 推力装置10は、燃料11を用いて飛行装置1に推力を発生させる。推力装置10には、例えば、公知のジェットエンジンが好適に用いられてよい。以下、一例として推力装置10には推力偏向可能なジェットエンジンが適用されるものとして説明する。ジェットエンジンの噴射口には、ダクトファンによって生じた噴流の向きを切り替えるための推力偏向機構(例えばパドルやノズル、リングなどを有するスラストベクタリング機構)が設けられており、これら推力偏向機構は、制御装置100によって制御される。 翼20は、飛行装置1の姿勢を維持し、かつ飛行する方向を転換する。翼20による方向の転換は、ユーザUが後述のユーザインターフェース120を操作することで行われてもよいし、制御装置100が行ってもよいし、ユーザUと制御装置100との協働で行われてもよい。 本実施形態において、翼20はリンク機構を備え、鳥の羽根のように折り畳みが可能である。上述の翼幅は、翼20を広げた状態におけるものとする。翼20を折り畳むことができることから、下記の機能を有する。すなわち、高速飛行時においては翼20を折り畳んで小さめにすることで空気抵抗を減らし、低速飛行時及び離着陸時には翼20を大きく展開することで空気力を得る。また、飛行装置1の不使用時には翼20を折り畳むことで、運搬時の機動性に寄与してもよい。また、上記に限らず、翼20は、折り畳むことに代えて伸縮構造を備えることによって展開及び格納が可能な構造としてもよい。あるいは、折りたたみ可能な構造を備えない平板状(つまり固定翼)であってもよい。また、本実施形態に係る翼20は、上述のリンク機構に加えて各種アクチュエータを備え、図2に示すロール軸XB、ヨー軸ZB、ピッチ軸YBまわりに回動することができるものとする。詳細については後述する。 なお飛行装置1は、翼20が設けられている代わりに、手と足の間に布を張ったウィングスーツであってもよいし、上記のような固定翼であってもよい。 着脱部30は、ユーザUが飛行装置1を装着するための部材であり、この部材はユーザUが容易に着脱可能な構造を有する。例えば、着脱部30は、一般的なリュックサックのように肩に掛ける構造と、ユーザUに固定するための留め具と、を備える構造を有してよい。あるいは、各ユーザUが予め着脱部30に対応した形状を備えた取付部材を装備した状態において、ユーザUに装備された取付部材を介して、ユーザUと着脱部30とを適宜固定する構造としてもよい。 制御装置100は、推力装置10の推力を制御したり、その推力の向きを制御したりする。更に、制御装置100は、翼20の形状や向きを制御することで、飛行装置1の姿勢を調整したり、飛行する方向を転換したりする。 [制御装置の構成] 図3は、実施形態に係る制御装置100の構成例を表す図である。図示のように、制御装置100は、例えば、通信インターフェース110と、ユーザインターフェース120と、センサ130と、電源140と、記憶部150と、アクチュエータ160と、処理部170とを備える。 通信インターフェース110は、例えば、WAN(Wide Area Network)などのネットワークを介して、外部装置と無線通信を行う。外部装置は、例えば、飛行装置1を遠隔操作可能なリモートコントローラであってよい。例えば、通信インターフェース110は、外部装置から、飛行装置1がとるべき目標の姿勢や速度などを指示するコマンドを受信してよい。これにより、ユーザUの操縦技能が未熟であって、かつ、制御部230による自律単独飛行が不可能であるような場合に、外部から操縦に熟練したオペレータによる操縦を行うことができる。 また、通信インターフェース110は、外部装置から、目的地Bが変更になった旨を飛行中のユーザUに対して連絡するための情報を受信してもよいし、目的地Bのより詳細な情報をユーザUに対して連絡するための情報を受信してもよい。 また、通信インターフェース110は、外部装置に対して情報を送信してもよい。例えば、通信インターフェース110は、救助現場に関する詳細な情報(座標や高度等)を外部装置に送信してよい。 ユーザインターフェース120は、入力インターフェース120aと、出力インターフェース120bとが含まれる。例えば、入力インターフェース120aは、ジョイスティックやハンドル、ボタン、スイッチ、マイクロフォンなどである。出力インターフェース120bは、例えば、ディスプレイやスピーカなどである。例えば、ユーザUは、入力インターフェース120aのジョイスティック等を操作して、推力装置10の推力やその向きを調整してもよいし、翼20の形状や向きを調整してもよい。また、ユーザUは、入力インターフェース120aのマイクロフォンに対して、飛行装置1がとるべき速度や高度、姿勢などを発話することで、推力装置10の推力やその向きを調整してもよいし、翼20の形状や向きを調整してもよい。 センサ130は、例えば、慣性計測装置である。慣性計測装置は、例えば、三軸式加速度センサと、三軸式ジャイロセンサとを含む。慣性計測装置は、三軸式加速度センサや三軸式ジャイロセンサによって検出された検出値を処理部170に出力する。慣性計測装置による検出値には、例えば、水平方向、垂直方向、奥行き方向の各加速度及び/又は角速度や、ピッチ、ロール、ヨーの各軸の速度(レート)などが含まれる。センサ130には、更に、レーダやファインダ、ソナー、GPS(Global Positioning System)受信機などが含まれてもよい。 電源140は、例えば、リチウムイオン電池などの二次電池である。電源140は、アクチュエータ160や処理部170などの構成要素に電力を供給する。電源140には、更に、ソーラーパネルなどが含まれてもよい。 またアクチュエータ160や処理部170などは、電源140から供給された電力を利用する代わりに、或いは加えて、推力装置10のジェットエンジンによって発電された電力を利用してもよい。 記憶部150は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置により実現される。記憶部150には、ファームウェアやアプリケーションプログラムなどの各種プログラムのほかに、処理部170の演算結果などがログとして格納される。また、記憶部150には、モデル情報152が格納される。モデル情報152は、例えば、ネットワークを介して外部装置から記憶部150にインストールされてもよいし、制御装置100のドライブ装置に接続された可搬型の記憶媒体から記憶部150にインストールされてもよい。モデル情報152については後述する。 アクチュエータ160は、例えば、推力アクチュエータ162と、スイープアクチュエータ164と、フォールドアクチュエータ168とを備える。 推力アクチュエータ162は、推力装置10を駆動させて、飛行装置1に推力を与えたり、その推力の向きを変更したりする。スイープアクチュエータ164は、ヨー軸ZB周りに翼20を回動させる。 処理部170は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などが記憶部150に