/Pico-DIYSteeringWithFFB

DIYSteeringWithFFB on Raspberry Pi PICO

Primary LanguageGo

Pico-DIYSteeringWithFFB

必要なもの

パーツ類

https://www.switch-science.com/products/6900

Raspberry Pi Pico
thumbnail
Raspberry Pi財団が独自に開発したARM Cortex M0+デュアルコアのRP2040マイコンを搭載した開発基板です。C/C++およびMicroPythonで開発が可能です。既存のRaspberry Piとは異なりLinux OSは搭載できませんのでご注意ください。
https://www.switch-science.com/products/6900

https://www.switch-science.com/catalog/8248/

DDT M1502D_211 タイヤ付きダイレクトドライブモーター 24V/9.6Nm/115rpm
thumbnail
高トルク、静音、高精度が特徴のタイヤ付きの永久磁石同期モーターです。サーボモーター、エンコーダ、ブラシレスモーターとして使用することができます。
https://www.switch-science.com/products/8248

https://amzn.asia/d/b9DWvV3

WINGONEER MCP2515 CANバスモジュールTJA1050レシーバSPIモジュール
thumbnail
サポートCAN V2.0B仕様、通信速度1Mb / S 0〜8バイトのデータフィールド 標準フレームとフレームとリモートフレームを展開 5V DC電源モジュール、SPIインタフェースプロトコル制御 120オームの終端抵抗。 インピーダンスマッチング、ドライブ容量、信号線に対する長距離データ伝送を保証
https://amzn.asia/d/6fEEtIi

https://www.amazon.co.jp/gp/product/B09PRD74V4

DROK スイッチング電源 24VDC20A 480W
thumbnail
AC 110/220V→DC 0-24V 0-20A 480W 電圧電流調整可能 安定化電源
https://www.amazon.co.jp/gp/product/B09PRD74V4

筐体関連

ステアリング 35φ 車用 カー ハンドル ディープコーン 直径350mm
thumbnail
ブラックスポーク スポーツタイプ 軽量アルミニウム ライチ柄 ステアリングホイール PVC防錆 車用 ホーンボタン付き/黒
https://www.amazon.co.jp/gp/product/B09DYL19KQ
  • ハンドル固定プレート(3Dプリント)
  • ハンドルとハンドル固定プレートを留めるワッシャとナット(M4 x 8セット)
  • モーター固定アングル(3Dプリント、耐熱60度程度が必要でABS推奨)
  • 固定用の板(450x250x15mmの木材など)
  • 板と電源を固定するネジ(M3-20mm x 4本)
  • 板とモーター固定アングルを固定するボルト&ナット(M5-30mm x 4本)
  • 板を机に固定するためのクランプ(50mm x 2本)

ハンドル固定プレートとモーターを固定するネジはモーターに付属のものを利用。 ハンドルとハンドル固定プレートを固定するボルトはハンドルに付属のものを利用。

結線

電源ユニット

ラベル 接続先
+V モーター(赤)
-V モーター(黒)
アース ACコンセント
N ACコンセント
L ACコンセント

モーター(4芯ケーブル)

番号 役割 接続先
1 VCC(24V) 電源ユニット
2 GND 電源ユニット
3 CAN High CANアダプタ(H)
4 CAN Low CANアダプタ(L)

PICOとCANアダプタ間

信号名 Picoピン名 MCPピン名
unuse - 1:INT
SCK GP2 2:SCK
SDO GP3 3:MOSI
SDI GP4 4:MISO
GP28 CS 5:CS
GND GND 6:GND
3.3V 3.3V 7:VCC

ファームウェア開発環境

  • TinyGo(dev版 または version 0.27以降)
  • Go(1.19以降)

ソースコード

ファームウェアおよび3Dプリントモデルのソースコード公開URL(GitHub)

ビルド

ソースのクローン

git clone https://github.com/SWITCHSCIENCE/Pico-DIYSteeringWithFFB
cd Pico-DIYSteeringWithFFB
cd firmware

Windows:

docker run -it --rm -v %CD%:/app -w /app tinygo/tinygo-dev tinygo build -target pico -o main.uf2

Others:

docker run -it --rm -v $PWD:/app -w /app tinygo/tinygo-dev tinygo build -target pico -o main.uf2

書き込み

「BOOT SEL」ボタンを押しながらPicoをPCに繋ぎます。 「RPI-PICO」という名称のドライブが見えたらそこに「main.uf2」をドラッグ&ドロップします。

動作テスト

  • 電源が24V出力になるよう調整、カレントリミッタはMAX寄り(最大から少し戻す程度)
  • 電源をコンセントに繋いだ状態でPICOのUSBをPCに繋ぐ

状況によっては「ガツッ」とか言うかもしれませんが、センターにて落ち着くのを確認しましょう。

以下を開いて、ステアリング操作が反映されることを確認しましょう。

Webゲームコントローラーテスト