Weitere ähnliche Inhalte
Ähnlich wie Prius Hack 「カーハッカーズハンドブック」をラズパイで試してみた (20)
Prius Hack 「カーハッカーズハンドブック」をラズパイで試してみた
- 2. 1
© 2021 @noborutkhs
自己紹介
@noborutkhs
株式会社カンデラ ジャパン所属
組み込み機器向けUIツールの会社です。 https://www.canderajp.co.jp/
CGI Studio
https://cgistudio.at/ja/
車載機器(メーター)など
オーストリア製
UI Conductor
https://www.artspark.co.jp/product_uic/
車載機器(ナビ・周辺監視)、プリンタ、デジカメなど
日本製
- 5. 4
© 2021 @noborutkhs
自作CANボード for ラズパイ
3 5
1 6
4 7
2 8
18 1
17 2
16
15 7
14
13 8
12
9
5V
MCP2515
MCP2561
GND
CAN-L
CAN-H
100Ω
ジャンパー
1MΩ
セラミック発振子
20MHz
GND
ラズパイPIN
10KΩ
ダイオード
2
1
24
21
19
23
22
部品名 秋月通販
コード
金額
1 CANコントローラ MCP2515-I/P I-12030 160
2 1Mbps CANトランシーバー MCP2561-E/P I-12483 90
3 セラミック発振子(セラロック)コンデンサー内蔵タイプ
20Mhz
P-00147 35
4 カーボン抵抗 1/4W 100Ω, 10KΩ,1MΩ R-25101
R-25103
R-25105
1*3
5 整流用ショットキーダイオード(30V1A)1S3 I-01707 13
4 ピンソケット(メス) 2x20(40P) FH-2x20SG C-00085 80
7 Raspberry Pi用ユニバーサル基盤
AE-RasPi-Universal
P-11073 150
8 FT234X 超小型USBシリアル変換モジュール
(オプション)
M-08461 600
計 1,131
2 GND
3 TXD
4 RXD
USB PC
USB-Serial (FT234X) オプション
6
10
8
OBD2との接続時はオープン。
CANボード同士で対向させるときは、
片方をショート。
車内でラズパイにPCを接続して操作するときに、WiFiや
LANよりもお手軽で安定しているためにつけている。
必須ではない。
- 8. 7
© 2021 @noborutkhs
2台で対向試験
Raspberry Pi Zero + CAN
Raspberry Pi 3B+ + CAN
それぞれのCAN-HとCAN-L同士を接続
片方の終端抵抗 100Ωを使用
$ sudo ip link set can0 type can bitrate 500000
$ sudo ip link set can0 up
CANインタフェースの準備 送信側/受信側の両側で行う
送信側
送信側
- 13. 12
© 2021 @noborutkhs
プリウス Gen3 につないでみる
OBD2
USB-Serial
電源
モバイルバッテリー
Prius Gen3
やはり、CANデータが取れた!!
Gen4は、OBD2のところに生のCANデータが来ていない。
自粛
- 15. 14
© 2021 @noborutkhs
candump –L でダンプした結果を保存し、
canplayer –I で再生させることができる。
candump ~ canplayer
$ candump –L any,0:0,#FFFFFFFF | tee log.can
$ canplayer –I log.can
これで、一度ログを保存しておけば、机上で試すことが
できるようになった。
- 16. 15
© 2021 @noborutkhs
中華CANボード @320円
https://www.amazon.co.jp/KKHMF-MCP2515- ......
回路図付き
22
23
19
21
24
GND 20
3.3V 17
1 INT
2 SCK
3 SI
4 SO
5 CS
6 GND
7 VCC
CAN board
Raspberry Pi
使えました!
送信もできるので、商品名がなぜ「レシーバー」なのかは謎。
ラズパイとの接続
can0設定時に水晶発信子の周波数に注意。
このボードの場合は VCCを
5Vにつなぐと動作しなかった
- 17. 16
© 2021 @noborutkhs
CGI Studioにつないでみた その1
USB-Serial
中華CAN
Raspberry Pi Zero
CGI Studio
Data Binding
ループバック再生
ダンプをシリアルポートにフォワード
$ candump any,0:0,#FFFFFFFF > /dev/ttyS0 $ sudo ip link set can0 type can bitrate 500000 loopback on
$ sudo ip link set can0 up
$ canplayer –I log.can