0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

micro:bitAdvent Calendar 2021

Day 12

つくるバーチャルライドバイク

Last updated at Posted at 2021-12-11

BBC micro:bit で室内サイクリング

バーチャルライドアプリで室内サイクリングを楽しむには、FTMSに対応したバーチャルライドバイクが必要です。BBC micro:bitは、BLE機能があり、FTMSを実装することが可能です。
そこで、BBC micro:bitで使えるバーチャルライドバイク用のMakeCode拡張ブロックをつかって、バーチャルライドバイクをプログラミングしてみましょう。

準備

image.png

バーチャルライド

いくつかのバーチャルライドアプリがFTMSに対応しています。

MakeCode でプログラミング

Fitness Machine Service を開始します

「最初だけ」で、Start the Fitness Machine Service を呼び出します。
これにより、micro:bitは、Fitness Machine Serviceを開始しますので、パソコンやスマホのバーチャルライドアプリから、接続できます。

image.png

1秒おきに、Indoor Bike Data を通知します

「ずっと」で、1秒おきに、Calc And Notify Indoor Bike Dataを呼び出します。
このブロックでは、CrankIntervalTimeResistance Levelとで、ケイデンスやスピード、パワーを算出して、バーチャルライドアプリへIndoor Bike Dataとして、通知しています。
CrankIntervalTimeの値は、室内サイクルトレーナーのセンサーから取得してください。

image.png

シミュレーション情報に従って、負荷を変更します

クライアント(アプリ)からシミュレーション情報が送られてくると、On Set Indoor Bike Simulation Parameters Procedure through Fitness Machine Control Pointブロックが呼び出されますので、Get Simulation Gradeで、斜度(%)を取得し、負荷を変化させます。
室内サイクルトレーナーの負荷部分を小型サーボモーター駆動に改造し、取得した斜度(%)に連動するようにサーボホーンの角度をプログラミングしてください。

image.png

おわりに

今回、Microsoft MakeCode for micro:bit の独自拡張機能であるVirtual Ride拡張ブロックを使うことによって、バーチャルライドバイクを簡単につくることができるようになりました。Fitness Machine Service (FTMS)に対応したバーチャルライドアプリであれば、どれでも室内サイクリングが楽しめます。

参考: https://qiita.com/jp-96/items/07bde8fa4248a4beb258

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?