【XCP】最小構成のMBD事例 第2章 その197【AUTOSAR③】

【XCP】最小構成のMBD事例 第2章 その197【AUTOSAR③】事例
【XCP】最小構成のMBD事例 第2章 その197【AUTOSAR③】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/

スポンサーリンク

はじめに

前回は探してきたAUTOSAR-XCPのライセンスであるLGPLについて簡単にしらべた。
結論としては動的リンクであっても何かしら(ソースコード or オブジェクト)の情報開示は必要となり、
業務利用としてはなかなか難しいライセンスとなる。
しかし、学習用途としてはかなり良さそうなので、実際に使ってみることとした。

まずはAUTOSAR-XCPをPC上でシミュレーションさせるための方針を固めて行きたいが、
その前にAUTOSAR-XCPの機能範囲を特定する必要がある。

スポンサーリンク

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

スポンサーリンク

AUTOSAR-XCPの機能範囲について

太郎くん
太郎くん

ライセンスの問題はあるけど、とりあえずAUTOSAR-XCPを使っていくことになったわけだけど、具体的にはどう進めるの?
XCP basicの時は最初からPCシミュレーションが想定されてる感じではあったけど、似たようなイメージ?

フクさん
フクさん

残念ながら、AUTOSAR-XCPはPCシミュレーションを想定したつくりになっていない・・・、
というか、データリンク層以下の機能が含まれてない感じだな。

太郎くん
太郎くん

え?どういうこと?
ちょっと良く分かんない。

フクさん
フクさん

AUTOSAR-XCPはその名の通りAUTOSAR仕様に準拠したもので
XCPのBSWの仕様を踏襲したものだ。
想定される物理層はCAN/CAN-FDとEthernetではあるが、
今回に於いてはCANに限定した話として進めよう。

太郎くん
太郎くん

まぁ今回使用予定の無いEthernetの話が混じるとややこしそうだもんね。

フクさん
フクさん

で、AUTOSARのBSWの構成としては
XCPの下にCanIf、CanDrvが居る想定なんだけど、
今回使用するXCPスレーブIPであるAUTOSAR-XCPにはこれらが含まれていない

太郎くん
太郎くん

ということは・・・。
自作しないといけないのか!

フクさん
フクさん

そうなるね。

スポンサーリンク

CanIf以下をどうするか

太郎くん
太郎くん

でもそこら辺を自作するのって大変なんじゃない?

フクさん
フクさん

まぁ大変ではあるが、実はかなり以前にこの大変な作業はやっていたりする。

太郎くん
太郎くん

ん?
なんかやったっけか?

フクさん
フクさん

AUTOSARというと過去になんかやったよね?

太郎くん
太郎くん

AUTOSARというと・・・、
診断通信関連でDcmとかCanTpとかやった記憶があるかな。

フクさん
フクさん

そのCanTpというBSWも下位BSWにCanIfとCanDrvがいるんだよね。

太郎くん
太郎くん

そうか!
CanTpの時に作ったCanIfを使いまわせばOKなのか!
たしかここらへんでやったやつだ。

太郎くん
太郎くん

あ、でもこの時ってA-ComStackのCanTpを無理やり使っただけだから、
CanIfを作ったと言える・・・のか?

フクさん
フクさん

CanTp自体のインターフェースがCanIfを期待してるんで、、
結果的にはCanIf相当のものが出来上がってるはずだ。
まぁ微調整はいるだろうけど。

太郎くん
太郎くん

でも、新規に作る必要が無い分、楽はできそう。

フクさん
フクさん

と言う感じで、なんとか辻褄合わせはできそうなんで、次回はPCシミュレーションをする上での方針を固めていこう。

スポンサーリンク

まとめ

フクさん
フクさん

まとめだよ。

  • AUTOSAR-XCPの機能範囲について説明。
    • 純粋にXCP BWSを実現しているのみ。
    • よって、下位BSWのCanIfを実装する必要がある。
  • CanIfは以前、診断通信関連BSWであるCanTpのシミュレーションをしたときに作成してる。
    • 微調整はあるかもしれないが、これを使いまわす予定。

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました