Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
屋内自転車競技場を走行する自転車の走行状態を 遠隔取得するテレメトリーデバイスの開発
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
MIXI ENGINEERS
PRO
June 01, 2023
Technology
590
1
Share
Copy link
Start on current slide
屋内自転車競技場を走行する自転車の走行状態を 遠隔取得するテレメトリーデバイスの開発
MIXIでは、公益財団法人日本自転車競技連盟 様より、デバイス開発の提案依頼を受け、プロトタイプの開発を受託しました。本スライドでは、その開発内容についてご紹介します。
MIXI ENGINEERS
PRO
June 01, 2023
More Decks by MIXI ENGINEERS
See All by MIXI ENGINEERS
安全性・開発速度・ユーザー体験の あいだで考える 事業会社のプロダクトセキュリティ
mixi_engineers
PRO
0
220
MIXIで活躍できるエンジニアを 若手社員目線で考えてみる
mixi_engineers
PRO
1
390
『モンスターストライク』 の運営に伴走する! データ民主化への 解析グループの3つのアプローチ
mixi_engineers
PRO
1
640
実践が先生だった— 新卒サーバーエンジニア1年目のリアル
mixi_engineers
PRO
0
710
13年運用タイトルのサーバーサイドが辿り着いた現在地 ― モンスターストライクにおける技術・組織・AI活用から得た知見
mixi_engineers
PRO
1
960
脱Jenkins、インターン生が挑んだCIツールGitHubActions移行
mixi_engineers
PRO
2
700
セキュリティ研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
43
42k
WEBフロントエンド研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
5
2k
AI研修(Day1)【MIXI 26新卒技術研修】
mixi_engineers
PRO
22
20k
Other Decks in Technology
See All in Technology
More Freedom on the Same Shared GPU Cluster: A Small Team’s Experience with vCluster
nttcom
0
100
Lambda MicroVMsは常駐サーバーの代わりに なるか? Kiro Crew を動かして検証してみた / Kiro Crew on Lambda MicroVMs
k_adachi_01
2
350
AI臭い文章とは何なのか
nasuvitz
38
77k
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
190
GitHub Agentic Workflows を触ってみる
htkym
2
920
ログラスのマルチプロダクトを 支える認証基盤 〜テナントごとに異なる統制とどう向き合うか〜
dada4386
3
330
1万名の社員が使う認証基盤で どう信頼性を担保するか?
kairim0
0
180
Incremental HTTP
kazuho
5
2k
AI感のないAWS構成図をAIエージェントに描かせたい!
sagochiko
2
500
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
290
行動するAIのためのオントロジー | DevRev — Encraft #26.pdf
dvrv_tknrszk
2
670
BedrockとLambdaで作る リアルタイム進行型推理ゲーム
kawametho
0
170
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Crafting Experiences
bethany
1
370
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
550
Documentation Writing (for coders)
carmenintech
77
5.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
From π to Pie charts
rasagy
1
380
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
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