事例 【XCP】最小構成のMBD事例 第2章 その197【AUTOSAR③】 AUTOSAR-XCPの機能範囲について説明。純粋にXCP BWSを実現しているのみ。よって、下位BSWのCanIfを実装する必要がある。CanIfは以前、診断通信関連BSWであるCanTpのシミュレーションをしたときに作成してる。微調整はあるかもしれないが、これを使いまわす予定。 2021.12.20 事例
事例 【XCP】最小構成のMBD事例 第2章 その196【AUTOSAR②】 LGPLはライブラリ化すればライセンス汚染をある程度食い止められる。しかし、完全に食い止められるわけではなくどうしてもリバースエンジニアリングを許容する条件は付く。これは動的リンクであっても変わらない。AUTOSARのXCP実装、STIMの実装を学べるという利点があるので、使ってみる方針で行く。 2021.12.19 事例
事例 【XCP】最小構成のMBD事例 第2章 その195【AUTOSAR①】 XCP Basicとは別のXCPスレーブIPを見つけてきた。その名はAUTOSAR-XCP。以前やったCanTp、DCMと同じくAUTOSAR-BSWのXCP仕様に準拠したもの。ライセンスがLGPL。よって、条件によってはコード開示が必要になり、商用利用としては難しく場合がある。 2021.12.18 事例
事例 【XCP】最小構成のMBD事例 第2章 その194【PyXCP⑯】 SET_MTAとDOWNLOAD以外のRAM書き換え方法はSTIMしかし、XCP BasicはSTIMは未対応。XCP Basicに対してSTIM拡張をするかXCP Basic以外のXCPスレーブIPを探すか。とりあえず後者の線でやってみる。見つからなかったら諦めてSET_MTAとDOWNLOADで頑張る方向で。 2021.12.17 事例
事例 【XCP】最小構成のMBD事例 第2章 その193【PyXCP⑮】 XCP BasicとPyXCPは微妙だった?ってことはない。計測やちょっとしたキャリブレーションであれば問題無く使える。HILSもどきと相性が悪いだけ。オーバーヘッドを検討。15msはSET_MTAとDOWNLOADの2回のコマンド発行分。ここを何とかすればもう少しマシになりそう。 2021.12.16 事例
事例 【XCP】最小構成のMBD事例 第2章 その192【PyXCP⑭】 DAQパケットを受信しながらSET_MTA、DOWNLOADのコマンド送信してみた。一応動いた。が、DAQパケットの吸い上げのリアルタイム性が若干悪い。20~30[ms]程度の遅れがある。Pythonでやる以上、やむを得ない問題ではあるが、もう少し手が無いか考える必要はありそう。 2021.12.15 事例
事例 【XCP】最小構成のMBD事例 第2章 その191【PyXCP⑬】 PyXCPでDAQパケットを受信しながらSET_MTA、DOWNLOADのコマンド送信を行う実験。XCP Basic側は問題なくできることは分かってるのでPyXCP側メインの実験。一応PyXCP内コード的には大丈夫そう。実験コードはDAPパケット受信ループ内で0.05秒周期でSET_MTA、DOWNLOAD発行。 2021.12.14 事例
事例 【XCP】最小構成のMBD事例 第2章 その190【PyXCP⑫】 DAQパケットの取得方法の概要説明。transport層に相当するクラスでdaqQueueが定義されている。このdaqQueueに自動的にDAQパケットがキューイングされる仕組み。上記仕組みはJSONコンフィグレーションのCAN_USE_DEFAULT_LISTENERtrueでないと使えない点に注意。 2021.12.13 事例
事例 【XCP】最小構成のMBD事例 第2章 その189【PyXCP⑪】 DAQ起動すべく以下のコマンドに相当するメソッドを実行。SET_DAQ_LIST_MODE。START_STOP_DAQ_LIST。START_STOP_SYNCH。狙い通りDAQ起動はした。CAN回線上でDAQパケットが流れていることが確認できた。しかし、PyXCP上でDAQパケットを確認する術が不明。 2021.12.12 事例
事例 【XCP】最小構成のMBD事例 第2章 その188【PyXCP⑩】 ODT_ENTRYをnamedtupleを使ってデータ管理してみた。今回は一個しかないのでほぼ効能はないが、ODT_ENTRYが増えてきた際には大きな効能が見込めそう。実際にSET_DAQ_PTR、WRITE_DAQ実施。問題なく動作。毎回SET_DAQ_PTRを投げるようなコードになってるが、とりあえずOK。 2021.12.11 事例