chevron_left

メインカテゴリーを選択しなおす

cancel
KEI
フォロー
住所
未設定
出身
未設定
ブログ村参加

2020/02/11

arrow_drop_down
  • 【CANoe】最小構成のMBD事例 第2章 その266【仮想ECU連携③】

    CANoeでXCP関連の処理を追加する際の方針を確認。 複数のノードにXCP関連処理を記載するので連携が必要。 ノード間連携はCANoeシステム変数を使うのが最も手っ取り早い。 CANoeシステム変数の追加方法を確認。 CAPLからシステム変数にアクセスする際は変数名の目に「@」をつける。

  • 【CANoe】最小構成のMBD事例 第2章 その265【仮想ECU連携②】

    CANoe上の指令器をdisable。 シミュレーション設定ウィンドウのノード上でdisable操作が可能。 CANOe上にテストノード追加。 シミュレーション設定ウィンドウのバス上で追加操作可能。 今回はCAPLテストモジュールを使用。 .NET、XMLのテストモジュールは気が向いたら調べる。

  • 【CANoe】最小構成のMBD事例 第2章 その264【仮想ECU連携①】

    残り作業はXCPだけではない。 構造が複雑なので一旦整理。 Virtual CAN BusとCANoeシミュレーションバスは直結していると思って良い。 CANoe仮想HILSと仮想ECU連携のロードマップ提示。 指令器disable。 テストノード追加。 XCP関連セットアップ。 DAQ/STIM関連。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その263【CANoe⑯】

    32bit FMU作成しCANoeに組み込んだ。 CANoeでFMU駆動の実験。 かなりキレイな波形が取れた。 FMU、CAN送信共に1ms駆動させているため。 Pythonの時は100ms駆動相当になっていた。 このあとはCAPLでXCPを実現するがpython-canでやったことと同じことをやればOK。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その262【CANoe⑮】

    バックナンバーはこちら。はじめにCANoeの内部プロセスとして描画プロセスと計測/演算プロセスが存在することと、プロセス間通信がTCP/IPを使用していることのの裏付けの調査結果を確認。引き続き調査結果の話とCANoeの設計思想の話。登場人

  • 【FMI/FMU】最小構成のMBD事例 第2章 その260【CANoe⑬】

    CANoeが32bitFMUを要求する理由の調査結果。 CANoe内に2つのアプリケーションが動作しているもよう。 描画担当で64bitプロセス。 計測/演算担当の32bitプロセス。 FMUは計測/演算担当のプロセス側が読み込んでるっぽい。 CANoeの内部構成についていろいろ考察したので次回説明予定。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その259【CANoe⑫】

    ついにCANoe上でFMUを動作させる実験を開始・・・したが・・・。 謎エラー発生。 32bitアプリケーションから呼ばれるFMUの場合はwin32向けFMUである必要がある。 しかし、今回使用しているCANoeは64bitアプリケーションのため辻褄が合わない。 なぜこのようなことになっているか要調査。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その258【CANoe⑪】

    仮想HILS向けCAPLコード公開。 イベントハンドラは関数先頭に「on」が付く。 その後ろに以下が続く。 start:シミュレーション開始。 timer:タイマ。 signal:シグナル更新。 CAPLのコツはシンプルに書く。 複雑な処理はライブラリに逃がすなどがコツ。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その257【CANoe⑩】

    FMUとCANシグナルの紐づけのためついにCAPLに手を付け始める。 CAPLではイベントハンドラを使うことが多い。 イベントはおおよそ以下。 シミュレーション開始。 タイマ。 CAN受信。 シグナル更新。 ネットワークノード毎にCAPLを設定できるので、ノードの役割を意識する必要がある。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その256【CANoe⑨】

    FMUの中に指令器もあったが、CANoeから指令値を変えられた方が便利なのでシグナルジェネレータ機能を使用する方針となる。 dbcファイルで定義したシグナルに対して自由は波形を載せることが可能な機能。 シグナルジェネレータで台形波を作成しTargetシグナルとして出力できるように設定。 さまざまは波形を設定可能。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その255【CANoe⑧】

    CANoe.IL機能でシグナルを簡単に叩けるようにはなったが、FMUとの接続が無いとCAPLを実装してもイマイチ。というわけでFMUインポートから実施。FMUインポートの手順確認。最終的にはCANoeシステム変数と紐づいて、そのシステム変数を読み書きすることで結果としてFMUのInput、Outputにアクセスできる。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その254【CANoe⑦】

    dbcファイルが出来上がったのでCANoeのデータベースインポートウィザードを使ってみた。 dbcを読み込むことでdbc内で定義されているネットワークノードをCANoeに割り当てることが可能。 生成されたノードはdbcで定義されたCANメッセージを同じく定義された送信周期で送信可能。 CANoe.IL機能の一端。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その253【CANoe⑥】

    CANdb++エディターで各種定義を実施。 シグナル、メッセージ、ノードの順番で定義していく。 メッセージの周期時間は送信周期を示す。 単位は[ms]。 属性の「GenMsgCycleTime」パラメータを修正することで変更可能。 CANoe.IL機能を使用する時に生きてくるパラメータ。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その252【CANoe⑤】

    dbcファイルについて簡単に説明。 CANメッセージとそれに載せるシグナルだけでなく、ネットワークノードの定義もできる。 ネットワークノードを定義しておくと、CANoeのインポートウィザードでノードの自動生成をしてくれる。 dbcファイルを作成開始。 CANeb++エディターを使用。 プロトコルの設定まで実施。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その251【CANoe④】

    バックナンバーはこちら。はじめに前回はVector社製ツールのCANoeを仮想HILS化するための実験ロードマップを提示。大雑把にはFMU importとXCPマスタの2つの機能を実現させればOK。まずはCANoeはFMUを本当に扱えるかを

  • 【FMI/FMU】最小構成のMBD事例 第2章 その250【CANoe③】

    CANoeの仮想HILS化への実験ロードマップ提示。 大雑把にはFMU importとXCPマスタの2つ。 FMU importの実験をやってからXCPマスタの実験の流れ。 最初はXCPを使用せずにCANoeのシミュレーションバスを使用したFMU間連携をさせてみる。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その249【CANoe②】

    CANoeで仮想HILSの実現が可能かを検討する間に現行の仮想HILSの機能を列挙した。 FMU import&実行。 たぶんOK。でも要確認 各種信号のグラフ表示&CAN受信。 間違い無くできる。 XCPマスタ 本当のXCPをするなら追加ライセンスが必要。 しかし、CAPLを駆使すれば今回の目的は達成できそう。

  • 【FMI/FMU】最小構成のMBD事例 第2章 その248【CANoe①】

    仮想HILSと仮想ECUの精度が上がらなかった原因を予測。 ほぼ間違いなく応答性が原因。 Pythonではこれ以上の応答性は得られそうもない。 Pythonに変わって仮想HILS側をVector社のCANoeにしたらどうかという意見あり。 本物のHILSと比べ、コスパも良さそう。

  • 【XCP】最小構成のMBD事例 第2章 その247【CAN-FD㉔】

    仮想HILSと仮想ECUのXCPonCANFD対応の動作確認は結果としては失敗に終わった。 変数の精度向上はあまり性能向上にはつながらなかった。 しかしXCPonCANFDを直に見るのも珍しい体験なので、これはこれで将来に生かすって発想が大事。 失敗したからこそ意地でも糧になるものを拾うべし。

  • 【XCP】最小構成のMBD事例 第2章 その246【CAN-FD㉓】

    XCPonCANFD対応に於ける当初想定していた仮想HILS、仮想ECUの全体構成と実際の全体構成。 基本的には想定通りの修正。 PyXCPのCAN-FD対応が難航したのが想定外ってくらい。 論理構成としては変わらず。つまり基本的な動作は変わらないはず。 変数のサイズと精度が変わっているのでそれの効能を期待。

  • 【XCP】最小構成のMBD事例 第2章 その245【CAN-FD㉒】

    仮想HILS側の修正後のコード開示。 前回までの修正範囲と内容を反映したのみ。 tkinter、matplotlibのコードもあり、肥大化しているが、基本一直線のコード。 タイマハンドラで周期的に呼ばれるくらい。 いろいろな要素が絡んでるので、次回は全体構成の再確認。

  • 【XCP】最小構成のMBD事例 第2章 その243【CAN-FD⑳】

    仮想HILSのCAN-FD対応方針整理。 数としてはそこそこあるが、一個一個は1行修正のレベル。 importしているxcp_canをxcp_canfdに変更。 上記のクラス変更に伴い、XCPインスタンスの生成部分変更。 importのところでエイリアスを使うのもあり。

  • 【XCP】最小構成のMBD事例 第2章 その242【CAN-FD⑲】

    DAQリスナーCAN-FD対応版の動作確認を実施。 can.loggerのCAN-FDモードを並走さえて回線モニタを実施。 問題無くCAN-FDフレームが送出されていることを確認。 Bitrate_switchも有効になっている。 python-canの範疇では問題無しと判断できる。

  • 【XCP】最小構成のMBD事例 第2章 その241【CAN-FD⑱】

    DAQリスナーのCAN-FD対応の要否ついて説明。 CANのみ対応のインターフェースはCAN-FDフレームを検知すると「異常フレーム」と認識しエラーフレームをもってフレーム破壊を行う。 よって、CAN-FDフレームが流れるネットワークにCANのみ対応インターフェースは接続禁止。 DAQリスナーの修正は一撃。

  • 【XCP】最小構成のMBD事例 第2章 その240【CAN-FD⑰】

    xcp_canfdクラス動作確認を実施。 問題無く動作。 念のためxcp_canの時の動作確認結果とも比較。 同じ動きをしていることが確認できる。 CAN-FD回線モニタも実施し、CAN-FDフレームのレベルでも確認。 こちらも想定通りの動作をしていることを確認。 PID制御器もおおよそ狙い通り動いてそう。

  • 【XCP】最小構成のMBD事例 第2章 その239【CAN-FD⑯】

    xcp_canクラス改めxcp_canfdクラスを作成。 xcp_canfdクラスのソースコードを開示。 前回までの修正分を盛り込んだのみ。 コンフィグレーション、ODT_ENTRY構成、STIMレイアウト、DAQレイアウト、STIM送信用データ。 次回は、これを実際に動作させてみる。

arrow_drop_down

ブログリーダー」を活用して、KEIさんをフォローしませんか?

ハンドル名
KEIさん
ブログタイトル
シミュレーションの世界に引きこもる部屋
フォロー
シミュレーションの世界に引きこもる部屋

にほんブログ村 カテゴリー一覧

商用