OMNeT++ 用 CAN シミュレーションモデル

`omnetpp_canmodel` プロジェクトページのアーカイブです。スクリーンショットや セットアップ手順も含めて掲載しています。

このモデルについて

これは OMNeT++ 上で CAN バス通信を扱うためのシミュレーションモデルです。車載ネットワークのタイミング挙動や、CAN と Ethernet が混在する構成の評価、教育用途などを支える研究ツールとして用いてきました。

ソースコードは GitHub で公開しており、実験版の CAN-Ethernet GW モデルは別リポジトリの GitHub で配布しています。

主な特徴

動作確認済みの環境(初期公開時)

関連リンク: OMNeT++ · INET Framework

インストール手順(アーカイブ)

初期公開時の配布物と環境に対応したセットアップ手順です。現在のツール群とはバージョンが異なるため、参考情報として読んでください。

  1. OMNeT++ と INET Framework をインストールします(以下の例では `~/program/` 配下を想定)。
  2. 配布アーカイブを展開し、ソースと example を INET 側へコピーします。
0.1.0/src/* -> ~/program/omnetpp-4.4.1/inet/src/
0.1.0/example/* -> ~/program/omnetpp-4.4.1/inet/example/

$ cp -r 0.1.0/src/* ~/program/omnetpp-4.4.1/inet/src
$ cp -r 0.1.0/example/* ~/program/omnetpp-4.4.1/inet/example/
  1. OMNeT++ のルートディレクトリに移動し、環境設定を行います。
$ cd ~/program/omnetpp-4.4.1
$ . setenv
$ ./configure
  1. `inet` ディレクトリに移動してビルドします。
$ cd inet
$ make clean
$ make makefiles
$ make

サンプル構成

`omnetpp-4.4.1/inet/examples/can/` の下に次のサンプルが含まれています。各サンプルは該当ディレクトリに移動して `./run` で実行します(必要に応じて `chmod +x run`)。

スクリーンショット

旧 OMNeT++ CAN モデルページに掲載されていた bus1 のスクリーンショット
`bus1`

送信ノード 1 台、受信ノード 1 台の基本的な CAN バス構成です。

旧 OMNeT++ CAN モデルページに掲載されていた bus2 のスクリーンショット
`bus2`

送信ノード 2 台と受信ノード 1 台からなる CAN バス構成です。

旧 OMNeT++ CAN モデルページに掲載されていた messagerouter1 のスクリーンショット
`messagerouter1`

CAN message router を使ったゲートウェイ型の構成例です。

旧 OMNeT++ CAN モデルページに掲載されていた messagerouter2 のスクリーンショット
`messagerouter2`

より大きな構成を扱う CAN message router の例です。

配布物に関する補足

公開しているソースコードはベータ版であり、バグを含む可能性があります。実験版として CAN-Ethernet GW モデルも GitHub 上で配布しています: can-for-omnetcan-ethernet-gw-for-omnet です。

関連する発表

問い合わせ

このシミュレーションモデルに関するフィードバックを歓迎します。質問等があればメールでご連絡ください。

研究ページに戻る