2017/09/03

クランクひずみによるパイロットパワーの計測3

前回に引き続きひずみゲージによるパイロットパワー計測の話です。
今回は取得したデータからパイロットパワーへの変換について書きます。

パワーはトルクと回転数の積から計算することができます。
取得した回転数、ひずみのデータと計算して求めたパワーのグラフを以下に示します。
今回は、左クランクのみにひずみゲージを取り付けたので、右足も同じパワーを出していると仮定して、パイロット出力は左足のものを2倍した値としました。
回転数、ひずみ、パイロット出力。パイロット出力は市販のパワーメータでも測定を行い、一番下のグラフの黒点で示した。
取得したひずみデータは、キャリブレーションから求めた係数を用いることで、トルクの値に変換することができます。
しかし、トルクの値はクランク1回転中に変化する振動を含んだデータなので何らかの形で平均を取ることが必要です。
平均を取る方法としては、移動平均、指数フィルタ等の各種IIR、FIRフィルタ等が使えますが、試してみたところこれらのフィルタでは時定数が長めのフィルタが必要なようなので、クランク1回転の平均を取ることにしました。

クランク1回転の平均値を計算するためには、クランクが1回転する時間の情報が必要になります。
1回転を検出する磁石式の回転数計の場合には直接この値が得られます。
しかし、今回用いた回転数計はフォトインタラプタ+スリットを用いたもので、1スリットが通過する時間を測定するため、直接的に1回転の検出はできません。
(スリットが通過する数を数えれば測定することはできます)
そこで、クランク回転検知は数値的に行いました。
回転数 [rpm]はその定義から回転回数 [回]の時間微分に相当します。
したがって、回転数を数値的に積分した値の整数部が変化する時刻がクランクが1回転した時刻と推定されます。
この方法で推定したクランク回転検知時刻を図中段の青印で示しました。
このデータでは後処理で回転検知を行いましたが、コックピット表示用にマイコン内でも同等の計算を行っています。

図下段のパワーのデータはクランク1周分の平均化を行ったトルクに回転数の値をかけて求めたパイロットパワーです。
薄青色の点は生データ、実線は弱い指数フィルタをかけたデータです。
1秒の平均時間で測定した市販のパワーメータ(ペダル式)の値と多少のずれはあるもののよく一致していることがわかります。

クランクひずみによるパイロットパワーの計測の話はここまでです。
現在はさらに詳細な解析として、クランク上下のひずみゲージの出力からペダリングのベクトルを求められないか試みています。
うまくいった場合にはさらに追加の記事を書きたいと思います。