JP2023028450A - バランス状態推定装置、バランス状態推定方法、およびプログラム - Google Patents

バランス状態推定装置、バランス状態推定方法、およびプログラム Download PDF

Info

Publication number
JP2023028450A
JP2023028450A JP2021134149A JP2021134149A JP2023028450A JP 2023028450 A JP2023028450 A JP 2023028450A JP 2021134149 A JP2021134149 A JP 2021134149A JP 2021134149 A JP2021134149 A JP 2021134149A JP 2023028450 A JP2023028450 A JP 2023028450A
Authority
JP
Japan
Prior art keywords
balance
balance state
subject
motion
prediction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021134149A
Other languages
English (en)
Inventor
泰三 吉川
Taizo Yoshikawa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2021134149A priority Critical patent/JP2023028450A/ja
Publication of JP2023028450A publication Critical patent/JP2023028450A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)
  • Rehabilitation Tools (AREA)

Abstract

Figure 2023028450000001
【課題】利用者の動作をより好適に支援することができるバランス状態推定装置、バランス状態推定方法、およびプログラムを提供すること。
【解決手段】対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測部と、前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新部と、最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定部と、を備え、前記動作予測部は、前記対象者の動作予測処理を第1の間隔で実行し、前記バランス状態推定部は、前記バランス状態の推定処理を前記第1の間隔よりも短い第2の間隔で実行する、バランス状態推定装置。
【選択図】図1

Description

