はじめに
在宅勤務が増え、外出する頻度も少なくなり、運動不足が続いていませんか。そこで、BLEのGATTサービス(FTMP/FTMS)を実装したmicro:bitと家庭用サイクルトレーナーでバーチャルライドを楽しんでみませんか。
micro:bit mini bicycle
をmicro:bitにインストールすると、マグネット負荷方式の家庭向けサイクルトレーナーの負荷を制御したり、クランクのセンサーから回転数や速度、パワーを算出したりすることが可能となります。また、micro:bitのBluetooth機能を使って、スマホなどと無線通信でき、スマホから、負荷の強度を変更できたり、スマホで回転数や速度、パワーを確認したりできます。さらには、Zwiftをはじめとした各社のバーチャルライドアプリ(サービス)も楽しむことができます。
補足:BBC micro:bit v1.5をターゲットとしています。
例:マグネット負荷方式の家庭向けサイクルトレーナー
Amazon: マグネティックバイクミニ (黄色)- 10588
Amazon: マグネティックバイクミニ (白色)- 9593
インストール方法
必要なもの
- micro:bit本体 (v1.5)
- 小型サーボモーター(MG90S等)
- マグネット負荷方式の家庭向けサイクルトレーナー
- 3Dプリンターで作成したパーツ(GitHubのリポジトリ)
- 工具、ネジ、配線部品等
- コンパイル済みのHEX形式ファイル(GitHubのリポジトリ)
##コンパイル済みのHEX形式ファイル
次のいずれかの方法で、HEXファイルを入手し、micro:bitに転送(コピー)します。
- githubからコンパイル済みのHEXファイルをダウンロードする
- mbed オンライン コンパイラで、プログラムをインポートし、コンパイルする
入手方法1 - githubからコンパイル済みのHEXファイルをダウンロードする
次のリンクからHEX形式ファイルをダウンロードし、micro:bitへ転送(コピー)します。
microbit-minibicycle.hex
入手方法2 - mbed オンライン コンパイラで、プログラムをインポートし、コンパイルする
- Mbed オンライン コンパイラを開きます
https://ide.mbed.com/compiler/ - プログラムをインポートします
https://github.com/jp-96/microbit-minibicycle.git - コンパイルを実行し、コンパイルに成功すると、HEX形式ファイルがダウンロードされます
- ダウンロードしたHEX形式ファイルをmicro:bitへ転送(コピー)します
接続方法
小型サーボモーターをmicro:bitのP1端子へ、センサー信号をmicro:bitのP2端子へそれぞれ接続します。
配線方法については、手書きの回路図を参考にしてください。
使い方
micro:bitのAボタンとBボタンで、負荷を1から8まで変更できます。
スマホの汎用BLEアプリで、BIKEMINI:BITに接続すると、回転数や速度、パワーを確認したり、スマホから、負荷の強度を変更できたりします。
汎用BLEアプリ
バーチャルライド
いくつかのバーチャルライドアプリも対応していますので、試してみてください。
- Zwift - https://www.zwift.com/
- Kinomap - https://www.kinomap.com/
- RGT CYCLING - https://www.rgtcycling.com/
- OneLap - https://www.onelapjapan.jp/ , https://www.onelap.com/
開発資料
リンク
- 家庭用サイクルトレーナーにmicro:bitをつなぐ(その1)
ワイヤレス運動測量計から出力されるクランク回転センサーの信号をモニターする - 家庭用サイクルトレーナーにmicro:bitをつなぐ(その2)
STEP信号からワイヤレス運動測量計に表示されているスピードをmicro:bitで推定する - 家庭用サイクルトレーナーにmicro:bitをつなぐ(その3)
STEP信号からケイデンスとスピードを求めるモジュールをドライバー(アイドル・コンポーネント)として作成する - 家庭用サイクルトレーナーにmicro:bitをつなぐ(その4)
スマホ・アプリでケイデンスやスピードを表示できるようにBLEのGATTサービス(FTMP/FTMS)を実装する - 【最終回】家庭用サイクルトレーナーにmicro:bitをつなぐ(その5)
BLEのGATTサービス(FTMP/FTMS)で推定パワーをサポートする
モジュールの構成 - シーケンス図
開発当初のシーケンス図をメモとして残しておきます。実装とは異なっています。
ソースコード - GitHub
https://github.com/jp-96/microbit-minibicycle
おわりに
micro:bitを組み合わせることにより、家庭用サイクルトレーナーでも、気軽にバーチャルライドを楽しめます。
パワー計算や負荷強度は、プログラミング可能ですので、バーチャルライドもプログラミングの楽しんでください。