Bluehornet blog

RaspberryPi, Arduinoを日常生活に活用してみたいブログ

エアロバイクを使った在宅ツーリング

1. 課題

・自宅で楽しく運動したい
・エアロバイクを買ったものの、動画を見ながら漕ぐのも飽きてきた
・バイクに表示される距離の表示だけでは、どの辺りまで進んだかの実感がない

2. 解決策

・漕いだ分だけGoogle map上でピンを進める
Google spreadsheet上に進んだ座標を記録する
・イメージはこんな感じ

f:id:bluehornet96:20200506161223p:plain
全体イメージ

3. 手順

(a) 準備したもの
Raspberry Pi 4
・リードスイッチ
ネオジム磁石
・抵抗
・タクトスイッチ

(b) ハードのセットアップ
・接続する図は省略、基本的には上のイメージ図の感じで結線
・磁石とリードスイッチの位置はこんな感じ

f:id:bluehornet96:20200506161217p:plain
リードスイッチと磁石の位置

4. プログラム

(a)準備
・とりあえずお決まりのアップデート

sudo apt-get update
sudo apt-get upgrade

Google mapをchromiumで開き、操作する。そのためにSeleniumモジュールとchromiumのドライバをインストール

pip3 install selenium
sudo apt-get intsall chromium-chromedriver

Google spreadsheetにデータをアップロードするために必要なモジュールもインストール

(b)コード
・GPIO17で回転を検知して回転数をカウント
・10秒間で漕いだ分だけ緯度経度をすすめてGoogle mapの検索点を更新
・GPIOの20と21でボタンプッシュごとに進行方向を45度程度傾けて進むようにしてみた

5. 運用してみた感想

・かなり適当な進路ですが、観光地周りを起点にして進むとなんとなくイメージが湧いて楽しいです。次は道路上を進むようにさせ、本当にツーリング感を出したいです。
・仲間とスプレッドシート上で回転数とか到着位置を競いたいと思っていましたがまだ一人で遊んでいます。
・エアロバイクでHIIT (High Intensity Interval Training)をしていますが、その時も少しだけ進んでいる感じがあって楽しめています。