本発明は、バランス状態推定装置、バランス状態推定方法、およびプログラムに関する。
少子高齢化に伴う労働人口減少への対策として、労働生産性を上げることが企業にとって急務となっている。そのためには、労働者のパフォーマンスを最適化するように作業環境を構築し、今の業務をより少ない人数で行えるようにすることが必要である。例えば、エルゴノミクスに基づいて労働者の姿勢を最適化することにより、パフォーマンスの向上や疲労の軽減を実現することが期待されている。また、ロボットやIT技術を活用することで過酷な作業をなくし、女性や外国人、高齢者などが熟練の作業者と同様に活躍できるようにすることが期待されている。
近年、物流や介護施設の現場を中心に、作業者の動作を支援する装着型の装置(一般にアシストスーツやアシストスーツなどと言われる)が普及してきている。例えば、物流や工場等の現場では、このようなアシストスーツを着用して作業することにより、重量物を簡単に持ち上げたり、歩行の補助をしたりすることで、労働者の作業負担を減らすことが可能となってきている。また、介護施設やリハビリテーション施設などでは、アシストスーツが患者の歩行支援や歩行訓練等に活用されているといった事例もある。このように、アシストスーツは、労働生産性の向上に加え、医療や介護などの分野にも活用の幅が広がってきている。このような用途の拡大は今後さらに進み、特定の分野を超えて一般家庭にも及ぶことが想定される。
このような背景により、従来、利用者自身の体重や作業対象物の重量等によって作業中の利用者の体にかかる負担を軽減すること、利用者の動きを検知して動作を補助すること、を主な目的としてアシストスーツの開発が行われている(例えば、特許文献1および2参照)。
特許第6278890号公報 国際公開第2018/174151号
しかしながら、従来技術では、アシストスーツによる支援動作が必ずしも適切なタイミングで行われず、利用者がバランスを崩してしまう可能性があった。最悪の場合、利用者は、バランスを崩したことによって転倒する可能性もあるので、利用者が上手くバランスを取れない状況に陥ってしまうことは、労働生産性が低下するだけでなく、安全面でもマイナスである。特に、物流や介護施設の現場では、重量の大きな物体の荷揚げや運搬といった負荷の大きな動作が多いことが想定されるので、転倒による被害も大きくなり危険である。
本発明は、このような事情を考慮してなされたものであり、利用者の動作をより好適に支援することができるバランス状態推定装置、バランス状態推定方法、およびプログラムを提供することを目的の一つとする。
この発明に係るバランス状態推定装置、バランス状態推定方法、およびプログラムは、以下の構成を採用した。
(1):この発明の一態様に係るバランス状態推定装置は、対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測部と、前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新部と、最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定部と、を備え、前記動作予測部は、前記対象者の動作予測処理を第1の間隔で実行し、前記バランス状態推定部は、前記バランス状態の推定処理を前記第1の間隔よりも短い第2の間隔で実行するものである。
(2):上記(1)の態様において、前記動作予測部は、前記対象者の動作として、前記対象者の左右の脚のうち対象の脚の踵が接地する位置およびタイミングを予測し、前記制御モデル更新部は、予測された前記位置およびタイミングに基づいて、前記対象の脚のバランス制御モデルを更新するものである。
(3):上記(1)または(2)の態様において、前記バランス状態推定部は、前記最新のバランス制御モデルに基づいてゼロモーメントポイントを予測し、その予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいてバランス状態を推定するものである。
(4):上記(1)または(2)の態様において、前記バランス状態推定部は、前記動作の予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいてバランス状態を推定するものである。
(5):上記(1)または(2)の態様において、前記バランス状態推定部は、前記最新のバランス制御モデルに基づいてゼロモーメントポイントを予測し、その予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいて第1のバランス状態を推定し、前記動作の予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいて第2のバランス状態を推定し、前記第1のバランス状態および前記第2のバランス状態に基づいて最終的なバランス状態を判定するものである。
(6):上記(1)から(5)のいずれかの態様において、前記制御モデル更新部は、前記バランス制御モデルの構築に用いるパラメータであって、前記対象者の動作を特徴づけるパラメータに関し、遊脚終期とそれ以外とで異なるパラメータを使用して前記バランス制御モデルを更新するものである。
(7):上記(6)の態様において、前記パラメータは、相空間において前記対象者の運動を特徴づける固有値である。
(8):上記(1)から(7)のいずれかの態様において、前記バランス状態推定部は、最新の前記バランス制御モデルに基づいて現在のゼロモーメントポイントを算出し、算出したゼロモーメントポイントを、前記対象者の動きを支援するアシストスーツのコントローラに通知するものである。
(9):この発明の一態様に係るバランス状態推定方法は、コンピュータが、対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測処理と、前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新処理と、最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定処理と、を実行し、前記動作予測処理を第1の間隔で実行し、前記バランス状態推定処理を、前記第1の間隔よりも短い第2の間隔で実行するものである。
(10):この発明の一態様に係るプログラムは、コンピュータに対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測処理と、前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新処理と、最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定処理と、を実行させ、前記動作予測処理を第1の間隔で実行させ、前記バランス状態推定処理を、前記第1の間隔よりも短い第2の間隔で実行させるものである。
(1)~(10)によれば、対象者の動作を予測する動作予測処理を第1の間隔で実行し、動作予測結果に基づいてバランス制御モデルを更新する制御モデル更新処理を第1の間隔よりも短い第2の間隔で実行することにより、利用者の動作をより好適に支援することができる。
歩行アシストシステムの構成の概略を示す図である。 バランス状態推定装置および歩行学習装置の構成例を示す図である。 エコーステートネットワークの概略を示す図である。 COMに関するパラメータを示す図である。 歩行運動を相空間上に表した図である。 立位安定化状態の人に対する摂動試験の概略を示す図である。 上記摂動試験の結果を示す図である。 歩行予測処理の開始タイミングの第1の例を示す図である。 歩行予測処理の開始タイミングの第2の例を示す図である。 右脚のバランス状態推定処理の実行タイミングの一例を示す図である。 歩行予測結果の更新状況と、バランス状態の推定結果に基づくバランス制御のタイミングとの関係性を示す図である。 バランス制御モデルの計算における固有値の設定例を示す図である。 バランス制御モデルの固有値を切り替えながら、現在のZMPを求める処理の流れの一例を示すフローチャートである。 バランス状態判定処理と、歩行予測処理およびバランス状態推定処理との入出力関係を示す図である。 バランス状態判定処理の流れの一例を示すフローチャートである。 第1評価処理の流れの一例を示すフローチャートである。 第2評価処理の流れの一例を示すフローチャートである。
以下、図面を参照し、本発明のバランス状態推定装置、バランス状態推定方法、およびプログラムの実施形態について説明する。なお、本実施形態において、「リアルタイム」とは完全な同時のみを意味する概念ではなく、関連する処理や通信等に要する時間を許容可能な遅延として含み得る概念であるものとする。
図1は、実施形態の歩行アシストシステム1の構成の概略を示す図である。歩行アシストシステム1は、アシストスーツを装着した対象者の姿勢に関して連続的に測定される情報をもとに以下の機能を複合的に実現することによって、対象者の動作をより好適に支援することを可能にするものである。
(1)人型ロボットのバランス制御において培われてきたゼロモーメントポイントフィードバック制御技術に基づいて人間のバランス制御モデルを構築し、構築したバランス制御モデルに基づいて対象者のバランス状態を推定/予測する機能。
(2)機械学習により対象者の動作を学習し、その学習結果を用いてバランス制御モデルを構築する機能。具体的には、学習結果に基づいて対象者の動作を予測し、その予測結果に基づいてバランス制御モデルをリアルタイムに更新する。
(3)対象者の動作予測結果と、バランス制御モデルによるバランス状態の推定結果とを統合して、対象者のバランス状態をリアルタイムに判定する機能。
実施形態の歩行アシストシステム1は、例えば、アシストスーツ10と、床反力センサ20と、IMU(Inertial Measurement Unit:慣性測定装置)30と、バランス状態推定装置40と、歩行学習装置50とを備える。アシストスーツ10は、電動機によって得られる動力を用いて装着者Uの歩行を支援する装置(ロボットスーツやパワードスーツなどと呼ばれる場合もある。)である。アシストスーツ10は、例えば、モータ11と、伝動部12と、コントローラ13とを備える。モータ11は、電力を動力に変換する。伝動部12は、モータ11によって生成された動力を装着者Uの体に伝達する。例えば、伝動部12の一端はモータ11に接続され、他端が用者Uの大腿部に固定される。伝動部12は、モータ11の動力を装着者Uの左右の大腿部を前後方向に交互に引っ張る力に変換することにより、装着者Uの歩行を補助する。コントローラ13は、バランス状態推定装置40から供給されるバランス情報に基づいてモータ11の駆動を制御することにより、装着者Uのバランスを適切に維持しつつ、装着者Uの歩行を支援することができる。バランス情報は、歩行中の装着者Uのバランス状態を示す情報(以下「バランス情報」という。)であり、具体的には、各時点のZMPの推定結果を示す情報である。
床反力センサ20は、装着者Uの左右の足底部に設置され、足底部にかかる床反力を測定する。床反力センサ20は、左右の床反力の測定データをバランス状態推定装置40に送信する。IMU30は、装着者Uの体の各部に設置され、各部の慣性力を測定する。IMU30は、各部の慣性力の測定データをバランス状態推定装置40に送信する。
バランス状態推定装置40は、床反力センサ20の測定データと、IMU30の測定データとに基づいて装着者Uのバランス状態をリアルタイムで推定し、その推定結果をバランス情報としてコントローラ13に送信する。具体的には、バランス状態推定装置40は、装着者Uについて予め学習された歩行予測モデルに基づいて装着者Uの歩行を予測し、その予測結果に基づいて歩行中の装着者Uのバランス状態を推定するものである。歩行予測モデルは「動作予測モデル」の一例である。
歩行学習装置50は、機械学習により歩行予測モデルを生成し、生成した歩行予測モデルをバランス状態推定装置40に供給する装置である。
図2は、実施形態のバランス状態推定装置40および歩行学習装置50の構成例を示す図である。説明の都合上、まず歩行学習装置50の構成について説明した後、バランス状態推定装置40の構成について説明する。
(歩行学習装置の構成)
歩行学習装置50は、例えば、オフラインデータ入力部51と、教師データ生成部52と、機械学習部53と、学習済みモデル記憶部54とを備える。これらの構成要素は、例えば、CPU(Central Processing Unit)などのハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)などのハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めHDD(Hard Disk Drive)やフラッシュメモリなどの記憶装置(非一過性の記憶媒体を備える記憶装置)に格納されていてもよいし、DVDやCD-ROMなどの着脱可能な記憶媒体(非一過性の記憶媒体)に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。
オフラインデータ入力部51は、歩行予測モデルEMの学習に用いられる教師データを生成するためのデータ(以下「オフラインデータ」という。)を取得する。具体的には、オフラインデータは、歩行中の装着者Uの運動状態を示すデータ(歩行データ)である。例えば、オフラインデータとしての歩行データ(以下「オフライン歩行データ」という。)は、図1に示した床反力センサ20およびIMU30を装着した装着者Uにテスト歩行を行わせ、そのテスト歩行中における床反力および慣性力を測定することにより取得される。オフラインデータ入力部51は、床反力センサ20およびIMU30から測定データを受信する通信インタフェースとして構成されてもよいし、マウスやキーボード等の入力装置により、予め取得済みのオフライン歩行データの入力操作を受け付けるように構成されてもよい。オフラインデータ入力部51は、入力した装着者Uのオフライン歩行データを教師データ生成部52に出力する。
教師データ生成部52は、オフラインデータ入力部51からオフライン歩行データを入力し、入力したオフライン歩行データに基づいて歩行予測モデルEMを学習するための教師データを生成する。具体的には、本実施形態における歩行予測モデルEMは、装着者Uの歩行において遊脚が着地する位置およびタイミングを予測するものである。そのため、例えば、教師データ生成部52は、床反力および慣性力の測定データを各歩行サイクルに対応づけ、歩行サイクルごとの測定データに対して、歩行サイクルの終了時(すなわち遊脚の着地時)における着地位置および着地タイミングを示す着地情報を対応づけたものを教師データとして生成する。
教師データ生成部52は、マウスやキーボード等の入力装置により、このような対応づけを行う操作の入力を受け付けるように構成されてもよいし、そのような対応づけを行う処理をプログラムによって実行するように構成されてもよい。なお、教師データ生成部52は、機械学習の学習モデルに応じて、着地情報に加えて、他の情報を測定データに対応づけるように構成されてもよい。例えば、教師データ生成部52は、各歩行サイクルの順序を識別可能な情報や、各歩行サイクルに対応する脚(右脚または左脚)を識別可能な情報、各測定データを取得した床反力センサ20およびIMU30の設置位置(すなわち検出位置)を識別可能な情報などを測定データに対応づけるように構成されてもよい。
なお、予め教師データが生成されている場合、オフラインデータ入力部51を、教師データを入力する教師データ入力部として構成することで、歩行学習装置50から教師データ生成部52が省略されてもよい。
機械学習部53は、教師データ生成部52によって生成された教師データを機械学習モデルに適用することにより歩行予測モデルEMを学習する。機械学習部53は、機械学習により生成した歩行予測モデルEMEMを学習済みモデル記憶部54に格納する。例えば、機械学習部53は、測定データを入力して着地情報を出力するエコーステートネットワーク(Echo State Network)を歩行予測モデルEMとして構築するように構成されてもよい。図3は、エコーステートネットワークの概略を示す図である。エコーステートネットワークは、リザーバーコンピューティング(Reservoir Computing:RC)という種類のニューラルネットワークである。RCは、データ量が少ない状況あるいは限られた資源(資金、計算能力)の元で学習済みモデルを構築したい場合に有効な学習手法であり、エコーステートネットワークはRCにおける代表的な学習モデルの一つである。
具体的には、RCは学習されていない重み(ランダム重み)で過去の情報を受け取り、入力、過去情報の伝搬部分は固定されたランダム重みで計算を行う。リザーバー層は複数のニューロンがスパースでランダムに連結された再帰的なネットワークで構成される。リードアウト層は、リザーバー層のニューロンが持つ状態と入力データを使って、出力の予測を行う。出力の重みのみをタスクに最適な出力をだすように学習が行われる。従って、非常に低い計算コストでモデルを構築することができることが特徴である。また、エコーステートネットワークでは、リザーバーからリードアウト層への出力の重みを誤差によって修正することにより、出力の重みの学習における破滅的忘却を回避しながら機械学習を継続し得るという特徴もある。
なお、機械学習部53は、測定データを入力して着地情報を出力する歩行予測モデルEMを構築することができれば任意の学習モデルを用いてもよい。例えば、機械学習部53は、エコーステートネットワーク以外のニューラルネットワークやディープラーニング、LSTM(Long Short-Term Memory)、線形回帰、決定木、ランダムフォレスト、ロジスティック回帰、サポートベクタマシン(Support Vector Machine:SVM)、ナイーブベイズ(単純ベイズ分類器)、k近傍法、クラスタリング(k平均法)、アソシエーション分析等の学習モデルを用いて歩行予測モデルEMを構築するように構成されてもよい。
学習済みモデル記憶部54は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。学習済みモデル記憶部54は機械学習部53によって生成された歩行予測モデルEMを記憶する。なお、学習済みモデル記憶部54に記憶された歩行予測モデルEMは、所定の方法でバランス状態推定装置40に供給される。
(バランス状態推定装置の構成)
次に、バランス状態推定装置40の構成について説明する。バランス状態推定装置40は、例えば、オンラインデータ入力部41と、学習済みモデル記憶部42と、歩行予測部43と、制御モデル更新部44と、バランス状態推定部45とを備える。これらの構成要素は、例えば、CPU(Central Processing Unit)などのハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)などのハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めHDD(Hard Disk Drive)やフラッシュメモリなどの記憶装置(非一過性の記憶媒体を備える記憶装置)に格納されていてもよいし、DVDやCD-ROMなどの着脱可能な記憶媒体(非一過性の記憶媒体)に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。
オンラインデータ入力部41は、歩行中の装着者Uについて歩行予測のために用いられる歩行予測モデルEMへの入力データ(以下「オンラインデータ」という。)を取得する。具体的には、オンラインデータは、歩行予測モデルEMへの入力データとなる歩行データであり、歩行中の装着者Uについて測定される床反力および慣性力のリアルタイムの測定データである。例えば、オンラインデータ入力部41は、床反力センサ20およびIMU30から測定データを受信する通信インタフェースとして構成される。オンラインデータ入力部41は、入力した装着者Uの歩行データを歩行予測部43に出力する。
学習済みモデル記憶部42は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。学習済みモデル記憶部42は歩行学習装置50から供給された歩行予測モデルEMのデータMDを予め記憶している。
歩行予測部43は、学習済みモデル記憶部42に記憶されている歩行予測モデルEMのデータMDと、オンラインデータ入力部41から出力される装着者Uの歩行データとに基づいて装着者Uの歩行を予測する。ここで、歩行予測部43は、リアルタイムに取得される歩行データに基づいて歩行予測を繰り返し実行することにより、歩行予測結果を随時更新していくものである。歩行予測部43は、歩行予測結果を示す情報を、随時、制御モデル更新部44およびバランス状態推定部45に出力する。具体的には、歩行予測部43は、歩行中の装着者Uの遊脚が着地する位置およびタイミングを予測する。歩行予測部43は「動作予測部」の一例であり、歩行予測処理は「動作予測処理」の一例である。
制御モデル更新部44は、歩行予測部43によって予測された装着者Uの歩行に基づいてバランス制御モデルを更新する。具体的には、制御モデル更新部44は、歩行予測結果に基づいてバランス制御モデルを構築する処理を、随時更新される歩行予測結果ごとに行い、バランス制御モデルを新たに構築したバランス制御モデルに置き換えていくことにより、バランス制御モデルを更新していく。制御モデル更新部44は、更新したバランス制御モデルを随時バランス状態推定部45に供給する。
バランス状態推定部45は、装着者Uのバランス状態を推定/監視しながら、必要に応じてコントローラ13に対して装着者Uのバランス状態の制御を指示するものである。具体的には、バランス状態推定部45は、装着者Uについての歩行予測結果と、随時更新される最新のバランス制御モデルとに基づいて装着者Uのバランス状態を判定し、装着者Uのバランス状態が不安定であると判定した場合に、コントローラ13に対してバランス制御の実行を指示する。なお、バランス状態推定部45は、バランス状態の判定結果を装着者Uに報知する動作を行うように構成されてもよい。
なお、バランス状態推定部45は、装着者Uのバランス情報をアシストスーツ10と異なる他の装置やシステムに供給するように構成されてもよい。例えば、バランス状態推定部45は、装着者Uのバランス状態を分析または評価する評価システムESに対してバランス情報を提供してもよい。このような評価システムESに対してバランス情報が提供されることにより、アシストスーツ10の利用について定量的または定性的な評価を行うことが可能となり、アシストスーツ10の開発が促進される。また、このような評価結果を装着者Uにフィードバックすることにより、装着者Uは、リハビリやスポーツ、工場の生産ライン等の現場において効果的にトレーニングを行うことができる。
(バランス制御モデル)
続いて、バランス制御モデルについて説明する。ここでは、本実施形態におけるバランス制御モデルの一例として、人型ロボットの重心(COM:Center of mass)とZMPとの関係性を記述したCOM-ZMPモデルに基づくバランス制御モデルについて説明する。なお、ここで説明するバランス制御モデルの内容は下記の参考文献に詳細に記載されているため、ここでは概略を説明するにとどめ、詳細な説明を割愛する。
(参考文献)M. Kojima and T. Sugihara, "Identification of a Step-and-Brake Controller of a Human Based on COM-ZMP Model and Terminal Capturability Condition," 2020 8th IEEE RAS/EMBS International Conference for Biomedical Robotics and Biomechatronics (BioRob), 2020, pp. 158-163, doi: 10.1109/BioRob49111.2020.9224372.
図4は、COMに関するパラメータを示す図である。xはロボットRの進行方向におけるCOMの位置を表し、zは垂直方向におけるCOMの位置を表す。なお、ここでは、COMの垂直方向における動きは無視できるほど小さい(すなわちzは一定)ものとし、COMの周辺の慣性トルクも無視できるほど小さいものとする。また、xは進行方向におけるZMPの位置を表すが、ZMPは床上の点であるので垂直方向におけるZMPの位置z=0である。したがって、以降ではZMPの位置といえばxを指すものとする。xZ_minはZMPの位置の最小値を表し、xZ_maxはZMPの位置の最大値を表す(添え字の_は下付きを意味する。)。xはxZ_minからxZ_maxまでの間で変化する。まず、COMの運動方程式は、例えば次の(1)式および(2)式によって表される。
Figure 2023028450000002
Figure 2023028450000003
ここでgは重力加速度を表す。また、上の2つのドットが付されたパラメータは、そのパラメータが二階微分であることを表している。基本的には、ロボットRは、理想の歩行パターンをコンピュータで生成し、これに従うように関節を動かして歩くように制御されるものである。したがって、ロボットRが理想的なバランスを保って歩行をしているときには、理想的な歩行パターンに基づくZMP(以下「目標ZMP」という。)と、実際の床反力作用点とが一致する。この目標ZMPは、例えば、次の(3)式および(4)式のようにCOMの状態の区分的線形フィードバックによって決定される。(4)式において、xはZMPの基準位置であり、kおよびkはフィードバックゲインである。
Figure 2023028450000004
Figure 2023028450000005
ここで、実際のZMPが正しく操作されて目標ZMPを追跡する(すなわちz=x )と仮定すると、上記のフィードバックは次の(5)式のように区分的アフィンとなる。
Figure 2023028450000006
図5は、(5)式の歩行運動を相空間上に表した図である。図5に示す相空間の固有値および固有ベクトルは次の(6)式で表される。このことから、歩行中のロボットRは、COMが不安定な状態で移動することが分かる。
Figure 2023028450000007
図6は、立位安定化状態の人に対する摂動試験の概略を示す図である。図7は、当該摂動試験の結果を示す図である。図6(A)~図6(D)は立位安定化状態の人に対して与えた摂動と、与えられた摂動に対して人がバランスを取るために行った動作の概略を表している。
例えば図6(A)は、人が、後ろから押された力に対して一旦前のめりになった後、姿勢を後ろに戻した場合を表している。また、例えば図6(B)は、人が自身の加速に対して、一旦前のめりになった後、バランスを後ろに戻した場合を表している。また、例えば図6(C)は、人が、後ろから押された力に対して一旦前のめりになり、そのまま前方にバランスを崩した場合を表している。また、例えば図6(D)は、人が、自身の加速に対して、前側の脚で踏ん張り、バランスをとった場合を表している。
図7(A)は、このような摂動試験時の人の挙動を計算により求めた結果を相空間上に表した図であり、図7(B)は、摂動試験時の人の挙動を実際に測定した結果を相空間上に表したものである。図7(A)および図7(B)の結果から、計測結果が計算結果と精度良く一致することが分かるとともに、摂動が与えられた場合の人の挙動の不安定性は、以下のような性質を有することが確認された。
(1)動作点の軌跡群はx軸(position)方向に非対称であり、前後方向に指向性がある。
(2)収束成分の漸近線L1と発散成分の漸近線L2の傾きは非対称である。
(3)起き上がり運動と、前のめり運動とでは漸近線の傾きが異なる。
このような測定結果によれば、2つの固有値の絶対値は常に等しいとは限らない。そこで、本実施形態では、相空間における2つの漸近線をそれぞれ異なる固有値ζおよびζで表す。そうすると、相空間の固有値および固有ベクトルは次の(7)式のように表される。
Figure 2023028450000008
この場合、相空間のシステムマトリックスは次の(8)式のように表され、システムモデルおよび運動方程式は(9)式および(11)式のように表される。
Figure 2023028450000009
Figure 2023028450000010
Figure 2023028450000011
ここで、2つの固有値がλ=ζ,-ζで表される場合、運動方程式は次の(11)式および(12)式のように表される。
Figure 2023028450000012
Figure 2023028450000013
ここで、一定時間後に重心が停止する条件としてlim{t→∞}dx/dt=0を与えると、踏み出して安定化できる位置(x:Capture Point)は次の(13)式のように表される。(13)式におけるxは歩行サイクルの初期位置である。
Figure 2023028450000014
この場合、目標ZMPは、次の(14)式の最小化問題を解くことにより、(15)式のように表される。ここで、xはグローバル座標系における支持脚の位置を表す。xSはグローバル座標系における遊脚の着地予測位置を表す。すなわち、xSP=x-xは、歩幅(支持脚からみた遊脚の相対的な着地位置)を表す。制御モデル更新部44は、(15)式のTに着地位置の予測結果を入力するとともに、xSPに歩行予測結果に基づく歩幅の予測結果を入力することによりバランス制御モデルを構築することができる。
Figure 2023028450000015
Figure 2023028450000016
ここで、さらに、重心周りの角運動量の変化を考慮すると、重心周りのトルクを考慮したZMPは、おおよそ次の(16)式のように表すことができる。
Figure 2023028450000017
(歩行予測処理の実行タイミング)
続いて、各歩行サイクルにおける歩行予測処理の実行タイミングについて説明する。以下では、右脚の歩行予測処理を主として説明するが、右脚を左脚に読み替え、左脚を右脚に読み替えることで、左脚の歩行予測処理についても同様の方法で実行することができる。
図8および図9は、各歩行サイクルにおける歩行予測処理の開始タイミングの一例を示す図である。まず歩行サイクルの概略について説明する。歩行サイクルは歩行時の脚の周期的な動きを定義するものであり、左右の脚のそれぞれについて踵接地から次の踵接地までの動きを1歩行サイクルとするものである。1歩行サイクルは、脚が接地している状態の立脚期と、脚が離地している状態の遊脚期とに分けられる。最初の踵接地の時点を0%とし、次の踵接地の時点を100%として1歩行サイクルの期間を百分率で表した場合、立脚期は歩行サイクルの開始から約60%の期間を占め、遊脚期は立脚期以外の約40%の期間を占める。
具体的には、右脚の歩行サイクルの場合、右脚の踵接地により歩行サイクルが始まり、このタイミングから両脚支持状態となって立脚期が始まる。両脚支持状態では、体の重心が最も低くなり体全体の安定性が最大になる。その後、左脚が遊脚期に移行して片脚支持状態となる。続いて、左脚の踵接地により再び両脚支持状態となった後、次に右脚が遊脚期に移行して片脚支持状態となる。そして最後に右脚の踵接地により当該歩行サイクルが終了する。なお、本実施形態において、歩行サイクルの内訳として記載する百分率は必ずしも厳密でなく、個人差や解釈の差などによって多少のズレを許容するものである。
さらに、遊脚期は、遊脚初期、遊脚中期、遊脚終期の3つの期間に分けられ、それぞれ1歩行サイクルの15%、10%、15%を占める。遊脚初期は、爪先離地から遊脚中期に至るまでの期間であり、遊脚中期は、遊脚が支持脚の横を通過するタイミングに対応する期間である。遊脚終期は、遊脚中期から次の踵接地までの期間である。
ここで、遊脚終期においては、最終的な着地位置および着地タイミングがほぼ確定しており、歩行者は、確定している着地位置に向かって遊脚の着地動作を行っている。この状況では、遊脚が目標位置に向かって落下している状態にあるので、この状態で歩行者の動作に介入してバランスを変更させるのは困難である。
これに対して、遊脚初期または遊脚中期においては、歩行者の重心がある程度後ろ側に残っているので、歩行者の動作に介入しやすく、歩行者のバランスを効果的に制御することができる。そこで、本実施形態のバランス状態推定装置40において、歩行予測部43は、遊脚初期から遊脚中期までの間に装着者Uのバランス制御を行うことができるようなタイミングを検出して歩行予測処理を開始する。言い換えれば、歩行予測部43は、遊脚初期の開始時点において、少なくとも1回の歩行予測処理を完了していることができるようなタイミングで歩行予測処理を開始するように構成される。
例えば、図8は、左脚の踵接地を検知したタイミングを右脚の歩行予測処理の開始タイミングとする場合を表している。この場合、左側の踵接地のタイミングから右脚の遊脚期が開始するまでの期間は歩行サイクルの10%程度の期間に相当し、時間にして100ミリ秒程度に相当する(1歩行サイクルに要する時間を1秒とした場合)。したがって、1回の歩行予測処理の所要時間が100ミリ秒以下である場合、歩行予測部43は、左脚の踵接地を検知したタイミングで右脚の歩行予測処理を開始するように構成されてもよい。なお、左脚の踵接地は、例えば、左脚についてリアルタイムに測定される床反力の大きさが所定の閾値以上となっている状態を検出することによって検知可能である。
また、例えば、図9は、左脚について、遊脚終期の開始を検知したタイミングを右脚の歩行予測処理の開始タイミングとする場合を表している。この場合、左脚の遊脚終期の開始タイミングから右脚の遊脚期が開始するまでの期間は歩行サイクルの25%程度に相当し、時間にして250ミリ秒程度に相当する(1歩行サイクルに要する時間を1秒とした場合)。したがって、1回の歩行予測処理の所要時間が250ミリ秒以下である場合、歩行予測部43は、左脚について、遊脚終期の開始を検知したタイミングで右脚の歩行予測処理を開始するように構成されてもよい。なお、左脚の遊脚終期の開始は、左脚についてリアルタイムに測定される慣性力に基づき、左脚の脛が床に対して略垂直である状態を検出することによって検知可能である。
続いて、各歩行サイクルにおけるバランス状態推定処理の実行タイミングについて説明する。以下では、右脚のバランス状態を推定する場合を主として説明するが、右脚を左脚に読み替え、左脚を右脚に読み替えることで、左脚のバランス状態を推定する場合についても同様の方法で実行することができる。また、以下では、歩行予測部43が、左脚の遊脚終期が開始したタイミングで右脚の歩行予測処理を開始する場合(例えば図9の場合)について説明するが、以下の説明は、右脚の歩行予測処理が、左脚の踵接地を検知したタイミングで開始される場合(例えば図8の場合)についても同様に適用されるものである。
(バランス状態推定処理の実行タイミング)
図10は、右脚のバランス状態推定処理の実行タイミングの一例を示す図である。上述のとおり、バランス状態の推定に用いられるバランス制御モデルは歩行予測結果に基づいて構築される。また一般に、歩行予測処理は、バランス状態推定処理よりも負荷が高い処理になることが想定される。そのため、本実施形態のバランス状態推定装置40は、歩行予測処理よりも短い周期でバランス状態推定処理を実行する。図10では、1回の歩行予測処理に要する時間を100ミリ秒と想定し、バランス状態推定処理がそれよりも短い制御周期で実行される場合を想定している。この場合、制御モデル更新部44が100ミリ秒ごとに更新される右脚の歩行予測結果に基づいて随時バランス制御モデルを更新し、バランス状態推定部45が各タイミングにおいて最新のバランス制御モデルを用いて装着者Uのバランス状態をリアルタイムに判定していく。
例えば、図10において期間C1内の各制御周期においては、バランス状態推定部45は、期間C1の時点で最新の歩行予測結果である歩行予測処理E1の処理結果に基づいて更新されたバランス制御モデルを用いてバランス状態を推定する。そして、期間C1の次の期間C2内の各制御周期においては、バランス状態推定部45は、歩行予測処理E1の次の歩行予測処理E2によって得られた最新の歩行予測結果に基づいて更新されたバランス制御モデルを用いてバランス状態を推定する。
図11は、歩行予測結果の更新タイミングと、バランス状態の推定結果に基づくバランス制御(フィードバック制御)の実行タイミングとの関係性を示す図である。上述のとおり、歩行予測処理は、予測対象の脚の反対の脚について、例えば、遊脚終期の開始が検知されたタイミング(35%時点)で開始され、予測対象の脚の踵が着地するまで繰り返し実行される。そのため、図11に示すように、例えば、右脚の歩行予測結果は、歩行予測処理が開始されてから右脚の踵が接地するまでの期間(35%時点~100%時点)において連続的に更新され、それ以外の期間(0%時点~35%時点)では更新されない。
また、上述のとおり、遊脚初期(60%時点~75%時点)または遊脚中期(75%時点~85%時点)においては、歩行者の重心がある程度後ろ側に残っているので、歩行者の動作に介入しやすく、歩行者のバランス状態を効果的に制御することができる。そこで、本実施形態のバランス状態推定装置40は、遊脚初期および遊脚中期(60%時点~85%時点)において随時更新される歩行予測結果に基づいて、バランス制御モデルを随時更新していき、各時点で最新のバランス制御モデルを用いて装着者Uのバランス状態を推定する。図11は、コントローラ13が、遊脚初期から遊脚中期(60%時点~85%時点)までの期間において随時更新されるバランス状態の推定結果に基づいて、アシストスーツ10のフィードバック制御を行うことを表している。以下では、コントローラ13によるアシストスーツ10の制御が行われる期間(60%時点~85%時点)を「バランス制御期間」という。
実施形態のバランス状態推定装置40が、このようなタイミングでバランス状態推定処理を繰り返し実行することにより、コントローラ13は、好適なタイミングで装着者Uの歩行に介入できる。また、歩行予測結果は、歩行予測処理の実行タイミングが踵接地のタイミングに近くなるほど精度が高くなるため、歩行予測結果に基づいて構築されるバランス制御モデルの精度も踵接地のタイミングに近くなるほど精度が高くなっていく。このため、実施形態のバランス状態推定装置40が、上述のタイミングでバランス状態推定処理を繰り返し実行することにより、コントローラ13は、より精度良くアシストスーツ10を動作させることができる。
(バランス制御モデルの計算方法)
続いて、バランス制御モデルの計算方法について説明する。図12は、バランス制御モデルの計算における固有値の設定例を示す図である。上述のとおり、歩行中の動作は、動作の種類やバランス状態などの違いにより、相空間上において異なる固有値で特徴づけられる。そこで、本実施形態のバランス状態推定装置40において、制御モデル更新部44は、歩行サイクルにおけるフェーズの切り替わりに応じてバランス制御モデルの構築に使用する固有値の値を切り替えるように構成される。例えば、図12は、遊脚終期とそれ以外のフェーズとで固有値を切り替える場合の例である。この場合、使用する固有値は、例えば、図6および図7で説明した摂動試験などを予め行って取得されるとよい。
なお、図12に示す切り替えの態様は一例であり、これに限定されない。例えば、制御モデル更新部44は、遊脚初期または遊脚中期への/からのフェーズの切り替わりに応じて固有値を切り替えるように構成されてもよい。
図13は、歩行サイクルのフェーズに応じてバランス制御モデルの固有値を切り替えながら、現在のZMPを求める処理の流れの一例を示すフローチャートである。まず、制御モデル更新部44は、右脚の踵接地が検知されたか否かを判定する(ステップS101)。ここで、右脚の踵接地が検知されたと判定した場合、制御モデル更新部44は、右脚用のバランス制御モデルの構築に使用する固有値としてζR21およびζR22を設定する(ステップS102)。ここで、固有値ζR21およびζR22は、バランス状態を推定する対象の右脚の踵接地のタイミングから、右脚についての歩行予測処理の開始タイミング(ここでは左脚の遊脚終期の開始タイミング)までの期間における右脚のバランス状態の推定用に用意された固有値である。制御モデル更新部44は、使用する固有値の設定を完了すると、ステップS109に処理を進める。
一方、ステップS101において、右脚の踵検知は検知されていないと判定した場合、続いて、制御モデル更新部44は、右脚の歩行予測処理の開始タイミングが到来したか否かを判定する(ステップS103)。上述のとおり、右脚の歩行予測処理の開始タイミングは、左脚の遊脚終期の開始タイミングであり、右脚の歩行サイクルにおける35%時点のタイミングである。ここで、右脚の歩行予測処理の開始タイミングが到来したと判定した場合、制御モデル更新部44は、右脚用のバランス制御モデルの構築に使用する固有値としてζR11およびζR12を設定する(ステップS104)。
ここで、固有値ζR11およびζR12は、バランス状態を推定する対象の右脚についての歩行予測処理の開始タイミング(35%時点)から、反対の左脚の踵接地(50%時点)のタイミングまでの期間における右脚のバランス状態の推定用に用意された固有値である。言い換えれば、固有値ζR11およびζR12は、左脚が遊脚終期にある状態において、右脚のバランス状態を推定するための固有値であるということができる。制御モデル更新部44は、使用する固有値の設定を完了すると、設定した固有値を用いて右脚のバランス制御モデルを構築(ステップS111)した後、ステップS113に処理を進める。
一方、ステップS103において、右脚の歩行予測処理の開始タイミングは到来していないと判定した場合、続いて、制御モデル更新部44は、左脚の踵接地が検知されたか否かを判定する(ステップS105)。ここで、左脚の踵接地が検知されたと判定した場合、制御モデル更新部44は、左脚用のバランス制御モデルの構築に使用する固有値としてζL21およびζL22を設定する(ステップS106)。制御モデル更新部44は、使用する固有値の設定を完了すると、ステップS109に処理を進める。ここで、固有値ζL21およびζL22は、バランス状態を推定する対象の左脚の踵接地のタイミングから、左脚についての歩行予測処理の開始タイミング(ここでは右脚の遊脚終期の開始タイミング)までの期間における左脚のバランス状態の推定用に用意された固有値である。
一方、ステップS105において、左脚の踵検知は検知されていないと判定した場合、続いて、制御モデル更新部44は、左脚の歩行予測処理の開始タイミングが到来したか否かを判定する(ステップS107)。上述のとおり、左脚の歩行予測処理の開始タイミングは、右脚の遊脚終期の開始タイミング(85%時点)であり、左脚の歩行サイクルにおける35%時点のタイミングである。ここで、左脚の歩行予測処理の開始タイミングが到来したと判定した場合、制御モデル更新部44は、左脚用のバランス制御モデルの構築に使用する固有値としてζL11およびζL12を設定し(ステップS108)する。
ここで、固有値ζL11およびζL12は、バランス状態を推定する対象の左脚についての歩行予測処理の開始タイミング(35%時点)から、反対の右脚の踵接地(50%時点)のタイミングまでの期間におけるバランス状態の推定用に用意された固有値である。言い換えれば、固有値ζL11およびζL12は、右脚が遊脚終期にある状態において、左脚のバランス状態を推定するための固有値であるということができる。制御モデル更新部44は、使用する固有値の設定を完了すると、設定した固有値を用いて左脚のバランス制御モデルを構築(ステップS112)した後、ステップS113に処理を進める。
一方、ステップS107において、左脚の歩行予測処理の開始タイミングは到来していないと判定した場合、続いて、制御モデル更新部44は、装着者Uが歩行を停止したか否かを判定する(ステップS109)。例えば、装着者Uが歩行を停止したか否かは、右脚および左脚についてリアルタイムに測定される床反力または慣性力に基づいて判定することができる。ここで、装着者Uが歩行を停止したと判定した場合、制御モデル更新部44は、歩行者Uについて全身の角運動量を計算(ステップS110)した後、ステップS113に処理を進める。
上述のとおり、人は、進行方向に遊脚を踏み出してバランスを不安定にすることで進行方向に加速し、踏み出した遊脚を着地させて安定な状態を回復するというパターンを繰り返すことにより歩行する。すなわち、歩行動作は、進行方向に加減速をしながら前進する動作ということができる。歩行中の人は、支持脚よりも大きく前に遊脚を踏み出すことで、上体の慣性力および転倒モーメントを緩和し、安定な状態を回復する。一方で、歩行停止しようとする人は、遊脚を体幹近くに着地させると同時に、上体の慣性力を下げる必要がある。このため、歩行中の人が歩行を停止する場合には、歩行停止による安定した状態に復帰するために、全身(特に上体)に大きなモーメントが働くと考えられる。このため、歩行停止時のZMPを算出可能とするために、ステップS110において全身の角運動量を計算している。
一方、ステップS109において、装着者Uは歩行を停止していないと判定された場合、バランス状態推定部45が、その時点において最新の右脚のバランス制御モデルと、最新の左脚のバランス制御モデルと、最新の全身の角運動量とに基づいてZMPの予測を行う(ステップS113)。バランス状態推定部45は、ステップS101~S113の処理フローを繰り返し実行することにより、各時点から右脚の踵接地(100%時点)までのZMPを計算により予測し、その予測結果をコントローラ13およびバランス状態推定部45に随時出力する。
(バランス状態の評価方法)
続いて、バランス状態推定部45によるバランス状態の評価方法について説明する。図14は、バランス状態判定処理と、歩行予測処理およびバランス状態推定処理との入出力関係を示す図である。上述のとおり、バランス状態推定部45は、歩行予測部43によって予測された装着者Uの歩行と、制御モデル更新部44によって構築されたバランス制御モデルとに基づいて、装着者Uのバランス状態を評価するものである。ここで、制御モデル更新部44は、歩行予測処理による歩行予測結果を用いてバランス制御モデルを構築しい、構築したバランス制御モデルに基づいてバランス状態を推定する。このため、バランス状態判定処理、歩行予測処理、およびバランス状態推定処理の間の入出力関係は、図14のように表される。具体的には、N回目のバランス状態判定処理では、N回目の歩行予測処理による予測結果と、(N-1)回目のバランス状態推定処理による推定結果とに基づいてバランス異常の有無が判定される。
図15は、バランス状態判定処理の流れの一例を示すフローチャートである。ここでは、1回のバランス状態判定処理において実行される処理の流れについて説明するが、実際には、図15に示す処理フローは、所定の周期で繰り返し実行されるものである。まず、バランス状態推定部45は、歩行予測部43による歩行予測結果に基づいて装着者Uのバランス状態を評価する第1評価処理を実行する(ステップS201)とともに、装着者Uのバランス状態をバランス制御モデルに基づいて評価する第2評価処理を実行する(ステップS202)。
ここで、第1評価処理は、歩行予測部43によって随時更新される歩行予測結果について、その変動の大きさを検査することにより装着者Uのバランス状態を評価する処理である。これに対して、第2評価処理は、制御モデル更新部44によって随時更新されるバランス制御モデルに基づいて予測されるZMPの変動の大きさを検査することにより装着者Uのバランス状態を評価する処理である。なお、第1評価処理および第2評価処理の詳細については後述する。
続いて、バランス状態推定部45は、第1評価処理によるバランス状態の評価結果と、第2評価処理によるバランス状態の評価結果とに基づいて、装着者Uのバランスが安定しているか否かを判定する(ステップS203)。すなわち、ステップS203は、装着者Uのバランス状態について最終的な評価(例えば、安定または不安定)を行うステップである。
例えば、バランス状態推定部45は、第1評価処理および第2評価処理の評価結果がいずれも“安定”である場合に、装着者Uのバランスが安定していると判定してもよいし、第1評価処理および第2評価処理の評価結果のいずれか一方が“安定”である場合に、装着者Uのバランスが安定していると判定してもよい。また、例えば、バランス状態推定部45は、第1評価処理および第2評価処理の評価結果がいずれも“不安定”である場合に、装着者Uのバランスが不安定であると判定してもよいし、第1評価処理および第2評価処理の評価結果のいずれか一方が“不安定”である場合に、装着者Uのバランスが不安定であると判定してもよい。
また、例えば、第1評価処理および第2評価処理の評価結果が安定性に関する指標値として与えられる場合、バランス状態推定部45は、各指標値または各指標値に基づいて得られる第2の指標値を所定の閾値と比較した結果に基づいて最終的な評価を決定してもよい。また、バランス状態推定部45は、左右の脚でそれぞれ別にバランス状態を評価するように構成されてもよいし、左右の脚の評価結果を統合して1つの評価結果を得るように構成されてもよい。これらの方法のほか、第1評価処理および第2評価処理の評価結果に基づく評価方法であれば、バランス状態推定部45は、任意の方法で最終的な評価を決定してよい。
ステップS203において、装着者Uのバランスが不安定であると判定した場合、バランス状態推定部45は、装着者Uについてバランス制御を実行することをアシストスーツ10のコントローラ13に指示する(ステップS204)。なお、この場合、具体的には、バランス状態推定部45は、第2評価処理において最新のバランス制御モデルに基づいて推定したZMPの推定結果とともに、バランス制御の実行を指示する。
一方、ステップS203において、装着者Uのバランスが安定していると判定した場合、バランス状態推定部45は、コントローラ13に対してバランス制御の実行を指示することなく、バランス状態判定処理を終了する。
以下、バランス状態判定処理において実行される第1評価処理および第2評価処理の詳細について説明する。図16は、第1評価処理の流れの一例を示すフローチャートである。まず、バランス状態推定部45は、右脚および左脚のそれぞれについて、爪先離地時(すなわちバランス制御期間の開始時)における歩行予測結果を評価基準として取得する(ステップS301)。ここでは、右脚について取得した予測結果をX_hc[R]と記載し、左脚について取得した予測結果をX_hc[L]と記載する。
続いて、バランス状態推定部45は、最新のオンラインデータに基づいて更新された歩行予測結果を取得する(ステップS302)。ここでは、右脚について取得された更新後の予測結果をX_foot[R]と記載し、左脚について取得された更新後の予測結果をX_foot[L]と記載する。
続いて、バランス状態推定部45は、評価基準として取得した歩行予測結果と、オンラインデータに基づいて更新された最新の予測結果との誤差(以下「歩行予測誤差」という。)を算出する(ステップS303)。ここでは、右脚について取得された歩行予測誤差をError_foot[R]と記載し、左脚について取得された歩行予測誤差をError_foot[L]と記載する。
続いて、バランス状態推定部45は、横方向(Y軸方向)における左右の脚の間隔を取得する(ステップS304)。ここでは、横方向における右脚の位置をFoot[R][Y]、横方向における左脚の位置をFoot[L][Y]と記載し、それらの差をDis_footYと記載する。
続いて、バランス状態推定部45は、歩行予測誤差が許容範囲内であるか否かを判定する(ステップS305)。例えば、バランス状態推定部45は、右脚および左脚について取得した各歩行予測誤差の両方が所定の閾値以下である場合に「許容範囲内」と判定し、各歩行予測誤差の少なくとも一方が閾値よりも大きい場合には「許容範囲外」と判定する。歩行予測誤差は「乖離の度合い」の一例である。
ここで、歩行予測誤差は許容範囲外であると判定した場合、バランス状態推定部45は、続いて、装着者Uの歩行が直進であるか否かを判定する(ステップS306)。例えば、バランス状態推定部45は、横方向における左右の脚の間隔が閾値未満である場合に「直進」と判定し、横方向における左右の脚の間隔が閾値以上である場合には「直進でない」(例えば、斜め方向への移動や旋回、蛇行など)と判定する。ここで、装着者Uの歩行が直進であると判定した場合、バランス状態推定部45は、装着者Uのバランス状態は“不安定”であるとの評価結果を出力し(ステップS307)、第1評価処理を終了する。
一方、ステップS305において歩行予測誤差は許容範囲内であると判定した場合、または、ステップS306において装着者Uの歩行が直進でないと判定した場合、バランス状態推定部45は、ステップS302に処理を戻し、次に更新されたバランス制御モデルに基づいて一連の処理を繰り返し実行する。
図17は、第2評価処理の流れの一例を示すフローチャートである。ここでは簡単のため、右脚のバランス状態を評価する場合について説明するが、右脚を左脚に読み替え、左脚を右脚に読み替えることで、左脚のバランス状態の評価についても同様の方法で実行することができる。
まず、バランス状態推定部45は、右脚が踵接地(0%時点)してから爪先離地(60%時点)するまでの間では、各時点で最新のバランス制御モデルを用いて当該歩行サイクル(0%時点~100%時点)におけるZMPの予測結果を随時更新していく(ステップS401)。具体的には、バランス状態推定部45は、n%時点(0≦n≦60)において、当該n%時点から次の踵接地(100%時点)までのZMPを予測し、n%時点までに取得された予測結果(0%時点から100%時点までの予測結果)のうちn%時点~100%時点の予測結果を、n%時点の予測結果で更新する。したがって、ステップS401において最終的に得られるZMPの予測結果(0%時点から100%時点までの予測結果)において、60%時点~100%時点の予測結果は、爪先離地時点(60%時点)において更新された予測結果となる。
上述のとおり、右脚の爪先離地時点(60%時点)は、右脚のバランス制御期間の開始タイミングである。すなわち、ステップS401は、第1評価処理におけるステップS301と同様に、バランス制御期間の開始タイミングにおいて最新の予測結果を評価基準として取得するものである。ここでは、ステップS401におけるZMPの予測結果について、時刻tのZMPの予測位置をX_zmp_hc[t]と記載し、右脚の踵接地(100%時点)の予測時刻をT_zmp_hcと記載する。
続いて、バランス状態推定部45は、右脚の爪先接地以降では、右脚の爪先離地時点(60%時点)をt=0として、t=0~T_zmp_hcの期間におけるZMPの予測を繰り返し実行する(ステップS402)。ここでは、ステップS402におけるZMPの予測結果について、時刻tのZMPの予測位置をX_zmp_update[t]と記載する。
続いて、バランス状態推定部45は、評価基準として取得したZMPの予測結果と、オンラインデータに基づいて更新された最新のZMPの予測結果との誤差(以下「ZMP予測誤差」という。)を算出する(ステップS403)。例えば、バランス状態推定部45は、時刻t=0~T_zmp_hcの範囲について、Delta_T(=const:定数)のステップごとに、X_zmp_hc[t]とX_zmp_update[t]との差の絶対値をZMP予測誤差として算出する。ここでは、各ステップで取得されたZMP予測誤差をError_zmp[t]と記載し、時刻t=0~T_zmp_hcの範囲について取得されたZMP予測誤差の集合をError_zmpと記載する。
続いて、バランス状態推定部45は、ZMP予測誤差が許容範囲内であるか否かを判定する(ステップS404)。例えば、バランス状態推定部45は、取得したZMP予測誤差が所定の閾値以下である場合に「許容範囲内」と判定し、ZMP予測誤差が閾値よりも大きい場合には「許容範囲外」と判定する。この場合、バランス状態推定部45は、誤差集合Error_zmpに含まれる全てのZMP予測誤差が閾値以下である場合に「許容範囲内」と判定してもよいし、所定数以上のZMP予測誤差が閾値以下である場合に「許容範囲内」と判定してもよい。また、例えば、バランス状態推定部45は、誤差集合Error_zmpに閾値よりも大きなZMP予測誤差が所定数以上含まれている場合に「許容範囲外」と判定してもよいし、全てのZMP予測誤差が閾値よりも大きい場合に「許容範囲外」と判定してもよい。
ここで、ZMP予測誤差は許容範囲外であると判定した場合、バランス状態推定部45は、装着者Uのバランス状態は“不安定”であるとの評価結果を出力し(ステップS405)、第2評価処理を終了する。一方、ステップS404においてZMP予測誤差は許容範囲内であると判定した場合、バランス状態推定部45は、ステップS402に処理を戻し、次に更新されたバランス制御モデルに基づいて一連の処理を繰り返し実行する。
このように構成された実施形態の歩行アシストシステム1によれば、利用者の動作をより好適に支援することができる。アシストスーツの技術分野において、従来は、作業中の体重や重量物による体への負担を軽減する技術、および装着者の動作に合わせて動きを補助する技術の開発が焦点となっていたため、従来のアシストスーツでは、装着者にとって最適なバランス状態を維持することが困難な場合があった。これに対して、本実施形態の歩行アシストシステム1は、歩行学習装置50およびバランス状態推定装置40が以下の機能を備えることにより、装着者にとって最適なバランス状態を維持することができる。
具体的には、歩行アシストシステム1において、バランス状態推定装置40が、装着者Uのバランス制御モデルをリアルタイムに更新する制御モデル更新部44と、更新されたバランス制御モデルに基づいて装着者Uのバランス状態をリアルタイムに推定/監視するバランス状態推定部45とを備えることにより、装着者Uにとって最適なバランス状態を維持することが可能となる。
また、実施形態の歩行アシストシステム1において、バランス状態推定装置40が、各歩行サイクルにおける装着者Uのバランス状態を推定し、その推定結果と、理想的なバランス状態とを比較することにより、装着者Uのバランス状態が不安定である/不安定になることを推定/予測することができる。上述のとおり、歩行は単脚支持で進行方向に加速する不安定な状態と、両脚支持の安定な状態を繰り返す動作である。不安定な状態が発散する前に遊脚を着地させることで安定な状態を回復する動作は、脊髄反射レベルで行われている計画的な動作であることから、歩行動作は連続的な動作であると言える。ここでいう理想的なバランス状態とは、歩行中に一時的には不安定な状態になるものの安定状態に復帰可能である(発散しない)状態を意味するものである。この意味で、理想的なバランス状態を判定する条件として、例えば、遊脚の実際の着地位置が予想される着地位置から大きくズレないこと、や歩行速度が連続であることなどが挙げられる。
また、実施形態の歩行アシストシステム1において、装着者Uのバランス制御モデルは人型ロボットのバランス制御モデルに基づいて構築されるものであるため、動力学的な因果関係が明確であり、精度良くバランス制御を行うことができる。
また、実施形態の歩行アシストシステム1において、オフラインでは、歩行学習装置50が装着者Uの歩行を機械学習により学習し、オンラインでは、バランス状態推定装置40がその学習済みモデル(歩行予測モデルEM)によって装着者Uの歩行を予測するため、装着者Uの動きの特性が反映された歩行予測が可能となる。さらに、実施形態の歩行アシストシステム1では、バランス制御モデルが、床反力の値を必要としない形で構築されるため、床反力センサ20の測定結果を用いることなくバランス状態を予測/比較/評価することが可能となる。したがって、実施形態の歩行アシストシステム1によれば、床反力センサ20の測定結果を用いることなく装着者Uのバランス状態を推定/監視することができる。
また、実施形態の歩行アシストシステム1において、バランス状態推定装置40が、処理負荷の異なる歩行予測処理と、バランス状態推定処理とを装着者Uの歩行のタイミングに合わせて同期させて実行することにより、適切なタイミングで装着者Uのバランス状態を推定するとともに、適切なタイミングで装着者Uのバランス制御を行うことが可能となる。
上記説明した実施形態は、以下のように表現することができる。
プログラムを記憶した記憶装置と、
ハードウェアプロセッサと、を備え、
前記ハードウェアプロセッサが前記記憶装置に記憶されたプログラムを実行することにより、
対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測処理と、
前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新処理と、
最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定処理と、
を実行し、
前記動作予測処理を第1の間隔で実行し、
前記バランス状態推定処理を、前記第1の間隔よりも短い第2の間隔で実行する、
ように構成されている、バランス状態推定装置。
<変形例>
アシストスーツ10は、モータ11、伝動部12、およびコントローラ13に加えて、各種の出力装置を備えてもよい。例えば、アシストスーツ10は、装着者Uの動きを誘導または拘束するための駆動力を出力するアクチュエータを備えてもよい。また、例えば、アシストスーツ10は、装着者Uに対する通知のための振動を出力する振動機を備えてもよい。また、例えば、アシストスーツ10は、装着者Uに対する通知のための音声を出力するスピーカを備えてもよい。また、例えば、アシストスーツ10は、装着者Uに対する通知のための電気刺激を出力する電極を備えてもよい。また、例えば、アシストスーツ10は、装着者Uに対する通知のための温度刺激を出力する温覚計を備えてもよい。また、例えば、アシストスーツ10は、装着者Uに通知すべき情報を表示する表示装置を備えてもよい。また、例えば、アシストスーツ10は、装着者Uの携帯端末等に情報を通知するための通信インタフェースを備えてもよい。コントローラ13は、制御モデル更新部44によって判定された装着者Uのバランス状態や、最新のZMPの予測結果等の情報に基づいてこれらの出力装置の動作を制御するように構成されてもよい。
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
1…歩行アシストシステム、10…アシストスーツ、11…モータ、12…伝動部、13…コントローラ、20…床反力センサ、30…IMU(慣性測定装置)、40…バランス状態推定装置、41…オンラインデータ入力部、42…学習済みモデル記憶部、43…歩行予測部、44…制御モデル更新部、45…バランス状態推定部、50…歩行学習装置、51…オフラインデータ入力部、52…教師データ生成部、53…機械学習部、54…学習済みモデル記憶部

