27
OpenSim のののの Static Opitimization 編 03/12/2022 Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved. 編編編編編編編編編 編編編編編編編編 編編編編編編

OpenSim の 使い方 (Static optimization 編)

Embed Size (px)

Citation preview

05/01/2023

OpenSim の使い方Static Opitimization 編

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

広島大学工学研究科生体システム論研究室

栗田グループ

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.

• 本スライドの内容は,広島大学工学研究科生体システム論研究室栗田雄一准教授グループが,平成28年度研究室内チュートリアルで利用している資料の一部をまとめたものです.

• 本スライドの内容には,間違いが含まれている可能性がありますが,当方は修正の責任を負いません.本スライドは,あくまで参考としての利用にとどめ,最終的にはご自身で対応ください.

• そのほか,スライド内容を閲覧,実行したことにより生じたいかなる損害についても,当方は責任は負いません.また,スライド内容に対する質問にも回答できかねますことをご了承ください.

• 以上についてご承諾いただける方のみ,ご利用ください. 2

注意事項

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.概要

3

Static Optimization とは(以下 SO )日本語訳:静的最適化

1 フレームごとの姿勢で筋力・筋活動度の計算を行う

SO 後,各フレームにおける筋力 [N] と筋活動度 [%]が

出力される

筋活動の二乗和が最小になるような最適化計算が行われる→ 各姿勢に対して,最も筋を使わないような力配分

筋力・筋活動度推定を行う

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

4

SO の場所タブの Tools→Static Optimization

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

5

SO の設定画面主なセッティングタブ

基本的な設定はここで決定する.

モデル名

モデルの名前が勝手に入る.特にいじる必要は無し.

アクチュエータ・外力タブ

後ほど説明.

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

6

SO の設定画面(メイン設定)

入力部

入力の設定はここで行う

入力ファイル (.sto)SO によって吐き出される.sto ファイルを入力する場合は State に●をして,ファイルを選ぶ

入力ファイル (.mot)Inverse Kinematics を行って出力されたモーションファイル (.mot)を入力する場合はMotion に●をしてファイルを選ぶ.(通常は,こちらを使う)

ローパスフィルタの設定

ローパスフィルタをかける場合はチェックを入れる.デフォルトは 6 [Hz] .(人間の運動,動作には通常 6 [Hz] 程度のノイズがのっているため)

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

7

SO の設定画面(メイン設定)

Static Optimization(静的最適化)の設定

最適化計算の拘束条件

筋活動度の n 乗和を最小にするような筋活動度の解を算出する.通常は 2 乗和.

解析ステップ数

最適化計算を行うステップ数を設定.通常は 1 ステップ.

筋活動度の計算に筋の力-長さ-速度関係

を使うか

通常はチェックを入れておく

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

8

SO の設定画面(メイン設定)

解析を行う時間

.mot ファイルにおけるどこからどこまで解析を行うのかを決定する.

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

9

SO の設定画面(メイン設定)

出力部

出力の設定はここで行う.

出力ファイル名

自由に設定できる.

出力先

自由に設定できる.

正確性

結果を小数点いくつで表すのかを決定

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

10

SO の設定画面(アクチュエータ・外力設定)

OpenSim では筋活動度推定における最適化計算の際に用いられる.

動作させるもの

油圧や電動モーターによって, エネルギーを並進または回転運動に変換する駆動装置 [ 三省堂 大辞林 ]

アクチュエータとは

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

11

SO の設定画面(アクチュエータ・外力設定)

とある姿勢を再現するための,各筋における筋活動度を推定 筋活動度は最適化計算によって推定される 姿勢を再現するのに最小の筋活動度を推定

筋活動度計算

筋活動度計算における問題点 姿勢を再現するための筋活動度が計算上 100% を超えることがある 100% を超えてしまうと,計算が止まってしまう

アクチュエータは最適化計算の手助けを行う

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

12

SO の設定画面(アクチュエータ・外力設定)アクチュエータの役割

各筋の筋活動を補助する

