モデルベース開発

事例

【FMU】最小構成のMBD事例 第2章 その50【FMILibrary⑦】

FMILibraryのサンプルプロジェクトを確認。大量にある。今回はfmi2_import_cs_testを使用。すでにビルド済みのものが存在。fmi2_import_cs_testは引数を要求するタイプの実行プログラム。よって、ただ起動しただけでは何もしてくれない。引数については次回説明予定。
事例

【FMU】最小構成のMBD事例 第2章 その49【FMILibrary⑥】

再びFMILibraryのビルドにチャレンジ。今回は無事ビルドが通った。ライブラリが生成されたのも確認。その後、指定したインストール先にライブラリ及びヘッダファイルが配置された。FMILibraryビルド時にサンプルプロジェクトが生成されているので、今後はこれをベースに話を進める予定。
事例

【FMU】最小構成のMBD事例 第2章 その48【FMILibrary⑤】

FMILibraryのビルドエラーの原因究明。stddef.hにoffsetofが定義されていなかった。厳密にはC++向けには定義されていたが、C言語向けには定義されていなかった。Visual Studio自体がC++を想定した環境であるためC言語のケアが薄いためなのかもしれない。
事例

【FMU】最小構成のMBD事例 第2章 その47【FMILibrary④】

cmakeの前回のコマンドを使ってコンフィグレーション開始。問題無く完了。そのままcmakeでビルド開始。ビルドの途中でエラーが発生。xmlparse.cの中でBLOCKとsという構造体とメンバ変数の絡みでエラーが起きたようだが・・・。とりあえず、頑張って調べてみる。
事例

【FMU】最小構成のMBD事例 第2章 その46【FMILibrary③】

FMILibraryのビルド手順を確認。開発者コマンドプロンプト起動、cmakeでビルド、ライブラリインストール。cmakeへのオプションがちょっとややこしい。FMILIB_INSTALL_PREFIXでインストール先。FMILIB_FMI_PLATFORMでプラットフォーム。-Gでビルドする環境指定。
事例

【FMU】最小構成のMBD事例 第2章 その45【FMILibrary②】

バックナンバーはこちら。はじめに前回、C言語からのFMU/FMI制御するライブラリとしてFMILibraryというものが存在することが分かった。しかし、ビルド済みのものはwin32版のみ。欲しいのはwin64版。よって、win64版をソース...
事例

【FMU】最小構成のMBD事例 第2章 その44【FMILibrary①】

C言語からFMU/FMIを制御するライブラリはFMILibraryWindows版のFMILibraryはあるにはあるが…。win32版のみ。64bit版は自分でビルドする必要がある。OpenModelica64bit版のFMUは恐らく64bitビルド。FMILibrary 64bit版を用意することに。
事例

【FMU】最小構成のMBD事例 第2章 その43【FMI⑭】

FMU/FMIを読めそうなツールを確認。以前、太郎くんが調査した情報をベースに確認。CANoeがすぐ使えそうだった。CANoeでFMU/FMIの変数確認。問題無く確認できた。FMU/FMIの変数をCANoeのシステム変数に割り付ける形。よって、CAPLからでも簡単に制御できそう。
事例

【FMU】最小構成のMBD事例 第2章 その42【FMI⑬】

modelDescription.xmlのcausalityの内容を確認。parameter、calculatedParameter、input、output、local、independentの6種が存在。parameterはModelicaのparameter相当。calculatedParameterは初期値関連
事例

【FMU】最小構成のMBD事例 第2章 その41【FMI⑫】

modelDescription.xmlのvariabilityの仕様について。constant(定数)、fixed(固定値)、tunable(調整可能値)、discrete(離散)、continuous(連続)。fixedはシミュレーション前であれば変更可能。tunableは変更時にODE演算のイベントが発生。