Claims (10)

  1. 対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測部と、
    前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新部と、
    最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定部と、
    を備え、
    前記動作予測部は、前記対象者の動作予測処理を第1の間隔で実行し、
    前記バランス状態推定部は、前記バランス状態の推定処理を前記第1の間隔よりも短い第2の間隔で実行する、
    バランス状態推定装置。
  2. 前記動作予測部は、前記対象者の動作として、前記対象者の左右の脚のうち対象の脚の踵が接地する位置およびタイミングを予測し、
    前記制御モデル更新部は、予測された前記位置およびタイミングに基づいて、前記対象の脚のバランス制御モデルを更新する、
    請求項1に記載のバランス状態推定装置。
  3. 前記バランス状態推定部は、前記最新のバランス制御モデルに基づいてゼロモーメントポイントを予測し、その予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいてバランス状態を推定する、
    請求項1または2に記載のバランス状態推定装置。
  4. 前記バランス状態推定部は、前記動作の予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいてバランス状態を推定する、
    請求項1または2に記載のバランス状態推定装置。
  5. 前記バランス状態推定部は、
    前記最新のバランス制御モデルに基づいてゼロモーメントポイントを予測し、その予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいて第1のバランス状態を推定し、
    前記動作の予測結果について、前記対象者のバランス制御を開始する時点で取得された予測結果と、最新の予測結果との乖離の度合いに基づいて第2のバランス状態を推定し、
    前記第1のバランス状態および前記第2のバランス状態に基づいて最終的なバランス状態を判定する、
    請求項1または2に記載のバランス状態推定装置。
  6. 前記制御モデル更新部は、前記バランス制御モデルの構築に用いるパラメータであって、前記対象者の動作を特徴づけるパラメータに関し、遊脚終期とそれ以外とで異なるパラメータを使用して前記バランス制御モデルを更新する、
    請求項1から5のいずれか一項に記載のバランス状態推定装置。
  7. 前記パラメータは、相空間において前記対象者の運動を特徴づける固有値である、
    請求項6に記載のバランス状態推定装置。
  8. 前記バランス状態推定部は、最新の前記バランス制御モデルに基づいて現在のゼロモーメントポイントを算出し、算出したゼロモーメントポイントを、前記対象者の動きを支援するアシストスーツのコントローラに通知する、
    請求項1から7のいずれか一項に記載のバランス状態推定装置。
  9. コンピュータが、
    対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測処理と、
    前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新処理と、
    最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定処理と、
    を実行し、
    前記動作予測処理を第1の間隔で実行し、
    前記バランス状態推定処理を、前記第1の間隔よりも短い第2の間隔で実行する、
    バランス状態推定方法。
  10. コンピュータに
    対象者の体の動きに関する測定値の入力に対して前記対象者の動作の予測結果を出力する動作予測モデルに基づいて、前記対象者の動作を予測する動作予測処理と、
    前記対象者の動作の予測結果に基づいて、前記対象者のバランスを制御するためのバランス制御モデルを更新する制御モデル更新処理と、
    最新の前記バランス制御モデルに基づいて前記対象者のバランス状態を推定するバランス状態推定処理と、
    を実行させ、
    前記動作予測処理を第1の間隔で実行させ、
    前記バランス状態推定処理を、前記第1の間隔よりも短い第2の間隔で実行させる、
    プログラム。
