• 車種別
  • パーツ
  • 整備手帳
  • ブログ
  • みんカラ+

にしかすがいのブログ一覧

2020年05月03日 イイね!

NDロードスター用オリジナルメーター製作20

NDロードスター用オリジナルメーター製作20NDロードスター用のメーターを製作しています。
やっと本番用のArduinoマイコンとcan-busシールドでテストプログラムが動きました。
原因はマイコンのピンの初期設定で、SPI通信に使うピンが積層基板間用のD11〜13ではなく、6ピン外部出力に割り付いていたためでした。(ATSAMD21、又はARM Cortex M0+というCPUを使っているマイコンはそうなっている奴が多いみたい)
ピンの割り付けが違うのが原因だということは結構前に気付いていたのですが、対策を「SPI通信のピンを新たに追加するパターン」で進めたのが失敗でした。
can-busシールドなどを動かすためのライブラリ群はマイコンArduino初代シリーズのUNOを基準に作られており、SPI通信を新たに追加するパターンは、そのままでは対応していないため、何をやってもエラーに。(ライブラリ等をいじれば動くんでしょうけど、自分にはよく分からず)
結局SPI通信のピンの初期設定を、6ピン外部出力からD11〜13を使用するように置き換える事で、can-busシールドが動くようになりました。(初期設定用のライブラリ、variant.hの中身を書き換え。タイトル写真)
絵を表示するのでメモリが大きくて処理速度が速くて新しいマイコンにしとけば大丈夫だろうと、ノリでRED Board Turboにしたのですが、マイコン初心者には難解な落とし穴にハマってしまいました。

あと、車内持ち込みをするために、マイコンの専用ケースを購入してあったのですが、基本シリーズのUNOの基板2枚用のためかsparkfun製の基板2枚では上手く入りません。積層にした基板2枚がピッタリ入るようにケースの加工を行いました。
ケースにぶつかるスイッチの位置に穴を空けたり、コネクタが当たる部分をニッパーで切ったりカッターで削ったりで、カスタムしたケース完成。加工時に結構傷ついてしまったけど、完成したら車内の見えない所に隠すので良しとしました。
ケーブル類をまとめ、透過型OLEDもテスト時に持ち運びしやすいようにケースの上に仮設で貼り付けました。

追記:この後、I2C延長チップや3V回路と5V回路を接続するためのレベシフタを装着しています。






これで前準備が全て終わりました。やっとNDロードスター用の回転数メーターのプログラムが作れるようになりました。次からは本格的にプログラム製作していきます。
Posted at 2020/05/03 08:04:10 | コメント(0) | トラックバック(0)
2020年05月01日 イイね!

NDロードスター用オリジナルメーター製作19

NDロードスター用オリジナルメーター製作19NDロードスター用のメーターを製作しています。
NDのOBD2からcan-bus通信を調べています。
ライト状態とギヤ状態があると言うアドレスについてデータを調べてみました。

ライト状態は0x09Aというアドレスにデータがあり、先頭の文字がライト状態のようです。
実際に取得したデータを例として載せておきます。
1.ライトOFF、2.ライトオートでロービーム、3.ライト手動でスモール、4.ライト手動でロービーム、5.ライト手動でハイビームとして、
1. 00 00 00 00 88 00 00 00
2. 30 00 02 00 88 00 04 10
3. 20 00 02 00 08 00 04 10
4. 30 00 02 00 88 00 04 10
5. C0 00 02 00 88 00 04 10
でした。
先頭文字が、0でOFF、2でスモール、3でロービーム、Cでハイビームのようです。オートライトにして変化させても同じでした。

あと、ギヤ状態は0x165というアドレスにデータがあり、左から13・14文字がギヤ状態のようです。あとクラッチ状態もあり、左から5・6文字だそうです。更にオートクルーズ状態信号もあるらしいです。1〜4文字目?(自分のNDには付いていないので不明)
オートクルーズ信号はこの方のページを参照して下さい。
https://minkara.carview.co.jp/userid/2898510/car/2508605/4830828/note.aspx

実際に取得したデータを例として載せておきます。
車両走行中、3速、クラッチ繋ぎ:40 80 16 C0 68 00 07 F3(タイトル写真)

