1.8K Views
May 17, 25
スライド概要
同人ハード開発でソフトもハードも支配する 自作鉄道模型コントローラのアレコレ @はこだて未来大×企業エンジニア 大LT2025 (2025/05/17) Jugesuke
自己紹介 Jugesuke 公立はこだて未来大学 情報システムコース 4年 主にバックエンドと公共交通関連 ときどきインフラ・Webフロントエンド 回路設計なども... 出身:名古屋 在住:函館 Futher Info -> https://aboutme.jugesuke.net/ 2
同人ハードを作りたい......! 3
4
今日の話題 リアルな鉄道模型を楽しみたい... ▶ そうだ、自分でつくろう! 5
リアルな鉄道模型体験の要件 1. リアルなストラクチャ ○ それっぽいところを走っていてほしい 2. リアルな車両 ○ かっこいい車両は、いいよね (語彙力) 3. リアルな操作体験 ○ 運転体験が良いと、とても楽しい 4. リアルな音が出る ○ VVVFインバータ音、いいですよね 5. 遠隔操作ができる ○ 色々なところから車両を見られると、たのしい 6
ストラクチャと車両 ● リアルなストラクチャ ○ がんばりましょう ● リアルな車両 ○ ○ お金をだして、いいのを買おう! 改造しても楽しい ▶ 既存のものでなんとかなる 7
コントローラ周り ● リアルな操作体験 ● リアルな音が出る ● 遠隔操作ができる ▶ これら全てを満たすコントローラは販売されていない ▶ 音が出ると言ってもコントローラから音が出るだけ 8
こんな感じにしたい なんかいい感じの コントローラ なんかいい感じの 電源装置 鉄道模型 9
なんかいい感じの コントローラを用意する 10
これを使おう 11
壊さず入力を読み取りたい! 12
プレステコンの通信仕様 SPI Likeな通信方式 COM 0x01 0x42 0x00 0x00 0x00 DAT - 0x41 0x5A SW1 SW2 参考文献: 藤田(1997)プレイステーション・PAD/メモリ・インターフェースの解析, https://kaele.com/~kashima/games/ps_jpn.txt (2023/2/4アクセス) 13
全部ためしていい感じにする SPI Likeな通信方式 COM 0x01 0x42 0x00 0x00 0x00 DAT - 0x41 0x5A SW1 SW2 P - P - Sw - - Sw Sw Sw Sw P B B B B 2 - 4 - Sel - - Sta A B C 1 4 1 8 2 参考文献: 藤田(1997)プレイステーション・PAD/メモリ・インターフェースの解析, https://kaele.com/~kashima/games/ps_jpn.txt (2023/2/4アクセス) 14
いい感じのコントローラを用意する これをつかえば よい 15
いい感じのコントローラを用意する リアルな操作体験 を実現できた! 16
なんかいい感じの 電源装置を作る 17
出来上がったのがこちらになります 18
開発の段取り マイコンボードを買って それぞれの機能の動作確認をとる ▼ 基板を設計する ▼ 基板を工場に発注する ▼ 必要部品を購入する ▼ 組み立てる 19
それぞれの動作確認 ✅なんかいい感じの入力装置の接続 ⬜LCDを動かす ⬜モータを動かす ⬜モータから音を出す 20
それぞれの動作確認 ✅なんかいい感じの入力装置の接続 ⬜LCDを動かす ⬜モータを動かす インターネットから事例を探して、 使えそうなモノを選定すれば良い ⬜モータから音を出す 21
みんな大好き電子部品の八百屋さん で売ってれば、 多分使い方を誰かがブログに書いてる場合が多い...? 22
それぞれの動作確認 ✅なんかいい感じの入力装置の接続 ✅LCDを動かす ✅モータを動かす ⬜モータから音を出す 23
モータから音を出すPWM制御 24
モータから音を出すPWM制御 DCモータからでるノイズ (キーンという音) ▼ モータのオンオフに起因するノイズ 搬送周波数と同じ周波数の音になっている 25
モータから音を出すPWM制御 DCモータからでるノイズ (キーンという音) ▼ モータのオンオフに起因するノイズ 搬送周波数と同じ周波数の音になっている 26
モータから音を出すPWM制御 結論:搬送周波数を可聴域にすれば良い 27
それぞれの動作確認 ✅なんかいい感じの入力装置の接続 ✅LCDを動かす ✅モータを動かす ✅モータから音を出す 28
基板製作 KiCadなど、好きなEDAで頑張って作りましょう... 29
ということで、ハードウェア部分は完成! 30
ハードウェアだけでは動かない! 31
ハードウェアを動かすための ソフトウェアが必要! 32
こんなマイコンがあります M5StampS3 ESP32-S3を使っている Wi-Fi/Bluetooth (BLE・Mesh)が利用可能 使えるプログラミング環境 ● UIFlow2 ● Arduino ● ESP-IDF ● PlatformIO 33
こんなマイコンがあります M5StampS3 ESP32-S3を使っている Wi-Fi/Bluetooth (BLE・Mesh)が利用可能 使えるプログラミング環境 ● UIFlow2 ● Arduino ● ESP-IDF ● PlatformIO 34
ソフトウェアをつくる――設計編 35
ソフトウェアを作る――実装編 頑張って書こう! 36
いい感じ、いい感じ 37
ソフトウェアも完成! 38
ブラッシュアップ編:リアルな音を作る 39
リアルな音作り 試作ではとりあえず雑な音プロファイルを設定してあった ▼ いい感じの音にしたい! 40
つくりかた 41
42
乗ります 43
磁気センサでデータ採取 44
プログラムで再現 45
完成! 46
いい感じに動いたー 47
Future Work 48
Future Work ● スマホ遠隔操作対応(BLEかなー) ● 転轍機(ポイント)対応 ● 量産したい... ▶ ソフトウェアへ世界が広がる...... 49
同人ハード開発でソフトもハードも支配する 自作鉄道模型コントローラのアレコレ @はこだて未来大×企業エンジニア 大LT2025 (2025/05/17) 寸田 和輝