(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-31
(45)【発行日】2024-02-08
(54)【発明の名称】航空機のVR訓練システム、航空機のVR訓練方法及び航空機のVR訓練プログラム
(51)【国際特許分類】
G09B 9/08 20060101AFI20240201BHJP
G09B 9/34 20060101ALI20240201BHJP
G09B 9/32 20060101ALI20240201BHJP
G09B 9/46 20060101ALI20240201BHJP
G06T 19/00 20110101ALI20240201BHJP
【FI】
G09B9/08
G09B9/34 A
G09B9/32
G09B9/46
G06T19/00 300B
(21)【出願番号】P 2020110967
(22)【出願日】2020-06-26
【審査請求日】2023-05-10
(73)【特許権者】
【識別番号】000000974
【氏名又は名称】川崎重工業株式会社
(74)【代理人】
【識別番号】100131200
【氏名又は名称】河部 大輔
(72)【発明者】
【氏名】小松 誠司
(72)【発明者】
【氏名】村田 良夫
(72)【発明者】
【氏名】小林 琢巳
(72)【発明者】
【氏名】倉地 修
(72)【発明者】
【氏名】西村 寛史
(72)【発明者】
【氏名】志水 裕一
(72)【発明者】
【氏名】川部 祐司
(72)【発明者】
【氏名】近藤 宏紀
(72)【発明者】
【氏名】新開 颯馬
【審査官】宇佐田 健二
(56)【参考文献】
【文献】特開2018-163427(JP,A)
【文献】米国特許出願公開第2019/0025905(US,A1)
【文献】特開2019-012154(JP,A)
【文献】栗原雅,“ANAやJALなどが相次ぎVRを本格導入 事故や緊急事態を再現し人材育成や業務訓練に活用”,INTERNETARCHIVE waybackmachine,Internet Archive,2019年06月29日,pp.1-10,インターネット<URL: https://web.archive.org/web/20190629010817/https://jbpress.ismedia.jp/articles/-/56845?page=1>,[2023年10月26日検索]
【文献】ふかふか,“VRでリアルタイム共同作業を可能にする『NeosVR』”,MoguraVR News,日本,株式会社Mogura,2016年10月09日,pp.1-4,インターネット<URL: https://www.moguravr.com/neos-vr/>,[2023年10月26日検索]
(58)【調査した分野】(Int.Cl.,DB名)
G09B 9/00- 9/56
G06T 19/00
(57)【特許請求の範囲】
【請求項1】
共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、複数の訓練者のうちの対応する訓練者に前記シミュレーション画像を提供する複数の訓練用端末と、
実空間における前記複数の訓練者の動きを検出するトラッキングシステムと
、
前記複数の訓練者のうち航空機を操縦する訓練者が操作する操縦装置と、
機体端末とを備え、
前記複数の訓練用端末のそれぞれは、
対応する訓練者のアバタである自アバタの前記VR空間における位置及び姿勢を前記トラッキングシステムの検出結果に基づいて演算し、
前記複数の訓練用端末のうちの他の訓練用端末に対応する訓練者のアバタである他アバタの前記VR空間における位置及び姿勢に関する位置情報を前記他の訓練用端末から取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成
し、
前記機体端末は、前記操縦装置を介した操作入力に基づいて、航空機の機体の前記VR空間における位置及び姿勢を演算し、
前記複数の訓練用端末のそれぞれは、前記機体端末から前記機体の前記VR空間における位置及び姿勢に関する位置情報を取得し、取得された前記機体の前記位置情報に基づいて前記機体を前記VR空間に生成する、航空機のVR訓練システム。
【請求項2】
請求項1に記載の航空機のVR訓練システムにおいて、
前記複数の訓練用端末のそれぞれは、前記他の訓練用端末との通信を確立した場合に、前記他の訓練用端末から前記他アバタの前記位置情報を取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成する、航空機のVR訓練システム。
【請求項3】
請求項
1に記載の航空機のVR訓練システムにおいて、
前記機体端末は、前記操縦装置を介した操作入力に基づいて前記機体の移動量及び姿勢の変化量を演算する機体演算端末と、前記複数の訓練用端末のうちの一の訓練用端末であって前記機体演算端末からの前記機体の移動量及び姿勢の変化量に関する移動量情報に基づいて前記機体の前記VR空間における位置及び姿勢を演算する訓練用端末とによって形成されている、航空機のVR訓練システム。
【請求項4】
請求項
1に記載の航空機のVR訓練システムにおいて、
前記機体端末は、前記訓練用端末とは別の端末である、航空機のVR訓練システム。
【請求項5】
請求項
1に記載の航空機のVR訓練システムにおいて、
前記機体端末は、前記複数の訓練用端末のうちの一の訓練用端末である、航空機のVR訓練システム。
【請求項6】
請求項
1乃至
5の何れか1つに記載の航空機のVR訓練システムにおいて、
前記機体端末は、前記操縦装置を介した操作入力に応じて前記機体の前記位置情報を更新し、
前記複数の訓練用端末は、前記機体端末から前記機体の前記位置情報を周期的に取得し、前記機体の前記VR空間における位置及び姿勢を更新する、航空機のVR訓練システム。
【請求項7】
請求項
1乃至
6の何れか1つに記載の航空機のVR訓練システムにおいて、
前記複数の訓練用端末は、前記VR空間において前記機体内にアバタを生成する場合には、前記機体端末から取得された前記機体の前記位置情報に基づいて、前記機体に固定された原点を有するローカル座標系を基準に前記アバタを生成する、航空機のVR訓練システム。
【請求項8】
請求項1乃至
7の何れか1つに記載の航空機のVR訓練システムにおいて、
前記複数の訓練用端末のそれぞれは、前記他の訓練用端末から前記他アバタの前記位置情報を周期的に取得し、前記他アバタの前記VR空間における位置及び姿勢を更新する、航空機のVR訓練システム。
【請求項9】
複数の訓練用端末のそれぞれによって生成される共通のVR空間におけるシミュレーション画像を用いて、前記複数の訓練用端末に対応する複数の訓練者によって模擬訓練を行う、航空機のVR訓練方法であって、
前記複数の訓練用端末のそれぞれが、実空間における前記複数の訓練者の動きを検出するトラッキングシステムの検出結果に基づいて、対応する訓練者のアバタである自アバタの前記VR空間における位置及び姿勢を演算する工程と、
前記複数の訓練用端末のそれぞれが、前記複数の訓練用端末のうちの他の訓練用端末に対応する訓練者のアバタである他アバタの前記VR空間における位置及び姿勢に関する位置情報を前記他の訓練用端末から取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成する工程と
、
機体端末が、前記複数の訓練者のうち航空機を操縦する訓練者が操作する操縦装置を介した操作入力に基づいて、航空機の機体の前記VR空間における位置及び姿勢を演算する工程と、
前記複数の訓練用端末が、前記機体端末から前記機体の前記VR空間における位置及び姿勢に関する位置情報を取得し、取得された前記機体の前記位置情報に基づいて前記機体を前記VR空間に生成する工程とを含む、航空機のVR訓練方法。
【請求項10】
共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、対応する訓練者に前記シミュレーション画像を提供する機能を訓練用端末のコンピュータに実現させるための、航空機のVR訓練プログラムであって、
実空間における訓練者の動きを検出するトラッキングシステムの検出結果に基づいて、対応する訓練者のアバタである自アバタの前記VR空間における位置及び姿勢を演算する機能と、
他の訓練用端末に対応する訓練者のアバタである他アバタの前記VR空間における位置及び姿勢に関する位置情報を前記他の訓練用端末から取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成する機能と
、
前記複数の訓練者のうち航空機を操縦する訓練者が操作する操縦装置を介した操作入力に基づいて演算された、航空機の機体の前記VR空間における位置及び姿勢に関する位置情報を機体端末から取得し、取得された前記機体の前記位置情報に基づいて前記機体を前記VR空間に生成する機能とをコンピュータに実現させる、航空機のVR訓練プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
ここに開示された技術は、航空機のVR訓練システム、航空機のVR訓練方法及び航空機のVR訓練プログラムに関する。
【背景技術】
【0002】
従来より、共通の仮想現実空間、即ち、共通のVR(Virtual Reality)空間において、複数のユーザがVR体験を行うシステムが知られている。例えば、先行文献1には、共通のVR空間において複数のプレーヤがゲームを行うシステムが開示されている。このシステムでは、1つの端末が、実空間における複数のプレーヤのトラッキングを行い、各プレーヤに対応する操作キャラクタをVR空間に生成している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、前述のように、1つの端末で複数のユーザのアバタの動きを演算し、複数のアバタをVR空間に生成し、さらに、生成した画像を複数の表示装置へ提供する構成においては、その端末の処理負荷が大きくなってしまう。
【0005】
ここに開示された技術は、かかる点に鑑みてなされたものであり、その目的とするところは、VR空間にアバタが生成された画像の生成において端末の負荷を低減することにある。
【課題を解決するための手段】
【0006】
ここに開示された航空機のVR訓練システムは、共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、複数の訓練者のうちの対応する訓練者に前記シミュレーション画像を提供する複数の訓練用端末と、実空間における前記複数の訓練者の動きを検出するトラッキングシステムとを備え、前記複数の訓練用端末のそれぞれは、対応する訓練者のアバタである自アバタの前記VR空間における位置及び姿勢を前記トラッキングシステムの検出結果に基づいて演算し、前記複数の訓練用端末のうちの他の訓練用端末に対応する訓練者のアバタである他アバタの前記VR空間における位置及び姿勢に関する位置情報を前記他の訓練用端末から取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成する。
【0007】
ここに開示された航空機のVR訓練方法は、複数の訓練用端末のそれぞれによって生成される共通のVR空間におけるシミュレーション画像を用いて、前記複数の訓練用端末に対応する複数の訓練者によって模擬訓練を行う、航空機のVR訓練方法であって、前記複数の訓練用端末のそれぞれが、実空間における前記複数の訓練者の動きを検出するトラッキングシステムの検出結果に基づいて、対応する訓練者のアバタである自アバタの前記VR空間における位置及び姿勢を演算する工程と、前記複数の訓練用端末のそれぞれが、前記複数の訓練用端末のうちの他の訓練用端末に対応する訓練者のアバタである他アバタの前記VR空間における位置及び姿勢に関する位置情報を前記他の訓練用端末から取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成する工程とを含む。
【0008】
ここに開示された航空機のVR訓練プログラムは、共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、対応する訓練者に前記シミュレーション画像を提供する機能を訓練用端末のコンピュータに実現させるための、航空機のVR訓練プログラムであって、実空間における訓練者の動きを検出するトラッキングシステムの検出結果に基づいて、対応する訓練者のアバタである自アバタの前記VR空間における位置及び姿勢を演算する機能と、他の訓練用端末に対応する訓練者のアバタである他アバタの前記VR空間における位置及び姿勢に関する位置情報を前記他の訓練用端末から取得し、取得された前記他アバタの前記位置情報に基づいて前記他アバタを前記VR空間に生成する機能とをコンピュータに実現させる。
【発明の効果】
【0009】
前記航空機のVR訓練システムによれば、VR空間にアバタが生成された画像の生成において端末の負荷を低減することができる。
【0010】
前記航空機のVR訓練方法によれば、VR空間にアバタが生成された画像の生成において端末の負荷を低減することができる。
【0011】
前記航空機のVR訓練プログラムによれば、VR空間にアバタが生成された画像の生成において端末の負荷を低減することができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、VR訓練システムの構成を示す図である。
【
図2】
図2は、VR訓練システムを用いて訓練を行う実空間の様子を示す概略図である。
【
図3】
図3は、VR空間に生成されるヘリコプタの一例を示す。
【
図4】
図4は、操縦士及び副操縦士の訓練用端末及びその周辺機器のブロック図である。
【
図5】
図5は、ホイストマン及び降下員の訓練用端末及びその周辺機器のブロック図である。
【
図6】
図6は、設定用端末及びその周辺機器のブロック図である。
【
図7】
図7は、操縦士の訓練用端末の訓練処理のフローチャートである。
【
図8】
図8は、操縦士以外の訓練用端末の訓練処理のフローチャートである。
【
図9】
図9は、自アバタが表示されたときのホイストマンの訓練用端末が生成するVR空間の一例である。
【
図10】
図10は、他アバタが表示されたときのホイストマンの訓練用端末が生成するVR空間の一例である。
【
図11】
図11は、自アバタ、他アバタ及び機体の位置及び姿勢が更新されたときのホイストマンの訓練用端末が生成するVR空間の一例である。
【
図12】
図12は、模擬訓練における各種訓練の流れを示すフローチャートである。
【
図13】
図13は、飛行訓練中のホイストマンのシミュレーション画像の一例である。
【
図14】
図14は、降下訓練中のホイストマン又は降下員のシミュレーション画像の一例である。
【
図15】
図15は、降下訓練中の降下員のシミュレーション画像の一例である。
【
図16】
図16は、降下訓練中のVR空間内の配置状況の一例を示す図である。
【
図17】
図17は、降下訓練中の副操縦士のシミュレーション画像の一例である。
【
図18】
図18は、降下訓練中のホイストマンのシミュレーション画像の一例である。
【
図19】
図19は、救助訓練における降下員のシミュレーション画像の一例である。
【
図20】
図20は、救助訓練における降下員のシミュレーション画像の一例である。
【
図21】
図21は、引上げ訓練における降下員のシミュレーション画像の一例である。
【発明を実施するための形態】
【0013】
以下、例示的な実施形態を図面に基づいて詳細に説明する。
図1は、VR訓練システム100の構成を示す図である。
図2は、VR訓練システム100を用いて訓練を行う実空間の様子を示す概略図である。なお、
図2では各端末の図示を省略している。
【0014】
VR訓練システム100は、共通のVR空間における模擬訓練(以下、「VR訓練」と称する)を行うためのシステムである。このVR訓練システム100は、航空機(この例では、ヘリコプタ)におけるVR訓練に用いられる。VR訓練システム100は、共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成し、対応する訓練者9にシミュレーション画像を提供する複数の訓練用端末1と、シミュレーション画像の生成に必要な設定情報を有する設定用端末6とを備えている。シミュレーション画像は、VR空間を形成する画像であり、いわゆるVR画像である。シミュレーション画像は、訓練者9のアバタ及び航空機の機体を含む。
【0015】
複数の訓練用端末1のそれぞれは、互いに通信可能に接続されている。また、複数の訓練用端末1は、設定用端末6と通信可能に接続されている。これらの各端末は、LAN等を介して有線接続されている。なお、各端末は、無線接続であってもよい。
【0016】
模擬訓練は、複数の訓練用端末1にそれぞれ対応する複数の訓練者9による連携訓練である。この例では、複数の訓練者9は、VR訓練システム100を使って、共通のVR空間において救助用ヘリコプタにおける連携訓練を行う。訓練者9には、例えば、操縦士91、副操縦士92、ホイストマン93及び降下員94が含まれている。以下、各訓練者を区別しない場合には、単に「訓練者9」と称する。連携訓練とは、複数の訓練者9が連携して行う訓練である。例えば、連携訓練は、複数の訓練者9によって、要救助者が存在する地点までヘリコプタを飛行させ、要救助者を救出する訓練である。連携訓練の内容には、操縦士9による出発地点から要救助者の場所までのヘリコプタの飛行、飛行中の副操縦士92等による操縦補助及び安全確認、ホイストマン93及び降下員94による降下及び引き上げ等が含まれる。
【0017】
図3は、VR空間に生成されるヘリコプタの一例を示す。例えば、ヘリコプタ8は、機体80と、機体80の上部から右側又は左側へ片持ち状に延びるブーム81と、ブーム81から吊り下げられたホイストケーブル82と、ホイストケーブル82に連結された救助縛帯83と、ホイストケーブル82を巻き上げる巻き上げ機84と、巻き上げ機84を操作するためのペンダント型操作部(図示省略)とを有している。操縦士91のアバタ91A、副操縦士92のアバタ92A及びホイストマン93のアバタ93Aは、機体80内に配置されている。図示は省略するが、降下員94のアバタも、基本的には機体80内に配置されている。
【0018】
訓練用端末1は、訓練者9のための端末である。訓練者9ごとに1台の訓練用端末1が割り当てられている。各訓練用端末1は、対応する訓練者9のためのシミュレーション画像を生成する。例えば、各訓練用端末1は、対応する訓練者9の一人称視点でのシミュレーション画像を生成する。つまり、各訓練用端末1は、共通のVR空間において異なる視点のシミュレーション画像を生成する。この例では、4人の訓練者9のための4台の訓練用端末1が設けられている。
【0019】
各訓練用端末1には、VR表示装置2が接続されている。VR表示装置2は、訓練用端末1によって生成されたシミュレーション画像を表示する。VR表示装置2は、訓練者9の頭部に装着される。例えば、VR表示装置2は、HMD(Head Mounted Display)である。HMDは、ディスプレイを有するゴーグル形状のVR専用の装置であってもよく、あるいは、頭部に装着可能なホルダにスマートフォン又は携帯ゲーム装置を取り付けることによって構成されるものであってもよい。VR表示装置2は、右目用画像及び左目用画像を含む3次元画像を表示する。VR表示装置2は、ヘッドホン28及びマイク29を有していてもよい。訓練者9は、ヘッドホン28及びマイク29を介して、他の訓練者9と対話を行う。また、訓練者9は、シミュレーションに必要な音声をヘッドホン28を介して聞くことができる。
【0020】
VR訓練システム100は、模擬訓練において訓練者9によって使用される操作装置をさらに備えている。訓練者9は、操作装置を訓練内容に応じて操作する。操作装置は、訓練者9及び操作内容に応じて適宜変更される。例えば、VR訓練システム100は、操縦士91のための操縦装置3Aと副操縦士92のための操縦装置3Aとを備えている。VR訓練システム100は、ホイストマン93のための2つのコントローラ3Bと、降下員94のための2つのコントローラ3Bとを備えている。
【0021】
操縦装置3Aは、複数の訓練者9のうち航空機を操縦する訓練者9、即ち、操縦士91又は副操縦士92が操作する。操縦装置3Aは、操縦士91又は副操縦士92の操作入力を受け付ける。具体的には、操縦装置3Aは、操縦桿31、ペダル32及びCPレバー33を有している。操縦桿31、ペダル32及びCPレバー33のそれぞれには、操作量を検出するセンサ(図示省略)が設けられている。各センサは、操作量に応じた操作信号を出力する。操縦装置3Aは、シート34をさらに有している。操縦士91又は副操縦士92が操縦装置3Aを操作することによって、シミュレーション画像中の航空機、具体的にはヘリコプタの位置及び姿勢が変更される。操縦装置3Aは、機体演算端末5に接続されている。つまり、操縦桿31、ペダル32及びCPレバー33からの操作信号は、機体演算端末5に入力される。
【0022】
機体演算端末5は、操縦装置3Aを介した操作入力に基づいて航空機の機体の移動量及び姿勢の変化量を演算する。機体演算端末5は、訓練用端末1の演算負荷軽減のためにVR訓練システム100に設けられた端末である。機体演算端末5は、複数の訓練用端末1及び設定用端末6のそれぞれと通信可能に接続されている。機体演算端末5と複数の訓練用端末1及び設定用端末6とは、LAN等を介して有線接続されている。なお、機体演算端末5と複数の訓練用端末1及び設定用端末6とは、無線接続されていてもよい。
【0023】
機体演算端末5は、機体の移動量及び姿勢の変化量に関する移動量情報を操縦士91の訓練用端末1及び副操縦士92の訓練用端末1の少なくとも一方へ送信する。移動量情報を受け取った訓練用端末1は、移動量情報に基づいて機体80のVR空間における位置及び姿勢を演算する。つまり、機体演算端末5と移動量情報を受け取る訓練用端末1とは、操縦装置3Aを介した操作入力に基づいて航空機の機体80のVR空間における位置及び姿勢を演算する機体端末50を形成する。
【0024】
コントローラ3Bは、可搬型のデバイスである。訓練者9(即ち、ホイストマン93及び降下員94)は、右手と左手のそれぞれでコントローラ3Bを携帯する。コントローラ3Bは、モーショントラッカ機能を有する。すなわち、コントローラ3Bは、後述するトラッキングシステム4によってセンシングされる。コントローラ3Bは、訓練者9の入力を受け付ける操作スイッチ35(
図5参照)を有している。操作スイッチ35は、訓練者9からの入力に応じた操作信号を出力する。コントローラ3Bは、ホイストマン93又は降下員94の訓練用端末1に接続されている。つまり、操作スイッチ35からの操作信号は、対応するホイストマン93又は降下員94の訓練用端末1に入力される。
【0025】
設定用端末6は、初期設定を行う権限を有する管理者(例えば、教官)からの設定情報の入力を受け付ける。設定用端末6は、入力された設定情報を初期設定として設定する。設定用端末6は、設定情報を訓練用端末1に送信すると共に、模擬訓練の開始通知を訓練用端末1に送信する。また、設定用端末6は、訓練におけるシミュレーション画像を表示する。ただし、本実施形態では、設定用端末6は、シミュレーション画像を生成していない。設定用端末6は、訓練用端末1によって生成されたシミュレーション画像を取得して表示する。これにより、訓練者9以外の者(例えば、教官)が訓練のシミュレーションを監視することができる。なお、設定用端末6は、各訓練用端末1から情報を取得して各訓練者9のシミュレーション画像を生成してもよい。
【0026】
さらに、VR訓練システム100は、トラッキングシステム4をさらに有している。トラッキングシステム4は、実空間における複数の訓練者9の動きを検出する。トラッキングシステム4は、VR表示装置2及びコントローラ3Bをセンシングする。トラッキングシステム4は、この例では、アウトサイドイン方式のトラッキングシステムである。
【0027】
具体的には、トラッキングシステム4は、複数のトラッキングセンサ41と、トラッキングセンサ41からの信号を受信する通信装置42(
図4,5参照)とを有している。トラッキングセンサ41は、例えば、カメラである。トラッキングセンサ41は、訓練者9が存在する実空間をステレオ撮影できるように配置されている。VR表示装置2及びコントローラ3Bのそれぞれには、発光式のトラッキングマーカが設けられている。複数のトラッキングセンサ41は、VR表示装置2及びコントローラ3Bのそれぞれのトラッキングマーカをステレオ撮影する。
【0028】
トラッキングシステム4は、複数の訓練者9に関して共通である。つまり、共通のトラッキングシステム4によって、複数の訓練者9のVR表示装置2及びコントローラ3Bがセンシング、即ち、トラッキングされる。
【0029】
トラッキングセンサ41によって撮影された画像データは、通信装置42に送信される。通信装置42は、受信した画像データを、訓練用端末1へ送信する。
【0030】
訓練用端末1のそれぞれは、トラッキングシステム4からの画像データを画像処理することによって、対応する訓練者9のアバタのVR空間における位置及び姿勢を求める。
【0031】
それに加えて、ホイストマン93及び降下員94の訓練用端末1のそれぞれは、トラッキングシステム4からの画像データを画像処理することによって、対応する訓練者9のコントローラ3Bのトラッキングマーカに基づいて、対応する訓練者9のアバタのVR空間における両手の位置及び姿勢を求める。
【0032】
図4は、操縦士91及び副操縦士92の訓練用端末1及びその周辺機器のブロック図である。
【0033】
操縦士91及び副操縦士92の訓練用端末1には、VR表示装置2、機体演算端末5及びトラッキングシステム4が接続されている。機体演算端末5には、操縦装置3Aが接続されている。
【0034】
訓練用端末1は、入力部11と、通信部12と、記憶部13と、処理部14とを有している。
【0035】
入力部11は、訓練者9からの操作入力を受け付ける。入力部11は、操作入力に応じた入力信号を処理部14へ出力する。例えば、入力部11は、キーボード、又はマウスである。
【0036】
通信部12は、他の端末等と通信を行うインターフェースである。例えば、通信部12は、ケーブルモデム、ソフトモデム又は無線モデムで形成されている。なお、後述する通信部22、通信部51及び通信部63も、通信部12と同様に構成されている。通信部12は、他の訓練用端末1、機体演算端末5及び設定用端末6等の他の端末との通信を実現する。
【0037】
記憶部13は、各種プログラム及び各種データを記憶する、コンピュータに読み取り可能な記憶媒体である。記憶部13は、ハードディスク等の磁気ディスク、CD-ROM及びDVD等の光ディスク、又は半導体メモリによって形成されている。なお、後述する記憶部52及び記憶部64も、記憶部13と同様に構成されている。
【0038】
記憶部13は、シミュレーションプログラム131、フィールド定義データ132、アバタ定義データ133、オブジェクト定義データ134及び音声データ135等を記憶している。
【0039】
シミュレーションプログラム131は、共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、対応する訓練者9にシミュレーション画像を提供する各種機能をコンピュータ、即ち、処理部14に実現させるためのプログラムである。シミュレーションプログラム131は、処理部14によって読み出され、実行される。
【0040】
フィールド定義データ132は、訓練が行われるフィールドを定義する。例えば、フィールド定義データ132は、フィールドの広さ、フィールドの地形、及びフィールド内の障害物等のオブジェクトを定義する。フィールド定義データ132は、訓練が行われるフィールドの種類ごとに用意されている。
【0041】
アバタ定義データ133は、自己のアバタ(以下、「自アバタ」と称する)及び他の訓練者9のアバタ(以下、「他アバタ」と称する)を定義する。アバタ定義データ133は、アバタの種類ごとに用意されている。自アバタのアバタ定義データ133は、自アバタのCGデータ(例えば、ポリゴンデータ)だけでなく、初期位置情報(VR空間における初期位置及び初期姿勢に関する情報)も含んでいる。
【0042】
ここで、アバタの位置情報(初期位置情報も含む)は、位置に関する情報としてVR空間における直交三軸の位置座標(x,y,z)と、姿勢に関する情報として各軸回りの回転角(Φ,θ,ψ)とを含む。後述するヘリコプタの機体80等のオブジェクトの位置情報についても同様である。
【0043】
オブジェクト定義データ134は、訓練に必要な各種オブジェクトを定義する。オブジェクト定義データ134は、オブジェクトの種類ごとに用意されている。例えば、ヘリコプタの機体80、ブーム81、ホイストケーブル82、救助縛帯83、巻き上げ機84、ペンダント型操作部、要救助者88及び地表等のオブジェクト定義データ134が用意されている。
【0044】
音声データ135は、ヘリコプタの飛行音等のシミュレーション中の効果音に関するデータである。
【0045】
処理部14は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)及び/又はDSP(Digital Signal Processor)等の各種プロセッサと、VRAM、RAM及び/又はROM等の各種半導体メモリとを有している。なお、後述する処理部25、処理部53及び処理部65も、処理部14と同様の構成である。
【0046】
処理部14は、記憶部13に記憶された各種プログラムを読み出して実行することによって、訓練用端末1の各部を統括的に制御すると共に、シミュレーション画像を提供するための各種機能を実現する。具体的には、処理部14は、通信制御部141と、設定部142と、トラッキング制御部144と、音声生成部145と、シミュレーション進行部146とを機能ブロックとして有する。
【0047】
通信制御部141は、通信部12を介した外部の端末又は装置との通信処理を実行する。通信制御部141は、データ通信に関するデータ処理を実行する。
【0048】
設定部142は、シミュレーション画像の生成に関する設定情報を設定用端末6から受信して、設定情報を設定する。設定部142は、各種設定情報を初期設定として設定する。
【0049】
トラッキング制御部144は、対応する訓練者9のアバタである自アバタのVR空間における位置及び姿勢をトラッキングシステム4の検出結果に基づいて演算する。トラッキング制御部144は、通信装置42を介して入力されるトラッキングセンサ41からの画像データに基づいて、トラッキングに関する各種演算処理を実行する。具体的には、トラッキング制御部144は、画像データを画像処理することによって、対応する訓練者9のVR表示装置2のトラッキングマーカを追跡し、実空間における訓練者9の位置及び姿勢を求める。トラッキング制御部144は、実空間における訓練者9の位置及び姿勢を所定の座標対応関係に基づいて、VR空間における自アバタの位置及び姿勢を求める。トラッキング制御部144によって求められたVR空間における自アバタの位置及び姿勢に関する情報を位置情報と称する。以下、「アバタの位置及び姿勢」並びに「アバタの位置」は、それぞれ「VR空間における位置及び姿勢」並びに「VR空間における位置」を意味する。
【0050】
音声生成部145は、音声データ135を記憶部13から読み出し、シミュレーションの進行に応じた音声を生成する。
【0051】
シミュレーション進行部146は、シミュレーションの進行に関する各種演算処理を実行する。例えば、シミュレーション進行部146は、シミュレーション画像を生成する。シミュレーション進行部146は、設定部142の初期設定に基づいてフィールド定義データ132及びオブジェクト定義データ134を記憶部13から読み出し、フィールド画像にオブジェクト画像が合成されたシミュレーション画像を生成する。
【0052】
また、シミュレーション進行部146は、自アバタに対応するアバタ定義データ133を記憶部13から読み出し、自アバタの位置情報に基づいて自アバタ(例えば、自アバタの手足)をVR空間に合成してシミュレーション画像を生成する。ここで、操縦士91及び副操縦士92の自アバタは、VR空間内の操縦席及び副操縦席に着席した状態が維持されていてもよい。すなわち、シミュレーション画像において、操縦士91及び副操縦士92の自アバタの、機体80内の位置は固定であり、自アバタの頭部のみが動作(回転及び傾動)してもよい。その場合、操縦士91及び副操縦士92の訓練用端末1のシミュレーション進行部146は、自アバタの画像を生成しなくてもよい。
【0053】
さらに、シミュレーション進行部146は、複数の訓練用端末1のうちの他の訓練用端末1に対応する訓練者9のアバタである他アバタの位置情報を他の訓練用端末1から取得し、取得された位置情報に基づいて他アバタをVR空間に生成する。具体的には、シミュレーション進行部146は、他アバタに対応するアバタ定義データ133を記憶部13から読み出し、他の訓練用端末1から取得した他アバタの位置情報に基づいて他アバタをVR空間に合成してシミュレーション画像を生成する。
【0054】
シミュレーション進行部146は、設定用端末6から模擬訓練の開始通知を受信して模擬訓練を開始する。すなわち、シミュレーション進行部146は、シミュレーション画像における訓練を開始する。シミュレーション進行部146は、模擬訓練中は、連携訓練のシミュレーションの進行を制御する。
【0055】
具体的には、シミュレーション進行部146は、後述する機体演算端末5からの移動量情報(操縦装置3Aの操作入力に応じた機体の移動量及び姿勢の変化量に関する情報)に基づいて機体80のVR空間における位置及び姿勢を演算する。シミュレーション進行部146は、機体演算端末5からの機体の移動量及び姿勢の変化量を、VR空間の座標系における機体80の移動量及び姿勢の変化量に変換し、機体80のVR空間における位置及び姿勢を演算する。これにより、操縦装置3Aの操作入力に応じて、VR空間においてヘリコプタが移動、即ち、飛行する。
【0056】
このVR空間における機体80の位置及び姿勢の演算は、操縦士91及び副操縦士92の訓練用端末1のうち、機体の操縦機能が有効となっている方の訓練用端末1が実行する。操縦士91及び副操縦士92の訓練用端末1のうち何れの訓練用端末1の操縦機能を有効とするかは切り替え可能となっている。通常は、操縦士91の訓練用端末1の操縦機能が有効に設定されている。訓練の状況に応じて、副操縦士92の訓練用端末1の操縦機能が有効に設定される場合もある。
【0057】
また、シミュレーション進行部146は、トラッキング制御部144からの位置情報に基づいてVR空間内で自アバタを動作させ、他の訓練端末1から受信する他アバタの位置情報に基づいてVR空間内で他アバタを動作させる。なお、操縦士91及び副操縦士92の自アバタは、VR空間内の操縦席及び副操縦席に固定されている場合には、自アバタの頭部のみが動作(回転及び傾動)する。ただし、操縦士91及び副操縦士92の自アバタは、頭部のみが動作するだけでなく、他アバタと同様にトラッキング制御部144からの位置情報に基づいてVR空間内で動作してもよい。
【0058】
さらに、シミュレーション進行部146は、トラッキング制御部144からの位置情報に基づく操縦士91又は副操縦士92の頭部の向きの変更に応じて、表示させるシミュレーション画像のフレームの位置又は角度を変更する。シミュレーション進行部146は、生成したシミュレーション画像をVR表示装置2及び設定用端末6へ出力する。このとき、シミュレーション進行部146は、必要に応じて、音声生成部145によって生成された音声をヘッドホン28及び設定用端末6へ出力する。
【0059】
VR表示装置2は、入力部21と、通信部22と、記憶部23と、表示部24と、処理部25とを有している。
【0060】
入力部21は、訓練者9からの操作入力を受け付ける。入力部21は、操作入力に応じた入力信号を処理部25へ出力する。例えば、入力部21は、操作ボタン又はスライドスイッチ等である。
【0061】
通信部22は、訓練用端末1との通信を実現するインターフェースである。
【0062】
記憶部23は、各種プログラム及び各種データを記憶する、コンピュータに読み取り可能な記憶媒体である。記憶部23は、半導体メモリ等によって形成されている。記憶部23は、シミュレーション画像を表示部24で表示するための各種機能をコンピュータ、即ち、処理部25に実現させるためのプログラム及び各種データが記憶されている。
【0063】
表示部24は、例えば、液晶ディスプレイ又は有機ELディスプレイである。表示部24は、右目用画像と左目用画像とを表示することができる。
【0064】
処理部25は、記憶部23に記憶された各種プログラムを読み出して実行することによって、VR表示装置2の各部を統括的に制御すると共に、シミュレーション画像を表示部24に表示させるための各種機能を実現する。
【0065】
機体演算端末5は、通信部51と、記憶部52と、処理部53とを有している。機体演算端末5には、操縦装置3Aから出力される操作信号が入力される。具体的には、操縦桿31、ペダル32及びCPレバー33のそれぞれから、スイッチの押下及び操作量に応じた操作信号が入力される。機体演算端末5は、操縦装置3Aの操作量に応じた機体の移動量及び姿勢の変化量を演算し、移動量情報を出力する。
【0066】
通信部51は、訓練用端末1等との通信を実現するインターフェースである。
【0067】
記憶部52は、演算プログラム521等を記憶している。演算プログラム521は、VR空間における航空機の機体80の位置及び姿勢を演算するための各種機能をコンピュータ、即ち、処理部53に実現させるためのプログラムである。演算プログラム521は、処理部53によって読み出され、実行される。
【0068】
処理部53は、記憶部52に記憶された各種プログラムを読み出して実行することによって、機体演算端末5の各部を統括的に制御すると共に、機体の移動量及び姿勢の変化量を演算するための各種機能を実現する。具体的には、処理部53は、通信制御部531と、機体演算部532とを機能ブロックとして有する。
【0069】
通信制御部531は、通信部51を介した訓練用端末1等との通信処理を実行する。通信制御部531は、データ通信に関するデータ処理を実行する。
【0070】
機体演算部532は、操縦装置3Aからの操作信号に基づいて機体の移動量及び姿勢の変化量を演算する。詳しくは、機体演算部532は、操縦桿31、ペダル32及びCPレバー33からの各操作信号に基づいて、操縦桿31、ペダル32及びCPレバー33のスイッチの押下及び操作量に応じた機体の移動量及び姿勢の変化量を演算する。機体演算部532は、演算した機体の移動量及び姿勢の変化量に関する移動量情報を訓練用端末1へ送信する。
【0071】
図5は、ホイストマン93及び降下員94の訓練用端末1及びその周辺機器のブロック図である。
【0072】
ホイストマン93及び降下員94の訓練用端末1には、VR表示装置2、コントローラ3B及びトラッキングシステム4が接続されている。コントローラ3Bは、操作スイッチ35を有している。操作スイッチ35の操作信号は、訓練用端末1に入力される。
【0073】
ホイストマン93及び降下員94の訓練用端末1の基本的な構成は、操縦士91及び副操縦士92の訓練用端末1と同様である。ただし、ホイストマン93及び降下員94と操縦士91及び副操縦士92との訓練内容の違いに起因して、ホイストマン93及び降下員94の訓練用端末1の処理内容は、操縦士91及び副操縦士92の訓練用端末1と少し異なる。
【0074】
詳しくは、トラッキング制御部144は、対応する訓練者9のアバタである自アバタのVR空間における位置及び姿勢をトラッキングシステム4の検出結果に基づいて演算する。トラッキング制御部144は、通信装置42を介して入力されるトラッキングセンサ41からの画像データに基づいて、トラッキングに関する各種演算処理を実行する。具体的には、トラッキング制御部144は、画像データを画像処理することによって、対応する訓練者9のVR表示装置2のトラッキングマーカを追跡し、実空間における訓練者9の位置及び姿勢を求める。トラッキング制御部144は、実空間における訓練者9の位置及び姿勢を所定の座標対応関係に基づいて、自アバタの位置及び姿勢を求める。それに加えて、トラッキング制御部144は、画像データを画像処理することによって、コントローラ3Bのトラッキングマーカを追跡し、実空間における訓練者9の両手の位置及び姿勢を求める。トラッキング制御部144は、実空間における訓練者9の両手の位置及び姿勢を所定の座標対応関係に基づいて、自アバタの両手の位置及び姿勢を求める。つまり、ホイストマン93及び降下員94の訓練用端末1のトラッキング制御部144は、自アバタの位置及び姿勢、並びに、自アバタの両手の位置及び姿勢を位置情報として求める。
【0075】
シミュレーション進行部146がシミュレーション画像を生成し、連携訓練のシミュレーションの進行を制御することは、操縦士91及び副操縦士92の訓練用端末1と同様である。ただし、操縦席及び副操縦席に着席したままの操縦士91及び副操縦士92と異なり、ホイストマン93及び降下員94は、機内及び機外で移動が可能である。そのため、シミュレーション進行部146は、VR空間内で自アバタを自由に移動させる。また、シミュレーション進行部146は、トラッキング制御部144からの位置情報に基づいて、ホイストマン93又は降下員94の頭部の位置又は向きの変更に応じて、表示させるシミュレーション画像のフレームの位置又は角度を変更する。それに加えて、シミュレーション進行部146は、コントローラ3Bの操作スイッチ35からの操作信号に応じて、VR空間内で自アバタに操作信号に応じた処理を実行させる。ここで、操作信号に応じた処理は、例えば、ヘリコプタのドアの開閉やペンダント型操作部の操作等である。
【0076】
図6は、設定用端末6及びその周辺機器のブロック図である。
【0077】
設定用端末6は、表示部61と、入力部62と、通信部63と、記憶部64と、処理部65とを有している。
【0078】
表示部61は、例えば、液晶ディスプレイ、有機ELディスプレイ、又は、プロジェクタ及びスクリーンである。
【0079】
入力部62は、初期設定を行う権限を有する管理者(例えば、教官)の入力操作を受け付ける。入力部62は、例えば、キーボード又はマウスである。
【0080】
通信部63は、訓練用端末1等との通信を実現するインターフェースである。
【0081】
記憶部64は、開始プログラム641等を記憶している。開始プログラム641は、共通のVR空間における模擬訓練を行うためのシミュレーション画像を、対応する訓練者に提供する複数の訓練用端末1に模擬訓練を開始させる各種機能をコンピュータ、即ち、処理部65に実現させるためのプログラムである。開始プログラム641は、処理部65によって読み出され、実行される。
【0082】
処理部65は、記憶部64に記憶された各種プログラムを読み出して実行することによって、設定用端末6の各部を統括的に制御すると共に、シミュレーションに関する初期設定を行うための各種機能を実現する。具体的には、処理部65は、通信制御部651と、設定部652と、監視部654とを機能ブロックとして有する。
【0083】
通信制御部651は、通信部63を介した外部の端末又は装置との通信処理を実行する。通信制御部651は、データ通信に関するデータ処理を実行する。
【0084】
設定部652は、シミュレーション画像の生成に必要な初期設定に関する各種設定情報のユーザからの入力を受け付けると共に、入力された設定情報を初期設定として設定する。設定部652は、記憶部64に記憶された設定入力画面を表示部61に表示させる。設定部652は、設定入力画面に対して入力部62を介して入力された設定情報を初期設定として記憶部64に記憶させる。また、設定部652は、設定情報を複数の訓練用端末1に送信する。
【0085】
監視部654は、各訓練用端末1からシミュレーション画像を受け取る。つまり、監視部654は、それぞれの訓練者9に応じた一人称視点のシミュレーション画像を受け取る。監視部654は、何れか1人の訓練者9の一人称視点のシミュレーション画像を表示部61に表示させる。あるいは、監視部654は、全ての訓練者9の一人称視点のシミュレーション画像を表示部61に分割表示させる。全ての一人称視点のシミュレーション画像を分割表示させた場合、監視部654は、入力部62を介した選択操作に応じて、何れか1つの一人称視点のシミュレーション画像を表示部61に表示させてもよい。
【0086】
VR訓練システム100において訓練を開始する際には、まず設定用端末6において初期設定が行われる。
【0087】
詳しくは、表示部61に初期設定を行うための設定入力画面が表示され、教官等の管理者は、設定入力画面に対して入力部62を介して設定情報を入力する。
【0088】
例えば、設定部652は、接続される端末の個数を特定する情報(以下、「端末数情報」と称する)、接続される端末のIPアドレスを特定する情報(以下、「端末アドレス情報」と称する)、訓練のシミュレーションが実施される訓練フィールドを特定する情報(以下、「フィールド情報」と称する)、ヘリコプタのブームの向き(即ち、ブームがヘリコプタの左右のどちら側に延びているか)を特定する情報(以下、「ブーム情報」と称する)、及び、訓練フィールド内における要救助者の位置を特定する情報(以下、「要救助者情報」と称する)が設定情報として入力される。端末数情報及び端末アドレス情報によって、訓練に参加する訓練者が特定される。訓練フィールドとしては山間部等の各種フィールドが用意されている。また、フィールド情報には、予め設定された、訓練フィールドにおけるヘリコプタの初期位置(即ち、ヘリコプタのローカル座標系の原点の初期位置)も含まれている。設定部652は、これらの端末数情報、端末アドレス情報、フィールド情報、ブーム情報及び要救助者情報を初期設定として設定する。なお、ヘリコプタの初期位置は、フィールド情報に含まれるのではなく、初期設定の項目として入力されてもよい。
【0089】
初期設定が完了後に、設定用端末6は、訓練用端末1から接続要求を受信すると、通信の確立完了を示す接続完了応答と併せて設定情報を訓練用端末1に送信する。これを受けて、各訓練用端末1では初期設定が行われる。その後、各訓練用端末1において訓練が開始される。設定用端末6では、監視部654が表示部61にVR空間におけるシミュレーション画像を表示させる。これにより、教官等の管理者は、表示部61を観ながら、訓練者9による連携訓練を監視することができる。
【0090】
図7は、操縦士91及び副操縦士92の訓練用端末1のうち操縦機能が有効になっている訓練用端末1の訓練処理のフローチャートである。この例では、操縦士91の訓練用端末1の操縦機能が有効となっている。
【0091】
まず、ステップSa1において、処理部14は、初期設定を行う。詳しくは、操縦士91は、訓練用端末1の入力部11又はVR表示装置2の入力部21を介して設定用端末6との接続要求を入力する。シミュレーション進行部146は、設定用端末6に接続要求を送信する。それに対して、シミュレーション進行部146は、設定用端末6から接続完了応答を受信することによって、設定用端末6との通信が確立される。このとき、シミュレーション進行部146は、設定用端末6から初期設定の設定情報も受信する。設定部142は、受信された設定情報をシミュレーションの初期設定として設定する。
【0092】
続いて、シミュレーション進行部146は、ステップSa2において、他端末との通信を確立する。具体的には、訓練者9は、他端末との接続を要求する入力を、訓練用端末1の入力部11又はVR表示装置2の入力部21を介して行う。それに応じて、シミュレーション進行部146は、他の訓練用端末1及び機体演算端末5に接続要求を送信する。その後、シミュレーション進行部146は、他の訓練用端末1及び機体演算端末5から接続完了応答を受信することによって、他の訓練用端末1及び機体演算端末5との通信が確立される。シミュレーション進行部146は、全ての他の訓練用端末1及び機体演算端末5との通信を確立する。
【0093】
他の訓練用端末1との通信が確立されると、ステップSa3において、シミュレーション進行部146は、他の訓練用端末1へ自アバタの初期位置情報(即ち、位置座標(x,y,z)及び回転角(Φ,θ,ψ))を送信する。それと共に、シミュレーション進行部146は、他の訓練用端末1から他アバタの初期位置情報(即ち、位置座標(x,y,z)及び回転角(Φ,θ,ψ))を受信する。また、アバタが機体80内に存在する場合には、初期位置情報は、VR空間の絶対座標系ではなく、機体80に固定された原点を有する機体80におけるローカル座標系を基準とした位置情報である。つまり、初期位置は、VR空間において、機体80に対する相対位置で表される。
【0094】
他アバタの初期位置情報を受信すると、ステップSa4において、シミュレーション進行部146は、他アバタを表示させる。詳しくは、シミュレーション進行部146は、初期設定に基づいてフィールド定義データ132、アバタ定義データ133及びオブジェクト定義データ134を記憶部13から読み出し、フィールド画像にオブジェクト画像及び他アバタ画像が合成されたVR空間におけるシミュレーション画像を生成する。このとき、シミュレーション進行部146は、ステップSa3で受信した初期位置情報に基づいて他アバタを配置する。シミュレーション進行部146は、VR空間において機体80内にアバタを生成する場合には、機体80のローカル座標系を基準にアバタを生成する。なお、機体80は、VR空間の絶対座標系を基準に生成される。シミュレーション進行部146は、生成したシミュレーション画像をVR表示装置2に出力、即ち、提供する。それに応じて、VR表示装置2は、シミュレーション画像を表示する。
【0095】
このステップSa2~Sa4によれば、シミュレーション進行部146は、他の訓練用端末1との通信を確立した場合に、他の訓練用端末1から他アバタの位置情報を取得し、取得された位置情報に基づいて他アバタをVR空間に生成する。これらステップSa1~Sa4は、訓練の初期設定に関する処理である。
【0096】
初期設定に関する処理が完了すると訓練が開始され、ステップSa5以降の処理が実行される。シミュレーション進行部146は、ステップSa5において、機体80の位置情報を他の訓練用端末1へ送信する。また、シミュレーション進行部146は、ステップSa6において、他の訓練用端末1へ自アバタの位置情報を送信する。それと共に、シミュレーション進行部146は、他の訓練用端末1から他アバタの位置情報を受信する。シミュレーション進行部146は、ステップSa7において、他アバタの位置及び姿勢を更新する。
【0097】
シミュレーション進行部146は、他アバタの位置及び姿勢を更新するに際し、他の訓練用端末1から他アバタの位置情報を取得するので、処理部14の演算負荷を低減することができる。詳しくは、トラッキングシステム4は複数の訓練者9のVR表示装置2及びコントローラ3Bをトラッキングしているため、トラッキング制御部144は、トラッキングシステム4からの画像データに基づいて他アバタの位置及び姿勢を演算することもできる。しかし、他アバタの位置及び姿勢は、他アバタに対応する他の訓練用端末1によって演算される。シミュレーション進行部146は、他の訓練用端末1によって演算された、他アバタの位置情報を取得し、その位置情報に基づいて他アバタの位置及び姿勢を更新する。このように、処理部14は、トラッキングシステム4の検出結果(即ち、画像データ)に基づいて他アバタの位置及び姿勢を演算する必要がないので、演算負荷を低減することができる。
【0098】
続いて、シミュレーション進行部146は、ステップSa8において、シミュレーションを実行中か、即ち、シミュレーションが継続されているか否かを判定する。シミュレーションが終了されている場合には、処理部14は処理を終了する。一方、シミュレーションが継続されている場合には、シミュレーション進行部146は、ステップSa9において、所定時間が経過したか否かを判定する。所定時間は、機体80及び他アバタの位置及び姿勢を更新する周期に相当し、予め設定されている。この所定時間、即ち、更新周期は、複数の訓練用端末1で共通である。所定時間が経過していない場合には、シミュレーション進行部146は、ステップSa8,Sa9を繰り返す。その間、シミュレーション進行部146は、シミュレーションの進行に関する各種演算処理を実行する。例えば、シミュレーション進行部146は、操縦装置3Aを介した操作入力に応じて機体演算端末5によって更新される機体の移動量情報を取得し、移動量情報に基づいてVR空間における機体80の位置及び姿勢を更新する。また、シミュレーション進行部146は、トラッキング制御部144からの位置情報に基づいて、自アバタの位置及び姿勢を更新する。
【0099】
所定時間が経過した場合には、シミュレーション進行部146は、ステップSa5の処理に戻る。このときには、前回のステップSa5のときから機体80の位置が更新されている可能性がある。つまり、シミュレーション進行部146は、機体80の最新の位置情報を他の訓練用端末1へ送信する。同様に、シミュレーション進行部146は、ステップSa6において、他の訓練用端末1へ自アバタの最新の位置情報を送信する。それと共に、シミュレーション進行部146は、他の訓練用端末1から他アバタの最新の位置情報を受信する。シミュレーション進行部146は、ステップSa7において、他アバタの位置及び姿勢を更新する。その後、シミュレーション進行部146は、ステップSa8,Sa9の処理を行う。
【0100】
このように、シミュレーション進行部146は、ステップSa5~Sa9の処理を繰り返すことによって、他の訓練用端末1から他アバタの位置情報を周期的に取得し、他アバタのVR空間における位置及び姿勢を更新する。このとき、シミュレーション進行部146は、機体80及び自アバタの位置及び姿勢も随時更新し、機体80及び自アバタの最新の位置情報を他の訓練用端末1へ周期的に送信する。つまり、機体80及び自アバタの位置及び姿勢を更新しつつ、機体80及び自アバタの最新の位置情報を他の訓練用端末1へ周期的に送信すると共に、他アバタの最新の位置情報を受信して他アバタの位置及び姿勢を周期的に更新する。
【0101】
図8は、ホイストマン93及び降下員94の訓練用端末1の訓練処理のフローチャートである。以下の訓練処理は、ホイストマン93及び降下員94の訓練用端末1のそれぞれにおいて独立して実施される。なお、操縦士91及び副操縦士92の訓練用端末1のうち操縦機能が有効になっていない訓練用端末1(この例では、副操縦士92の訓練用端末1)は、ホイストマン93及び降下員94の訓練用端末1と同様の処理を行う。
図9~11は、ホイストマン93の訓練用端末1が生成するVR空間の一例である。
図9~11は、説明の便宜上、VR空間を三人称視点で表すものであり、VR表示装置2に表示される一人称視点の画像とは異なる。
【0102】
まず、ステップSb1において、処理部14は、初期設定を行う。詳しくは、訓練者9(ホイストマン93又は降下員94)は、訓練用端末1の入力部11又はVR表示装置2の入力部21を介して設定用端末6との接続要求を入力する。シミュレーション進行部146は、設定用端末6に接続要求を送信する。それに対して、シミュレーション進行部146は、設定用端末6から接続完了応答を受信することによって、設定用端末6との通信が確立される。このとき、シミュレーション進行部146は、設定用端末6から初期設定の設定情報も受信する。設定部142は、受信された設定情報をシミュレーションの初期設定として設定する。
【0103】
次に、シミュレーション進行部146は、ステップSb2において、自アバタを表示させる。詳しくは、シミュレーション進行部146は、初期設定に基づいてフィールド定義データ132、アバタ定義データ133及びオブジェクト定義データ134を記憶部13から読み出し、フィールド画像にオブジェクト画像及び自アバタ画像が合成されたVR空間におけるシミュレーション画像を生成する。シミュレーション進行部146は、生成したシミュレーション画像をVR表示装置2に出力、即ち、提供する。それに応じて、VR表示装置2は、シミュレーション画像を表示する。このとき、自アバタが機体80内に存在する場合には、自アバタのアバタ定義データ133に含まれる初期位置情報は、VR空間における絶対座標系ではなく、機体80に固定された原点を有する機体80におけるローカル座標系を基準とした位置情報である。つまり、初期位置は、VR空間において、機体80に対する相対位置で表される。
【0104】
なお、操縦士91及び副操縦士92のアバタは、VR空間においては頭部のみが動作し、頭部以外の身体は固定なので、操縦士91及び副操縦士92の訓練用端末1のうち操縦機能が有効となっていない訓練用端末1は、シミュレーション画像において自アバタ画像を生成しない。すなわち、当該訓練用端末1は、表示させるシミュレーション画像のフレームの位置又は角度を変化させるため、及び、自アバタの位置情報(具体的には、頭部の位置情報)を他の訓練用端末1に送信するために、VR空間に自アバタを生成するものの、自アバタをシミュレーション画像としては生成しない。ただし、当該訓練用端末1は、自アバタの腕又は脚等の画像を固定されたオブジェクトとして生成してもよい。
【0105】
図9は、ステップSb2において自アバタが表示されたときのホイストマン93の訓練用端末1が生成するVR空間の一例である。
図9では、VR空間7に山岳オブジェクト71と共にヘリコプタ8が生成されている。ステップSb2においては、ヘリコプタ8の機体80内にホイストマン93の自アバタ93Aが生成されている。
【0106】
続いて、シミュレーション進行部146は、ステップSb3において、他端末との通信を確立する。具体的には、訓練者9は、他端末との接続を要求する入力を、訓練用端末1の入力部11又はVR表示装置2の入力部21を介して行う。それに応じて、シミュレーション進行部146は、他の訓練用端末1に接続要求を送信する。その後、シミュレーション進行部146は、他の訓練用端末1から接続完了応答を受信することによって、他の訓練用端末1との通信が確立される。シミュレーション進行部146は、全ての他の訓練用端末1との通信を確立する。
【0107】
他の訓練用端末1との通信が確立されると、ステップSb4において、シミュレーション進行部146は、他の訓練用端末1へ自アバタの初期位置情報を送信する。それと共に、シミュレーション進行部146は、他の訓練用端末1から他アバタの初期位置情報を受信する。
【0108】
他アバタの初期位置情報を受信すると、ステップSb5において、シミュレーション進行部146は、他アバタを表示させる。詳しくは、シミュレーション進行部146は、他アバタに対応するアバタ定義データ133を記憶部13から読み出し、ステップSb2で生成したVR空間に他アバタを合成する。このとき、シミュレーション進行部146は、ステップSb4で受信した初期位置情報に基づいて他アバタを配置する。シミュレーション進行部146は、VR空間において機体80内にアバタを生成する場合には、機体80のローカル座標系を基準にアバタを生成する。なお、機体80は、VR空間の絶対座標系を基準に生成される。シミュレーション進行部146は、生成したシミュレーション画像をVR表示装置2に出力、即ち、提供する。それに応じて、VR表示装置2は、シミュレーション画像を表示する。
【0109】
このステップSb3~Sb5によれば、シミュレーション進行部146は、他の訓練用端末1との通信を確立した場合に、他の訓練用端末1から他アバタの位置情報を取得し、取得された位置情報に基づいて他アバタをVR空間に生成する。
【0110】
図10は、ステップSb5において他アバタが表示されたときのホイストマン93の訓練用端末1が生成するVR空間の一例である。
図10では、VR空間7に山岳オブジェクト71と共にヘリコプタ8が生成されている。ステップSb5においては、ヘリコプタ8の機体80内に自アバタである、ホイストマン93のアバタ93Aに加えて、他アバタとしての、操縦士91のアバタ91A、副操縦士92のアバタ92A及び降下員94のアバタ94Aが生成されている。これらステップSb1~Sb5は、訓練の初期設定に関する処理である。
【0111】
初期設定に関する処理が完了すると訓練が開始され、ステップSb6以降の処理が実行される。シミュレーション進行部146は、ステップSb6において、機体80の位置情報を機体端末50(詳しくは、操縦士91の訓練用端末1)から受信する。また、シミュレーション進行部146は、ステップSb7において、他の訓練用端末1へ自アバタの位置情報を送信する。それと共に、シミュレーション進行部146は、他の訓練用端末1から他アバタの位置情報を受信する。前述の操縦士91の訓練用端末1の処理で説明したように、機体80の位置情報及び操縦士91のアバタの位置情報が周期的に送信されている。また、他の訓練用端末1もステップSb7を周期的に繰り返すので、他の訓練用端末1から他アバタの位置情報が周期的に送信されてくる。
【0112】
シミュレーション進行部146は、ステップSb8において、自アバタ、他アバタ及び機体80の位置及び姿勢を更新する。このとき、自アバタ及び他アバタが機体80内に存在する場合には、自アバタ及び他アバタの位置情報は、機体80のローカル座標系を基準とする位置情報である。シミュレーション進行部146は、機体80の位置情報に基づいて機体80の位置及び姿勢を更新し、更新後の機体80に対して自アバタ及び他アバタの位置及び姿勢を更新する。
【0113】
シミュレーション進行部146は、自アバタ、他アバタ及び機体80の位置及び姿勢を更新するに際し、他の訓練用端末1から他アバタ及び機体80の位置情報を取得するので、前述の如く、処理部14の演算負荷を低減することができる。
【0114】
続いて、シミュレーション進行部146は、ステップSb9において、シミュレーションを実行中か、即ち、シミュレーションが継続されているか否かを判定する。シミュレーションが終了されている場合には、処理部14は処理を終了する。一方、シミュレーションが継続されている場合には、シミュレーション進行部146は、ステップSb10において、所定時間が経過したか否かを判定する。所定時間は、自アバタ、他アバタ及び機体80の位置及び姿勢を更新する周期に相当し、予め設定されている。この所定時間、即ち、更新周期は、複数の訓練用端末1で共通である。なお、所定時間は、複数の訓練用端末1で異なっていてもよい。所定時間が経過していない場合には、シミュレーション進行部146は、ステップSb9,Sb10を繰り返す。その間、シミュレーション進行部146は、シミュレーションの進行に関する各種演算処理を実行する。例えば、シミュレーション進行部146は、トラッキング制御部144からの位置情報に基づいて、自アバタの位置及び姿勢を演算する。なお、この例では、自アバタ、他アバタ及び機体80の位置及び姿勢の更新は同じ周期で行われているが、自アバタ、他アバタ及び機体80のそれぞれの更新周期が異なっていてもよい。
【0115】
所定時間が経過した場合には、シミュレーション進行部146は、ステップSb6の処理に戻る。このときには、前回のステップSb6のときから機体80の位置が更新されている可能性がある。つまり、シミュレーション進行部146は、機体80の最新の位置情報を操縦士91の訓練用端末1から受信する。同様に、シミュレーション進行部146は、ステップSb7において、他の訓練用端末1へ自アバタの最新の位置情報を送信する。それと共に、シミュレーション進行部146は、他の訓練用端末1から他アバタの最新の位置情報を受信する。シミュレーション進行部146は、ステップSb8において、他アバタの位置及び姿勢を更新する。それに加えて、自アバタが機体80内に配置され且つ機体80の位置及び姿勢が更新されている場合には、シミュレーション進行部146は、更新された機体80の位置及び姿勢に応じて自アバタの位置及び姿勢を更新する。その後、シミュレーション進行部146は、ステップSb9,Sb10の処理を行う。
【0116】
このように、シミュレーション進行部146は、ステップSb6~Sb10の処理を繰り返すことによって、他の訓練用端末1から他アバタの位置情報を周期的に取得し、他アバタのVR空間における位置及び姿勢を更新する。また、シミュレーション進行部146は、機体端末50から機体80の位置情報を周期的に取得し、機体80のVR空間における位置及び姿勢を更新する。さらに、シミュレーション進行部146は、自アバタの位置も随時更新し、自アバタの最新の位置情報を他の訓練用端末1へ周期的に送信する。つまり、自アバタの位置及び姿勢を更新しつつ、自アバタの最新の位置情報を他の訓練用端末1へ周期的に送信すると共に、他アバタ及び機体80の最新の位置情報を受信して機体80、自アバタ及び他アバタの位置及び姿勢を周期的に更新する。
【0117】
図11は、自アバタ、他アバタ及び機体80の位置及び姿勢が更新されたときのホイストマン93の訓練用端末1が生成するVR空間の一例である。
図11では、
図10に比べて機体80が移動しており、VR空間7においてヘリコプタ8と山岳オブジェクト71との位置関係が変化している。それに伴い、アバタ91A~94AもVR空間7において移動している。さらに、アバタ93A,94Aは、機体80内においても移動している。
【0118】
このような訓練処理によれば、シミュレーション進行部146は、他の訓練用端末1から他アバタの位置情報を取得するので、トラッキング制御部144は、他アバタの位置情報を演算する必要がない。そのため、処理部14は、少ない演算で他アバタの位置及び姿勢を更新することができる。さらに、シミュレーション進行部146は、機体80の位置情報を機体端末50から取得すると共に、機体80内のアバタの位置情報が機体のローカル座標系を基準としているので、機体80の移動に起因するアバタのVR空間における移動量を演算する必要がない。シミュレーション進行部146は、機体80の位置情報に基づいてVR空間の絶対座標系における機体80の位置及び姿勢を更新し、更新された機体80の位置を基準にアバタの相対的な位置及び姿勢を更新する。これにより、処理部14は、少ない演算でアバタの位置及び姿勢を更新することができる。
【0119】
続いて、VR訓練システム100における模擬訓練の一例について説明する。この模擬訓練は、4人の訓練者9(操縦士91、副操縦士92、ホイストマン93及び降下員94)による連携訓練であり、要救助者が存在する地点までヘリコプタを飛行させ、要救助者を救出する訓練である。操縦士91の訓練用端末1の操縦機能が有効となっている。
図12は、模擬訓練における各種訓練の流れを示すフローチャートである。この模擬訓練は、前述の初期設定に関する処理の完了後に開始される。操縦装置3A及びコントローラ3Bの各種操作には、訓練の状況に応じて、各種処理が割り当てられている。訓練用端末1は、シミュレーション画像中の状況に応じて、操縦装置3A及びコントローラ3Bの操作に対応する処理を実行する。
【0120】
模擬訓練では、まず、ステップSc1において飛行訓練が行われる。この飛行訓練は、ヘリコプタを出発地から要救助者が存在する地点(即ち、救助地点)まで飛行させる訓練である。操縦士91は、操縦装置3Aを操作することによって、シミュレーション画像内でヘリコプタを飛行させる。操縦士91の訓練用端末1は、機体演算端末5の演算結果に基づいて、VR空間における機体80の位置及び姿勢を変化させる。
【0121】
他の訓練用端末1は、操縦士91の訓練用端末1によって演算された機体80の位置及び姿勢を取得し、機体80の位置及び姿勢を更新したシミュレーション画像を生成する。副操縦士92等は、シミュレーション画像を観ながら、飛行中の安全確認を行う。例えば、
図13は、飛行訓練中のホイストマン93のシミュレーション画像の一例である。このシミュレーション画像は、ホイストマン93が機体80内で操縦席側を向いている場合の画像である。このシミュレーション画像では、操縦席及び副操縦席に座っている操縦士91のアバタ91A及び副操縦士92のアバタ92Aが表示されている。
【0122】
ヘリコプタが救助地点に到着すると、飛行訓練が完了する。
【0123】
続いて、ステップSc2のホバリング訓練が行われる。ホバリング訓練は、ヘリコプタを空中における所定位置に停止させ続ける訓練である。このホバリング訓練では、操縦士91による操縦動作及び副操縦士92等による安全確認動作が行われる。
【0124】
ホバリング飛行が安定して行われると、ホバリング訓練が完了する。
【0125】
次に、ステップSc3の降下訓練が行われる。
図14は、降下訓練中のホイストマン93又は降下員94のシミュレーション画像の一例である。
図15は、降下訓練中の降下員94のシミュレーション画像の一例である。
図16は、降下訓練中のVR空間内の配置状況の一例を示す図である。
図17は、降下訓練中の副操縦士92のシミュレーション画像の一例である。
図18は、降下訓練中のホイストマン93のシミュレーション画像の一例である。
【0126】
降下訓練は、ホイストマン93が巻き上げ機84を操作して降下員94を機体80から降下させる訓練である。つまり、降下員94のアバタ94Aがホイストケーブル82に連結された後、ホイストマン93が巻き上げ機84を操作して降下員94のアバタ94Aを降下させる。
【0127】
例えば、降下訓練においては、ホイストマン93及び降下員94は、自アバタを機体80のドアの近傍へ移動させる。この自アバタの移動は、ホイストマン93又は降下員94のコントローラ3Bの操作によって実現される。例えば、ホイストマン93又は降下員94は、操作スイッチ35を半押しすることによって、
図14に示すように、機体80の床85にポインタ70が表示される。ホイストマン93又は降下員94は、操作スイッチ35を半押しした状態でコントローラ3Bの向きを調整することによってポインタ70の位置を調整する。ホイストマン93又は降下員94は、操作スイッチ35を全押しすることによって、ポインタ70の位置に自アバタを移動させることができる。こうすることで、ホイストマン93又は降下員94が実空間で実際に移動しなくても、VR空間において自アバタを移動させることができる。なお、自アバタの移動は、ホイストマン93又は降下員94の実空間における実際の移動によって実現してもよい。
【0128】
ここで、床85へのポインタ70の表示は、実質的には、オブジェクトのうち自アバタの移動先となる部分を選択することを意味する。以下、オブジェクト又はその一部の選択は、ポインタ70をオブジェクト又はその一部に重ねて表示させることによって実行される。
【0129】
続いて、ホイストマン93又は降下員94は、コントローラ3Bを操作して、ポインタ70によって機体80のドアを選択する。この状態で、ホイストマン93又は降下員94が操作スイッチ35を全押しすることによって、ドアが開く。
【0130】
降下員94は、
図15に示すように、ポインタ70によってホイストケーブル82の先端又はカラビナ86の近傍を選択する。この状態で、降下員94が操作スイッチ35を全押しすることによって、降下員94のアバタ94Aの縛帯87(
図16参照)にカラビナ86が連結される。降下員94のアバタ94Aは、救助縛帯83とは別の縛帯87を予め装着している。これにより、
図16に示すように、降下員94のアバタ94Aがホイストケーブル82に連結され、降下員94のアバタ94Aがホイストケーブル82に吊り下げられた状態となる。
【0131】
このとき、副操縦士92は、
図17に示すように、ホイストマン93のアバタ93A及び降下員94のアバタ94Aの状況を確認して、必要に応じて操縦士91にホバリング飛行の助言を行う。
【0132】
一方、ホイストマン93は、ポインタ70によってペンダント型操作部を選択し、その状態で操作スイッチ35を全押しすることによってホイストマン93のアバタ93Aにペンダント型操作部を把持させる。ホイストマン93は、
図18に示すように、ホイストマン93のアバタ93Aが機体80から身を乗り出すように実空間において移動する。これにより、ホイストマン93は、ホイストケーブル82に吊り下げられた、降下員94のアバタ94Aを視認することができる。ホイストマン93のアバタ93Aがペンダント型操作部を把持した状態で、ホイストマン93が操作スイッチ35を操作することによって、ホイストケーブル82が引き出され、降下員94のアバタ94Aが降下していく。
【0133】
このとき、降下員94は、VR空間における地表までの距離に応じて、実空間において手信号を行う(即ち、コントローラ3Bを動かす)。これにより、降下員94のアバタ94Aも同様の手信号を行い、降下員94のアバタ94Aと地表との距離をホイストマン93に知らせる。ホイストマン93は、降下員94のアバタ94Aの手信号に応じて、ホイストケーブル82の引き出し量を調整する。
【0134】
降下員94は、降下員94のアバタ94Aが地表に接近すると、目標着地点をポインタ70によって選択する。その状態で、降下員94が操作スイッチ35を全押しすることによって、降下員94のアバタ94Aは、目標着地点に着陸する。このとき、降下員94のアバタ94Aがホイストケーブル82との連結を解除する動作が省略され、降下員94のアバタ94Aは、ホイストケーブル82から離脱した状態となる。これにより、降下訓練が完了する。
【0135】
続いて、ステップSc4の救助訓練が行われる。
図19は、救助訓練における降下員94のシミュレーション画像の一例である。
図20は、救助訓練における降下員94のシミュレーション画像の一例である。
【0136】
降下員94は、降下員94のアバタ94Aを要救助者88の場所まで移動させる。この移動は、前述の機体80内での移動と同様に、ポインタ70による移動先の選択及び操作スイッチ35の全押しによって実現される。
【0137】
降下員94のアバタ94Aが要救助者88のところまで移動した状態においては、降下員94が操作スイッチ35を半押しし、要救助者88が救助可能範囲内にあると、
図19に示すように、要救助者88の輪郭が色付けて表示される。降下員94は、コントローラ3Bの向きを調整して、降下員94のアバタ94Aの手で要救助者88を触る。その状態で、降下員94が操作スイッチ35を全押しすると、
図20に示すように、要救助者88が救助縛帯83に縛着された状態となる。つまり、降下員94のアバタ94Aが要救助者88を救助縛帯83の位置まで移動させる動作、及び、降下員94のアバタ94Aが救助縛帯83を要救助者88に縛着させる動作が省略される。
【0138】
その後、降下員94は、降下員94のアバタ94Aをホイストケーブル82の場所まで移動させる。この移動は、前述の通りである。
【0139】
降下員94のアバタ94Aがホイストケーブル82のところまで移動した状態で、降下員94は、ポインタ70によってホイストケーブル82を選択し、操作スイッチ35を全押しすることによって、降下員94のアバタ94Aがホイストケーブル82に連結される。これにより、救助訓練が完了する。
【0140】
次に、ステップSc5の引上げ訓練が行われる。
図21は、引上げ訓練における降下員94のシミュレーション画像の一例である。
【0141】
降下員94は、手信号を行って、ホイストマン93に引上げ開始の合図を送る。
【0142】
ホイストマン93は、降下員94のアバタ94Aの手信号を確認して、ペンダント型操作部を操作し、降下員94のアバタ94A及び要救助者88の引上げを開始する。ホイストマン93は、降下員94のアバタ94Aを視認しながら、ホイストケーブル82の引上げ量を調整する。
【0143】
降下員94は、引上げ状況に応じて、ホイストマン93のアバタ93Aに手信号を送ってもよい。例えば、ホイストケーブル82の揺れが大きくなった場合には、降下員94は、引上げを一旦停止する合図をホイストマン93のアバタ93Aに送ってもよい。さらに、ホイストケーブル82の揺れが収まると、降下員94は、引上げを再開する合図をホイストマン93のアバタ93Aに送ってもよい。この場合、ホイストマン93は、降下員94のアバタ94Aの手信号に応じて、引上げの一旦停止及び引上げの再開等を実行する。
【0144】
降下員94は、
図21に示すように、降下員94のアバタ94Aが機体80の近傍まで引き上げられると、ポインタ70で機体80内の一部を選択し、操作スイッチ35を全押しする。これにより、降下員94のアバタ94Aが機体80に乗り込む。その後、ホイストマン93は、ポインタ70で救助縛帯83を選択し、操作スイッチ35を全押しする。これにより、要救助者88は、機体80内に引き上げられる。つまり、降下員94のアバタ94Aが機体80内に乗り込む動作、及び、ホイストマン93のアバタ93A等が要救助者88を機体80内に引き込む動作が省略される。これにより、引上げ訓練が完了する。
【0145】
その後、ステップSc6の飛行訓練が行われる。ステップSc6の飛行訓練は、ステップSc1の飛行訓練と同様である。この飛行訓練は、ヘリコプタを元の出発地まで飛行させる訓練である。操縦士91は、操縦装置3Aを操作することによって、ヘリコプタを飛行させる。副操縦士92等は、飛行中の安全確認を行う。ヘリコプタが元の出発地に到着すると、飛行訓練が終了すると共に、一連の模擬訓練(連携訓練)が終了する。
【0146】
なお、この模擬訓練は、一例に過ぎず、模擬訓練の内容はこれに限定されるものではない。
【0147】
以上のように、航空機のVR訓練システム100は、共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、複数の訓練者9のうちの対応する訓練者9に前記シミュレーション画像を提供する複数の訓練用端末1と、実空間における複数の訓練者9の動きを検出するトラッキングシステム4とを備え、複数の訓練用端末1のそれぞれは、対応する訓練者9のアバタである自アバタのVR空間における位置及び姿勢をトラッキングシステム4の検出結果に基づいて演算し、複数の訓練用端末1のうちの他の訓練用端末1に対応する訓練者9のアバタである他アバタのVR空間における位置及び姿勢に関する位置情報を他の訓練用端末1から取得し、取得された他アバタの位置情報に基づいて他アバタをVR空間に生成する。
【0148】
また、航空機のVR訓練方法は、複数の訓練用端末1のそれぞれによって生成される共通のVR空間におけるシミュレーション画像を用いて、複数の訓練用端末1に対応する複数の訓練者9によって模擬訓練を行う、航空機のVR訓練方法であって、複数の訓練用端末1のそれぞれが、実空間における複数の訓練者9の動きを検出するトラッキングシステム4の検出結果に基づいて、対応する訓練者9のアバタである自アバタのVR空間における位置及び姿勢を演算する工程と、複数の訓練用端末1のそれぞれが、複数の訓練用端末9のうちの他の訓練用端末1に対応する訓練者のアバタである他アバタのVR空間における位置及び姿勢に関する位置情報を他の訓練用端末1から取得し、取得された他アバタの位置情報に基づいて他アバタをVR空間に生成する工程とを含む。
【0149】
さらに、シミュレーションプログラム131は、共通のVR空間における模擬訓練を行うためのシミュレーション画像を生成して、対応する訓練者9にシミュレーション画像を提供する機能を訓練用端末1の処理部14(コンピュータ)に実現させるための、航空機のVR訓練プログラムであって、実空間における訓練者9の動きを検出するトラッキングシステム4の検出結果に基づいて、対応する訓練者9のアバタである自アバタのVR空間における位置及び姿勢を演算する機能と、他の訓練用端末1に対応する訓練者9のアバタである他アバタのVR空間における位置及び姿勢に関する位置情報を他の訓練用端末1から取得し、取得された他アバタの位置情報に基づいて他アバタをVR空間に生成する機能とを処理部14に実現させる。
【0150】
これらの構成によれば、訓練用端末1のそれぞれは、対応する訓練者9の自アバタの位置情報、即ち、VR空間における位置及び姿勢をトラッキングシステム4の検出結果に基づいて演算する。一方、他の訓練用端末1に対応する訓練者9の他アバタに関しては、訓練用端末1のそれぞれは、他アバタに対応する他の訓練用端末1から他アバタの位置情報を取得する。他アバタに対応する他の訓練用端末1は、他アバタのVR空間における位置及び姿勢をトラッキングシステム4の検出結果に基づいて演算しているので、他アバタの位置情報を保持している。そのため、訓練用端末1のそれぞれは、トラッキングシステム4の検出結果に基づいて他アバタのVR空間における位置及び姿勢を演算する必要がない。
【0151】
このように、トラッキングシステム4の検出結果に基づくアバタのVR空間における位置及び姿勢の演算処理は、各アバタに対応する訓練用端末1に分散される。そして、その演算結果であるアバタの位置情報は、他の訓練用端末1と共有される。これにより、アバタを生成する際の各訓練用端末1の演算負荷を低減することができる。
【0152】
また、複数の訓練用端末1のそれぞれは、他の訓練用端末1との通信を確立した場合に、他の訓練用端末1から他アバタの位置情報を取得し、取得された他アバタの位置情報に基づいて他アバタをVR空間に生成する。
【0153】
この構成によれば、訓練用端末1のそれぞれは、他の訓練用端末1との通信を確立することによって、他の訓練用端末1から他アバタの位置情報を取得すことができ、VR空間の適切な位置に他アバタを生成することができる。
【0154】
さらに、VR訓練システム100は、複数の訓練者のうち航空機を操縦する訓練者が操作する操縦装置3Aと、操縦装置3Aを介した操作入力に基づいて、航空機の機体80のVR空間における位置及び姿勢を演算する機体端末50をさらに備え、複数の訓練用端末1は、機体端末50から機体80のVR空間における位置及び姿勢に関する位置情報を取得し、取得された機体80の位置情報に基づいて機体80をVR空間に生成する。
【0155】
この構成によれば、VR空間には航空機の機体80が生成され、操縦装置3Aからの操作入力に応じて機体80が飛行する。このとき、複数の訓練用端末1のそれぞれが機体80のVR空間における位置及び姿勢を演算するのではなく、機体端末50が機体80のVR空間における位置及び姿勢を演算する。複数の訓練用端末1は、機体端末50から機体80の位置情報を取得し、取得された位置情報に基づいて機体80をVR空間に生成する。これにより、複数の訓練用端末1で重複した演算を行う必要がないので、端末全体での演算負荷を低減することができる。
【0156】
具体的には、機体端末50は、操縦装置3Aを介した操作入力に基づいて機体の移動量及び姿勢の変化量を演算する機体演算端末5と、複数の訓練用端末1のうちの一の訓練用端末1であって機体演算端末5からの機体の移動量及び姿勢の変化量に関する移動量情報に基づいて機体80のVR空間における位置及び姿勢を演算する訓練用端末1とによって形成されている。
【0157】
この構成によれば、一の訓練用端末1は、機体端末50の一部の機能を担う。つまり、機体演算端末5と一の訓練用端末1とが協働して、操縦装置3Aの操作入力に基づいて機体80のVR空間における位置及び姿勢を演算する。このように、機体端末50を複数の端末で形成することによって、各端末の演算負荷を低減することができる。
【0158】
また、機体端末50は、操縦装置3Aを介した操作入力に応じて機体80の位置情報を更新し、複数の訓練用端末1は、機体端末50から機体80の位置情報を周期的に取得し、VR空間における機体80の位置及び姿勢を更新する。
【0159】
この構成によれば、操縦装置3Aからの操作入力に応じて、VR空間における機体80の位置及び姿勢が随時更新される。
【0160】
さらに、複数の訓練用端末1は、VR空間において機体80内にアバタを生成する場合には、機体端末50から取得された機体80の位置情報に基づいて、機体80に固定された原点を有するローカル座標系を基準にアバタを生成する。
【0161】
この構成によれば、訓練用端末1は、VR空間におけるアバタの位置及び姿勢を演算する際に、機体80の位置及び姿勢の変化による影響を考慮しなくてもよい。訓練用端末は、機体端末50から機体80の位置情報を取得できるので、機体80のローカル座標系を基準にアバタを生成することによって、VR空間においてアバタを機体80内に適切に配置することができる。
【0162】
また、複数の訓練用端末1のそれぞれは、他の訓練用端末1から他アバタの位置情報を周期的に取得し、他アバタのVR空間における位置及び姿勢を更新する。
【0163】
この構成によれば、訓練用端末1のそれぞれは、VR空間における他アバタの位置及び姿勢を更新する際にも、他の訓練用端末1から他アバタの位置情報を取得するので、他アバタのVR空間における位置及び姿勢をトラッキングシステム4の検出結果に基づいて演算する必要がない。
【0164】
《その他の実施形態》
以上のように、本出願において開示する技術の例示として、前記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、前記実施形態で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。また、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、前記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
【0165】
例えば、VR訓練システム100が適用されるVR訓練は、ヘリコプタにおけるVR訓練に限定されない。VR訓練システム100は、ヘリコプタ以外の航空機のVR訓練にも適用できる。
【0166】
操縦士91の訓練用端末1及び副操縦士92の訓練用端末1の演算能力に余裕がある場合などにおいては、機体演算端末5を省略し、操縦士91の訓練用端末1及び副操縦士92の訓練用端末1のそれぞれがVR空間における機体80の移動量及び姿勢の変化量を演算してもよい。その場合には、操縦士91の訓練用端末1及び副操縦士92の訓練用端末1のそれぞれに対応する操縦装置3Aが接続される。この場合、複数の訓練用端末のうちの一の訓練用端末1(具体的には、操縦士91及び副操縦士92の訓練用端末1のうち操縦機能が有効となっている方の訓練用端末1)が、操縦装置3Aを介した操作入力に基づいて、航空機の機体80のVR空間における位置及び姿勢を演算する機体端末として機能する。
【0167】
あるいは、機体演算端末5は、操縦装置3Aを介した操作入力に基づいて機体の移動量及び姿勢の変化量を演算するだけでなく、移動量情報に基づいて機体80のVR空間における位置及び姿勢を演算してもよい。この場合、機体演算端末5は、操縦装置3Aを介した操作入力に基づいて、航空機の機体80のVR空間における位置及び姿勢を演算する機体端末として機能する、訓練用端末1とは別の端末である。
【0168】
あるいは、訓練用端末1のそれぞれが機体演算端末5から移動量情報を取得し、移動量情報に基づいて機体80のVR空間における位置及び姿勢を演算してもよい。
【0169】
操縦士91及び副操縦士92の訓練用端末1は、演算負荷軽減のために、頭部のみが動作するようにアバタを生成するが、これに限定されるものではない。操縦士91及び副操縦士92の訓練用端末1は、ホイストマン93及び降下員94の訓練用端末1と同様に、訓練者9の全身の動作を反映するようにアバタを生成してもよい。
【0170】
設定用端末6は、訓練用端末1と別の端末でなくてもよい。訓練用端末1が設定用端末6としても機能してもよい。つまり、複数の訓練用端末1の何れか1つの訓練用端末1を設定用端末6として機能させることができる。例えば、教官が副操縦士92の役割をして訓練に参加してもよい。その場合には、副操縦士92の訓練用端末1が設定用端末6と同様の機能を実現する。教官は、副操縦士92の訓練用端末1に初期設定の設定情報を入力し、副操縦士92の訓練用端末1から他の訓練用端末1へ設定情報が送信される。教官は、副操縦士92として訓練に参加しつつ、他の訓練者9の訓練の様子を監視する。
【0171】
また、設定用端末6は、訓練を監視する機能を有していなくてもよい。
【0172】
訓練者9は、操縦士91、副操縦士92、ホイストマン93及び降下員94に限定されない。訓練者9は、これらの中の3人又は2人であってもよい。あるいは、訓練者9は、これらの4人以外の者であってもよい。つまり、VR訓練システム100を使って連携訓練を行うことができる者であれば、任意の者が訓練者9となることができる。例えば、訓練者9に地上員(地表からヘリコプタを誘導する者)、管制官又は要救助者が含まれていてもよい。
【0173】
初期設定の設定情報として、訓練者9のVR空間における初期位置が設定されてもよい。例えば、訓練者9が地上員である場合には、VR空間における訓練者9の地表の位置が設定され得る。
【0174】
図7,8のフローチャートは、実施できる範囲で、ステップを省略したり、ステップの順番を変更したり、複数のステップを並行して処理したり、別のステップを追加したりすることができる。
【0175】
図7のフローチャートでは、ステップSa2において、訓練用端末1は他の訓練用端末1との通信を確立しているが、他の訓練用端末1と通信を確立するタイミングは、これに限定されない。例えば、ステップSa1において、初期設定を行う際に、他の訓練用端末1と通信を確立してもよい。同様に、
図8のフローチャートでは、ステップSb3において、訓練用端末1は他の訓練用端末1との通信を確立しているが、他の訓練用端末1と通信を確立するタイミングは、これに限定されない。例えば、ステップSb1において、初期設定を行う際に、他の訓練用端末1と通信を確立してもよい。
【0176】
また、訓練用端末1は、ステップSb2において、自アバタを表示させているが、自アバタを表示するタイミングはこれに限定されない。例えば、訓練用端末1は、ステップSb5において他アバタを表示させるタイミングで自アバタも表示させてもよい。
【0177】
VR表示装置2が表示する画像は、一人称視点のシミュレーション画像に限定されない。例えば、VR表示装置2は、三人称視点のシミュレーション画像を表示してもよい。
【0178】
トラッキングシステム4は、訓練者9の動きを追跡できる限りは、任意の方式を採用することができる。例えば、トラッキングシステム4は、インサイドアウト方式であってもよい。
【0179】
操作装置である操縦装置3A及びコントローラ3Bは、訓練者及び訓練内容に応じて適宜変更することができる。
【0180】
また、操縦装置3A及びコントローラ3Bによって可能な操作の内容も訓練者及び訓練内容に応じて適宜変更することができる。例えば、VR表示装置2に表示されているアイコン等を操縦装置3A又はコントローラ3Bを介して操作することによって、操縦装置3A又はコントローラ3Bを入力部11と同様に機能させてもよい。
【0181】
本実施の形態で開示された構成の機能は、電気回路又は処理回路を用いて実行されてもよい。電気回路又は処理回路は、開示された機能を実行するように構成若しくはプログラムされた、メインプロセッサ、専用プロセッサ、集積回路、ASICs、従来型の電気回路、コントローラ又はこれらを組み合わせたものであってもよい。プロセッサ又はコントローラは、トランジスタ及びその他の回路を含む処理回路等である。本開示において、回路、ユニット、コントローラ又は手段は、記載した機能を実行するためのハードウェア又はプログラムされたものである。ここで、ハードウェアは、本実施の形態で開示された機能を実行するように構成若しくはプログラムされた、本実施の形態で開示されたもの又は公知のハードウェアである。ハードウェアが、プロセッサ又はコントローラの場合、回路、手段又はユニットは、ハードウェアとソフトウェアの組み合わせであり、ソフトウェアは、ハードウェア及び/又はプロセッサを構成するために用いられる。
【符号の説明】
【0182】
100 VR訓練システム
1 訓練用端末
131 シミュレーションプログラム(VR訓練プログラム)
4 トラッキングシステム
5 機体演算端末
50 機体端末
3A 操縦装置(操作装置)
3B コントローラ(操作装置)
80 機体
91 操縦士(訓練者)
92 副操縦士(訓練者)
93 ホイストマン(訓練者)
94 降下員(訓練者)