1速が13、2速が0B、3速が07、4速が06、5速が05、6速が03のようです。バックは今の所不明です。
クラッチは19より上が踏んでいる時で、18より下がクラッチを離している時のようです。(エンスト状態では値が変わったので間違っている可能性あり)

ギヤ状態とクラッチ状態はアナログ的な数値変化をしていました。
変化具合をみると、アナログ的に動く数値が、ギヤを入れクラッチを離すと、しばらく後に一定になり安定する動きでした。
そういえばNDロードスターのメーター内に、ギヤ表示がありますが、ギヤを変えてクラッチを繋いでもギヤが表示されるまでに少し遅れがあります。多分アナログ的な変化が収まってからギヤ表示を開始しているのでは?と感じました。
またエンスト状態でギヤを変えても、ギヤ状態は1速のままでした。また、信号などでクラッチを切って車両停止すると、ギヤの表示は段々と下降し1速となります。あと、定速走行中クラッチを切って回転数が低くなるとギヤが段々と上昇し6速になり、そのままエンジンを吹かすと段々と1速になりました。どうやらエンジン回転数とタイヤの回転数(つまりトランスミッションの入力と出力の差)がギヤ状態の演算元のようです。

当初ギヤ状態があるアドレスは0x228だと思っていましたが、実際に車両に流れるデータを調べてみると、0x228は全くデータが流れていませんでした。情報ではドライブやパーキングの状態も持っているアドレスだったので、オートマ用のアドレスのようです。MT車ではデータが来ないのは当たり前かな。

これでメーター製作に必要なデータの参照元が全て判明しました。数式が違ってたり、データの参照元を間違えているかもですが、メーターとして何とか形にはなりそうかな。
Posted at 2020/05/01 13:44:31 | コメント(0) | トラックバック(0)
2020年04月29日 イイね!

NDロードスター用オリジナルメーター製作18

NDロードスター用オリジナルメーター製作18NDロードスター用のメーターを製作しています。
激安Arduinoを使ってNDロードスターのOBD2からcan-busを解析しています。
まずは車速とエンジン回転数があるという、0x202のアドレスのデータを調べてみました。
最初の4文字がエンジン回転数で、次の4文字が車速で、次の4文字がスロットル位置(アクセル?)だそうです。

取得した実データを例として書いておきます。
1.エンスト状態、2.エンジンをかけて車両停止した状態、3.車両停止でエンジンを3000回転位にした状態、4.敷地内をちょっとだけ前進させた時。
1. 00 03 00 00 00 00 19 93
2. 0B 6B 00 00 00 00 19 25
3. 2D B3 00 00 1E 80 19 5E(タイトル写真)
4. 0A C3 01 02 00 00 19 37
こんな感じです。

回転数は値×707÷2850で出るようで、車速は値÷160(÷100かも?)で出るそうです。スロットルは値×100÷64000が0〜100%との事。
試算したけどメーター値とズレていそうでした。数式が間違っているのかなぁ。

ライト状態(0x09A)とギヤ状態(0x165)があると言うアドレスもデータを調べています。ライト状態はデータが何となく分かったけど、ギヤ状態はギヤを変えたら予定位置以外が変化している為、現在調査中です。
Posted at 2020/04/29 23:55:32 | コメント(0) | トラックバック(0)
2020年04月24日 イイね!

NDロードスター用オリジナルメーター製作17

NDロードスター用オリジナルメーター製作17NDロードスター用のメーターを製作しています。
本番用のマイコンとCANシールドでプログラムが上手く動かないため、ちょっと小休止。
勉強用に買ってあった激安Arduinoですが、安いCANシールドを追加で購入したので、これらを繋いで、CAN読み取り装置をもう1セット作る事にしました。(マイコン500円、CAN400円。OBD2ケーブルなどは別ですが1000円以下)

