Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
屋内自転車競技場を走行する自転車の走行状態を 遠隔取得するテレメトリーデバイスの開発
Search
MIXI ENGINEERS
PRO
June 01, 2023
Technology
1
540
屋内自転車競技場を走行する自転車の走行状態を 遠隔取得するテレメトリーデバイスの開発
MIXIでは、公益財団法人日本自転車競技連盟 様より、デバイス開発の提案依頼を受け、プロトタイプの開発を受託しました。本スライドでは、その開発内容についてご紹介します。
MIXI ENGINEERS
PRO
June 01, 2023
Tweet
Share
More Decks by MIXI ENGINEERS
See All by MIXI ENGINEERS
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
94
月間4億メディアの画像解析を救え!みてね発・オンデバイスMLで挑む圧倒的コストカット作戦
mixi_engineers
PRO
2
75
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
4
1.6k
プロジェクトマネジメント実践論|現役エンジニアが語る!~チームでモノづくりをする時のコツとは?~
mixi_engineers
PRO
5
440
セキュリティ研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
4
2.1k
QA・ソフトウェアテスト研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
3
1.9k
AI研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
6
3.5k
ソフトウェアアーキテクチャ研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
37
15k
Writing with AI【MIXI 25新卒技術研修】
mixi_engineers
PRO
3
840
Other Decks in Technology
See All in Technology
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
0
270
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
630
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
3
290
AI開発ツールCreateがAnythingになったよ
tendasato
0
120
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
5
700
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
460
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
250
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.2k
AWSで推進するデータマネジメント
kawanago
1
1.2k
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
210
S3アクセス制御の設計ポイント
tommy0124
2
180
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Speed Design
sergeychernyshev
32
1.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Scaling GitHub
holman
463
140k
Rails Girls Zürich Keynote
gr2m
95
14k
Designing for humans not robots
tammielis
253
25k
Facilitating Awesome Meetings
lara
55
6.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Practical Orchestrator
shlominoach
190
11k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
©MIXI 屋内自転車競技場を走行する自転車の走行状態を 遠隔取得するテレメトリーデバイスの開発 2023年4月 株式会社MIXI 開発本部CTO室
©MIXI 概要 公益財団法人日本自転車競技連盟 様よりデバイス開発の提案依頼を受け、プロトタイプの開発を受託。 2023年3月にプロトタイプを納品。 2 公益財団法人日本自転車競技連盟 HPCJC(High Performance Center
of Japan Cycling) 日本自転車競技連盟(JCF)トラック競技強化指定選手のトレーニングセンターとして、世界選手権やオリンピック でメダルを獲得を目指してアスリートを強化、育成する組織 https://japanhpc.com/ 開発内容 トラック競技用自転車のサドル後ろに取り付ける、ANT+センサーデータのネットワーク転送機能付きデータロガーの 開発 ※各社の商品またはサービスなどの名称は各社の商標または登録商標です。 なお、本開発は競輪の補助を受けて公益財団法人日本自転車競技連盟と共同で実施しました。
©MIXI 開発の流れ 日本自転車競技連盟 様からご依頼を受け事前検証を実施、納期までの完成可否を確認しました。 競技用自転車とANT+センサーを連盟よりご提供していただき開発と動作確認を繰り返し行い、伊 豆ベロドロームでの走行動作確認を経て2023年3月にプロトタイプを納品。 事前検証 ・ANT+の調査 ・部品の調査、選定 ・技適確認
・提案内容の検討 …etc 開発 ・logger ・Cplane ・ディスプレイ表示 ・筐体設計 ・部品の再選定 ...etc 動作確認 ・ANT+受信 ・データ記録、転送 ・ディスプレイ表示 ・伊豆バンク走行 ...etc 納品 3
©MIXI 事前検証 当初、Nordic社nrf52832をファームアップしANT+の通信を検討していたが、ファームアップする には新規で技適取得が必要なため大幅に開発期間が必要になってしまうことが判明。プランを変更 し連盟へ提案しました。 ANT+に対応したファームのマイコンで国内技 適取得しているものが無く、別の方法を模 索、開発期間(約2カ月)を考慮し技適取得済 の製品を組み込む方針で連盟へ提案 プランの変更
ANT+センサー受信 Garmin USB ANT+STICK マイコン Wi-Fi2.4GHz BCM2835 RaspberryPi/Zero-W 当初のプラン ANT+ Sensors nrf52832 ISP1507 ANT ProtocolStack S332 SoC ESP32-W ROOM Wi-Fi ProtocolStack Specific firmware SoC UDP/IP management Application /Server UDP/IP UART RX/TX Wi-Fi 2.4Ghz radio ANT+ 2.4Ghz radio 4
©MIXI MIXI-CycleComputer MIXI-CycleComputer Cplane for Development Speed Sensor MIXI-CycleComputer は、自転車側に取り付けてある各種センサーをANT+USBドングル、GPIO、I2C、
UART、インタフェイス等によって制御、終端し、それら各センサーデータを同一ネットワーク上の受 信機(cplane)に転送および、制御するモジュールです。 5 Power Sensor Wi-Fi Logger UART 6-Axis Accelerometor ANT+ センサーデータ 制御・設定
©MIXI 電子回路ブロック Logger Logger は RaspiOS Lite 32bit 環境でCompile/Link して動作するCycleComputerモジュールです。
6 搭載パーツ BCM2835 RaspberryPi/Zero-W 加速度、角速度センサー ディスプレイ/ボタン バッテリー USB ANT+STICK 6-axis Accelerometor Display Button Battery Power BCM2835 RaspberryPi Zero-W USB ANT+STICK Garmin UART/TX,RX GND 3.3V UART/TX,RX GND 3.3V SDA/SCL GPIO GND SDA/SCL GND 5V SDA/SCL GND 5V 5V GPIO GND 5V USB micro USB micro
©MIXI Logger 7 Logger は RaspiOS Lite 32bit 環境でCompile/Link して動作するCycleComputerモジュールです。
OLEDディスプレイ、ボタンを搭載することでセンサーデータの表示や操作が可能です。 主な機能 ・各センサーデータの受信 ・ANTセンサーとのペアリング、キャリブレーション ・センサーID、通信状況等の各ステータス表示 ・スピード、パワー、ケイデンスデータ表示 ・Cplaneとの時刻同期 ・ログデータの書き出し 端末番号 通信状況 時刻 電池残量 スピード、パワー、ケイデンス データ表示
©MIXI Control Plane Cplaneは Loggerと同一ネットワーク上に配置することで、Loggerに対してリモートコントロー ルコマンドを発行できます。 リアルタイムにセンサーデータをデコードし視覚化し、logger 開発時/動作確認に利用するソフ トウェアモジュールです。 8
©MIXI 筐体製作 Loggerの筐体は自社設計、複数の形状を3Dプリンターにて製作しています 9 横型、最小サイズ案 縦型、厚みを抑えた案 プロトタイプ用筐体
©MIXI 動作確認 動作確認のため伊豆ベロドロームにて走行テストを実施 走行時のセンサーデータの転送(Wi-Fi 2.4GHz)を確認しました。 10 Logger Cplane Wi-Fi 2.4GHz
ANT+ デバイス センサーデータ 制御・設定 使用機材 logger MIXI開発プロトタイプ Cplane macOS x86_64 ANT+デバイス 自転車競技連盟様ご提供 Wi-Fi AP 2.4GHz Aruba APIN0515 ネットワーク SW NETGEAR GS105E Wi-Fi AP Internet SW
©MIXI 動作確認 動作確認のため伊豆ベロドロームにて走行テストを実施 走行時のセンサーデータの転送(Wi-Fi 2.4GHz)を確認しました。 11
©MIXI 動作確認(一部抜粋) ANT+ センサーデータの受信 内容 データロガーのUSB ANT StickでANT+センサーデータを受信する 確認 事項 a.
ANT+ Device Profile Bike Speed (Device type 123) センサーデータの受信を確認する 検証 方法 speedデータの連続パケット差分を確認する ANT+センサーデータのUDPパケットの流し込みは有線クロス接続経由とする 結果 SPDセンサーID : 62937 到達パケット - 1(ID: f5 d9, データ: 7b 01 ff) 到達パケット - 2(ID: f5 d9, データ: 7b 01 7f) 同一のUIDでSpeedデータが更新されていることを確認 12
©MIXI 動作確認(一部抜粋) NTP同期 内容 NTPでサーバーと時刻同期しタイムスタンプを付与する cplane端末とlogger端末の時刻同期先(ntp.nict.jp) 確認 事項 データに付与されているパケット内のtimestampが cplane端末と同時刻であることを確認する 検証
方法 cplane端末とlogger端末はWi-Fi経由でNTP時刻同期 ANT+センサーデータのUDPパケットの流し込みは有線クロス接続経由とする 結果 データ受信時刻 = 12:17:37 JST(EpochTime : 1679455057) ANT+センサーデータパケット内時刻 = 641A893D 16進数(EpochTime : )1679455057 cplane端末時刻 = データ受信時刻 logger端末時刻 = パケット内時刻 = データ生成時刻 となり。時刻同期ができていることを確認 13
©MIXI 動作確認(一部抜粋) ANT+ Wi-Fi UDP転送 内容 データロガーが受信したANT+センサーデータを 2.4GHz Wi-Fi で同 一ネットワーク上のホストに
UDP で転送する(約4Hz) 確認 事項 約4HzでUDP転送できていること 4Hz = 0.25秒間隔 検証 方法 speedデータの連続パケット到達時刻を確認する ANT+センサーデータのUDPパケットの流し込みは同一AP接続経由とする 結果 センサーデータのパケット到達状況 おおよそ0.25秒間隔で到達していることを確認 ※ただし現地Wi-FiのRTTの状況によっては到達時間が遅れる場合がございます 14
©MIXI 動作確認(一部抜粋) ANT+ Wi-Fi UDP転送 内容 センサーデータは、ANT トランシーバーが受信(RX)した Broadcast メッセージをデコードせずに転送する 確認
事項 デコードせずに転送していること 検証 方法 cplane端末でパケットキャプチャ(wireshark)利用して到達パケットの中身を確認する 結果 最後のデータ領域のとおりデコードされていない状態で到達していることを確認 15
©MIXI