(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024063764
(43)【公開日】2024-05-13
(54)【発明の名称】解析装置、ラケット選択診断、および、ラケット設計支援システム
(51)【国際特許分類】
A63B 60/46 20150101AFI20240502BHJP
G06F 30/20 20200101ALI20240502BHJP
A63B 102/04 20150101ALN20240502BHJP
A63B 102/06 20150101ALN20240502BHJP
【FI】
A63B60/46
G06F30/20
A63B102:04
A63B102:06
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023180871
(22)【出願日】2023-10-20
(31)【優先権主張番号】P 2022171420
(32)【優先日】2022-10-26
(33)【優先権主張国・地域又は機関】JP
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 令和4年10月29日 下記ウェブサイトを通じて公開 「https://www.jstage.jst.go.jp/article/jsmeshd/2022/0/2022_B-7-3/_article/-char/ja」 令和4年11月 5日 日本機械学会シンポジウム:スポーツ工学・ヒューマンダイナミクス2022にて公開
(71)【出願人】
【識別番号】000005935
【氏名又は名称】美津濃株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】橋口 友洋
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146AA00
5B146DJ05
5B146DJ11
5B146DJ14
(57)【要約】
【課題】ラケットのスイング動作を高精度にシミュレーションする技術を提供する。
【解決手段】三次元の運動方程式モデル101は、ラケットおよび上肢を一体化表現した、複数のセグメントおよび複数のジョイントの集合体で構成される。運動方程式モデル101の出力は、少なくとも各セグメントの加速度および角加速度を含む。外力算出部105は、ラケットをスイングしたときの動作軌跡データから、動作者が肩関節に作用させる並進力Fextを算出する。関節トルク算出部110は、動作軌跡データから動作者が、肩、肘、手首の関節に相当するジョイントに作用させる関節トルクThumanを算出する。復元トルク算出部120は、運動方程式モデルの出力とラケットの定数パラメータとを用いて、ラケットの変形に応じてラケットを仮想的に分割するジョイントに作用する復元トルクTshaftを算出する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
解析装置であって、
ラケットと前記ラケットをスイングする動作者の上肢とを一体化して、複数のセグメントおよび複数のジョイントとの集合体で表現した三次元の運動方程式モデルを備え、
前記複数のセグメントは、前記上肢の構成要素である複数の第1セグメントと、前記ラケットを仮想的に分割した複数の第2セグメントとを含み、
前記複数のジョイントは、前記上肢の前記ラケットとは反対側の端部に相当する肩関節および隣接する前記第1セグメントの間を連結する関節の各々に相当する第1ジョイントと、隣接する前記第2セグメントの間を連結する、回転ばねを有する仮想ジョイントである第2ジョイントとを含み、
前記運動方程式モデルの入力は、前記動作者が前記第1ジョイントに作用させる関節トルクと、前記ラケットの変形に応じて前記第2ジョイントに作用する復元トルクと、遠心力およびコリオリ力を示す運動依存項と、前記動作者が前記上肢の前記ラケットとは反対側の端部に作用させる並進力と、重力加速度とを含み、
前記運動方程式モデルの出力は、各前記セグメントの加速度および角加速度と、各前記ジョイントに生じる拘束力と、前記関節に作用する拘束モーメントとを含み、
前記解析装置は、
前記動作者が前記ラケットをスイングしたときの動作軌跡データから前記並進力を算出する外力算出部と、
前記動作軌跡データから前記関節トルクを算出する第1トルク算出部と、
前記運動方程式モデルの前記出力を用いて演算された各前記第2ジョイントの回転挙動と、前記ラケットの定数パラメータとを用いて前記復元トルクを算出する第2トルク算出部とをさらに備える、解析装置。
【請求項2】
前記第1トルク算出部は、
前記動作軌跡データから逆動力学演算に従って前記関節トルクの基本トルクを算出する基本トルク演算部と、
各前記第1ジョイントについての、前記動作軌跡データに基づく第1回転角と、前記運動方程式モデルの前記出力を用いて算出された各前記第1ジョイントの第2回転角との偏差を低減するようにトルク補正量を算出する補正演算部とを含み、
前記運動方程式モデルの前記入力に含まれる前記関節トルクは、前記基本トルクと前記トルク補正量とを用いて算出される、請求項1記載の解析装置。
【請求項3】
前記補正演算部は、前記第1回転角および前記第2回転角の偏差に対する比例微分制御演算によって、前記トルク補正量を算出する、請求項2記載の解析装置。
【請求項4】
前記運動方程式モデルは、前記入力を構成する入力行列と、所定の係数行列との乗算によって前記出力を構成する出力ベクトルを演算するように構成され、
前記定数パラメータは、各前記第2ジョイントの仮想的な回転ばねの剛性パラメータを含み、
前記係数行列の成分は、前記定数パラメータとしての、前記ラケットを構成する各前記第2セグメントの重量および慣性モーメントを含む、請求項1記載の解析装置。
【請求項5】
前記出力ベクトルに対する予め定められた選択行列の乗算を伴って前記出力ベクトルに含まれる前記出力の一部に基づく評価量を抽出または算出する評価量算出部をさらに備え、
前記評価量は、前記ラケットのヘッドに相当する前記第2セグメントの速度と、前記複数のジョイントのうちの、肘または手首に相当する前記第1ジョイントに作用する前記拘束モーメントとの少なくともいずれかを含む、請求項4記載の解析装置。
【請求項6】
前記評価量算出部は、前記入力行列への前記選択行列の乗算を伴って、当該選択行列によって抽出される前記評価量に対する、前記関節トルク、前記復元トルク、前記運動依存項および、前記並進力のそれぞれの作用の定量的な内訳をさらに算出する、請求項5記載の解析装置。
【請求項7】
ラケット選択診断システムであって、
請求項1~6のいずれか1項に記載の解析装置と、
複数のラケットモデルのそれぞれの複数のラケットデータのうちの1個のラケットデータを選択的に前記解析装置に入力するための第1のデータ入力部と、
前記ラケット選択診断システムのユーザが前記ラケットをスイングしたときの前記動作軌跡データを前記解析装置に入力するための第2のデータ入力部とを備え、
前記複数のラケットデータの間では、前記ラケットの前記定数パラメータの少なくとも一部が互いに異なり、
前記解析装置は、前記第1のデータ入力部によって入力された前記1個のラケットデータを反映して構築された前記運動方程式モデルと前記第2のデータ入力部によって入力された前記動作軌跡データとを用いて前記運動方程式モデルの前記出力であるシミュレーション出力値を算出し、
前記ラケット選択診断システムは、
前記複数のラケットデータの各々を前記解析装置に入力したときの前記シミュレーション出力値を比較するための情報を生成する診断情報生成部をさらに備える、ラケット選択診断システム。
【請求項8】
ラケット選択診断システムであって、
請求項5または6に記載の解析装置と、
複数のラケットモデルのそれぞれの複数のラケットデータのうちの1個のラケットデータを選択的に前記解析装置に入力するための第1のデータ入力部と、
前記ラケット選択診断システムのユーザが前記ラケットをスイングしたときの前記動作軌跡データを前記解析装置に入力するための第2のデータ入力部とを備え、
前記複数のラケットデータの間では、前記第2ジョイントの前記剛性パラメータ、前記第2セグメントの前記重量および前記慣性モーメントのうちの少なくともいずれかが互いに異なり、
前記解析装置は、前記第1のデータ入力部によって入力された前記1個のラケットデータを反映して構築された前記運動方程式モデルと前記第2のデータ入力部によって入力された前記動作軌跡データとを用いて前記運動方程式モデルの前記出力であるシミュレーション出力値を算出し、
前記ラケット選択診断システムは、
前記複数のラケットデータの各々を前記解析装置に入力したときの前記シミュレーション出力値から求められた前記評価量を比較するための情報を生成する診断情報生成部をさらに備える、ラケット選択診断システム。
【請求項9】
ラケット設計支援システムであって、
請求項1~6のいずれか1項に記載の解析装置と、
M1個(M1:自然数)のラケットデータのうちの1個のラケットデータを前記解析装置に入力するための第1のデータ入力部と、
M2個(M2:自然数)の前記動作軌跡データのうちの1個の動作軌跡データを前記解析装置に入力するための第2のデータ入力部とを備え、
M1およびM2の少なくともいずれかは2以上であり、
前記M1が2以上のとき、前記M1個のラケットデータの間では、前記ラケットの前記定数パラメータの少なくとも一部が互いに異なり、
前記M2が2以上のとき、前記M2個の動作軌跡データのスイング動作者は異なり、
前記解析装置は、前記第1のデータ入力部によって入力された前記1個のラケットデータを反映して構築された前記運動方程式モデルと前記第2のデータ入力部によって入力された前記動作軌跡データとを用いて前記運動方程式モデルの前記出力であるシミュレーション出力値を算出し、
前記ラケット設計支援システムは、
前記M1個のラケットデータのうちの1つと、前記M2個の動作軌跡データのうちの1つとの各組合せを前記解析装置に入力したときの前記シミュレーション出力値を比較するための情報を生成する設計支援情報生成部をさらに備える、ラケット設計支援システム。
【請求項10】
ラケット設計支援システムであって、
請求項5または6に記載の解析装置と、
M1個(M1:自然数)のラケットデータのうちの1個のラケットデータを前記解析装置に入力するための第1のデータ入力部と、
M2個(M2:自然数)の前記動作軌跡データのうちの1個の動作軌跡データを前記解析装置に入力するための第2のデータ入力部とを備え、
M1およびM2の少なくともいずれかは2以上であり、
前記M1が2以上のとき、前記M1個のラケットデータの間では、前記第2ジョイントの前記剛性パラメータ、前記第2セグメントの前記重量および前記慣性モーメントのうちの少なくともいずれかが互いに異なり、
前記M2が2以上のとき、前記M2個の動作軌跡データのスイング動作者は異なり、
前記解析装置は、前記第1のデータ入力部によって入力された前記1個のラケットデータを反映して構築された前記運動方程式モデルと前記第2のデータ入力部によって入力された前記動作軌跡データとを用いて前記運動方程式モデルの前記出力であるシミュレーション出力値を算出し、
前記ラケット設計支援システムは、
前記M1個のラケットデータのうちの1つと、前記M2個の動作軌跡データのうちの1つとの各組合せを前記解析装置に入力したときの前記シミュレーション出力値から求められた前記評価量を比較するための情報を生成する設計支援情報生成部をさらに備える、ラケット設計支援システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、バドミントン等のラケットのスイング動作をシミュレーションするための技術に関する。
【背景技術】
【0002】
スポーツ用具のスイング動作を運動方程式モデルに基づいてシミュレーションする技術が用いられている。例えば、特許第6845433号公報(特許文献1)には、ゴルフクラブ(打具)のスイング動作中の変形を高精度に解析する技術が開示される。
【0003】
特許文献1には、打具に含まれる部位(グリップエンド)のスイング中の挙動の計測データに基づいて、スイング中の打具における回転中心を算出し、計測データおよび算出された回転中心に基づいて、スイング中の打具の変形を解析する技術が記載されている。
【0004】
また、下記の非特許文献1には、バドミントンラケットのスイング動作を解析するために、上肢-ラケット連成モデルを構築して、動力学的分析手法に基づいて、ラケットの慣性パラメータを変化させた際の身体動作に及ぼす影響を明らかにする手法が提案されている。
【先行技術文献】
【特許文献】
【0005】
【非特許文献】
【0006】
【非特許文献1】小池関也、橋口友洋、「ラケットシャフト部の変形を考慮したバドミントン・スマッシュ動作の動力学的分析(ラケットの慣性パラメータがスイング動作に及ぼす影響)」、シンポジウム:スポーツ・アンド・ヒューマン・ダイナミクス講演論文集 2012、セッションID225、2012年11月14日。
【発明の概要】
【発明が解決しようとする課題】
【0007】
バドミントンラケットの設計要素としては、質量、静止バランス、慣性モーメント等の慣性要素、フレックス、トルク等の剛性要素、あるいは、両者に起因する振動特性が主に用いられている。ラケット設計は、これらの要素を組み合わせることで反発性やスイングスピード向上、あるいは、身体に与える負荷の軽減を追求して行われる。
【0008】
一方で、実使用時における動作特性は、ラケットをスイングするプレーヤーによって異なっており、狙いとするユーザ各々に適した設計パラメータを効率的に決定するには、多くのテスタの協力や試作品製作が必要になることが懸念される。したがって、シミュレーションを導入したラケットのスイング動作解析により、設計の効率化を図ることが望まれる。
【0009】
しかしながら、特許文献1のシミュレーションは、打具に含まれる部位(グリップエンド)のスイング中の挙動の計測データを身体運動の結果として入力するものであり、身体運動と打具の挙動とを一体的にシミュレーションすることできない点で、高精度化に限界があることが懸念される。また、非特許文献1には、上肢-ラケット連成モデルの構築が提案されるものの、当該モデルを使用した具体的なシミュレーション手法について、十分には記載されていない。
【0010】
本開示は、このような問題点を解決するためになされたものであって、本開示のある局面における目的は、ラケットのスイング動作を高精度にシミュレーションする技術を提供することである。
【課題を解決するための手段】
【0011】
本開示のある実施形態では、解析装置が提供される。解析装置は、運動方程式モデルと、外力算出部と、第1トルク算出部と、第2トルク算出部とを備える。運動方程式モデルは、ラケットとラケットをスイングする動作者の上肢とを一体化して、複数のセグメントおよび複数のジョイントとの集合体で表現した三次元の運動方程式モデルである。複数のセグメントは、上肢の構成要素である複数の第1セグメントと、ラケットを仮想的に分割した複数の第2セグメントとを含む。複数のジョイントは、上肢のラケットとは反対側の端部に相当する肩関節および隣接する第1セグメントの間を連結する関節の各々に相当する第1ジョイントと、隣接する第2セグメントの間を連結する、回転ばねを有する仮想ジョイントである第2ジョイントとを含む。運動方程式モデルの入力は、動作者が第1ジョイントに作用させる関節トルクと、ラケットの変形に応じて第2ジョイントに作用する復元トルクと、遠心力およびコリオリ力を示す運動依存項と、動作者が上肢のラケットとは反対側の端部に作用させる並進力と、重力加速度とを含む。運動方程式モデルの出力は、各セグメントの加速度および角加速度と、各ジョイントに生じる拘束力と、関節に作用する拘束モーメントとを含む。外力算出部は、動作者がラケットをスイングしたときの動作軌跡データから並進力を算出する。第1トルク算出部は、動作軌跡データから関節トルクを算出する。第2トルク算出部は、運動方程式モデルの出力を用いて演算された各第2ジョイントの回転挙動と、ラケットの定数パラメータとを用いて復元トルクを算出する。
【0012】
本開示の他の実施形態では、ラケット選択診断システムが提供される。ラケット選択診断システムは、上記解析装置と、第1のデータ入力部と、第2のデータ入力部と、診断情報生成部とを備える。第1のデータ入力部は、複数の異なるモデルのそれぞれの複数のラケットデータのうちの1個のラケットデータを選択的に解析装置に入力する。複数のラケットデータの間では、ラケットの定数パラメータの少なくとも一部が互いに異なる。第2のデータ入力部は、ラケット選択診断システムのユーザがラケットをスイングしたときの動作軌跡データを解析装置に入力する。解析装置は、第1のデータ入力部によって入力された1個のラケットデータを反映して構築された運動方程式モデルと第2のデータ入力部によって入力された動作軌跡データとを用いて運動方程式モデルの出力であるシミュレーション出力値を算出する。診断情報生成部は、複数のラケットデータの各々を解析装置に入力したときのシミュレーション出力値を比較するための情報を生成する。
【0013】
本開示のさらに他の実施形態では、ラケット設計支援システムが提供される。ラケット設計支援システムは、上記解析装置と、第1のデータ入力部と、第2のデータ入力部と、設計支援情報生成部を備える。第1のデータ入力部は、M1個(M1:自然数)のラケットデータのうちの1個を解析装置に入力する。第2のデータ入力部は、M2個(M2:自然数)の動作軌跡データのうちの1個を解析装置に入力する。M1およびM2の少なくともいずれかは2以上であり、M1が2以上のとき、M1個のラケットデータの間では、ラケットの定数パラメータの少なくとも一部が互いに異なり、M2が2以上のとき、M2個の動作軌跡データのスイング動作者は異なる。解析装置は、第1のデータ入力部によって入力された1個のラケットデータを反映して構築された運動方程式モデルと第2のデータ入力部によって入力された動作軌跡データとを用いて運動方程式モデルの出力であるシミュレーション出力値を算出する。設計支援情報生成部は、M1個のラケットデータのうちの1つと、M2個の動作軌跡データのうちの1つとの各組合せを解析装置に入力したときのシミュレーション出力値を比較するための情報を生成する。
【発明の効果】
【0014】
本開示によれば、上肢およびラケットが一体化された三次元シミュレーションモデルを用いた、ラケットのスイング動作の高精度なシミュレーションを実現することができる。さらに、当該シミュレーション結果を利用したラケット選択診断システムおよびラケット設計支援システムを構築することができる。
【図面の簡単な説明】
【0015】
【
図1】本実施の形態に係る解析装置で用いられる解析対象モデルの構造を説明する概念図である。
【
図2】
図1に示された三次元モデルから運動方程式モデルを導出する過程を説明する概念図である。
【
図3】本実施の形態に係る解析装置の構成を説明するブロック図である。
【
図4】モーションキャプチャの際の動作者へのマーカ貼付の例を説明する概念図である。
【
図5】モーションキャプチャの際のラケットへのマーカ貼付の例を説明する概念図である。
【
図6】ラケットの仮想的なセグメント分割および各セグメントの剛性パラメータの測定例を説明する概念図である。
【
図7】観測値を用いたトルク補正機能を有する関節トルク算出部の構成例を説明するブロック図である。
【
図8】実施の形態1に係る解析装置のハードウェア構成例を説明する概念図である。
【
図9】情報処理装置のハードウェア構成例を説明するブロック図である。
【
図10】実施の形態1に係る解析装置によるシミュレーションの制御処理を説明するフローチャートである。
【
図11】実施の形態1に係る解析装置によるシミュレーション結果例を示す第1の波形図である。
【
図12】実施の形態1に係る解析装置によるシミュレーション結果例を示す第2の波形図である。
【
図14】実施の形態2に係るラケット選択診断システムの構成例を説明するブロック図である。
【
図15】
図14に示されたラケット選択診断システムによる制御処理を説明するフローチャートである。
【
図16】
図14に示されたラケット選択診断システムによる診断情報の表示例を示す概念図である。
【
図17】実施の形態2に係るラケット設計支援システムの構成例を説明するブロック図である。
【
図18】
図17に示されたラケット設計支援システムによる制御処理の第1の例を説明するフローチャートである。
【
図19】
図17に示されたラケット設計支援システムによる制御処理の第2の例を説明するフローチャートである。
【
図20】
図17に示されたラケット設計支援システムによる設計支援情報の一例を示す概念図である。
【
図21】
図17に示されたラケット設計支援システムによる設計支援情報の他の例を示す概念図である。
【発明を実施するための形態】
【0016】
以下に、本開示の実施の形態について、図面を参照して詳細に説明する。なお、以下では、図中の同一又は相当部分には同一符号を付して、その説明は原則的に繰返さないものとする。
[実施の形態1]
<運動方程式モデルの導出>
【0017】
実施の形態1に係る解析装置は、ラケット(より特定的には、バドミントンラケット)と、当該ラケットをスイングする動作者の上肢とを一体化した三次元シミュレーションモデルを用いる点が特徴である。したがって、当該三次元シミュレーションモデルを構成するための運動方程式モデルの導出について、最初に説明する。
【0018】
図1は、実施の形態1に係る解析装置による解析対象モデルの構造を説明する概念図である。
【0019】
図1に示されるように、解析対象となる三次元モデルは、人体の上肢10およびラケット20を一体化してモデリングした、複数のセグメントSGh1~SGh3、SGr1~SGr6および複数のジョイントJNh0~JNh3,JNr1~JNr5の集合体で構成される。セグメントSGh1~SGh3は「複数の第1セグメント」に対応し、セグメントSGr1~SGr6は「複数の第2セグメント」に対応する。
【0020】
上肢10のモデルは、上腕に相当するセグメントSGh1と、前腕に相当するセグメントSGh2と、手に相当するセグメントSGh3とを含む。セグメントSGh1(上腕)およびセグメントSGh2(前腕)は、肘に相当するジョイントJNh1によって連結される。セグメントSGh2(前腕)およびセグメントSGh3(手)は、手首に相当するジョイントJNh2によって連結される。上肢10(セグメントSGh1)と図示しない体幹とのジョイントJNh0は、肩関節に相当する。肩関節(ジョイントJNh0)は、上肢10のラケット20とは反対側の端部にも相当する。ジョイントJNh0~JNh3の各々は「第1ジョイント」に対応し、ジョイントJNr1~JNr5の各々は「第2ジョイント」に対応する。
【0021】
ラケット20のモデルは、グリップに相当するセグメントSGr1と、シャフトに相当するセグメントSGr2~SGr5と、ラケットヘッドに相当するセグメントSGr6とを含む。セグメントSGr1(グリップ)は、ラケット20を把持するためのジョイントJNh3によって、セグメントSGh3(手)と連結される。さらに、セグメントSGr1(グリップ)とセグメントSGr2(シャフト付け根)とは、回転ばねを有するジョイントJNr1によって連結される。
【0022】
ラケット20のシャフトは、回転ばねを有する仮想ジョイントであるジョイントJNr2~JNr4によって、セグメントSGr2~SGr5に仮想的に分割される。セグメントSGr5(シャフト先端)とセグメントSGr6(ラケットヘッド)とは、回転ばねを有するジョイントJNr5によって連結される。
【0023】
図2は、
図1の三次元モデルから運動方程式モデルを導出する過程を説明する概念図である。
【0024】
図1に示された三次元シミュレーションモデルを構成する各セグメントSG(セグメントSGh1~SGh3、SGr1~SGr6を総称するもの)および各ジョイントJN(JNh0~JNh3,JNr1~JNr5を総称するもの)について、
図2(a)~(c)に示される3つの過程を得て、運動方程式モデルが構築される。
【0025】
まず、
図2(a)に示されるように、各セグメントSGについて、三次元座標(x,y,z)内で重心CGの並進運動および回転運動の運動方程式が立てられる。
【0026】
また、
図2(b)に例示されるように、隣接する2個のセグメントSG間は、関節等に相当するジョイントJNによって連結される。したがって、セグメントSGの端点の位置(変位)は、連結拘束式によって制限される。
【0027】
さらに、
図2(c)に例示されるように、関節に相当するジョイントJNh0~JNh3の回転方向は、肘関節の内外反力等に相当する軸自由度の拘束式によって制限を受けることが理解される。
【0028】
したがって、
図2(a)の各セグメントSGの運動方程式が、各ジョイントJNでの
図2(b)の連結拘束式および
図2(c)の軸自由度の拘束式と連立されることで、運動方程式モデルが導出される。運動方程式モデルの最終形は、下記の式(1)によって示される。なお、
図2(a)~(c)の連立による運動方程式の導出手法については、非特許文献1と同様である。
【数1】
【0029】
式(1)中の変数および定数は、下記で示される。
【数2】
【0030】
各セグメントの加速度および各加速度は三次元ベクトルの変数であり、「V」は、各セグメントSG(重心CG)の並進運動の速度、「ω」は、各セグメントSG(重心CG)の回転運動の角速度を示す変数である。式中の「・」は時間微分を示しており、速度Vの一階微分によって加速度が示され、角速度ωの一階微分によって角加速度が示されている。式(1)の左辺を構成する出力ベクトルXは、三次元ベクトルである変数群で構成された列ベクトルである。
【0031】
式(1)は、左辺の出力ベクトルXが、係数行列A-1と、入力行列Bとの乗算によって演算されるように構成されている。係数行列A-1は、以下に説明する導出過程で出現する定数項の集合体に相当する。上述のように、係数行列A-1の成分は、各セグメントの重量および慣性モーメントを含むことが理解される。
【0032】
図2(a)に示された各セグメントの並進運動および回転運動の運動方程式について、3次元座標空間内での各セグメントSGの重心CGの並進運動の運動方程式は下記の式(2)で示される。同様に、回転運動の運動方程式は、下記の式(3)で示される。
【数3】
【0033】
式(2),(3)中の変数および定数は、下記で示される。
【数4】
【0034】
図2(b)では、関節での連結拘束式を説明する一例として、人体の上肢10の構成要素であるセグメントSGh1(上腕)およびセグメントSGh2(前腕)が、ジョイントJNh1(肘)を介して連結される態様が示されている。
【0035】
セグメントSGh1では、重心CGの変位ベクトルxiと、当該重心からジョイントJNh1へのベクトルri,cgDとの和によって、ジョイントJNh1の位置が示される。
【0036】
同様に、セグメントSGh2では、重心CGの変位ベクトルxi+1と、当該重心からジョイントJNh1へのベクトルri+1,cgPとの和によって、ジョイントJNh1の位置が示される。
【0037】
セグメントSGh1およびSGh2のそれぞれ重心からジョイントJNh1へのベクトルの終点(変位)が一致することで、隣接する2個のセグメントSGが運動中に離れない(即ち、拘束されている)ことを表現する連結拘束式が、下記の式(4)で表現される。
【数5】
【0038】
式(4)は、変位に関する条件式であるため、加速度次元の式(2)とそのまま連立することができない。したがって、式(4)を二階微分することで、下記の式(5)が導出される。
【数6】
【0039】
式(5)中には、二階微分の過程で、角速度(ω)および角加速度(ωの一階微分)、ならびに、変位ベクトルxの二階微分の項、即ち、加速度(速度Vの一階微分)の項が出現する。加速度および角加速度は、式(2),(3)でも用いられているので、式(5)によって、連結拘束式を、並進運動および回転運動の運動方程式と連立することが可能となる。
【0040】
図2(c)では、関節での軸自由度の拘束式を説明する一例として、ジョイントJNh1(肘)における拘束式が示される。この例では、セグメントSGh1(上腕)の座標系(e
1,x,e
1,y,e
1,z)およびセグメントSGh2(前腕)の座標系(e
2,x,e
2,y,e
2,z)の間に下記の式(6)で示される制約条件が設けられる。
【数7】
【0041】
式(6)により、セグメント座標系を構成するベクトルが常に直交する(即ち、ベクトルの内積が0)という条件式が導入される。これにより、肘関節に関しては、前腕は内外旋および屈曲進展の動作が可能である一方で、内外反の動きは不可能であることを表現できる。
【0042】
詳細は省略するが、変位(三次元座標)ベクトルで表現された式(6)についても、二階微分することで、式(2)および式(3)の運動方程式と連立することが可能になる。なお、三次元シミュレーションモデル全体では、式(6)の制約条件は、肩関節の3自由度(内外転、水平内外転、内外旋)、不二間接の2自由度(屈曲伸展、回内外)、および、手首関節の2自由度(掌背屈、橈尺屈)を表現するように定められる。
【0043】
式(2)、式(3)、式(5)、および、式(6)の二階微分相当を連立することで、上述の式(1)の運動方程式モデルを得ることができる。この際に、ロボット工学でのマルチボディダイナミクスの手法を導入して、式の記述を簡素化することができる。
【0044】
これにより、式(7)に示されるように、n個のセグメント(n:自然数、
図1の例では、n=9)の重心の加速度(変位xの二階微分または速度Vの一階微分)および角加速度(角速度の一階微分)と、端部に作用する並進力f(拘束力)と、肘(ジョイントJNh1)および手首(ジョイントJNh2)にそれぞれ作用する拘束モーメントn
elbowおよびn
wristの各変数(三次元ベクトル)とをまとめて表記した集合体として、式(1)の左辺の出力ベクトルXが得られる。
【数8】
【0045】
式(1)の右辺の入力行列Bは、式(8)に示されるように、サブ入力行列b1~b5の和に相当する。
【数9】
【0046】
サブ入力行列b1は、ラケットシャフトのジョイントJNr1~JNr5に作用する復元トルクTshaftの入力項に相当する。サブ入力行列b1は、復元トルクTshaft(三次元ベクトル)をラケット20のセグメントSGr1~SGr5の角加速度に係る変数に乗算するための換算係数行列Qsおよび零行列を伴って構成される。
【0047】
サブ入力行列b2は、上肢10の関節(肩、肘、手首)および仮想グリップ(ジョイントJNh3)に対して、ラケット20をスイングする動作者が作用させる関節トルクThumanの入力項である。サブ入力行列b1は、関節トルクThuman(三次元ベクトル)を、式(3)中のモーメントベクトルnを介して、セグメントSGh1~SGh3の角加速度に係る変数に乗算するための換算係数行列Qhおよび零行列を伴って構成される。
【0048】
サブ入力行列b3は、人体の肩関節に作用する外力(並進力)の入力項に相当する。サブ入力行列b3は、肩関節力Fext(三次元ベクトル)を、各セグメントの加速度(並進運動)に係る変数に乗算するための換算係数行列Peおよび零行列を伴って記載される。
【0049】
また、サブ入力行列b4は、回転運動に作用する遠心力およびコリオリ力を表現する運動依存項に相当し、式(3)右辺の最終項および式(5)の右辺各項によって構成される。さらに、サブ入力行列b5は、各セグメントの並進運動に作用する重力加速度の入力項に相当する。
【0050】
なお、式(1)の右辺に示された係数行列A-1は、式(2),(3),(5)および式(6)を二階微分した式中で、各変数に乗算される定数の集合体に相当する。
【0051】
<解析装置による全体シミュレーション>
図3は、本実施の形態に係る解析装置100の構成を説明するブロック図である。
図3に示されるように、解析装置100は、式(1)に相当する運動方程式モデル101と、外力算出部105と、関節トルク算出部110と、復元トルク算出部120と、評価量算出部130とを備える。関節トルク算出部110は「第1トルク算出部」の一実施例に対応し、復元トルク算出部120は「第2トルク算出部」の一実施例に対応する。
【0052】
外力算出部105および関節トルク算出部110は、三次元動作解析装置102によって取得されたスイング時の動作軌跡データに基づいて、肩関節力Fext(ベクトル)および関節トルクThuman(ベクトル)をそれぞれ算出する。
【0053】
三次元動作解析装置102は、代表的には、光学式のモーションキャプチャによって、動作者がラケット20をスイング(例えば、スマッシュ動作)したときの動作者およびラケットの軌跡を計測して、動作軌跡データを出力する。
【0054】
モーションキャプチャの際、動作者には、
図4(a),(b)に例示されるように、肩、肘、手首、指(ラケット把持部)等に対応させてマーカMRh1~MRh8が貼付される。同様に、ラケット20には、
図5に例示されるように、ラケットヘッドの先端、端部、付け根、および、シャフト各部位(例えば、仮想ジョイントの想定位置)、および、グリップエンド等に対応させてマーカMRr1~MRr10が貼付される。
【0055】
例えば、三次元動作解析装置102は、
図4の動作者による
図5のラケット20のスイングを、異なるアングルから複数台のカメラによって撮影する。複数台のカメラによって各マーカMR(MRh1~MRh8,MRr1~MRr10を総称するもの)の二次元位置が取得され、さらに画像処理を施すことで、各マーカMRの三次元位置を計測することができる。三次元動作解析装置102は、各マーカMRの三次元位置の変化に基づいて、動作軌跡データを生成することができる。動作軌跡データは、時間経過に対する、各マーカMRの変位、速度、加速度、角速度、および、角加速度の値を含むことができる。
【0056】
なお、三次元動作解析装置102は、光学式モーションキャプチャに限定されず、慣性センサを用いたモーションキャプチャによって構成することも可能である。この場合には、少なくとも動作者の前腕、上腕、および、手と、ラケット20のグリップエンドに慣性センサを取り付けることで、動作者がラケット20をスイング(スマッシュ動作)したときの動作軌跡データを得ることができる。このように、三次元動作解析装置102は、運動方程式モデル101への入力として適切な動作軌跡データを得ることが可能であれば、任意の構成とすることができる。
【0057】
再び
図3を参照して、外力算出部105は、動作者の肩に貼付されたマーカMRh1,MRh2,MRh4等の挙動データに基づいて、肩関節力Fext(ベクトル)を算出する。肩関節力Fextの各方向成分は、スイング開始(スイング位相0(%))からスイング終了(スイング位相100(%))までの経時的な変化を示すように算出される。
【0058】
関節トルク算出部110は、公知の逆動力学演算により、動作軌跡データから把握される運動を発生させるために肩、肘、手首のそれぞれの関節に作用させるべきトルクとして、関節トルクThuman(ベクトル)を算出する。関節トルクThumanの各方向成分についても、スイング開始からスイング終了までの経時的な変化を示すように算出される。
【0059】
外力算出部105からの肩関節力Fext(ベクトル)および関節トルク算出部110からの関節トルクThuman(ベクトル)は、式(8)中のサブ入力行列b3およびb2として、運動方程式モデル101に入力される。これにより、運動方程式モデル101からは、上肢10およびラケット20を分割した各セグメントSGの運動(並進および回転)のシミュレーション出力が得られる。
【0060】
この際に、回転ばねを有する仮想ジョイントの配置により、ラケット20を構成するセグメントSGr1~SGr6の間には、シャフトのしなり変形に相当する変位の差が発生する。弾性変形であるしなり変形の発生に応じて、復元トルクTshaft(ベクトル)が発生する。即ち、復元トルクTshaftの各方向成分は、ラケット20のスイング開始前(変形量が0)における初期値は0であり、スイング開始後にラケット20のシャフトにしなりが発生するのに応じて0とは異なる値となる。
【0061】
本実施の形態では、このしなり変形(弾性変形)をモデル化するために、ラケット20を仮想ジョイントによって複数のセグメントに分割している。
【0062】
図6には、ラケット20の仮想的なセグメント分割および各セグメントの剛性パラメータの測定例を説明する概念図が示される。
【0063】
図6(a)に示されるように、ラケット20には、グリップ部(セグメントSGr1)およびシャフト付け根を連結するジョイントJNr1と、シャフト先端およびラケットヘッドを連結するジョイントJNr5との間に、シャフトを4分割するように、回転ばねを有する仮想ジョイントとしてのジョイントJNr2~JNr4が設けられる。ジョイントJNr2~JNr4の位置は、
図6(a)中に示された隣接するジョイント間の距離l1~l4によって定義することができる。
【0064】
図6(a)に示されるように、ラケット20のグリップ部(セグメントSGr1)を測定架台30に拘束した状態で、ラケット20の先端に付加質量を加えることで、剛性分布の測定力ftpを作用させることができる。測定力ftpが作用した下での各セグメントSGr2~SGr6の変形量から、各ジョイントJNr1~JNr5の剛性パラメータ[N/red]を求めることができる。
【0065】
各ジョイントJNrj(j:1~5)での回転変位(角度)は、
図6(a)中に示されるように、隣接するセグメントSGrjおよびSGr(j+1)間に生じた角度θs,jによって定義することができる。
【0066】
なお、剛性パラメータの測定は、
図6(b)に示されたx方向(フェース面の正面曲げ方向、即ち、打球方向)、y方向(側面曲げ方向)、および、z方向(フェース面のねじれ方向)のそれぞれの方向に測定力を付与して行うことができる。
【0067】
各ジョイントの角度θs,jについても、x方向、y方向、および、z方向のそれぞれの成分を有する三次元ベクトルで示される。各ジョイントの角度θs,jは、運動方程式モデル101の出力ベクトルに含まれる、ラケット20のセグメントSGr1~SGr6の加速度および角加速度(ωの一階微分)から演算されたセグメントSGr1~SGr6の変位(並進運動および回転運動)に基づいて、
図6(a)中に示された定義に従って求められる。角度θs、jを一階微分することで、角速度を求めることも可能である。このようにして、運動方程式モデル101の出力から演算されたセグメントSGr1~SGr6の変位から、各ジョイントの「回転挙動」を求めることができる。
【0068】
復元トルク算出部120によって算出される復元トルクTshaft(ベクトル)は、下記の式(9)に示されるように、ジョイントJNr1~JNr5にそれぞれ作用する回転トルクτ
s,1~τ
s,5(ベクトル)の集合体で示される。
【数10】
【0069】
また、式(9)中の回転トルクτ
s,1~τ
s,5を総称するτ
s,jは、下記の式(10)によって示される。
【数11】
【0070】
式(10)に示されるように、回転トルクτs,jは、各ジョイントJNrjに生じたセグメント間のx,y,z方向での角度θs,j,x~θs,j,zおよびラケット20の剛性パラメータks,j,x~ks,j,zのそれぞれの乗算値と、x,y,z方向での角速度(角度θの一階微分)およびラケット20の粘性係数cs,j,x~cs,j,zのそれぞれの乗算値との和で示すことができる。
【0071】
例えば、回転ばねのばね係数に相当する剛性パラメータk
s,j,x~k
s,j,zについては、
図6(a)での実測実験値を用いた定数とすることができる。また、回転ばねの減衰特性を示す粘性係数c
s,j,x~c
s,j,zについては、材質(カーボンの種類、組成等)に応じた定数とすることができる。式(9),(10)によって得られた復元トルクTshaft(ベクトル)は、式(8)中のサブ入力行列b1として、運動方程式モデル101に入力される。
【0072】
剛性パラメータks,j,x~ks,j,zおよび粘性係数cs,j,x~cs,j,zは、ジョイントJNr1~JNr5の「定数パラメータ」の一実施例に相当する。定数パラメータは、少なくとも、仮想ジョイントである回転ばねの剛性(ばね係数)を示す剛性パラメータを含むことが理解される。
【0073】
再び
図3を参照して、運動方程式モデル101は、モーションキャプチャから得られた肩関節力Fextおよび関節トルクThumanと、運動方程式モデル101のシミュレーション出力値に基づいて算出される復元トルクTshafとを入力とした順動力学シミュレーションを実行する。具体的には、微分方程式の数値積分演算(例えば、4次ルンゲ・クッタ法)により、式(1)の左辺の出力ベクトルXを構成する各変数(三次元ベクトル)について、時間(スイング位相)の経過に対する値の変化が演算される。
【0074】
<関節トルクの高精度化>
解析装置100では、逆動力学演算によって求められた関節トルクThumanを入力値として運動方程式モデル101のシミュレーションを行うと、モデル化に際しての慣性パラメータ誤差や数値積分時の誤差等により、シミュレーション結果と測定時のデータとに差異が生じることが懸念される。
【0075】
したがって、本実施の形態に係る解析装置100では、関節角度および関節角速度の観測値に基づくトルク補正機能を具備する関節トルク算出部110X(
図7)によって、
図3の関節トルク算出部110を構成することも可能である。関節トルク算出部110Xは、トルク補正量の算出機能を有する「第1トルク算出部」に対応する。
【0076】
図7は、トルク補正機能を具備する関節トルク算出部110Xの構成例を説明するブロック図である。
【0077】
図7に示されるように、関節トルク算出部110Xは、逆動力学演算部115と、補正演算部150とを含む。逆動力学演算部115は、
図3の関節トルク算出部110と同様の機能を有し、三次元動作解析装置102によって取得された動作軌跡データに基づいて、逆動力学演算によって、上肢10の肩、肘、手首の関節に相当するジョイントJNh0~JNh2にそれぞれ作用する基本トルク(ベクトル)τ
j,inv(j:0~2の整数)を算出する。即ち、基本トルクτ
j,invは、関節トルク算出部110から出力される関節トルクThuman(ベクトル)と等しい。逆動力学演算部115は「基本トルク演算部」の一実施例に相当する。
【0078】
補正演算部150は、減算部152,157と、比例制御演算部154と、微分制御演算部155と、加算部156とを有する。補正演算部150は、各関節に相当する3個のジョイントJNhj(j=0~2)の角度θ(関節角度)のモーションキャプチャによる観測値θj,obsと、運動方程式モデル101によるシミュレーション値θjとの偏差を減少するための補正トルク量τj,crtを算出する。観測値θj,obsは、動作軌跡データの一部として得ることができる。
【0079】
図7中のシミュレーション値θ
jは、式(10)で説明したラケット20の各ジョイントの角度と同様に、運動方程式モデル101の出力ベクトルに含まれる、上肢10のセグメントSGh1~SGh3の加速度および角加速度(ωの一階微分)から演算されるセグメントSGrh1~SGh3の変位(並進運動および回転運動)に基づいて、隣接するセグメント間に生じる角度として算出することができる。このように、観測値θ
j,obsは「第1回転角」の一実施例に対応し、シミュレーション値θ
jは「第2回転角」の一実施例に対応する。
【0080】
さらに、各ジョイントについて、基本トルクτj,invから補正トルク量τj,crtを減算した関節トルクτjが、運動方程式モデル101に入力される関節トルクThuman(サブ入力行列b1)とされる。
【0081】
具体的には、減算部152は、3個のジョイントでの関節角度について、シミュレーション値θjおよび観測値θj,obsの偏差Δθjを算出する。比例制御演算部154は、関節角度の偏差Δθjに比例ゲインkpを乗算する制御演算を実行する。微分制御演算部155は、偏差Δθjの時間微分に微分ゲインkdを乗算する制御演算を実行する。偏差Δθjの時間微分は、関節の角速度についてのシミュレーション値および観測値の偏差に相当することが理解される。
【0082】
加算部156は、比例制御演算部154および微分制御演算部155の出力値を加算して、補正トルク量τj,crtを算出する。減算部157は、基本トルクτj,invから補正トルク量τj,crtを減算して、運動方程式モデル101に入力される関節トルクτjを算出する。
【0083】
したがって、関節トルクτ
jは、下記の式(11)に従って演算される。この演算は、ジョイントJNh0~JNh2の各々について(j:0~2)、x方向、y方向、および、z方向のそれぞれの成分について実行される。
【数12】
【0084】
補正演算部150は、関節角度の偏差Δθjに対するPD(比例微分)制御演算によって、各関節の回転挙動(角度および角速度)についてシミュレーション値および観測値の差をゼロに近付けるように、逆動力学演算に対する補正トルク量τj,crtを算出することができる。これにより、関節トルク算出部110Xは、シミュレーション結果で示される動作と、実際の動作との誤差を低減させるように、運動方程式モデル101に入力される関節トルク波形、即ち、関節トルクThuman(ベクトル)のスイング開始からスイング終了までの経時的な変化を設定することができる。この結果、関節トルク算出部110Xの適用により、シミュレーション結果を高精度化できることが理解される。
【0085】
<評価量の導入>
【0086】
再び
図3を参照して、評価量算出部130は、運動方程式モデル101によってシミュレーション出力値に含まれる変数から、評価量qを抽出または算出することで、ラケットの評価を効率化できる。
【0087】
一例として、ラケット20のヘッドスピードを評価量qとする場合を想定すると、ヘッドスピードは、ラケット20のセグメントSGr6の速度(ベクトルの大きさ)に相当する。したがって、評価量qは、出力ベクトルXに含まれる変数のうちの、セグメントSGr6の加速度(Vの一階微分)の積分値に基づいて算出することができる。
【0088】
したがって、式(1),(7)中の出力ベクトルXからセグメントSGr6の加速度を抽出するように定められた選択行列Sを用いると、評価量qは、下記の式(12)によって示される。
【数13】
【0089】
式(12)中のC
Shaft、C
Human、C
Force、C
M.D.T.および、C
Gravは、下記の式(13a)~13(e)によって示される。式(13a)~(13e)は、式(1)の右辺に対して、左辺と同様に選択行列Sを乗算し、さらに時間積分したものを、サブ入力行列b1~b5(式(1))のそれぞれに分割して表記したものである。
【数14】
【0090】
式(12)のCShaftは、評価量q(ヘッドスピード)に対する、サブ入力行列b1により入力される復元トルクTshaftの貢献度(作用の度合い)を定量的な内訳を示すことになる。同様に、CHuman、CForce、CM.D.T.および、CGravは、評価量q(ヘッドスピード)に対する、関節トルクThuman、肩関節力Fext、運動依存項(遠心力およびコリオリ力)、および、重力加速度のそれぞれの貢献度(作用の度合い)の定量的な内訳を示すことになる。これにより、評価量q(例えば、ヘッドスピード)に対する、各ファクタ(入力)の影響の大小を定量的に評価することが可能となる。
【0091】
なお、評価量qは、選択行列Sの設定により、任意に抽出または算出することができる。例えば、式(1),(7)中の出力ベクトルXから、ジョイントJNh1(肘)またはジョイントJNh2(手首)に作用する拘束モーメントnelbowまたはnwristを抽出するように選択行列Sを定義することが考えられる。この場合には、競技者の肘、手首への負担を定量化した評価量qおよび、当該評価量についての各ファクタ(入力)の影響の大小を定量的に評価することができる。
<システム構成例>
【0092】
次に、実施の形態1に係る解析装置100を実装するため構成例について説明する。
図8は、実施の形態1に係る解析装置100のハードウェア構成例を説明する概念図である。
【0093】
図8を参照して、実施の形態1に係る解析装置の機能は、例えば、情報処理装置201による予め定められた解析プログラムの実行によって実現される。また、他の情報処理装置203は、例えば、モーションキャプチャ結果からスイングの動作軌跡データ(
図3)を生成するためのプログラムが実装されたコンピュータ(演算装置)を含むことができる。当該コンピュータから情報処理装置201へのデータ伝送によって、
図3における解析装置100への動作軌跡データの入力を実現することができる。
【0094】
情報処理装置201が上記解析プログラムを実行することにより、
図3に示された、解析装置100を構成する各ブロックの機能が、情報処理装置201による演算処理によって実現される。
【0095】
即ち、
図3を始めとする各ブロック図に記載された各ブロックの機能は、基本的には、プログラムの実行によるソフトウェア処理によって実現される。但し、任意のブロックの少なくとも一部の機能について、FPGA(Field Programmable Gate Array)、或いは、ASIC(Application Specific Integrated Circuit)等のデジタル回路、又は、アナログ回路によって構成することも可能である。
【0096】
図9には、情報処理装置201のハードウェア構成例が示される。
例えば、
図9に示される様に、情報処理装置201は、CPU(Central Processing Unit)220と、メモリ230と、入出力(I/O)回路240とを含む様にコンピュータベースで構成される。CPU220、メモリ230及びI/O回路240は、バス245を経由して、相互にデータの授受が可能である。
【0097】
メモリ230の一部領域には、解析プログラムを含むプログラムが予め格納されており、CPU220が当該プログラムを実行することで、解析装置100によるシミュレーションを実行することができる。I/O回路240は、図示しない通信装置を介して、他の装置、例えば、
図8中に示される情報表示装置202、情報処理装置203、及び、クラウド204との間で、信号及びデータを入出力することができる。
【0098】
再び
図8を参照して、情報処理装置201で得られたシミュレーション結果は、液晶ディスプレイ等で構成された情報表示装置202に表示することができる。尚、
図8の例では情報処理装置201及び情報表示装置202が別体であるが、両者は一体に構成されてもよい。
【0099】
また、シミュレーション結果は、情報表示装置202に表示する他に、情報処理装置201に保存されてもよい。又、シミュレーション結果の保存先は、シミュレーションを実行した情報処理装置201に限らず、情報処理装置201に有線又は無線のネットワークを経由して接続された他の情報処理装置203であってもよく、あるいは、クラウド204であってもよい。
【0100】
また、運動方程式モデル101を構成するためのデータについても、他の情報処理装置203またはクラウド204から情報処理装置201に入力されてもよい。同様に、スイングの動作軌跡データについても、他の情報処理装置203からシミュレーションを実行する情報処理装置201に直接入力される他、クラウド204経由で入力されてもよい。これにより、過去の計測データの共有等を図ることができる。
【0101】
図10は、解析装置100によるシミュレーションの制御処理を説明するフロチャートである。
図10に示された制御処理は、例えば、情報処理装置201のCPU220が、メモリ230に格納されたシミュレーションプログラムを起動することによって実行される。
【0102】
図10を参照して、CPU220は、ステップ(以下、単に「S」と表記する)110により、モーションキャプチャによって生成されたスイングの動作軌跡データを取得する。上述のように、動作軌跡データは、動作者がラケット20をスイング(例えば、スマッシュ動作)したときの動作者およびラケットの軌跡に基づいて、上肢10およびラケット20の予め定められた部位の変位、速度、角速度、加速度、および、角加速度の時間軸(スイング位相)上でのデータ値を含むことができる。上述したように、例えば、動作軌跡データは、他の情報処理装置203またはクラウド204からのデータ伝送によって取得することができる。
【0103】
CPU220は、S120により、動作軌跡データの人体データ(例えば、身長、体重、性別、競技レベル等を含む)と、ラケットデータ(質量、慣性モーメント、シャフト剛性分布、粘性係数等)とを取得する。これらのデータは、情報処理装置201への直接入力によって取得されてもよく、他の情報処理装置203またはクラウド204からのデータ伝送によって取得されてもよい。
【0104】
CPU220は、S130により、S120で取得されたラケットデータを反映して、式(1)で示される運動方程式モデル101を構築する。
【0105】
CPU220は、S140では、S120で取得した動作軌跡データを用いて、S130で構築された運動方程式モデル101によるシミュレーション演算を実行する。具体的には、
図3の外力算出部105、関節トルク算出部110(110X)、および、復元トルク算出部120が、運動方程式モデル101と同時並列に動作することで、動作軌跡データに基づいて、運動方程式モデル101に入力される肩関節力Fext(ベクトル)および関節トルクThuman(ベクトル)が演算される。さらに、運動方程式モデル101によって計算されたラケットシャフトの変位量(しなり)を順次反映して、復元トルク算出部120によって、運動方程式モデル101に入力される復元トルクTshaft(ベクトル)が算出される。
【0106】
これにより、CPU220は、S150では、スイング開始(スイング位相0(%))からスイング終了(スイング位相100(%))までの各時点における、式(1)の左辺の出力ベクトルXを構成する各変数(三次元ベクトル)の値を、シミュレーション出力値として取得する。
【0107】
さらに、CPU220は、S160では、
図3の評価量算出部130を動作させることで、予め定められた評価量qを抽出または算出することができる。この際には、式(12),(13a)~(13d)に示したように、当該評価量についての各ファクタ(復元トルク、関節トルク、肩関節力、運動依存項、および、重力加速度)の貢献(影響)を定量的に算出することができる。
【0108】
次に、実施の形態1に係る解析装置によるシミュレーション結果例を
図11~
図13の波形図を用いて説明する。以下では、評価量qをラケット20のヘッドスピードとしたときのシミュレーション結果が示される。
【0109】
図11には、ヘッドスピードについてのシミュレーション値(実線)とモーションキャプチャによる観測値(点線)とが、同一時間軸(スイング位相が0(%)~100(%))上でプロットされる。
【0110】
なお、
図11には、観測値を用いたトルク補正機能を有する関節トルク算出部110X(
図7)を用いたシミュレーション値が示されており、トルク補正の効果によって、ラケットスイング時のヘッドスピードを精度よくシミュレーションできていることが理解される。
【0111】
図12には、実施の形態1に係る解析装置によるシミュレーション結果で得られた評価量例をプロットした波形図が示される。
図12の横軸は、
図11と同様の時間軸である。縦軸には、式(12)で算出された左辺の評価量qおよび、右辺の各項C
Shaft、C
Human、C
Force、C
M.D.T.およびC
Gravの値が示される。
【0112】
符号181は、評価量qであるヘッドスピード[m/s]をプロットしたものであり、符号182~184は、シャフトに作用する復元トルクの影響項C
Shaftのx方向、y方向およびz方向(
図6(b))の成分値[m/s]をそれぞれプロットしたものである。
【0113】
また、符号185は、関節トルクの影響項CHumanのx方向、y方向およびz方向の成分(ベクトル)を統合したベクトルの大きさをプロットしたものである。符号186は、運動依存項の影響項CM.D.T.の値(大きさ)をプロットしたものであり、符号187は、重力加速度の影響項CGravの値(大きさ)をプロットしたものである。なお、肩関節力の影響項CForceについては、他の影響項と比較すると値が小さかったので、プロットは省略している。
【0114】
図13には、
図12の波形図から、ヘッドスピード(符号181)およびシャフトに作用する復元トルクのx方向、y方向およびz方向の影響項(符号182~184)を抽出した波形図が示される。
【0115】
図13からは、ラケットシャフトのx方向、y方向およびx方向のそれぞれの復元トルクが、ヘッドスピードに与える影響を読み取ることができる。例えば、ラケットシャフトのスイング開始後のx方向(正面曲げ方向)の変形は、ヘッドスピードを減少させる作用がある一方で、y方向(側面曲げ方向)およびz方向(ねじれ方向)の変形は、ヘッドスピードの向上に寄与していることが読み取れる。
【0116】
以上説明したように、実施の形態1に係る解析装置によれば、上肢およびラケットを一体化した3次元シミュレーションモデル(運動方程式モデル)を構築するとともに、運動方程式を用いた動力学的分析手法によって、バドミントンラケットのスイング動作を高精度にシミュレーションすることができる。この際に、
図7で説明した、関節の角度および角速度のシミュレーション値および観測値の差をゼロに近付けるための、関節トルクの補正機能を導入することにより、シミュレーション結果を高精度化できることが理解される。
【0117】
さらに、評価量と、当該評価量に対する、関節トルク、ラケットの設計パラメータ(剛性等)が反映されたシャフトの復元トルクを含む各入力項の影響度を定量化することができるので、シミュレーション結果から、ラケットのシャフト剛性を最適化するための設計支援を行うことが可能であることが理解される。
[実施の形態2]
【0118】
実施の形態2では、実施の形態1に係る解析装置100を利用したラケット選択診断システムおよびラケット設計支援システムの構成例を説明する。
【0119】
図14は、実施の形態2に係るラケット選択診断システム250aの構成例を説明するブロック図である。
【0120】
図14を参照して、ラケット選択診断システム250aは、実施の形態1に係る解析装置100と、ラケットデータ入力部103と、動作軌跡データ入力部104と、診断情報生成部106とを備える。
図14において、ラケットデータ入力部103は「第1のデータ入力部」に対応し、動作軌跡データ入力部104は「第2のデータ入力部」に対応する。
【0121】
ラケット選択診断システム250aは、例えば、ラケットの販売ショップの店頭に配置されて、ユーザのスイング動作を三次元動作解析することで得られた動作軌跡データを用いて、当該ユーザに適したラケットの診断情報を出力する。ラケット選択診断システム250aは、
図8に示された解析装置100と同様のハードウェア構成によって実現することができる。
【0122】
動作軌跡データ入力部104は、例えば、実施の形態1で説明した三次元動作解析装置102によって構成されて、ユーザがいずれかのラケットをスイング(スマッシュ動作)したときの動作軌跡データを、解析装置100に入力する。あるいは、動作軌跡データ入力部104は、過去に三次元動作解析装置102によって取得された動作軌跡データを、クラウド204経由で解析装置100に入力することによっても実現可能である。
【0123】
ラケットデータ入力部103は、N個(N:2以上の整数)のモデル(機種)のラケットデータ(質量、慣性モーメント、シャフト剛性分布、粘性係数等)を、1個ずつ解析装置100に入力する。
【0124】
解析装置100は、動作軌跡データ入力部104からの動作軌跡データと、ラケットデータ入力部103から入力されたラケットデータとを用いて、実施の形態1に係る解析装置100により、当該ラケットデータによって示されるバドミントンラケットのスイング動作のシミュレーションを実行する。実施の形態1で説明したように、解析装置100からは、当該シミュレーションにおける解析装置100の出力(出力ベクトルX)に含まれる変数から予め定められた評価量qが出力されてもよい。実施の形態2では、評価量qとして、ラケットのヘッドスピードと、肘または手首に作用する拘束モーメント(関節負荷モーメント)が算出されて、解析装置100から診断情報生成部106へ入力されるものとする。
【0125】
ラケット選択診断システム250aでは、同一の動作軌跡データの下で、ラケットデータ入力部103が解析装置100に入力するラケットデータが切替えられることによって、N個のモデルのラケットのそれぞれについて評価量qを算出することができる。
【0126】
図15は、ラケット選択診断システム250aによる制御処理を説明するフローチャートである。
図15に示された制御処理についても、情報処理装置201のCPU220が、メモリ230に格納されたラケット診断プログラムを起動することによって実行することができる。
【0127】
図15に示されるように、CPU220は、S210により、動作軌跡データ入力部104からラケット選択診断システム250aのユーザの動作軌跡データの入力を受ける。S210では、ユーザデータ(身長、体重、性別、競技レベル等)がさらに入力されてもよい。
【0128】
さらに、CPU220は、S220により、N個のモデルのラケットデータの入力を受け付ける。S220でラケットデータが入力されるN個のモデルは、ユーザによる直接の指定入力で決めることができる。または、女性用、競技者用、初心者用等の複数のカテゴリのそれぞれに対応して複数個(N個)のラケットモデルの集合が予め定められた下で、ユーザデータに基いて1つのカテゴリを選択することによって、S220でのN個のモデルを決定することも可能である。また、S220では、シミュレーション演算のためのカウント値iが、初期値に設定される(i=1)。
【0129】
CPU220は、S225では、S220で入力されたN個のモデル(機種)のうちの第i番目(i=1~Nの自然数)のモデルのラケットデータを、解析装置100への入力として選択する。
【0130】
CPU220は、S230により、S225で選択されたラケットデータを反映して、S130(
図10)と同様にして、解析装置100の運動方程式モデル101を構築する。さらに、S240では、S140(
図10)と同様にして、S210で受付けられた動作軌跡データと、S230で構築された運動方程式モデルとを用いて、シミュレーション演算が実行される。S250では、S240でのシミュレーション演算により、第i番目のラケットモデルをスイングしたときのシミュレーション出力値(スイング開始~終了)が取得される。CPU220は、S260により、S150(
図10)と同様にして、S140で取得されたシミュレーション出力値から、予め定められた評価量を抽出または算出する。
【0131】
CPU220は、S270では、カウント値iがN以上であるか否かを判定する。i<Nのとき(S270のNO判定時)には、カウント値iを1増加して(S275)、処理はS225に戻される。これにより、カウント値i=1からi=Nになるまで、S225~S260の処理が繰り替されることによって、N個のラケットモデルのそれぞれのシミュレーション出力値および評価量を求めることができる。
【0132】
CPU220は、i≧Nのとき(S270のYES判定時)には、S280により、N個のラケットモデルのそれぞれで求められた評価量を保存する。さらに、S290では、N個のラケットモデルと評価量との対応を示す診断情報を生成することができる。診断情報は、異なるラケットデータでの複数のシミュレーション出力値(または、複数のシミュレーション出力値から求められた評価量)を比較するための情報に相当する。
【0133】
図16には、診断情報の表示例が示される。
図16には、評価量qとしてヘッドスピードq1および関節負荷モーメントq2が求められる例が表示される。一般的に、ユーザにとっては、ヘッドスピードq1は大きい値である方が望ましく、関節負荷モーメントq2については小さい値である方が望ましい。
【0134】
図16に示されるように、ラケットモデルA,B,C,D…毎の評価量(q1,q2)を比較するよう出力表示することで、ユーザに対して、適切なラケットモデル(機種)を選択するための診断情報を提供することができる。
図16の表示例は、例えば、情報表示装置202(
図8)を用いて、ユーザに提示することができる。
【0135】
あるいは、評価量qについては、複数の評価量q1,q2を重み付けによって統合して求めることも可能である。即ち、ユーザによる評価量q1(ヘッドスピード)およびq2(関節負荷モーメント)についてのそれぞれついて重み付け係数wg1、wg2をそれぞれ設定して、下記の式(14)によって、統合された評価量q*を用いて診断情報を生成することも可能である。この場合には、ラケットモデル毎の評価量q*の大小比較がより明確化される。
【0136】
q*=wg1・q1+wg2・q2 …(14)
【0137】
なお、重み付け係数wg1は、大きい値である方が望ましいヘッドスピードq1に対応するので正の値に設定する。反対に、重み付け係数wg2は、小さい値であることが望ましい関節負荷モーメントq2に対応するので負の値に設定することができる。なお、重み付け係数wg1,wg2については、S120において、ユーザによる設定入力に基づいて、ユーザデータの一部として入力することができる。
【0138】
このように、実施の形態2に係るラケット選択診断システムによれば、ユーザの1回のスイング動作で取得された動作軌跡データを用いて、複数のラケットモデルのスイング動作をシミュレーションすることができる。さらに、それぞれのラケットモデルのシミュレーション出力値に基づく評価量を算出することで、評価値の比較によって複数のラケットモデル間のユーザ適正を定量的に示す診断情報を、ユーザに提供することが可能となる。
【0139】
図17は、実施の形態2に係るラケット設計支援システム250bの構成例を説明するブロック図である。
【0140】
図17に示されるように、ラケット設計支援システム250bは、
図14のラケット選択診断システム250aと同様の解析装置100、動作軌跡データ入力部104、およびラケットデータ入力部103と、設計支援情報生成部107とを備える。ラケット設計支援システム250bについても、
図8に示された解析装置100と同様のハードウェア構成によって実現することができる。
図17においても、ラケットデータ入力部103は「第1のデータ入力部」に対応し、動作軌跡データ入力部104は「第2のデータ入力部」に対応する。
【0141】
ラケット設計支援システム250bでは、ラケットデータ入力部103に対してM1個のラケットデータが入力されて、ラケットデータ入力部103は、1個ずつのラケットデータを解析装置100に入力する。
【0142】
同様に、動作軌跡データ入力部104に対しては、M2人分の動作軌跡データが入力されて、ラケットデータ入力部103は、1人分ずつの動作軌跡データを解析装置100に入力する。
【0143】
M1およびM2は、1以上の整数であり、M1およびM2の少なくとも一方は2以上に設定される。M1≧2のときには、M1個のラケットデータの間では、質量、慣性モーメント、シャフト剛性分布、粘性係数等を示す設計パラメータ値のうちの少なくとも1つについて、互いに異なる値に設定される。
【0144】
同様に、M2≧2のときには、M2個の動作軌跡データとして、ラケットをスイングした動作者の属性(性別、年齢層、競技レベル等)が異なるデータが入力される。
【0145】
ラケット設計支援システム250bでは、M1個の動作軌跡データおよびM2個のラケットデータのうちの1つずつの組合せ(合計でM1×M2個)のそれぞれの下で評価量qを求めて、設計支援情報生成部107に入力することができる。
【0146】
図18は、
図17に示されたラケット設計支援システムによる制御処理の第1の例を説明するフローチャートである。
図18に示された制御処理についても、情報処理装置201のCPU220が、メモリ230に格納されたラケット診断プログラムを起動することによって実行することができる。
【0147】
図18には、M2=1であり、M1≧2のとき、即ち、ラケットスイングの動作者を固定して、ラケットデータを変化させたときのシミュレーション結果を得るための制御処理が示される。
【0148】
図18に示されるように、CPU220は、S310aでは、動作軌跡データ入力部104から、ラケット設計対象のユーザに対応した動作軌跡データの入力を受ける(M2=1)。
【0149】
さらに、CPU220は、S320aにより、M1個のラケットデータの入力を受け付ける(M1≧2)。M1個のラケットデータの間では、ラケット20の複数の設計パラメータ値のうちの少なくとも1つ(たとえば、ラケットシャフトを構成するセグメントSGr2~SGr5の剛性値の少なくとも1つ)が互いに異なる値に設定されている。また、S320aでは、シミュレーション演算のためのカウント値iが、初期値に設定される(i=1)。
【0150】
CPU220は、S325aでは、S320aで入力されたM1個のラケットデータのうちの第i番目(i=1~M1の自然数)のモデルのラケットデータを、解析装置100への入力として選択する。
【0151】
CPU220は、S330aにより、S325aで選択されたラケットデータを反映して、S230(
図15)と同様にして、解析装置100の運動方程式モデル101を構築する。さらに、S340aでは、S240(
図15)と同様にして、S310aで入力された動作軌跡データと、S330aで構築された運動方程式モデルとを用いて、シミュレーション演算が実行される。S350aでは、S340aでのシミュレーション演算により、第i番目のラケットデータで表現されるラケット20をスイングしたときのシミュレーション出力値(スイング開始~終了)が取得される。CPU220は、S360aにより、S260(
図15)と同様にして、S350aで取得されたシミュレーション出力値から、予め定められた評価量を抽出または算出する。
【0152】
CPU220は、S370aでは、カウント値iがM1以上であるか否かを判定する。i<M1のとき(S370aのNO判定時)には、カウント値iを1増加して(S375)、処理はS325aに戻される。これにより、カウント値i=1からi=M1になるまで、S325a~S360aの処理が繰り替されることによって、M1個のラケットデータのそれぞれでのシミュレーション結果から評価量qが求められる。
【0153】
CPU220は、i≧M1のとき(S370aのYES判定時)には、S380aにより、M1個のラケットデータのそれぞれで求められた評価量を保存する。さらに、S390aでは、設計パラメータ値と評価量との対応を示す設計支援情報を生成することができる。設計支援情報は、ラケットデータまたは動作軌跡データが異なる下での複数のシミュレーション出力値(または、複数のシミュレーション出力値から求められた評価量)を比較するための情報に相当する。
【0154】
図20には、
図18の制御処理で得られた設計支援情報の一例が示される。
図20の横軸には、M1個のラケットデータ間で異なる値の設計パラメータ値が示される。一方で、縦軸には、評価量qとして上述のq1(ヘッドスピード)およびq2(関節負荷モーメント)が示される。
【0155】
図20の例では、設計パラメータ値Pの変化に対して、シミュレーションで得られた評価量q1(ヘッドスピード)および評価量q2(関節負荷モーメント)の値が変化する。ヘッドスピード(q1)については、P=p1で最大値となり、関節負荷モーメント(q2)については、P=p2で最小値となっている。設計パラメータ値Pに関する上記p1,p2の値を設計支援情報の一部として生成することで、最適なラケット設計に利用することが可能である。
【0156】
あるいは、設計パラメータ値Pの変化に対する、式(14)に従って重み付けされた評価量q*の変化を示す態様によって、設計支援情報として生成することも可能である。
【0157】
次に、
図19は、
図17に示されたラケット設計支援システムによる制御処理の第2の例を説明するフローチャートである。
図19に示された制御処理についても、情報処理装置201のCPU220が、メモリ230に格納されたラケット診断プログラムを起動することによって実行することができる。
【0158】
図19には、
図18とは反対に、M1=1、かつ、M2≧2のとき、即ち、ラケットデータを固定して、異なる動作者が当該ラケットをスイングしたときのパフォーマンスを比較するシミュレーション結果を得るための制御処理が示される。
【0159】
図19に示されるように、CPU220は、S310bでは、異なるユーザによるパフォーマンス比較の対象となるラケットデータの入力を受け付ける(M1=1)。
【0160】
さらに、CPU220は、S320bにより、M2人分の動作軌跡データの入力を受け付ける(M2≧2)。M2個の動作軌跡データの間では、ラケットのスイング動作者の属性が異なっている。例えば、属性は、「競技者・女性」、「女性・一般」、「初心者・女性」、「シニア」のように、性別、競技レベル、年齢層等の情報によって定義することができる。S320bでは、シミュレーション演算のためのカウント値iが、初期値に設定される(i=1)。
【0161】
CPU220は、S325bでは、S320bで入力されたM2個の動作軌跡データのうちの第i番目(i=1~M2の自然数)の動作軌跡データを、解析装置100への入力として選択する。
【0162】
CPU220は、S330bにより、S310bで入力されたラケットデータを反映して、解析装置100の運動方程式モデル101を構築する。さらに、S340bでは、S340a(
図18)と同様にして、S330bで構築された運動方程式モデルと、S325bで受付けられた動作軌跡データとを用いて、シミュレーション演算が実行される。S350bでは、S340bでのシミュレーション演算により、第i番目の動作軌跡データによってラケット20をスイングしたときのシミュレーション出力値(スイング開始~終了)が取得される。CPU220は、S360bにより、S360a(
図18)と同様にして、S350bで取得されたシミュレーション出力値から、予め定められた評価量を抽出または算出する。
【0163】
CPU220は、S370bでは、カウント値iがM2以上であるか否かを判定する。i<M2のとき(S370bのNO判定時)には、カウント値iを1増加して(S375)、処理はS325bに戻される。これにより、カウント値i=1からi=M2になるまで、S325b~S360bの処理が繰り替されることによって、M2個の動作観測データのそれぞれのシミュレーション結果から評価量qが求められる。なお、
図19の制御処理では、M1=1であるため運動方程式モデルは固定されるので、i≧2のときのループ処理では、S330bの処理はスキップされてもよい。
【0164】
CPU220は、i≧M2のとき(S370bのYES判定時)には、S380bにより、M2個の動作軌跡データのそれぞれで求められた評価量を保存する。さらに、S390bでは、動作者(属性)と評価量との対応を示す設計支援情報を生成することができる。
【0165】
図21には、
図19の制御処理で得られた設計支援情報の一例が示される。
図21の例では、ユーザ属性毎の評価量q1,q2の比較を示すように設計支援情報を生成することができる。これにより、所望のターゲット層に向けられたラケット設計が実現されているか等の情報を得ることができる。
図21においても、複数の評価量q1,q2を重み付けによって統合した評価量q*(式(14))を用いて、設計支援情報を生成することも可能である。
【0166】
また、
図18および
図19の処理を組み合わせることで、M1≧2、かつ、M2≧2の下でも、M1個のうちの1個の動作軌跡データと、M2個のうちの1個のラケットデータとの組合せのそれぞれでのシミュレーション出力値および評価値を求めて比較することによって、設計支援情報を得ることも可能である。
【0167】
なお、実施の形態2では、説明を簡単にするために、評価量q(q1,q2)を比較することでラケットの選択診断情報、設計支援情報を生成する例を説明したが、運動方程式モデル101のシミュレーション演算によるシミュレーション出力値(S250,S350a,S350b)に基づく値であれば、評価値に限定されることなく、ラケットの選択診断情報および設計支援情報の生成に用いることが可能である。
【0168】
なお、本実施の形態では、スイングされるラケットとしてはバドミントンラケットを想定したが、肩関節から上肢による動作でスイングされる他の種目のラケット(例えば、スカッシュ等)についても解析対象とすることが可能である。
【0169】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0170】
10 上肢、20 ラケット、30 測定架台、100 解析装置、101 運動方程式モデル、102 三次元動作解析装置、103 ラケットデータ入力部、104 動作軌跡データ入力部、105 外力算出部、106 診断情報生成部、107 設計支援情報生成部、110,110X 関節トルク算出部、115 逆動力学演算部、120 復元トルク算出部、130 評価量算出部、150 補正演算部、152,157 減算部、154 比例制御演算部、155 微分制御演算部、156 加算部、201,203 情報処理装置、202 情報表示装置、204 クラウド、220 CPU、230 メモリ、240 回路、245 バス、250a ラケット選択診断システム、250b ラケット設計支援システム、CG 重心、Fext 肩関節力(ベクトル)、JN,JNh0~JNh3,JNhj,JNr1~JNr5,JNrj ジョイント、MRh1~MRh8,MRr1~MRr10 マーカ、SG,SGh1~SGh3,SGr1~SGr6,SGrj セグメント、SGF1 セグメン、Thuman 関節トルク(ベクトル)、Tshaf 復元トルク(ベクトル)、ftp 測定力(剛性)、i パラメータ値、kd 微分ゲイン、kp 比例ゲイン、q 評価量、q1 ヘッドスピード、q2 関節負荷モーメント、wg1,wg2 重み付け係数。