JP2021134149A 2021-08-19 2021-08-19 バランス状態推定装置、バランス状態推定方法、およびプログラム Pending JP2023028450A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021134149A JP2023028450A (ja) 2021-08-19 2021-08-19 バランス状態推定装置、バランス状態推定方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021134149A JP2023028450A (ja) 2021-08-19 2021-08-19 バランス状態推定装置、バランス状態推定方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2023028450A true JP2023028450A (ja) 2023-03-03

Family

ID=85330870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021134149A Pending JP2023028450A (ja) 2021-08-19 2021-08-19 バランス状態推定装置、バランス状態推定方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP2023028450A (ja)

Similar Documents

Publication Publication Date Title
EP3576707B1 (en) System and method for user intent recognition
JP4587738B2 (ja) ロボット装置及びロボットの姿勢制御方法
Kulić et al. Anthropomorphic movement analysis and synthesis: A survey of methods and applications
US7251593B2 (en) Simulation system, method and computer-readable medium for human augmentation devices
JP2001277159A (ja) 脚式移動ロボット及びその制御方法、並びに、脚式移動ロボット用相対移動測定センサ
KR102578261B1 (ko) 보행 보조 방법 및 이를 수행하는 장치들
JP6781101B2 (ja) 非線形システムの制御方法、二足歩行ロボットの制御装置、二足歩行ロボットの制御方法及びそのプログラム
JP4644833B2 (ja) 2足歩行移動装置
CN117215204B (zh) 基于强化学习的机器人步态训练方法及系统
Baydin Evolution of central pattern generators for the control of a five-link bipedal walking mechanism
Hunt et al. Using animal data and neural dynamics to reverse engineer a neuromechanical rat model
Rose et al. A model-free deep reinforcement learning approach for control of exoskeleton gait patterns
Wu et al. Gait phase prediction for lower limb exoskeleton robots
Horn et al. Nonholonomic virtual constraints for control of powered prostheses across walking speeds
JP2023028450A (ja) バランス状態推定装置、バランス状態推定方法、およびプログラム
JP2023028434A (ja) バランス状態推定装置、バランス状態推定方法、およびプログラム
Tran et al. Model-learning-based partitioned control of a human-powered augmentation lower exoskeleton
Yano et al. Development of a Biped Walking Robot with Antagonistic Actuation
Saputra et al. Interconnection structure optimization for neural oscillator based biped robot locomotion
Claros et al. Balance control of a biped robot in the coronal plane using foot sole CoP trajectories
Culha An actuated flexible spinal mechanism for a bounding quadrupedal robot
Yoshikawa Identification of Human Walking Balance Controller Based on COM-ZMP Model of Humanoid Robot
Luo et al. Active online learning of the bipedal walking
Pasha Zanoosi et al. Investigation of the effects of human body stability on joint angles’ prediction
JP2001277158A (ja) 脚式移動ロボットの動作制御システム及び動作制御方法