サンプルプログラムを激安Arduinoに合うように設定変更しただけでしたが、本番用マイコンでは動かなかったプログラムが、サクッと激安マイコンでは立ち上がってしまった、、、。
プログラム自体に問題は無いことになったので、初期化関係でミスがあるのか、もしくはCANシールド自体に異常があるのか、どちらかかな。
安いCANシールドで機能確認が出来たので、実験でパソコンと激安マイコン&CANシールドを車内に持ち込み、NDロードスターに繋ぎロードスター内に流れるデータを読んでみました。
マイコンをPCに繋いでマイコンを起動させた後、エンジン停止でキーだけオンにし(エンスト状態)、OBD2コネクタに繋ぎます。NDを壊す可能性もあるので緊張の一瞬。
繋いだ瞬間から、どんどんデータが読み出されました。ちょっとだけ繋いだだけでしたが、物凄いデータ量に。プログラム側では、一部をフィルタリングして有効なデータがありそうな部分だけ読み取りにしていたにも関わらず、あっという間に凄い量に。
読んだデータ(タイトル写真)は今の所は意味不明なので、車両の状態を変えてみて、読んだデータに違いが出た部分を今後調べていこうと思います。
Posted at 2020/04/24 19:19:33 | コメント(0) | トラックバック(0)
2020年04月17日 イイね!

NDロードスター用オリジナルメーター製作16

NDロードスター用オリジナルメーター製作16NDロードスター用のメーターを製作しています。

透過型ディスプレイ(OLED)の表示部分はプログラムが終わったので、OBD2コネクタのcan-bus読み取り部のプログラムを作っています。
ディスプレイに続き製造メーカーのsparkfunでは無いライブラリを使ってcan-bus読み取り部のプログラムを作ろうと思っています。can-busシールド(基板)の有名メーカーはseeed studioというメーカーになります。そちらのライブラリの派生ライブラリである、coryjfowler氏のライブラリを使いました。
can-busシールド(と基板上のSDカード)はSPI通信なので、まずはSPI通信の基礎を勉強中。
SPI通信はメインの通信線3本と、機器選択用の線1本、あと電源線2本の計6本になります。更に調べると機器選択用の1本は、機器が増える分だけ増やす必要があるようです。(1機器に1本ずつ必要)
この通信方式、繋ぐ機器が沢山有ったらマイコンの入出力端子をガンガン消費しちゃうのでは、、、。
今の所、お手本のサンプルプログラムですら予定通りに動かず、悪戦苦闘中です。一気に難易度が上がったなぁ。


Posted at 2020/04/17 21:56:19 | コメント(0) | トラックバック(0)

プロフィール

「意外に硬めな足 http://cvw.jp/b/1164254/46716415/
何シテル?   01/31 07:23
にしかすがいです。よろしくお願いします。
みんカラ新規会員登録

ユーザー内検索

<< 2025/9 >>

 123456
78910111213
14151617181920
21222324252627
282930    

リンク・クリップ

マツダ(純正) オーディオカバー 
カテゴリ:その他(カテゴリ未設定)
2025/01/16 12:58:38
マツダ(純正) フロアーアンダープレートシール(ネジ付き) ※MT専用 
カテゴリ:その他(カテゴリ未設定)
2025/01/12 15:53:02
MAZDA 輸出仕様アンダーカバー 
カテゴリ:その他(カテゴリ未設定)
2025/01/07 12:42:03

愛車一覧

マツダ ロードスター マツダ ロードスター
子供達も大きくなったので、昔乗っていたロードスターにまた乗りたくなりNDを購入。我が奥様 ...
トヨタ ライズ トヨタ ライズ
下の子用。事故りませんように。
スズキ イグニス スズキ イグニス
上の子用。事故しませんように。
マツダ プレマシー マツダ プレマシー
奥さん用。なかなか良く走ります、この車。

過去のブログ

2025年
01月02月03月04月05月06月
07月08月09月10月11月12月
2024年
01月02月03月04月05月06月
07月08月09月10月11月12月
2023年
01月02月03月04月05月06月
07月08月09月10月11月12月
2022年
01月02月03月04月05月06月
07月08月09月10月11月12月
2021年
01月02月03月04月05月06月
07月08月09月10月11月12月
2020年
01月02月03月04月05月06月
07月08月09月10月11月12月
ヘルプ利用規約サイトマップ
© LY Corporation