(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024029967
(43)【公開日】2024-03-07
(54)【発明の名称】水量制御系制御装置、制御システム、水量制御方法、及びプログラム
(51)【国際特許分類】
B63G 8/22 20060101AFI20240229BHJP
B63C 11/48 20060101ALI20240229BHJP
B63C 11/00 20060101ALI20240229BHJP
【FI】
B63G8/22
B63C11/48 D
B63C11/00 B
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022132468
(22)【出願日】2022-08-23
(71)【出願人】
【識別番号】000006208
【氏名又は名称】三菱重工業株式会社
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(74)【代理人】
【識別番号】100161702
【弁理士】
【氏名又は名称】橋本 宏之
(74)【代理人】
【識別番号】100189348
【弁理士】
【氏名又は名称】古都 智
(74)【代理人】
【識別番号】100196689
【弁理士】
【氏名又は名称】鎌田 康一郎
(72)【発明者】
【氏名】安達 丈泰
(72)【発明者】
【氏名】小田 一道
(72)【発明者】
【氏名】栗田 章央
(72)【発明者】
【氏名】澤田 英樹
(72)【発明者】
【氏名】松岡 浩然
(57)【要約】
【課題】アクチュエータの能力制約を考慮し、かつ既存の制御系との協調を行いつつ、水中航走体の制御系が目標値に収束するように複数のタンクの水量を最適な状態にする。
【解決手段】水量制御系制御装置は、水量制御系目標値とフィードバック値とを入力とし、フィードバック制御方式による演算により水量制御系目標値に対する指令値を算出するフィードバック制御部と、水中航走体の位置及び姿勢の少なくとも一方に影響を与える水中航走体の状態変化に関する状態信号に基づき、状態変化が生じた場合の水中航走体の不平衡量の予測値を取得するフィードフォワード制御部と、指令値、及び予測値を入力とし、複数のタンクの水量に関する調整条件と、水中航走体の状態を示す状態条件とを条件とする最適化手法によりタンクの各々に対する水量の増減を示す調整量を算出する調整量算出部と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、複数のタンクと、前記タンクの各々の水量を調整するアクチュエータとを有する前記水中航走体の前記タンクの各々の水量を増減させる制御を行う水量制御系制御装置であって、
水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出するフィードバック制御部と、
前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得するフィードフォワード制御部と、
前記フィードバック制御部が算出する前記指令値、及び前記フィードフォワード制御部が取得する前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する調整量算出部と、
を備える水量制御系制御装置。
【請求項2】
前記水中航走体の状態変化に関する前記状態信号は、
前記水中航走体の操縦系による状態変化指示入力に基づいて生成される
請求項1に記載の水量制御系制御装置。
【請求項3】
前記水中航走体の状態変化は、
前記水中航走体の前進速力、及び前記水中航走体の姿勢角の少なくとも一方の変化量を含む、
請求項2に記載の水量制御系制御装置。
【請求項4】
前記水中航走体の状態変化は、
前記水中航走体の水中における深度の変化と、前記深度の変化に応じて水温の変化と、に基づいて取得される排水量の変化量を含む、
請求項2又は3に記載の水量制御系制御装置。
【請求項5】
前記水中航走体の状態変化は、
前記水中航走体に搭乗している乗員の前記水中航走体内における配置を含む、
請求項2又は3に記載の水量制御系制御装置。
【請求項6】
水中航走体の運動を制御する運動制御装置と、
運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、
前記水中航走体に備えられる複数のタンクと、
前記タンクの各々の水量を調整するアクチュエータと、
水量制御系制御装置と、を備える制御システムであって、
前記水量制御系制御装置は、
水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出するフィードバック制御部と、
前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得するフィードフォワード制御部と、
前記フィードバック制御部が算出する前記指令値、及び前記フィードフォワード制御部が取得する前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する調整量算出部と、
を備える制御システム。
【請求項7】
水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、複数のタンクと、前記タンクの各々の水量を調整するアクチュエータとを有する前記水中航走体における水量制御方法であって、
水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出し、
前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得し、
算出した前記指令値、及び取得した前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する、
水量制御方法。
【請求項8】
水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、複数のタンクと、前記タンクの各々の水量を調整するアクチュエータとを有する前記水中航走体が備えるコンピュータに、
水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出する手順、
前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得する手順、
算出した前記指令値、及び取得した前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する手順、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、水量制御系制御装置、制御システム、水量制御方法、及びプログラムに関する。
【背景技術】
【0002】
例えば、特許文献1には、複数の円筒形の耐圧容器にモジュール化された水中航走体が示されている。幾つかのモジュールには、耐圧容器内にバラストタンクと呼ばれる水を貯留するタンクが備えられている。例えば、複数のタンクの水量を移水や注排水によって調整することにより、水中航走体の上下方向の浮量を制御して水中航走体の深度を変えることができ、例えば、水中航走体の密度と水の密度とを等しくして、水中航走体が浮きも沈みもしない中性浮力状態にすることもできる。また、水中航走体の前方と後方のタンクの水量のバランスを変えることにより水中航走体のトリムを制御することもできる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の水中航走体では、浮量やトリムの制御を行うために複数のタンクに対する移水と注排水の調整をどのようにして行うのかについては具体的に開示されていない。また、有人の水中航走体では、人が水中航走体の深度や姿勢などの状態を踏まえて、複数のタンクに対する移水や注排水の操作を行っている。そのため、浮量やトリムの制御を行う際に、人による操作を介さずに、複数のタンクに対する移水や注排水を何らかの自動制御手段によって行うというコンセプトが今までに存在していない。
【0005】
水中航走体に備えられる複数のタンクへの移水や注排出の手順の組み合わせの数は、膨大な数になる。そのため、複数のタンクへの移水や注排出の制御は、冗長な多入力系の制御対象に対する制御とみなすことができる。人による操作の場合、例えば、複数のタンクの水量を最適な量にするための調整量の算定、舵やスラスタなどを制御する既存の制御系との協調、ポンプやバルブなどのアクチュエータにおける流量や応答時間の性能などに起因する能力制約によって生じる応答遅れを考慮した待機時間の設定、及びタンクの水量の調整に要する調整時間の最短化などを考慮して行うことから多くの入力操作が行われることになる。これらの多くの入力操作を自動制御手段によって実現するためには、人が多くの入力操作を行う際に考慮していることの各々を課題として設定し、設定した課題を解決する自動制御手段を設計するような設計指針が必要になるが、このような設計指針が確立していないという問題がある。
【0006】
本開示は、このような問題に鑑みてなされたものであって、アクチュエータの能力制約を考慮し、かつ既存の制御系との協調を行いつつ、水中航走体の制御系が目標値に収束するように複数のタンクの水量を最適な状態にする水量制御系制御装置、制御システム、水量制御方法、及びプログラムを提供することを目的とする。
【0007】
本開示は、上記課題を解決するためになされたものであって、アクチュエータの能力制約を考慮し、かつ既存の制御系との協調を行いつつ、水中航走体の制御系が目標値に収束するように複数のタンクの水量を最適な状態にすることができる水量制御系制御装置、制御システム、水量制御方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本開示に係る水量制御系制御装置は、水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、複数のタンクと、前記タンクの各々の水量を調整するアクチュエータとを有する前記水中航走体の前記タンクの各々の水量を増減させる制御を行う水量制御系制御装置であって、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出するフィードバック制御部と、前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得するフィードフォワード制御部と、前記フィードバック制御部が算出する前記指令値、及び前記フィードフォワード制御部が取得する前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する調整量算出部と、を備える。
【0009】
本開示に係る制御システムは、水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、前記水中航走体に備えられる複数のタンクと、前記タンクの各々の水量を調整するアクチュエータと、水量制御系制御装置と、を備える制御システムであって、前記水量制御系制御装置は、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出するフィードバック制御部と、前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得するフィードフォワード制御部と、前記フィードバック制御部が算出する前記指令値、及び前記フィードフォワード制御部が取得する前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する調整量算出部と、を備える。
【0010】
本開示に係る水量制御方法は、水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、複数のタンクと、前記タンクの各々の水量を調整するアクチュエータとを有する前記水中航走体における水量制御方法であって、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出し、前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得し、算出した前記指令値、及び取得した前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件と、を条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する。
【0011】
本開示に係るプログラムは、水中航走体の運動を制御する運動制御装置と、運動制御系目標値及び前記水中航走体から検出される制御量に基づいて前記運動制御装置に対する指令値を算出する運動制御系制御装置と、複数のタンクと、前記タンクの各々の水量を調整するアクチュエータとを有する前記水中航走体が備えるコンピュータに、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータの応答遅れを補償し、かつ前記運動制御系制御装置の制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出する手順、前記水中航走体の位置及び姿勢の少なくとも一方に影響を与える前記水中航走体の状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体の不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得する手順、算出した前記指令値、及び取得した前記予測値を入力とし、複数の前記タンクの水量に関する調整条件と、前記水中航走体の状態を示す状態条件とを条件とする最適化手法により前記タンクの各々に対する水量の増減を示す調整量を算出する手順、を実行させる。
【発明の効果】
【0012】
本開示の水量制御系制御装置、制御システム、水量制御方法、及びプログラムによれば、アクチュエータの能力制約を考慮し、かつ既存の制御系との協調を行いつつ、水中航走体の制御系が目標値に収束するように複数のタンクの水量を最適な状態にすることができる。
【図面の簡単な説明】
【0013】
【
図1】第1の実施形態の制御システムの構成と水中航走体に作用する力及びモーメントの関係を示すブロック図である。
【
図2】第1の実施形態のタンクシステムの構成を示すブロック図である。
【
図3】第1の実施形態の制御システムの制御系を示すブロック線図である。
【
図4】第1の実施形態の調整量算出部に適用する最適解を算出する演算式を求める手順を示す図である。
【
図5】第2の実施形態の制御システムの構成と水中航走体に作用する力及びモーメントの関係を示すブロック図である。
【
図6】第2の実施形態のフィードフォワード制御部の構成を示すブロック図である。
【
図7】第2の実施形態の第一フィードフォワード制御部の構成を示すブロック図である。
【
図8】第2の実施形態による第一フィードフォワード制御部に記憶された前進速力と不平衡重量との相関データの一例を示す図である。
【
図9】第2の実施形態による第一フィードフォワード制御部に記憶された前進速力と不平衡モーメントとの相関データの一例を示す図である。
【
図10】第2の実施形態による第一フィードフォワード制御部に記憶されたプロペラ回転数と前進速力との相関データの一例を示す図である。
【
図11】第2の実施形態の第二フィードフォワード制御部の構成を示すブロック図である。
【
図12】第2の実施形態による第二フィードフォワード制御部に記憶された、水温と、深度と、排水量との相関を示すデータの一例を示す図である。
【
図13】第2の実施形態の第三フィードフォワード制御部の構成を示すブロック図である。
【
図14】第2の実施形態において用いられる数式に含まれる物理パラメータ及び単位を示す図である。
【
図15】第2の実施形態の運動制御系制御装置と舵制御装置による処理の流れを示す図である。
【
図16】第2の実施形態の水量制御系制御装置とタンクシステムによる処理の流れを示す図である。
【
図17】第2の実施形態の制御システムを用いたシミュレーション結果のグラフを示す図(その1)である。
【
図18】第2の実施形態の制御システムを用いたシミュレーション結果のグラフを示す図(その2)である。
【
図19】第1及び第2の実施形態の制御システムのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0014】
(第1の実施形態)
以下、本開示の実施形態について図面を参照して説明する。上記した多くの入力操作を行う際に人が考慮していることを自動制御手段として実現するための課題として改めて整理すると、(課題1)アクチュエータの能力制約によって生じる応答遅れを補償すること、(課題2)既存の制御系である運動制御系と協調するために、複数のタンクの水量を制御する水量制御系の制御帯域と、運動制御系の制御帯域との干渉を抑えるようにすること、(課題3)浮量やトリムの制御を行う際に指定される目標値に向かって運動制御系を含む制御系の全体を並列に収束させるように複数のタンクの各々に対する最適な水量の調整量を算定することの3つの課題を解決する必要がある。以下、第1の実施形態の制御システム100を参照しつつ、3つの課題を解決するための自動制御のシステムの設計指針について説明する。
【0015】
(第1の実施形態の制御システム)
図1は、第1の実施形態による制御システム100の構成の一例と、制御システム100による制御によって水中航走体6に作用する力及びモーメントの関係を示すブロック図である。ここで、水中航走体6とは、例えば、人が搭乗する有人の水中機である。制御システム100は、水量制御系制御装置1、タンクシステム2、運動制御系制御装置3、運動制御装置4、及び検出部5を備える。なお、
図1は、制御系全体の関係を示すために、構造物としての水中航走体6を含めたブロック図としているが、実際には、制御システム100は、水中航走体6に備えられるシステムである。また、
図1において実線は、電気的な接続を示し、破線は、水中航走体6に作用する力及びモーメントを示している。
【0016】
タンクシステム2は、水量制御系制御装置1の制御対象であり、アクチュエータ21と、タンク22とを備える。
図2は、タンクシステム2の詳細な構成を示すブロック図である。タンク22は、いわゆるバラストタンクであり、
図2に示すように、例えば、5個のタンク22-1~22-5を含んでいる。タンク22-1は、例えば、水中航走体6の前方に配置されるタンクであり、タンク22-5は、例えば、水中航走体6の後方に配置されるタンクである。タンク22-2~22-4は、タンク22-1,22-5の間の位置、例えば、水中航走体6の重心の周辺などに配置されるタンクである。
【0017】
例えば、タンク22-1~22-5の各々に水が注水されることで、水中航走体6の浮力が減少するため、水中航走体6は沈下し、また、タンク22-1~22-5の各々から水が排出されることにより、水中航走体6に浮力が生じて、水中航走体6が浮上することになる。また、タンク22-1~22-5の間で、いずれかのタンク22-1~22-5に貯留されている水を、他のタンク22-1~22-5に移動させる移水を行うことにより、タンク22-1~22-5の各々の水量を調整することもできる。
【0018】
このようにして、タンク22-1~22-5が貯留する水量を調節することにより、例えば、矢印51に示すように水中における水中航走体6の上下の移動方向を調整して、水面からの距離である深度を任意に変えることができる。また、水中航走体6の密度と水の密度とを等しくして、水中航走体6が浮きも沈みもしない、すなわち深度が一定値になる中性浮力状態にすることが可能になる。また、タンク22-1の水量を減らして、水中航走体6の前方の浮力を増加させることにより、水中航走体6の前方を上方に向けるトリム傾斜が生じることになる。これに対して、タンク22-5の水量を減らして、水中航走体6の後方の浮力を増加させることにより、水中航走体6の前方を下方に向けるトリム傾斜が生じることになる。これにより、矢印52に示すように水中における水中航走体6の姿勢角の1つであるピッチ角を任意の角度に調整することができることになる。また、例えば、タンク22-2,22-3を、水中航走体6の重心付近の位置であって、前方から後方にわたる中心軸であるロール軸の左右の対称な位置に配置し、タンク22-2,22-3の水量のバランスを変えることにより、水中航走体6の姿勢角の1つであるロール角を任意の角度に調整することができる。
【0019】
アクチュエータ21は、
図2に示すように、例えば、ポンプ21P-1~21P-7と、バルブ21V-1~21V-15とを備えている。ポンプ21P-1~21P-7、及びバルブ21V-1~21V-15は、例えば、モータなどの駆動手段を内蔵している。ポンプ21P-1~21P-7の各々は、ON状態にする制御信号を受けると駆動手段が動作して、各々に配管を通じて接続するタンク22-1~22-5に貯留されている水を取り込んで、他方の配管から排出し、OFF状態にする制御信号を受けると駆動手段が停止して、水の取り込みを停止する。バルブ21V-1~21V-15は、ON状態にする制御信号を受けると駆動手段が動作して弁を開き、OFF状態にする制御信号を受けると駆動手段が動作して弁を閉じる。ポンプ21P-1~21P-7、及びバルブ21V-1~21V-15を制御信号によってON/OFFすることにより、タンク22-1~22-5において注排水、及び移水が行われることになる。
【0020】
なお、
図2では、一例として、タンク22が、5個のタンク22-1~22-5を含む例を示しているが、タンク22に含まれるタンクの個数は、5個に限られるものではなく、複数個であれば、どのような個数であってもよい。また、
図2におけるポンプ21P-1~21P-7、及びバルブ21V-1~21V-15の個数や配置は、一例であり、タンク22-1~22-5の個数に応じて増減する。また、例えば、注排水がタンク22-3のみで行われるという仕様の場合は、その仕様に応じて配置が異なることになり、タンク22-3に対して注排水を行うポンプ21P-3と、バルブ21V-3,21V-8と、移水用のポンプ21P-6,21P-7と、バルブ21V-11~21V15とが備えられることになる。
【0021】
水中航走体6には、
図1の破線の矢印で示すようにタンク22によって生じる浮力の力及びモーメント、運動制御装置4による力及びモーメント、及び水中航走体6が海中に位置している場合の海中密度の変化などの外乱による力及びモーメントが作用する。これらの力及びモーメントの作用により水中航走体6の深度、ピッチ角、ロール角などが変化することになる。検出部5は、例えば、ジャイロなどのセンサであり、ピッチ角、ロール角といった姿勢角や深度などの水中航走体6の状態に関する制御指標の各々に対応する制御量を検出する。検出部5は、検出した制御量をフィードバック値として運動制御系制御装置3と、水量制御系制御装置1とに出力する。
【0022】
運動制御系制御装置3は、予め定められる制御指標に対応する運動制御系目標値であって任意の値に指定される運動制御系目標値と、検出部5が検出した制御量であって予め定められる制御指標に対応する制御量とに基づいて、運動制御装置4に対する指令値を算出する。運動制御装置4は、例えば、舵やスラスタを含む制御装置であり、運動制御系制御装置3が算出する指令値に基づいて舵やスラスタを駆動し、水中航走体6の姿勢、移動方向、移動速度などを調整する。
【0023】
水量制御系制御装置1は、冗長な多入力系の制御対象であるタンクシステム2が備えるタンク22の水量の調整を行う装置である。水量制御系制御装置1は、第一演算部11、フィードバック制御部12、フィードフォワード制御部15、第二演算部16、調整量算出部13、及びアクチュエータ制御部14を備える。フィードバック制御部12は、上記した(課題1)、(課題2)を解決するために備える機能部である。フィードフォワード制御部15は、上記した(課題1)を解決するために備える機能部である。調整量算出部13は、上記した(課題3)を解決するために備える機能部である。以下、フィードバック制御部12、フィードフォワード制御部15、及び調整量算出部13の設計指針について説明する。
【0024】
(フィードバック制御部の設計指針)
図1の制御システム100を制御系のブロック線図によって示すと
図3として表すことができる。
図3において、水量制御系61は、水量制御系制御装置1と、タンクシステム2とに対応する伝達要素である。運動制御系67は、運動制御系制御装置3と、運動制御装置4とに対応する伝達要素である。制御対象65は、力及びモーメントによる制御対象である構造物としての水中航走体6に対応する伝達要素である。加え合わせ点60は、水量制御系目標値と、制御対象65が出力する制御量とを取り込み、水量制御系目標値から制御量を減算して誤差を算出し、算出した誤差を水量制御系61に出力する。加え合わせ点64は、運動制御系67が出力する力及びモーメントと、水量制御系61が出力する力及びモーメントと、外乱による力及びモーメントを取り込んで力及びモーメントごとに加算し、力の加算値と、モーメントの加算値とを制御対象65に出力する。加え合わせ点66は、運動制御系目標値と、制御対象65が出力する制御量とを取り込み、運動制御系目標値から制御量を減算して誤差を算出し、算出した誤差を運動制御系67に出力する。
【0025】
水量制御系61は、上記した(課題1)であるアクチュエータ21の能力制約によって生じる応答遅れの補償を行うために、例えば、アクチュエータ21の能力制約によって生じる応答遅れを模擬する伝達要素63を備える。伝達要素63は、次式(1)に示す1次遅れ系の伝達関数による演算を行う。式(1)のパラメータTaをアクチュエータ21の能力制約によって生じる応答遅れを模擬するように定める。
【0026】
【0027】
また、水量制御系61は、上記した(課題2)の複数のタンク22-1~22-5の水量を制御する水量制御系の制御帯域と、運動制御系の制御帯域との干渉を抑えるために、例えば、次式(2)に示すPID制御方式の演算を行う伝達要素62を備える。
【0028】
【0029】
図3のブロック線図に基づいて制御系の設計を行って、制御系がフィードバック制御によって収束するようにPID制御方式の制御ゲイン、すなわち、式(2)のパラメータK
pt,T
it,T
dtを定める。当該設計において、運動制御系67の制御帯域と、水量制御系61の制御帯域とが完全に干渉しない非干渉の状態に設計することが最も理想的である。ただし、実際の設計としては制御対象65において運動制御系67の制御帯域と、水量制御系61の制御帯域とが干渉してハンティングなどが生じないことを確認しつつ、運動制御系67の制御帯域に対して、水量制御系61の制御帯域を十分小さくするようなパラメータK
pt,T
it,T
dtを定めることになる。水量制御系61におけるタンク22の制御によって得られる力やモーメントは、運動制御系67における舵やスラスタなどの制御によって得られる力やモーメントより大きいが、力やモーメントによる効果が現れるまでの応答時間の観点では、運動制御系67の応答時間の方が、水量制御系61の応答時間よりも短くなる。そのため、水量制御系61の制御帯域の周波数を低くしてもタンク22の制御に与える影響は少なく、例えば、周波数領域において、水量制御系61の制御帯域が、運動制御系67の制御帯域に比べて十分小さくなるように設計を行う。
【0030】
上記した設計を行って適切なパラメータKpt,Tit,Tdtを求めることにより、アクチュエータ21の能力制約による不安定化を阻止し、アクチュエータ21の能力制約を超えない安定した制御系を実現することができる。また、運動制御系67の制御帯域と、水量制御系61の制御帯域との干渉を抑える制御系を実現することができる。これにより、運動制御系67と、水量制御系61とにおいて協調した制御を行うことが可能になる。したがって、制御対象65が出力する制御量を、運動制御系目標値と、水量制御系目標値とに収束させるフィードバック制御を行うことにより、(課題1)と(課題2)とを解決することが可能になる。
【0031】
図1の水量制御系制御装置1の第一演算部11は、加え合わせ点60に対応する演算を行う機能部であり、予め定められる制御指標に対応する水量制御系目標値であって任意の値に指定される水量制御系目標値と、検出部5が検出した制御量であって予め定められる制御指標に対応する制御量とを取り込む。第一演算部11は、水量制御系目標値から制御量を減算して誤差を算出し、算出した誤差をフィードバック制御部12に出力する。フィードバック制御部12は、上記した設計によりパラメータK
pt,T
it,T
dtが定められた伝達要素62に対応するPID制御演算を行うPID制御器である。フィードバック制御部12は、PID制御演算により、第一演算部11が出力する誤差から指令値を算出する。フィードバック制御部12は、算出した指令値を調整量算出部13に出力する。
【0032】
なお、予め定められる制御指標は、少なくとも1つ定められ、複数の制御指標が定められる場合、第一演算部11は、複数の制御指標の各々に対応する水量制御系目標値と制御量とを取り込むことになる。この場合、フィードバック制御部12は、第一演算部11が出力する複数の制御指標の各々に対応する複数の誤差の各々に基づいて、複数の制御指標の各々に対応する複数の指令値を算出することになる。
【0033】
(フィードフォワード制御部の設計指針)
また、水量制御系61は、上記した(課題1)であるアクチュエータ21の能力制約によって生じる応答遅れの補償を行うために、フィードフォワード制御器68を備える。
図1の水量制御系制御装置1のフィードフォワード制御部15は、フィードフォワード制御器68に対応する演算を行う機能部である。フィードフォワード制御部15は、水中航走体6の位置及び姿勢の少なくとも一方に影響を与える水中航走体6の状態変化に関する状態信号が入力された場合、水中航走体6に生じる不平衡量を、フィードフォワード制御により予測する。水中航走体6の位置及び姿勢の少なくとも一方に影響を与える水中航走体6の状態変化としては、例えば、水中航走体6の前進速力の変化、ピッチ角、ロール角といった姿勢角の変化、深度の変化、水中航走体6の重量バランスの変化等がある。これらの状態変化に関する状態信号は、例えば、水中航走体6の舵やスラスタを操作するための操作系(図示無し)等から入力される。フィードフォワード制御部15は、これらの状態変化に関する状態信号が入力された場合、その状態信号に基づき、状態変化が生じた場合に生じる不平衡量の予測値を取得する。水中航走体6に生じる不平衡量としては、水中航走体6の不平衡重量、及び不平衡モーメントの少なくとも一方を含む。
【0034】
図3の加え合わせ点69は、フィードバック制御部12が算出した指令値と、フィードフォワード制御部15が取得した予測値とを加算し、加え合わせ点64に出力する。
図1の第二演算部16は、加え合わせ点69に対応する演算を行う機能部である。
【0035】
(調整量算出部の設計指針)
調整量算出部13は、上記したように(課題3)を解決するために備える機能部である。(課題3)を解決する技術として、組み込み型の装置への実装が容易であり、かつ現場でのパラメータ変更が容易になるように、解析的な最適解を求めることが可能なラグランジュの未定乗数法を採用する。以下、ラグランジュの未定乗数法を用いた解析により得られる最適解を算出する演算式を調整量算出部13に適用する手順の一例について、
図4を参照しつつ説明する。
【0036】
ラグランジュの未定乗数法を用いるために、ラグランジュの方程式における目的関数と、拘束条件とを予め設定する(ステップS1)。ここで、目的関数とは、タンク22-1~22-5の水量に関する調整条件を示す関数である。タンク22-1~22-5の水量に関する調整条件とは、例えば、水量の調整に要するエネルギ消費を最小にするという条件、タンク22-1~22-5の各々に分配する水量を平準化するという条件、水量の調整に要する調整時間を最短にするという条件などである。ここでは、一例として、水量の調整に要するエネルギ消費を最小にするという条件を目的関数f1(x1,x2)として定め、タンク22-1~22-5の各々に分配する水量を平準化するという条件を目的関数f2(x1,x2)として定める。
【0037】
拘束条件とは、水中航走体6の状態を示す状態条件を示す関数である。水中航走体6の状態を示す状態条件とは、例えば、水中航走体6の深度や姿勢角などの状態に関する不平衡量を目標値にするといった条件である。例えば、水中航走体6の深度や姿勢などの状態を平衡状態にすることを目的とする場合、目標値を「0」にすることになる。ここでは、一例として、状態条件として、水中航走体6の上下方向の不平衡量を目標値とする拘束条件g
1(x
1,x
2)と、水中航走体6のピッチ軸方向の不平衡量を目標値とする拘束条件g
2(x
1,x
2)とを定める。また、ここでは、一般的な例を示すために、目的関数と、拘束条件とにおいて2つの変数x
1,x
2を示しているが、
図1の制御システム100の場合、5個のタンク22-1~22-5の各々に対する水量の調整量が変数になるため、5個の変数が定められることになる。
【0038】
ステップS1において、設定した目的関数f
1(x
1,x
2),f
2(x
1,x
2)と、拘束条件g
1(x
1,x
2),g
2(x
1,x
2)とに、ラグランジュ乗数λ
1,λ
2を加えて、ラグランジュの方程式を立式する(ステップS2)。ラグランジュの未定乗数法による解析により、入力値u
1,u
2に対するx
1,x
2の最適解を算出する関数であるh
1(・,・),h
2(・,・)を求める(ステップS3)。ここで、入力値u
1,u
2は、
図1の水量制御系制御装置1のフィードバック制御部12が出力する指令値と、フィードフォワード制御部15が取得した予測値との加算値に対応する。なお、
図4では、一例として、u
1,u
2という2つの入力値と、x
1,x
2という2つの出力値を示しているが、入力値と出力値の個数は、一致していなくてもよい。
【0039】
h1(・,・),h2(・,・)というx1,x2の最適解を算出する関数の演算式を実行する計算機を調整量算出部13として実装する(ステップS4)。これにより、調整量算出部13は、フィードバック制御部12が算出した指令値、及びフィードフォワード制御部15が取得した予測値と、上記の手順により求めた最適解を算出する演算式とに基づいて、タンク22-1~22-5の各々に対する水量の最適な調整量を算出することができる。そのため、調整量算出部13によって(課題3)を解決することが可能になる。
【0040】
(課題3)を解決することにより、例えば、目的関数として、水量の調整に要するエネルギ消費を最小にするという条件、タンク22-1~22-5の各々に分配する水量を平準化するという条件、及び水量の調整に要する調整時間を最短にするという条件の3つの条件を定めることにより、制御システム100によって、以下のような3つの効果が得られることになる。すなわち、水量の調整に要するエネルギ消費を最小にするという条件を定めた場合、例えば、ポンプ21P-1~21P-7の稼働率を小さくすることができ、それに伴い水中航走体6の使用頻度による寿命低減に寄与する。また、タンク22-1~22-5の各々に分配する水量を平準化するという条件を定めた場合、タンク22-1~22-5の各々が貯留する水量を平準化できることになる。タンク22-1~22-5のいずれかが満水になると、タンクシステム2の仕様によっては、タンク22-1~22-5の移水や注排水による応答時間が長くなる場合がある。そのような場合に、タンク22-1~22-5の各々が貯留する水量を平準化しておくことで、次にタンク22-1~22-5の水量を調整する際にタンクシステム2の応答時間を平準化することができる。また、水量の調整に要する調整時間を最短にするという条件を定めた場合、例えば、タンク22-1~22-5に対する移水や注排水の調整に要する時間を短くすることができ、短時間で水中航走体6の深度や姿勢などの状態を安定状態に収束させることが可能になる。
【0041】
図1に戻り、アクチュエータ制御部14は、調整量算出部13が算出するタンク22-1~22-5の各々に対する調整量と、内部の記憶領域に予め記憶させている変換ルールデータとに基づいて、アクチュエータ21であるポンプ21P-1~21P-7、バルブ21V-1~21V-15の各々の駆動手段をON状態、または、OFF状態にする制御信号の生成を行う。上記したように、タンクシステム2の移水や注排水の仕様は、採用する製品によって異なり、例えば、上記した注排水がタンク22-3のみで行われるといった仕様の他、タンク22-3において注排水を行っている場合、他のタンク22-1,22-2,22-4,22-5からタンク22-3に対して移水をすることができないといった仕様なども存在する。また、ON状態、または、OFF状態にする制御信号のフォーマットなども製品によって異なる。そのため、アクチュエータ制御部14は、製品固有のルールや製品固有のロジックを反映した変換ルールデータを予め内部の記憶領域に記憶させておき、この変換ルールデータを用いて調整量算出部13が算出する調整量からアクチュエータ21に対するON/OFFの制御信号の生成を行う。アクチュエータ制御部14としては、例えば、当該変換ルールデータを備えたルールベースの移水・注排水制御器などが適用される。
【0042】
上記の第1の実施形態において示したように、アクチュエータ21の能力制約によって生じる応答遅れを補償するという(課題1)、及び既存の制御系である運動制御系と協調するために、複数のタンク22-1~22-5の水量を制御する水量制御系の制御帯域と、運動制御系の制御帯域との干渉を抑えるようにするという(課題2)を解決するフィードバック制御部12の設計指針を示すことができた。また、アクチュエータ21の能力制約によって生じる応答遅れを補償するという(課題1)を解決するフィードフォワード制御部15の設計指針を示すことができた。また、浮量やトリムの制御を行う際に指定される目標値に向かって運動制御系を含む制御系の全体を並列に収束させるように複数のタンク22-1~22-5の各々に対する最適な水量の調整量を算定するという(課題3)を解決する調整量算出部13の設計指針を示すことができた。このような設計指針に基づいて設計したフィードバック制御部12と、調整量算出部13とを備えることにより、今まで人が、タンクシステム2に対して行っていた多くの入力操作の負担を軽減することが可能になる。また、調整量算出部13は、任意に定める調整条件及び状態条件によって特定されるタンク22-1~22-5に対する最適な水量の調整量を算出する演算式を実行する。そのため、水中航走体6に対する制御の目的や水中航走体6の深度や姿勢などの状態に応じた制御システム100を構築することが可能になる。したがって、制御システム100により、アクチュエータ21の能力制約を考慮し、かつ既存の制御系との協調を行いつつ、水中航走体6の制御系が目標値に収束するように複数のタンクの水量を最適な状態にすることが可能になる。
【0043】
(第2の実施形態)
第2の実施形態では、第1の実施形態において示したフィードバック制御部12、フィードフォワード制御部15、及び調整量算出部13の設計指針にしたがって設計した、より具体的な構成について説明する。
図5は、第2の実施形態による制御システム100aの構成の一例と、制御システム100aによる制御によって水中航走体6aに作用する力及びモーメントの関係を示すブロック図である。なお、制御システム100aにおいて、制御システム100と同一の構成については、同一の符号を付し、以下、異なる構成について説明する。
【0044】
制御システム100aは、水量制御系制御装置1a、タンクシステム2、運動制御系制御装置3a、舵制御装置(運動制御装置)4a、及び検出部5aを備える。水中航走体6aは、第1の実施形態の水中航走体6と同様に、例えば、人が搭乗する有人の水中機である。なお、
図5は、
図1と同様に、制御系全体の関係を示すために、構造物としての水中航走体6aを含めたブロック図としているが、実際には、制御システム100aは、水中航走体6aに備えられるシステムである。また、
図5においても、
図1と同様に、実線は、電気的な接続を示し、破線は、水中航走体6aに作用する力及びモーメントを示している。
【0045】
加算器7,8は、現実に存在する機能部ではなく、水中航走体6aに作用する力及びモーメントの関係を簡潔に示すための説明の便宜上の機能部である。加算器7は、タンク22によって生じる浮力と、舵制御装置4aに含まれる深度調整用の舵(以下、深度調整舵という)によって生じる力とを加算し、加算した力の加算値を出力する。また、加算器7は、タンク22によって生じる浮力のモーメントと、舵制御装置4aに含まれるピッチ角調整用の舵(以下、ピッチ調整舵という)によって生じるモーメントとを加算し、加算したモーメントの加算値を出力する。加算器8は、加算器7が出力する力の加算値と、外乱による力(Fd)とを加算する。加算器8が加算した力が水中航走体6aに作用する。また、加算器8は、加算器7が出力するモーメントの加算値と、外乱によるモーメント(Md)とを加算する。加算器8が加算したモーメントが水中航走体6aに作用する。これにより、水中航走体6aの上下方向に加算器7が出力する力が作用し、水中航走体6aのピッチ軸方向に加算器7が出力するモーメントが作用することになる。
【0046】
検出部5aは、水中航走体6aにおける制御指標である深度と、ピッチ角という2つの制御量を検出する。深度の単位は、例えば、[m]であり、ピッチ角の単位は、例えば、[rad]である。検出部5aは、検出した深度と、ピッチ角とを運動制御系制御装置3aに出力する。
【0047】
運動制御系制御装置3aは、演算部31-1,31-2、深度FB(Feed Back)制御部32-1、及びピッチ角FB制御部32-2を備える。演算部31-1は、予め定められる深度の制御指標に対応する運動制御系目標値であって任意の値に指定される深度目標値と、検出部5aが検出した深度の制御量とを取り込む。演算部31-1は、深度目標値から深度の制御量を減算して誤差を算出し、算出した誤差を深度FB制御部32-1に出力する。なお、深度目標値の単位は、検出部5aが検出する深度の制御量と同じく[m]である。深度FB制御部32-1は、演算部31-1が出力する誤差に基づいて、深度調整舵に対する舵角指令値(以下、深度調整舵角指令値という)を算出する。深度FB制御部32-1は、算出した深度調整舵角指令値(δb)を舵制御装置4aと、水量制御系制御装置1aとに出力する。
【0048】
演算部31-2は、予め定められるピッチ角の制御指標に対応する運動制御系目標値であって任意の値に指定されるピッチ角目標値と、検出部5aが検出したピッチ角の制御量とを取り込む。演算部31-2は、ピッチ角目標値からピッチ角の制御量を減算して誤差を算出し、算出した誤差をピッチ角FB制御部32-2に出力する。なお、ピッチ角目標値の単位は、検出部5aが検出するピッチ角の制御量と同じく[rad]である。ピッチ角FB制御部32-2は、演算部31-2が出力する誤差に基づいて、ピッチ角調整舵に対する舵角指令値(以下、ピッチ角調整舵角指令値という)を算出する。ピッチ角FB制御部32-2は、算出したピッチ角調整舵角指令値(δr)を舵制御装置4aと、水量制御系制御装置1aとに出力する。
【0049】
舵制御装置4aは、水中航走体6aに備えられる深度調整舵及びピッチ角調整舵を含む舵の向きを制御する制御装置である。舵制御装置4aは、深度FB制御部32-1が出力する深度調整舵角指令値(δb)に基づいて、深度調整舵の向きを調整する。舵制御装置4aは、ピッチ角FB制御部32-2が出力するピッチ角調整舵角指令値(δr)に基づいて、ピッチ角調整舵の向きを調整する。
【0050】
第1の実施形態の制御システム100では、検出部5が検出する制御量をフィードバック値として、水量制御系制御装置1にフィードバックする構成を備えている。これに対して、第2の実施形態の制御システム100aでは、上記したように深度FB制御部32-1が算出する深度調整舵角指令値(δb)と、ピッチ角FB制御部32-2が算出するピッチ角調整舵角指令値(δr)とをフィードバック値として、水量制御系制御装置1aにフィードバックする構成としている。第1の実施形態のように、水量制御系制御装置1aが、検出部5aが検出する制御量をフィードバック値として参照する方が運動制御系制御装置3aを経由しないことから応答時間は短くなるというメリットがある。これに対して、運動制御系制御装置3aが算出する深度調整舵角指令値(δb)には、検出部5aが検出する深度の制御量が反映されており、ピッチ角調整舵角指令値(δr)には、検出部5aが検出するピッチ角の制御量が反映されている。言い換えると、深度調整舵角指令値(δb)とピッチ角調整舵角指令値(δr)という2つの舵角指令値には、検出部5aが検出する制御量に加えて、舵制御装置4aによる各々の舵に対する制御による情報が含まれていることになる。そのため、水量制御系制御装置1aが、運動制御系制御装置3aが算出する舵角指令値をフィードバック値として参照する場合、応答時間は長くなるものの、舵角指令値に舵の制御による情報が含まれていることから、水量制御系制御装置1aと、運動制御系制御装置3aとの協調を行いやすくするというメリットがある。
【0051】
水量制御系制御装置1aは、第一演算部11-1,11-2、フィードバック制御部12a、フィードフォワード制御部15a、第二演算部16a、調整量算出部13a、及びアクチュエータ制御部14を備える。第一演算部11-1は、予め定められる深度の制御指標に対応する水量制御系目標値であって任意の値に指定される浮量目標値と、深度FB制御部32-1が出力する深度調整舵角指令値(δb)とを取り込む。第一演算部11-1は、浮量目標値から深度調整舵角指令値(δb)を減算して誤差を算出し、算出した誤差をフィードバック制御部12aの浮量FB制御部12-1に出力する。第一演算部11-2は、予め定められるピッチ角の制御指標に対応する水量制御系目標値であって任意の値に指定されるトリム目標値と、ピッチ角FB制御部32-2が出力するピッチ角調整舵角指令値(δr)とを取り込む。第一演算部11-2は、トリム目標値からピッチ角調整舵角指令値(δr)を減算して誤差を算出し、算出した誤差をフィードバック制御部12aのトリムFB制御部12-2に出力する。
【0052】
ここで、浮量目標値として指定される値は、力を示す浮量であり、浮量目標値の単位は、例えば、[N]である。また、トリム目標値として指定される値は、モーメントを示すトリム制御モーメントであり、トリム目標値の単位は、例えば、[N・m]である。これに対して、深度調整舵角指令値(δb)と、ピッチ角調整舵角指令値(δr)とは角度であり、単位は、例えば、[rad]である。したがって、第一演算部11-1,11-2の各々に与えられる目標値と、フィードバック値とは単位が異なることになる。そのため、第一演算部11-1は、フィードバック値である深度調整舵角指令値を「N」の単位に換算し、第一演算部11-2は、フィードバック値であるピッチ角調整舵角指令値を「N・m」の単位に換算した上で、各々に与えられる目標値からの減算の演算を行うことになる。
【0053】
例えば、深度調整舵角指令値(δb)の時系列の変化から深度調整舵により水中航走体6aの上下方向に作用する力を推定することができる。また、ピッチ角調整舵角指令値(δr)の時系列の変化からピッチ角調整舵により水中航走体6aのピッチ軸方向に作用するモーメントを推定することができる。第一演算部11-1は、時系列上において連続した複数の深度調整舵角指令値(δb)を取り込み、取り込んだ複数の深度調整舵角指令値(δb)から推定力を算出することにより力の単位への換算を行うことができる。また、第一演算部11-2は、時系列上において連続した複数のピッチ角調整舵角指令値(δr)を取り込み、取り込んだ複数のピッチ角調整舵角指令値(δr)から推定モーメントを算出することによりモーメントの単位への換算を行うことができる。
【0054】
フィードバック制御部12aは、浮量FB制御部12-1と、トリムFB制御部12-2とを備える。浮量FB制御部12-1とトリムFB制御部12-2の各々は、それぞれ、上記した「フィードバック制御部の設計指針」にしたがって設計した伝達要素62に対応する演算を行うPID制御器である。ただし、制御システム100aは、制御システム100とは異なり、運動制御系制御装置3aが出力する2つの舵角指令値を水量制御系制御装置1aにフィードバックする構成になっている。そのため、制御系の設計の際に、第1の実施形態の制御システム100と、第2の実施形態の制御システム100aとの構成の違いを踏まえて設計を行い、浮量FB制御部12-1とトリムFB制御部12-2の各々に適用するPID制御器のKpt,Tit,Tdtのパラメータを定めることになる。なお、浮量FB制御部12-1とトリムFB制御部12-2のPID制御方式は、個別に設計されるため各々のパラメータKpt,Tit,Tdtは、異なることになるが、設計によっては、一致する場合もある。
【0055】
浮量FB制御部12-1は、第一演算部11-1が出力する誤差に対してPID制御方式の演算を行い、浮量目標値に対する上下指令値(Fc)を算出する。浮量FB制御部12-1は、算出した上下指令値(Fc)を第二演算部16a-1に出力する。トリムFB制御部12-2は、第一演算部11-2が出力する誤差に対してPID制御方式の演算を行い、トリム目標値に対するトリム指令値(Mc)を算出する。トリムFB制御部12-2は、算出したトリム指令値(Mc)を第二演算部16a-2に出力する。
【0056】
フィードフォワード制御部15aは、上記した「フィードフォワード制御部の設計指針」にしたがって設計したフィードフォワード制御器68に対応する。
図6は、第2の実施形態によるフィードフォワード制御部15aの構成を示すブロック図である。
図6に示すように、フィードフォワード制御部15aは、第一フィードフォワード制御部15-1と、第二フィードフォワード制御部15-2と、第三フィードフォワード制御部15-3と、を備える。フィードフォワード制御部15aは、水中航走体6aの位置及び姿勢の少なくとも一方に影響を与える水中航走体6aの状態変化に関する状態信号が入力された場合、水中航走体6aに生じる不平衡量の予測値を、フィードフォワード制御により取得する。
【0057】
図7は、第2の実施形態による第一フィードフォワード制御部15-1の構成を示すブロック図である。
図7に示す第一フィードフォワード制御部15-1では、水中航走体6aの舵やスラスタを操作するための操作系(図示無し)等が操作され、水中航走体6aの前進速力、及び姿勢角(ピッチ角)の少なくとも一方を変化させた場合に、水中航走体6aの不平衡量の予測値を取得する。第一フィードフォワード制御部15-1は、第一不平衡量取得部151aと、第一データ記憶部152aと、を備える。
第一不平衡量取得部151aは、水中航走体6aの前進速力、及び姿勢角(ピッチ角)の少なくとも一方を変化させるため、水中航走体6aの舵やスラスタを操作するための操作系(図示無し)等が操作された場合に、操作系からの状態変化指示入力に基づいて、不平衡量を取得する。操作系からの状態変化指示入力としては、前進速力の指示値、及び姿勢角指示値が入力される。
図8は、第2の実施形態による第一フィードフォワード制御部15-1に記憶された前進速力と不平衡重量との相関データの一例を示す図である。
図9は、第2の実施形態による第一フィードフォワード制御部15-1に記憶された前進速力と不平衡モーメントとの相関データの一例を示す図である。
第一データ記憶部152aには、予め、
図8に示す、ピッチ角の変化量毎の、前進速力と不平衡重量との相関を示すデータと、
図9に示す、ピッチ角の変化量毎の、前進速力と不平衡モーメントとの相関を示すデータと、が記憶されている。
【0058】
このような第一フィードフォワード制御部15-1では、水中航走体6aの前進速力を変化させるための前進速力指示値、及び姿勢角を変化させるための姿勢角指示値が入力された場合、第一不平衡量取得部151aが、第一データ記憶部152aに記憶されたデータに基づき、前進速力指示値、及び姿勢角指示値に応じた、不平衡重量と不平衡モーメントの値を、予測値として取得する。第一不平衡量取得部151aは、取得した不平衡重量の予測値を、第二演算部16a-1に出力する。第一不平衡量取得部151aは、取得した不平衡モーメントの予測値を、第二演算部16a-2に出力する。
【0059】
図10は、第2の実施形態による第一フィードフォワード制御部15-1に記憶されたプロペラ回転数と前進速力との相関データの一例を示す図である。
また、第一フィードフォワード制御部15-1では、水中航走体6aの前進速力を変化させるための前進速力指示値に代えて、水中航走体6aの前進速力を変化させるためのプロペラ回転数指示値の入力を受けることも可能である。この場合、第一データ記憶部152aには、
図10に示すような、プロペラ回転数と前進速力との相関を示すデータが予め記憶されている。第一不平衡量取得部151aは、水中航走体6aの状態変化指示入力として、プロペラ回転数指示値が入力された場合、第一データ記憶部152aに記憶された、プロペラ回転数と前進速力との相関を示すデータに基づき、プロペラ回転数指示値に応じた前進速力を取得する。この後、上記と同様、第一データ記憶部152aは、取得した前進速力と、姿勢角指示値に応じた、不平衡重量と不平衡モーメントの値を、予測値として取得する。
【0060】
図11は、第2の実施形態による第二フィードフォワード制御部15-2の構成を示すブロック図である。
図11に示す第二フィードフォワード制御部15-2では、水中航走体6aの舵やスラスタを操作するための操作系(図示無し)等が操作され、水中航走体6aの深度を変化させた場合に、水中航走体6aの不平衡量として、不平衡重量の予測値を取得する。第二フィードフォワード制御部15-2は、第二不平衡量取得部151bと、第二データ記憶部152bと、を備える。
第二不平衡量取得部151bは、水中航走体6aの深度を変化させるため、水中航走体6aの操作系(図示無し)等が操作された場合に、操作系からの状態変化指示入力に基づいて、不平衡重量を取得する。操作系からの状態変化指示入力としては、現在深度と、深度指示値が入力される。
図12は、第2の実施形態による第二フィードフォワード制御部15-2に記憶された、水温と、深度と、排水量との相関を示すデータの一例を示す図である。
第二データ記憶部152bには、予め、
図12に示す、水温と、深度と、排水量との相関を示すデータと、が記憶されている。海水の密度は、水温と深度とに応じて異なる。水中航走体6aの浮力に相関する水中航走体6aにおける排水量は、海水の密度に応じて異なる。
図12における等排水量曲線は、海水の密度が等しい水温と深度とを示すものである。また、第二データ記憶部152bには、水中航走体6aが航走する海域の深度と水温との相関を示すデータベースが、予め記憶されている。海域の深度と水温との相関を示すデータベースは、例えば、水中航走体6aが予め、当該海域を航行した際に、検出部5で検出される深度と水温のデータを蓄積することによって構成されている。海域の深度と水温との相関を示すデータベースは、水中航走体6aの航行中に深度と水温のデータを取得し、逐次更新するようにしてもよい。
【0061】
このような第二フィードフォワード制御部15-2では、水中航走体6aの深度を変化させるための目標深度指示値が入力されると、第二不平衡量取得部151bが、その時点での現在深度を取得する。第二不平衡量取得部151bは、第二データ記憶部152bの海域の深度と水温との相関を示すデータベースを参照し、目標深度指示値と、現在深度とに対応した、目標深度における水温(目標水温)と、現在深度における水温(現在水温)と、を取得する。さらに、第二不平衡量取得部151bは、第二データ記憶部152bの、
図12に示す、水温と、深度と、排水量との相関を示すデータを参照し、現在深度、現在水温における現在排水量(例えば、
図12における点D1)と、目標深度指示値に応じた目標深度、及び目標水温における目標排水量(例えば、
図12における点D2)と、を取得する。第二不平衡量取得部151bは、取得した現在排水量と、目標排水量との差分を演算し、現在深度から目標深度まで深度を変化させた場合の、不平衡重量の値を、予測値として取得する。
【0062】
図13は、第2の実施形態による第三フィードフォワード制御部15-3の構成を示すブロック図である。
図13に示す第三フィードフォワード制御部15-3では、水中航走体6a内における人員の配置(分布)を変化させる場合に、水中航走体6aの不平衡量として、不平衡モーメントの予測値を取得する。第三フィードフォワード制御部15-3は、第三不平衡量取得部151cと、第三データ記憶部152cと、を備える。
水中航走体6aにおいては、水中航走体6a内における人員の配置(分布)が変化すると、水中航走体6aの位置及び姿勢の少なくとも一方に影響を与える水中航走体6aの状態変化が生じる。
第三不平衡量取得部151cは、水中航走体6a内における人員の配置を変化させる場合、水中航走体6a内に予め設定された複数のエリア毎に配置される人員の数を示す人員配置情報が、状態変化信号として入力される。人員配置情報の入力は、制御システムに対して外部からの入力が可能な端末(図示無し)で行われる。人員配置情報の入力は、例えば、水中航走体6a内の各所に設置した人感センサ等によって、各エリアに存在する人員の数を検出するようにしてもよい。
第三データ記憶部152cには、予め、水中航走体6aの重心位置から、各エリアまでの距離と、人員の重量データ(例えば、人員の平均体重)とが記憶されている。
【0063】
このような第三フィードフォワード制御部15-3では、水中航走体6a内における人員配置情報が、状態変化信号として入力された場合、第三不平衡量取得部151cは、次式(3)により、直前の人員配置状態を基準とした不平衡モーメントMを算出する。ここで、Mは不平衡モーメント、Wiは、各エリアの人員重量、liは、各エリアの水中航走体6aの重心位置からの距離、である。
【数3】
【0064】
第三不平衡量取得部151cは、式(3)により算出された不平衡モーメントMを、予測値として取得する。
【0065】
第二演算部16aは、フィードバック制御部12が算出した指令値と、フィードフォワード制御部15が取得した予測値とを加算し、調整量算出部13aに出力する。第二演算部16a-1は、浮量FB制御部12-1が算出した上下指令値(Fc)と、第一不平衡量取得部151aが取得した不平衡重量の予測値とを加算し、調整量算出部13aに出力する。第二演算部16a-2は、浮量FB制御部12-1が算出したトリム指令値(Mc)と、第一不平衡量取得部151aが取得した不平衡モーメントの予測値とを加算し、調整量算出部13aに出力する。
【0066】
調整量算出部13aは、上記した「調整量算出部の設計指針」にしたがって予めラグランジュの未定乗数法を用いた解析により求めた最適解を算出する演算式、すなわちタンク22-1~22-5の各々に対する最適な調整量V1~V5を算出する演算式を実行する。調整量算出部13aは、浮量FB制御部12-1が出力する上下指令値(Fc)と、トリムFB制御部12-2が出力するトリム指令値(Mc)とに基づいて、タンク22-1~22-5の各々に対する水量の調整量(ΔV1~ΔV5)を算出する。調整量算出部13aは、算出したタンク22-1~22-5の各々に対する水量の調整量(ΔV1~ΔV5)をアクチュエータ制御部14に出力する。
【0067】
(調整量算出部に適用される最適解を算出する演算式の一例)
ここで、一例として、水中航走体6aの運動モデルとして、深度と、ピッチ角とに関する線形モデルに限定した運動モデルを定義した上で、調整量算出部13aに適用される最適解を算出する演算式をラグランジュの未定乗数法により求める手法について説明する。深度に関する線形モデルは、次式(4)の運動方程式として表すことができる。
【0068】
【0069】
式(4)に示す物理パラメータの各々の名称と、各々の単位とは、
図14に示す表の通りである。式(4)の左辺の「・」付きの「w」は、深度速度の微分、すなわち深度加速度であり、深度加速度に、深度軸質量「m
z」を乗算することにより、水中航走体6aの上下方向、すなわち水中航走体6aのピッチ軸と、ロール軸が水平面上に存在する場合に、ロール軸をX軸、ピッチ軸をY軸とした場合のZ軸方向に作用する力を示すことになる。式(4)の右辺の第1項の「-D
zw」は、粘性抵抗係数に深度速度を乗算した速度の減衰項であり、水中航走体6aが沈下する際に作用する粘性力を示している。式(4)の右辺の第2項の「K
δbδb」は、深度調整舵によって水中航走体6aの上下方向に作用する力を示している。式(4)の右辺の第3項の「F
d」は、外乱により水中航走体6aの上下方向に作用する外乱力であり、水中航走体6aの重量のバランスの崩れを示している。なお、定常時において深度調整舵に舵角が存在している場合、舵角による力を静的な外乱力とみなして、舵角による力を「F
d」に加えるものとする。式(4)の右辺の第4項の「F
t(ΔV
1,ΔV
2,ΔV
3,ΔV
4,ΔV
5)」は、上下制御力であり、タンク22-1~22-5によって水中航走体6aの上下方向に生じる浮力を示している。
【0070】
ピッチ角に関する線形モデルは、次式(5)の運動方程式として表すことができる。
【0071】
【0072】
式(5)に示す物理パラメータの各々の名称と、各々の単位とは、
図14に示す表の通りである。式(5)の左辺の「・」付きの「q」は、ピッチ角速度の微分、すなわちピッチ角加速度であり、ピッチ角加速度にピッチ軸慣性モーメントJ
pを乗算することにより、水中航走体6aのピッチ軸を中心として水中航走体6aに作用する回転力のモーメントを示すことになる。式(5)の右辺の第1項の「-D
pq」は、粘性抵抗係数にピッチ角速度を乗算した速度の減衰項であり、水中航走体6aがピッチ軸を中心に回転する際に、水中航走体6aのピッチ軸方向に作用する粘性力のモーメントを示している。式(5)の右辺の第2項の「-K
pθ」において、「K
p」は、復原モーメント係数であり、「θ」はピッチ角である。水中航走体6aは、ある状態から傾くと、傾いた角度に応じて元の状態に戻るモーメントが作用するように設計されている。したがって、「-K
pθ」は、水中航走体6aがピッチ軸方向に「θ」の角度で傾いた場合に、水中航走体6aのピッチ軸方向に作用する復原力のモーメントを示すことになる。
【0073】
式(5)の右辺の第3項の「Kδrδr」は、ピッチ角調整舵によって水中航走体6aのピッチ軸方向に作用するモーメントを示すことになる。式(5)の右辺の第4項の「Md」は、外乱により水中航走体6aのピッチ軸方向に作用する外乱力のモーメントを示している。なお、定常時においてピッチ角調整舵に舵角が存在している場合、舵角によるモーメントを静的な外乱モーメントとみなして、舵角によるモーメントを「Md」に加えるものとする。式(5)の右辺の第5項の「Mt(ΔV1,ΔV2,ΔV3,ΔV4,ΔV5)」は、トリム制御モーメントであり、タンク22-1~22-5によって水中航走体6aのピッチ軸方向に作用する浮力のモーメントを示している。なお、式(4)及び式(5)におけるΔV1,ΔV2,ΔV3,ΔV4,ΔV5は、上記したように、調整量算出部13aが算出するタンク22-1,22-2,22-3,22-4,22-5の各々における水量の増減を示す調整量である。
【0074】
水中航走体6aの状態を示す状態条件を、ラグランジュの未定乗数法における拘束条件とする。ここでは、水中航走体6aの状態を示す状態条件として、水中航走体6aの上下方向の不平衡量と、ピッチ軸方向の不平衡量とをそれぞれ「0」とする状態条件を採用する。上下方向の不平衡量が「0」の状態とは、水中航走体6aの水中重量が「0[kg]」であり、中性浮力状態になることを意味する。また、ピッチ軸方向の不平衡量が「0」の状態とは、水中航走体6aのピッチ角が「0[rad]」であり、水中航走体6aのロール軸が水平になることを意味する。水中航走体6aの速度が一定である平衡状態であると仮定すると、拘束条件は、次式(6),(7)として示すことができる。
【0075】
【0076】
【0077】
式(6)の右辺の第1項から第3項は、浮量FB制御部12-1が出力する上下指令値Fc[N]によって補償されると仮定する。また、式(7)の右辺の第1項から第4項は、トリムFB制御部12-2が出力するトリム指令値Mc[N・m]によって補償されると仮定する。なお、上記したように定常時において、深度調整舵とピッチ角調整舵とに舵角が存在している場合、定常時に存在する舵角による力及びモーメントが、それぞれ「Fd」と「Md」に加えられるが、定常時に存在する舵角による力及びモーメントも「Fc」と「Mc」によって相殺されると仮定する。この場合、式(6),(7)の拘束条件は、それぞれ次式(8),(9)として表されることになる。
【0078】
【0079】
【0080】
ここで、タンク22-1~22-5による浮力(Ft)、及び浮力のモーメント(Mt)は、それぞれ、次式(10),(11)により求めることができる。
【0081】
【0082】
【0083】
式(10),(11)において、ρは、海水密度[kg/m3]であり、gは、重力加速度[m/s2]である。また、式(11)において、l1~l5の各々は、水中航走体6aの重心からタンク22-1~22-5の各々の重心までの距離である。
【0084】
式(8),(9)に対して式(10),(11)を適用することにより、式(8),(9)を次式(12),(13)に変形することができる。
【0085】
【0086】
【0087】
ここで、ラグランジュの未定乗数法の目的関数として、次式(14)を定義する。
【0088】
【0089】
式(14)は、タンク22-1~22-5の間の水の移動量を評価する評価関数であり、タンク22-1~22-5の水量に関する調整条件を示すことになる。式(14)の評価関数を最小にすることは、タンク22-1~22-5における水量の調整量を最小にすることを意味する。タンク22-1~22-5の水量の調整量を最小にするということは、ポンプ21P-1~21P-7の稼働率を最小にし、また、エネルギ消費を最小にすることを意味する。
【0090】
式(12),(13)の拘束条件と、式(14)の目的関数と、ラグランジュ乗数λ1,λ2とにより次式(15)に示すラグランジュ方程式を立式する。
【0091】
【0092】
式(15)の最適解は、次式(16)に示すように、式(15)を変数であるΔV1~ΔV5、及びラグランジュ乗数λ1,λ2の各々で偏微分した式の各々が「0」になる条件により求めることができる。
【0093】
【0094】
式(16)より7つの式からなる連立方程式を導くことができる。7つの式からなる連立方程式からλ1,λ2を消去することで、浮量FB制御部12-1が出力する上下指令値(Fc)と、トリムFB制御部12-2が出力するトリム指令値(Mc)とから最適解を算出する演算式、すなわちタンク22-1~22-5の各々に対する最適な調整量ΔV1~ΔV5を算出する演算式を求めることができる。上記のようにして求めた最適解を算出する演算式を実行する計算機を調整量算出部13aとする。
【0095】
(第2の実施形態の制御システムによる処理)
以下、第2の実施形態の制御システム100aによる処理について説明する。
【0096】
(運動制御系による処理)
図15は、運動制御系制御装置3aと舵制御装置4aによる処理の流れを示すフローチャートである。
図15の処理が開始される前に、運動制御系制御装置3aに対して、深度目標値と、ピッチ角目標値とが指定される。また、検出部5aは、一定の間隔で深度とピッチ角の制御量を繰り返し検出しているものとする。また、例えば、運動制御系制御装置3aには、ON/OFFスイッチが備えられており、ON状態にされることで、
図15に示す処理が開始される。
【0097】
演算部31-1は、指定された深度目標値と、検出部5aが検出した深度の制御量とを取り込む。演算部31-2は、指定されたピッチ角目標値と、検出部5aが検出したピッチ角の制御量とを取り込む(ステップSa1)。演算部31-1は、深度目標値から深度の制御量を減算して誤差を算出し、算出した誤差を深度FB制御部32-1に出力する。深度FB制御部32-1は、演算部31-1が出力した誤差を取り込み、取り込んだ誤差に基づいて深度調整舵角指令値(δb)を算出する。深度FB制御部32-1は、算出した深度調整舵角指令値(δb)を舵制御装置4aに出力する(ステップSa2-1)。演算部31-2は、ピッチ角目標値からピッチ角の制御量を減算して誤差を算出し、算出した誤差をピッチ角FB制御部32-2に出力する。ピッチ角FB制御部32-2は、演算部31-2が出力した誤差を取り込み、取り込んだ誤差に基づいてピッチ角調整舵角指令値(δr)を算出する。ピッチ角FB制御部32-2は、算出したピッチ角調整舵角指令値(δr)を舵制御装置4aに出力する(ステップSa2-2)。
【0098】
舵制御装置4aは、深度FB制御部32-1が出力する深度調整舵角指令値(δb)に応じて深度調整舵の向きを変える。これにより、深度調整舵による力と、外乱力(Fd)とを合わせた力が水中航走体6aに作用し、水中航走体6aの深度が変わることになる(ステップSa3-1)。舵制御装置4aは、ピッチ角FB制御部32-2が出力するピッチ角調整舵角指令値(δr)に応じてピッチ角調整舵の向きを変える。これにより、ピッチ角調整舵によるモーメントと、外乱モーメント(Md)とを合わせたモーメントが水中航走体6aに作用し、水中航走体6aのピッチ角が変わることになる(ステップSa3-2)。
【0099】
運動制御系制御装置3aのON/OFFスイッチの状態が、ON状態である場合、運動制御系による制御が継続しているものとして(ステップSa4、Yes)、ステップSa1以降の処理が行われる。一方、運動制御系制御装置3aのON/OFFスイッチの状態が、OFF状態である場合、演算部31-1,31-2、深度FB制御部32-1、及びピッチ角FB制御部32-2は動作を停止するため(ステップSa4、No)、処理が終了する。
【0100】
なお、
図15の処理において、ステップSa2-1,Sa3-1の処理と、ステップSa2-2,Sa3-2の処理とは、並列に行われる処理である。
【0101】
(水量制御系による処理)
図16は、水量制御系制御装置1aとタンクシステム2による処理の流れを示すフローチャートである。
図16の処理が開始される前に、水量制御系制御装置1aに対して浮量目標値と、トリム目標値とが指定される。また、検出部5aは、一定の間隔で深度とピッチ角の制御量を繰り返し検出しているものとする。運動制御系制御装置3a及び舵制御装置4aは、運動制御系制御装置3aがONの状態で、
図15に示す処理を継続して行っているものとする。また、例えば、水量制御系制御装置1aには、ON/OFFスイッチが備えられており、ON状態にされることで、
図16に示す処理が開始される。
【0102】
第一演算部11-1は、指定された浮量目標値と、深度FB制御部32-1が出力する深度調整舵角指令値(δb)とを取り込む。第一演算部11-1は、深度調整舵角指令値(δb)を浮量目標値の単位に換算した上で、浮量目標値から換算後の深度調整舵角指令値(δb)を減算して誤差を算出し、算出した誤差を浮量FB制御部12-1に出力する。第一演算部11-2は、指定されたトリム目標値と、ピッチ角FB制御部32-2が出力するピッチ角調整舵角指令値(δr)とを取り込む。第一演算部11-2は、ピッチ角調整舵角指令値(δr)をトリム目標値の単位に換算した上で、トリム目標値から換算後の深度調整舵角指令値(δb)を減算して誤差を算出し、算出した誤差をトリムFB制御部12-2に出力する(ステップSb1)。
【0103】
浮量FB制御部12-1は、PID制御演算により、第一演算部11-1が出力する誤差から上下指令値(Fc)を算出する。浮量FB制御部12-1は、算出した上下指令値(Fc)を第二演算部16aに出力する(ステップSb2-1)。トリムFB制御部12-2は、PID制御演算により、第一演算部11-2が出力する誤差からトリム指令値(Mc)を算出する。トリムFB制御部12-2は、算出したトリム指令値(Mc)を第二演算部16aに出力する(ステップSb2-2)。
【0104】
フィードフォワード制御部15aは、操縦系による状態変化指示入力に基づいた、状態信号の入力の有無を確認する(ステップSb3)。その結果、状態信号の入力が無い場合(ステップSb3、No)、ステップSb4をスキップしてステップSb5に進む。また、状態信号の入力が有った場合(ステップSb3、Yes)、フィードフォワード制御部15aは、入力された状態信号に基づき、状態変化が生じた場合の水中航走体の不平衡量の予測値を取得し、取得した予測値を第二演算部16aに出力する(ステップSb4)。
【0105】
第二演算部16aは、フィードバック制御部12aが算出した指令値と、フィードフォワード制御部15aが取得した予測値とを加算し、上下指令値(Fc)と、トリム指令値(Mc)とを調整量算出部13aに出力する。調整量算出部13aは、出力された上下指令値(Fc)と、トリム指令値(Mc)とを取り込む。調整量算出部13aは、取り込んだ上下指令値(Fc)とトリム指令値(Mc)とを入力として、最適解を算出する演算式による演算を行って調整量ΔV1~ΔV5を算出する。調整量算出部13aは、算出した調整量ΔV1~ΔV5をアクチュエータ制御部14に出力する(ステップSb5)。
【0106】
アクチュエータ制御部14は、調整量算出部13aが出力する調整量ΔV1~ΔV5と、内部の記憶領域に予め記憶させている変換ルールデータとに基づいて、アクチュエータ21であるポンプ21P-1~21P-7、バルブ21V-1~21V-15の各々の駆動手段をON状態、または、OFF状態する制御信号を生成する。アクチュエータ制御部14は、生成した制御信号の各々を、各々に対応するポンプ21P-1~21P-7、バルブ21V-1~21V-15の駆動手段に出力する(ステップSb6)。
【0107】
ポンプ21P-1~21P-7、バルブ21V-1~21V-15の各々の駆動手段が、アクチュエータ制御部14からON状態、または、OFF状態する制御信号を受けると、制御信号に応じた動作を開始し、これにより、タンク22-1~22-5において、移水や注排水が行われることになる(ステップSb7)。
【0108】
水量制御系制御装置1aのON/OFFスイッチの状態が、ON状態である場合、水量制御系による制御が継続しているものとして(ステップSb8、Yes)、ステップSb1以降の処理が行われる。一方、水量制御系制御装置1aのON/OFFスイッチの状態が、OFF状態である場合、第一演算部11-1,11-2、浮量FB制御部12-1、トリムFB制御部12-2、調整量算出部13a、及びアクチュエータ制御部14は、動作を停止するため(ステップSb8、No)、処理が終了する。
【0109】
なお、
図16の処理において、ステップSb2-1の処理と、ステップSb2-2の処理とは、並列に行われる処理である。
【0110】
(シミュレーション結果)
図17及び
図18は、制御システム100aを用いて行ったシミュレーション結果を示すグラフである。
図17、
図18のグラフにおいて横軸は、経過時間を示しており、単位は[秒]であり、横軸の左端の時刻は、「0秒」である。また、
図17、
図18において、縦方向の一点鎖線で示す時刻は、同一時刻であり、この時刻が、水量制御系制御装置1aをON状態にした時刻、すなわち水量制御系制御装置1aが
図16に示す処理を開始した時刻である。検出部5aは、時刻「0秒」において深度とピッチ角の制御量を一定の間隔で検出する処理を開始している。運動制御系制御装置3aは、時刻「0秒」においてON状態になっており
図15に示す処理を開始している。また、運動制御系制御装置3aに対して、
図17(e)の符号71の破線で示す深度目標値が指定され、
図17(f)の符号72の破線で示すピッチ角目標値が指定されている。
【0111】
なお、
図17(c),(d)、(f)では、[rad]の単位で得られた値を[deg]の単位に換算して示している。また、
図17(a),(b),(g),(h)のグラフにおいて[tonf(トン重:ton-force)]及び「tonf・m」の単位は、[N]、[N・m]の単位で得られた値を[tonf]、[tonf・m]の単位に換算して示している。
【0112】
図18(a),(b),(c),(d),(e)のグラフは、それぞれタンク22-1,22-2,22-3,22-4,22-5内の水量を百分率で示したグラフであり、時刻「0秒」においてタンク22-1~22-5の各々は、同一の比率で水を貯留しているものとする。
【0113】
図17(a),(b)のグラフに示すように水中航走体6aに対して時刻0[秒]から少し経過した時刻において、一定の外乱力(F
d)と、一定の外乱モーメント(M
d)とが加えられ、これにより、水中航走体6aの重量のバランスが崩れることになる。運動制御系制御装置3aの深度FB制御部32-1及びピッチ角FB制御部32-2と、舵制御装置4aとによる制御により、
図17(c),(d)のグラフに示すように深度調整舵角度と、ピッチ角調整舵の角度が変化する。
図17(e),(f)のグラフは、それぞれ検出部5aが検出する水中航走体6aの深度とピッチ角の変化を示すグラフである。
図17(e)のグラフに示されるように、外乱力(F
d)が加わることにより、水中航走体6aは沈むため深度が増加し、その後、深度FB制御部32-1による制御によって一定の深度が維持される。ただし、深度FB制御部32-1による制御では、
図17(e)において符号71の破線で示す深度目標値には収束しない。これに対して、
図17(f)のグラフに示されるように、外乱モーメント(M
d)が加わることにより、水中航走体6aはピッチ軸を中心に傾くためピッチ角が増加するが、その後、ピッチ角FB制御部32-2による制御によって、符号72の破線で示すピッチ角目標値に収束している。
【0114】
縦方向の一点鎖線で示す時刻になり、水量制御系制御装置1aが、
図16に示す処理を開始する。水量制御系制御装置1aにおいて、
図17(g)のグラフにおいて符号73の破線で示す浮量目標値が指定され、
図17(h)のグラフにおいて符号74の破線で示すトリム目標値が指定される。水量制御系制御装置1aによる制御が開始されることにより、調整量算出部13aが算出するタンク22-1~22-5の各々に対する調整量ΔV
1~ΔV
5にしたがって、
図18のグラフに示すようにタンク22-1~22-5の各々の水量が徐々に減少し、オーバーシュートすることなく、タンク22-1~22-5の各々が貯留する水量が一定量に収束する。検出部5aが検出する水中航走体6aの深度は、
図17(e)のグラフに示すように、縦方向の一点鎖線で示す時刻以降、乱れが生じることなく、符号71の破線で示す深度目標値に収束する。検出部5aが検出する水中航走体6aのピッチ角は、
図17(f)のグラフに示すように、縦方向の一点鎖線で示す時刻以降、多少の乱れが生じるものの、最終的には、符号72の破線で示すピッチ角目標値に収束する。また、
図17(c),(d)のグラフに示すように、縦方向の一点鎖線で示す時刻以降は、深度調整舵角及びピッチ角調整舵角は、舵の制御を行っていない中立の状態に収束する。また、
図17(g),(h)のグラフに示すように、水中航走体6aの上下方向の浮量は、符号73の破線で示す浮量目標値に収束し、水中航走体6aのトリム制御モーメントも、符号74の破線で示すトリム目標値に収束する。
【0115】
上記した第2の実施形態の構成により、制御システム100aによって安定した自動制御、すなわち、アクチュエータ21の能力制約によって生じる応答遅れを補償し、水量制御系の制御帯域と、既存の制御系である運動制御系との制御帯域との干渉を抑え、浮量目標値及びトリム目標値に向かって運動制御系を含む制御系の全体を並列に収束させるように複数のタンク22-1~22-5の各々に対する最適な水量の調整量を算定してタンク22-1~22-5に対して移水や注排水を行うことが可能になる。言い換えると、アクチュエータ21の能力制約を考慮し、かつ既存の制御系との協調を行いつつ、水中航走体6aの制御系が目標値に収束するように複数のタンクの水量を最適な状態にすることが可能になる。
【0116】
なお、上記の第1の実施形態の制御システム100における水量制御系目標値、及び運動制御系目標値、並びに第2の実施形態の制御システム100aにおける浮量目標値、トリム目標値、深度目標値、及びピッチ角目標値は、水量制御系制御装置1,1a及び運動制御系制御装置3,3aの内部の記憶領域に予め書き込まれる値であってもよいし、陸上に設置した設定装置を利用者が操作して、音響通信や有線ケーブルを介した通信により制御システム100,100aに対してこれらの目標値を伝達するようにしてもよい。また、制御システム100aにおける水量制御系制御装置1a、及び運動制御系制御装置3aのON/OFF状態についても、同様に、陸上に設置した設定装置を利用者が操作して、音響通信や有線ケーブルを介した通信によりON/OFF状態を切り替えるようにしてもよい。
【0117】
上記の第1及び第2の実施形態において、水中航走体6,6aは、例えば、人が搭乗する有人の水中機であるとしているが、無人で自律的に水中を航走する水中無人機であってもよい。
【0118】
また、上記の第2の実施形態において、水中航走体6aの状態変化による姿勢の変化を示す変化量として、ピッチ角を例示したが、水中航走体6aの状態変化による姿勢の変化を示す変化量は、ロール角であってもよいし、ピッチ角とロール角の双方であってもよい。
【0119】
また、上記の第2の実施形態において、フィードフォワード制御部15aは、第一フィードフォワード制御部15-1、第二フィードフォワード制御部15-2、及び第三フィードフォワード制御部15-3を備える構成としたが、これに限られない。フィードフォワード制御部15aは、第一フィードフォワード制御部15-1、第二フィードフォワード制御部15-2、及び第三フィードフォワード制御部15-3のうちの1つのみ、又は2つのみを備える構成としてもよい。
【0120】
第2の実施形態の制御システム100aでは、運動制御系制御装置3aが算出する舵角指令値をフィードバック値として水量制御系制御装置1aにフィードバックする構成となっている。これに対して、第1の実施形態の制御システム100と同様に、制御システム100aにおいても、検出部5aが検出した深度の制御量をフィードバック値として第一演算部11-1にフィードバックし、検出部5aが検出したピッチ角の制御量をフィードバック値として第一演算部11-2にフィードバックするようにしてもよい。また、一般に、水中航走体6,6aでは、ピッチ角調整舵を備えているが、深度調整舵を備えていない場合もある。このような場合には、検出部5aが検出した深度の制御量をフィードバック値として第一演算部11-1にフィードバックし、ピッチ角FB制御部32-2が算出するピッチ角調整舵角指令値(δr)をフィードバック値として第一演算部11-2にフィードバックするという構成にしてもよい。
【0121】
この場合において、第一演算部11-1は、与えられるフィードバック値の単位と、浮量目標値の単位とが一致していない場合、与えられるフィードバック値を浮量目標値の単位に換算した上で、浮量目標値から換算後のフィードバック値を減算することになる。同様に、第一演算部11-2は、与えられるフィードバック値の単位と、トリム目標値の単位とが一致していない場合、与えられるフィードバック値をトリム目標値の単位に換算した上で、トリム目標値から換算後のフィードバック値を減算することになる。例えば、フィードバック値が深度の制御量である場合、深度の時系列の変化から水中航走体6aの上下方向に作用する力を推定することができる。第一演算部11-1は、検出部5aが出力する時系列上において連続した複数の深度の制御量を取り込み、取り込んだ複数の深度の制御量から推定力を算出することにより力の単位への換算を行うことができる。また、フィードバック値がピッチ角の制御量である場合、ピッチ角の時系列の変化から水中航走体6aのピッチ軸方向に作用するモーメントを推定することができる。第一演算部11-2は、検出部5aが出力する時系列上において連続した複数のピッチ角の制御料を取り込み、取り込んだ複数のピッチ角の制御量から推定モーメントを算出することによりモーメントの単位への換算を行うことができる。
【0122】
第2の実施形態の制御システム100aにおいて、フィードバック制御部12aは、浮量FB制御部12-1と、トリムFB制御部12-2という2つの機能部を備えているが、いずれか一方を備えるようにしてもよい。
【0123】
第2の実施形態の制御システム100aにおいて、フィードバック制御部12aは、更に、ロール角の制御指標に対応する機能部を備えてもよい。この場合、運動制御系制御装置3aも、ロール角の制御指標に対応する機能部を備え、当該機能部が出力する指令値をフィードバック値として、フィードバック制御部12aが備えるロール角の制御指標に対応する機能部にフィードバックするようにしてもよい。また、検出部5aが検出するロール角の制御量をフィードバック値として、フィードバック制御部12aが備えるロール角の制御指標に対応する機能部にフィードバックするようにしてもよい。
【0124】
上記の第2の実施形態の制御システム100aにおいて、舵制御装置4aに替えて、深度とピッチ角を調整するスラスタを制御する制御装置を備えるようにしてもよい。この場合、深度FB制御部32-1は、深度を調整するスラスタに対する指令値を算出し、算出した指令値を、スラスタを制御する制御装置と、第一演算部11-1とに出力することになる。また、ピッチ角FB制御部32-2は、ピッチ角を調整するスラスタに対する指令値を算出し、算出した指令値を、スラスタを制御する制御装置と、第一演算部11-2とに出力することになる。また、制御システム100aは、舵制御装置4aを備えると共に、スラスタを制御する制御装置を備えるようにしてもよい。
【0125】
上記の第1の実施形態の
図3において示した伝達要素62として、PID制御方式に替えて、I-PD制御、PI-PD制御などのフィードバック制御方式や、非線形補償や非干渉制御による安定化技術を組み合わせたフィードバック制御方式を適用するようにしてもよい。この場合、第1の実施形態のフィードバック制御部12、及び第2の実施形態の浮量FB制御部12-1及びトリムFB制御部12-2は、PID制御方式から置き替えられるフィードバック制御方式によるに対応する演算を行うことになる。
【0126】
上記の第1及び第2の実施形態の調整量算出部13,13aが実行する最適解を算出する演算式をラグランジュの未定乗数法により求めているが、ラグランジュの未定乗数法以外の最適化手法を適用して最適解を算出する演算式を求めるようにしてもよい。また、調整量算出部13,13aに適用される計算機の処理能力が高い場合、調整条件と、状態条件とを条件とする逐次最適化計算をすることにより、最適解を算出する演算式を求めることなく、直接、複数のタンク22-1~22-5の各々に対する最適な水量の調整量を算出する最適化手法を用いるようにしてもよい。
【0127】
図19は、一実施形態に係る水量制御系制御装置1,1a、及び運動制御系制御装置3,3aのハードウェア構成の一例を示す図である。コンピュータ90は、CPU91、主記憶装置92、補助記憶装置93、入出力インタフェース94、通信インタフェース95を備える。上述の水量制御系制御装置1,1a、及び運動制御系制御装置3,3aは、コンピュータ90に実装される。そして、上述した各機能は、プログラムの形式で補助記憶装置93に記憶されている。CPU91は、プログラムを補助記憶装置93から読み出して主記憶装置92に展開し、当該プログラムに従って上記処理を実行する。また、CPU91は、プログラムに従って、記憶領域を主記憶装置92に確保する。また、CPU91は、プログラムに従って、処理中のデータを記憶する記憶領域を補助記憶装置93に確保する。
【0128】
なお、水量制御系制御装置1,1a、及び運動制御系制御装置3,3aの全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各機能部による処理を行ってもよい。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、CD、DVD、USB等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また、このプログラムが通信回線によってコンピュータ90に配信される場合、配信を受けたコンピュータ90が当該プログラムを主記憶装置92に展開し、上記処理を実行しても良い。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0129】
以上のとおり、本開示に係るいくつかの実施形態を説明したが、これら全ての実施形態は、例として提示したものであり、発明の範囲を限定することを意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これらの実施形態及びその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0130】
<付記>
各実施形態に記載の水量制御系制御装置1、1a、制御システム100、100a、水量制御方法、プログラムは、例えば以下のように把握される。
【0131】
(1)第1の態様に係る水量制御系制御装置1、1aは、水中航走体6、6aの運動を制御する運動制御装置4、4aと、運動制御系目標値及び前記水中航走体6、6aから検出される制御量に基づいて前記運動制御装置4、4aに対する指令値を算出する運動制御系制御装置3,3aと、複数のタンク22と、前記タンク22の各々の水量を調整するアクチュエータ21とを有する前記水中航走体6、6aの前記タンク22の各々の水量を増減させる制御を行う水量制御系制御装置1、1aであって、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータ21の応答遅れを補償し、かつ前記運動制御系制御装置3,3aの制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出するフィードバック制御部12、12aと、前記水中航走体6、6aの位置及び姿勢の少なくとも一方に影響を与える前記水中航走体6、6aの状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体6、6aの不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得するフィードフォワード制御部15、15aと、前記フィードバック制御部12、12aが算出する前記指令値、及び前記フィードフォワード制御部15、15aが取得する前記予測値を入力とし、複数の前記タンク22の水量に関する調整条件と、前記水中航走体6、6aの状態を示す状態条件とを条件とする最適化手法により前記タンク22の各々に対する水量の増減を示す調整量を算出する調整量算出部13、13aと、を備える。
【0132】
(2)第2の態様に係る水量制御系制御装置1、1aは、(1)の水量制御系制御装置1、1aであって、前記水中航走体6、6aの状態変化に関する前記状態信号は、前記水中航走体6、6aの操縦系による状態変化指示入力に基づいて生成される。
【0133】
(3)第3の態様に係る水量制御系制御装置1、1aは、(2)の水量制御系制御装置1、1aであって、前記水中航走体6、6aの状態変化は、前記水中航走体6、6aの前進速力、及び前記水中航走体6、6aの姿勢角の少なくとも一方の変化量を含む。
姿勢角としては、ピッチ角、ロール角が挙げられる。
【0134】
(4)第4の態様に係る水量制御系制御装置1、1aは、(2)又は(3)の水量制御系制御装置1、1aであって、前記水中航走体6、6aの状態変化は、前記水中航走体6、6aの水中における深度の変化と、前記深度の変化に応じて水温の変化と、に基づいて取得される排水量の変化量を含む。
【0135】
(5)第5の態様に係る水量制御系制御装置1、1aは、(2)から(4)の何れか一つの水量制御系制御装置1、1aであって、前記水中航走体6、6aの状態変化は、前記水中航走体6、6aに搭乗している乗員の前記水中航走体6、6a内における配置を含む。
【0136】
(6)第6の態様に係る制御システム100、100aは、水中航走体6、6aの運動を制御する運動制御装置4、4aと、運動制御系目標値及び前記水中航走体6、6aから検出される制御量に基づいて前記運動制御装置4、4aに対する指令値を算出する運動制御系制御装置3,3aと、前記水中航走体6、6aに備えられる複数のタンク22と、前記タンク22の各々の水量を調整するアクチュエータ21と、水量制御系制御装置1、1aと、を備える制御システム100、100aであって、前記水量制御系制御装置1、1aは、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータ21の応答遅れを補償し、かつ前記運動制御系制御装置3,3aの制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出するフィードバック制御部12、12aと、前記水中航走体6、6aの位置及び姿勢の少なくとも一方に影響を与える前記水中航走体6、6aの状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体6、6aの不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得するフィードフォワード制御部15、15aと、前記フィードバック制御部12、12aが算出する前記指令値、及び前記フィードフォワード制御部15、15aが取得する前記予測値を入力とし、複数の前記タンク22の水量に関する調整条件と、前記水中航走体6、6aの状態を示す状態条件とを条件とする最適化手法により前記タンク22の各々に対する水量の増減を示す調整量を算出する調整量算出部13、13aと、を備える。
【0137】
(7)第7の態様に係る水量制御方法は、水中航走体6、6aの運動を制御する運動制御装置4、4aと、運動制御系目標値及び前記水中航走体6、6aから検出される制御量に基づいて前記運動制御装置4、4aに対する指令値を算出する運動制御系制御装置3,3aと、複数のタンク22と、前記タンク22の各々の水量を調整するアクチュエータ21とを有する前記水中航走体6、6aにおける水量制御方法であって、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータ21の応答遅れを補償し、かつ前記運動制御系制御装置3,3aの制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出し、前記水中航走体6、6aの位置及び姿勢の少なくとも一方に影響を与える前記水中航走体6、6aの状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体6、6aの不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得し、算出した前記指令値、及び取得した前記予測値を入力とし、複数の前記タンク22の水量に関する調整条件と、前記水中航走体6、6aの状態を示す状態条件とを条件とする最適化手法により前記タンク22の各々に対する水量の増減を示す調整量を算出する。
【0138】
(8)第8の態様に係るプログラムは、水中航走体6、6aの運動を制御する運動制御装置4、4aと、運動制御系目標値及び前記水中航走体6、6aから検出される制御量に基づいて前記運動制御装置4、4aに対する指令値を算出する運動制御系制御装置3,3aと、複数のタンク22と、前記タンク22の各々の水量を調整するアクチュエータ21とを有する前記水中航走体6、6aが備えるコンピュータに、水量制御系目標値と、フィードバック値とを入力とし、前記アクチュエータ21の応答遅れを補償し、かつ前記運動制御系制御装置3,3aの制御帯域との干渉を抑えるフィードバック制御方式による演算により前記水量制御系目標値に対する指令値を算出する手順、前記水中航走体6、6aの位置及び姿勢の少なくとも一方に影響を与える前記水中航走体6、6aの状態変化に関する状態信号を入力とし、前記状態信号に基づき、前記状態変化が生じた場合の前記水中航走体6、6aの不平衡重量、及び不平衡モーメントの少なくとも一方を含む不平衡量の予測値を取得する手順、算出した前記指令値、及び取得した前記予測値を入力とし、複数の前記タンク22の水量に関する調整条件と、前記水中航走体6、6aの状態を示す状態条件とを条件とする最適化手法により前記タンク22の各々に対する水量の増減を示す調整量を算出する手順、を実行させる。
【符号の説明】
【0139】
1、1a…水量制御系制御装置
2…タンクシステム
3、3a…運動制御系制御装置
4…運動制御装置
4a…舵制御装置(運動制御装置)
5、5a…検出部
6、6a…水中航走体
7…加算器
8…加算器
11、11-1、11-2…第一演算部
12、12a…フィードバック制御部
12-1…浮量FB制御部
12-2…トリムFB制御部
13、13a…調整量算出部
14…アクチュエータ制御部
15、15a…フィードフォワード制御部
15-1…第一フィードフォワード制御部
15-2…第二フィードフォワード制御部
15-3…第三フィードフォワード制御部
16、16a、16a-1、16a-2…第二演算部
21…アクチュエータ
21P-1、21P-3、21P-6…ポンプ
21V-1、21V-3、21V-11…バルブ
22、22-1、22-2、22-3、22-5…タンク
31-1、31-2…演算部
32-1…深度FB制御部
32-2…ピッチ角FB制御部
60…加え合わせ点
61…水量制御系
62、63…伝達要素
64…加え合わせ点
65…制御対象
66…加え合わせ点
67…運動制御系
68…フィードフォワード制御器
69…加え合わせ点
90…コンピュータ
91…CPU
92…主記憶装置
93…補助記憶装置
94…入出力インタフェース
95…通信インタフェース
100…制御システム
100a…制御システム
151a…第一不平衡量取得部
151b…第二不平衡量取得部
151c…第三不平衡量取得部
152a…第一データ記憶部
152b…第二データ記憶部
152c…第三データ記憶部