Matlab/Simulink pluginのセットアップ
Matlab/Simulink pluginのセットアップ手順について説明する。
参考文献
確認環境
Windows 10 Pro
MATLAB R2022b
Visual Studio 2022 Professional
agx-2.39.0.1-x64-VS2022-double.exe
Python 3.9.9
警告
動作させるにはMatlab/Simulink pluginライセンスが必要
対応プラットフォーム: Windowsのみ
対応言語: Pythonのみ
64bit版AGXであること。MATLABが64bitであるため、合わせる必要がある。
MATLABがサポートしているVisual Studioバージョンが必要
概要
MATLAB/SimulinkとAGXを連携するには、 自身の環境に合わせてSimulink S-FunctionとMEXのソースコードをコンパイルする必要がある。 以降では、ソースコードのコンパイルを含むMatlab/Simulink pluginのセットアップ手順について説明する。
事前準備
セットアップ手順
管理者権限でコマンドプロンプトを開き、<AGX_DIR>\data\Matlab
に移動する。
cd <AGX_DIR>\data\Matlab
addAgXToMatlabAndSimulink.cmd
を実行する。
実行するとMATLABが起動し、MATLABの検索パスにAGXのパスが追加される。 同時にSimulink S-FunctionとMEXのコンパイルが実行される。
コンパイルが正常に完了すると、以下の内容がMATLAB上に表示され、自動的に終了する。
>> mex agx.c
'Microsoft Visual C++ 2022 (C)' でビルドしています。
MEX は正常に完了しました。
>> mex agx_sfun.c
'Microsoft Visual C++ 2022 (C)' でビルドしています。
MEX は正常に完了しました。
注釈
初回実行時にはコンパイルに失敗することがある。その時はMATLABを手動で閉じ、再度 addAgXToMatlabAndSimulink.cmd
を実行する。
<AGX_DIR>\data\Matlab\src
に agx_mexw64
と agx_sfun.mexw64
ファイルが生成されていることを確認する。
手動コンパイル
通常は実施する必要はないが、S-FunctionとMEXは手動でコンパイルもできる。 手動コンパイルはコマンドプロンプトから次のコマンドを実行する。
> cd <AGX_DIR>\data\Matlab\src
> mex agx.c
'Microsoft Visual C++ 2022 (C)' でビルドしています。
MEX は正常に完了しました。
> mex agx_sfun.c
'Microsoft Visual C++ 2022 (C)' でビルドしています。
MEX は正常に完了しました。
アンインストール
管理者権限でコマンドプロンプトを開く。
<AGX_DIR>\data\Matlab\removeAgXFromMatlabAndSimulink.cmd
を実行する。
MATLAB検索パスからAGXパスを削除と agx_mexw64
、 agx_sfun.mexw64
ファイルが削除される。
加えて、 pahtdef.m
のファイルに記述されているAGXへのパスも削除する。
デフォルトは C:\Program Files\MATLAB\<VERSION>>\toolbox\local\pathdef.m
にある。
pahtdef.m
をテキストエディタで開き、AGXへのパスを削除する。
# 削除
'C:\tmp\AGX-2.39.0.1\data\Matlab\src;', ...
'C:\tmp\AGX-2.39.0.1\data\Matlab\simulink;', ...
'C:\tmp\AGX-2.39.0.1\data\Matlab;', ...
'C:\tmp\AGX-2.39.0.1\data\Matlab\scripts;', ...