筋活動度が 100% を超えないようにする

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

13

SO の設定画面(アクチュエータ設定)

アクチュエータ設定

アクチュエータの設定を行う.

アクチュエータの種類

モデルの筋力にアクチュエータの力を足すか,置き換えるか.(通常は  Append の方で OK )

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

14

SO の設定画面(アクチュエータ設定)

Add でアクチュエータを追加Add を押すと

アクチュエータの空ファイルが追加される

ここからアクチュエータの.xml ファイルを指定する

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

15

SO の設定画面(外力設定)

外力タブ

外力を追加する際は,チェックを入れる.

新規で外力の設定ファイルを作る際はこちら

既に外力の設定ファイルを

作ってある場合はこちら

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

16

SO の設定画面(外力設定)

外力の .mot ファイルを設定

外力を与えるモーションファイルを設定

外力ファイルを設定後,外力を付加する箇所を追加していく

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

17

SO の設定画面(外力設定)

外力名の設定

どこに外力を印加するのかを選ぶ.

あらかじめ設定してある外力の種類と与える点の選択

外力を付加するかどうか

骨の一点に受ける力(Point force)

骨全体に受ける力(Body force)

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

18

SO の設定画面(外力設定)

トルクを付加するかどうか

以下の設定は外力の場合と同じ

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

19

SO 実行例モデル

Gait2354 を使用( C:\OpenSim 3.3\Models\Gait2354_Simbody\gait2354_simbody.osim )

モーションファイル subject01_walk1_ik.mot を使用( C:\OpenSim 3.3\Models\Gait2354_Simbody\subject01_walk1_ik.mot )

アクチュエータファイル(今回の場合使わなくても OK) gait2354_RRA_Actuators を使用( C:\OpenSim 3.3\Models\Gait2354_Simbody\gait2354_RRA_Actuators.xml )

外力ファイル(今回の場合使わなくても OK) subject01_walk1_grf.mot を使用( C:\OpenSim 3.3\Models\Gait2354_Simbody\subject01_walk1_grf.mot )

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

20

SO 実行例(モデルを開く)

File→Open Model前のスライドで挙げたモデルを読み込む足の筋が張られたモデルが読み込まれる

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

21

SO 実行例(メイン設定を行う)

Tools→Static Optimization静的最適化の設定を始める

subject01_walk1_ik.mot を設定フィルターにチェック

を入れる

出力ファイル名,出力先は任意で設定

ここは特に触らない

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

22

SO 実行例(アクチュエータの設定を行う)

Edit→Add→Gait2354_RRA_Actuators を設定

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

23

SO 実行例(外力の設定を行う)

External Loads にチェック→

subject01_walk1_ik.motを入れる

subject01_walk1_grf.motを入れる

Add をクリック

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

24

SO 実行例(外力の設定を行う)

まず右足にかかる外力を設定.全て設定し終わったら「 OK」をクリック

任意の名前を設定(例では右足にかかる反力なので

R と名付ける.)

地面からの反力は左足の踵骨( calcn_r )に

かかるものと考える.

Point Force

Force Columns の X にground_force_vx を

Point Columns の X にground_force_px を

それぞれ設定すると,Y,Z は自動で設定される

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

25

SO 実行例(外力の設定を行う)

左足も同様に設定.全て設定し終わったら「 OK」をクリック

任意の名前を設定(例では左足にかかる反力なので

L と名付ける.)

地面からの反力は左足の踵骨( calcn_l )に

かかるものと考える.

Point Force

Force Columns の X に1_ground_force_vx をPoint Columns の X に1_ground_force_px をそれぞれ設定すると,

Y,Z も自動で設定される

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

26

SO 実行例(外力の設定を行う)

以上で外力の「大きさ」と「印加する位置」が設定できた.Save をクリックすれば設定を保存できる.

Copyright© 2015 Biological Systems Engineering lab. All Rights Reserved.

Biological Systems Engineering lab.操作説明

27

SO 実行例( SO を始める)

Run を押すと Static Optimization が始まる