2022年-2023年 たいチャレ日誌 ~筋トレ管理アプリ~

はじめに

皆さんこんにちは。入社歴6か月、エンジニア未経験の若手コンビHとNがお届けします。この業界未経験なので2人で勉強しながら課題に取り組んでいます。

筋トレ管理アプリについて

今回は【C#】を使用して、【筋トレ管理アプリ】を作成しようと考えています。

なぜ筋トレ管理アプリを作成しようと思ったのか?

普段の筋トレ中、インターバル毎に挙上重量・回数を入力していて、それが手間だと感じていました。そこで、自分たちでアプリを作成すれば解決できるのではないかと思ました。未経験で入社したばかりの自分たちでは、実現するのが難しいと思いましたが、開発の経験をするためには、身近なもので取り組んでいくのが近道になるかもしれないと思い開発を進めています。

プログラム言語に【C#】を選んだ理由は?

筋トレ管理アプリは色々なスマートフォン(iOS/Android)で使用したいと考えています。iOS/Androidどちらでも利用できるようにするには、その両方に対応するフレームワークを利用する必要があります。iOS/Androidどちらでも利用できるフレームワークかつ、未経験でも取り組みやすいプログラム言語という条件で検討したところ、
 フレームワーク:【Unity】
 プログラム言語:【C#】
が良いのではないかという事になりました。Unityで利用できるプログラム言語は複数ありますが、今後に役立ちそうという理由でプログラム言語に【C#】を選んでいます。

筋トレ管理アプリの機能は?

このアプリの機能としては以下2点があります。 

  • 筋トレをしている際のカウント機能。 
  • データ記録とグラフ表示機能。

カウントをアプリに任せることにより、今までよりも集中してトレーニングにできるようになると思います。

次に各画面の仕様についてご説明したいと思います。

画面仕様について

画面は4つあります。

  1. カメラ認識画面

トレーニング中の反復回数をカメラで自動認識させ、記録する画面です。録画ボタンを押すと開始し、映った回数を認識しデータとして記録する想定です。認識方法としてはダンベルの重り部分の円をカメラに認識させ円が上下する回数をカウントさせる予定です。

なお重量についてはプルダウン式で利用者が選択する仕様にする想定です。 回数をこなしていく毎にだんだんと無理やり追い込もうとしてフォームが崩れる場合があると思いますが、その場合はカウントされない可能性があります。筋トレにおいて追い込むことも大切ですが、きちんとしたフォームを崩さずにトレーニングすることも大事な要素です。

カメラ認識画面

2. データ記録画面

回数認識したデータを自動表示し確認する画面です。カメラで認識した回数と選択した重量のデータがそのまま落とし込まれ、日付ごとに管理することができる想定です。

3.グラフ表示画面

横軸を日付、縦軸を重量として、1回だけ挙げることができる最大重量(1RMという)を棒グラフで表示させ、確認できるようにする画面です。これにより重量の変化を可視化でき、成長具合やモチベーションの向上につながると考えています。

なお1RMの計算にはいくつか方法があるのですが、実際にあげる重量に近い【1RM=重量×回数÷40+重量】という計算方法を用いる想定です。

グラフ表示画面

4.データ編集画面

データ記録画面で自動入力された情報を手入力で入力できる画面です。自動入力されたデータの修正や新規で入力することを可能にする想定です。

データ編集画面

自動入力されたデータになるべく誤りが生じないように丁寧に設定をしていくつもりではいますが、やはり完ぺきなシステムを作ることはとても困難です。修正や新規登録をすることで、データとしての正確さを保っていけるようにしたいです。とは言いつつ、カメラ認識についてはトライ&エラーをしていきながらより完成形へ仕上げていきたいと考えています。

最初何をしたらいいのか分からないところや知識を得てそれを活かすというところは、筋トレも似ている箇所があるかもしれません。地道に少しずつ努力と熟考を重ねていくことで結果が必ずついてくるものだと思います。その努力を少しでもサポートできる、という画期的で実用的な筋トレアプリをこれから作成していきたいです。

まとめ

今回筋トレアプリを作成することが出来れば、この業界未経験からのステップアップになると思います。これをはじめに様々な勉強や開発にチャレンジしてみたいと思います。

投稿者プロフィール

エンジニア未経験N
エンジニア未経験N
エンジニア未経験者です。
開発に興味があり、鯛チャレ参加中です。
現在はC#の勉強を中心に日々精進しております。