na_0024: MATLAB Function 間における共通データ
R2020a 以降
該当ガイドライン
Control Algorithm Modeling Guidelines - Using MATLAB®, Simulink®, and Stateflow®
サブ ID 推奨事項
NA-MAAB — a
JMAAB — a
MATLAB バージョン
すべて
ルール
サブ ID a
MATLAB Function ブロック間で共有されるデータの接続に信号線を使用します。
カスタム パラメーター
該当なし
例 — 正
function ErrorFlag = EngineFaultEvaluation(EngineData,ErrorFlag_In) %#codegen RMP_HIGH = 10000; RMP_LOW = 10; HIGHRPMFAULT = 2^1; LOWRPMFAULT = 2^2; ErrorFlag = ErrorFlag_In; if EngineData > RPM_HIGH ErrorFlag = bitor(ErrorFlag,HIGHRPMFAULT); end if EngineData < RPM_LOW ErrorFlag = bitor(ErrorFlag,LOWRPMFAULT); end function ErrorFlag = WheelFaultEvaluation(WheelData,ErrorFlag_In) %#codegen SLIP_HIGH = 1000; WHEELSLIP = 2^3; ErrorFlag = ErrorFlag_In; if WheelData > SLIP_HIGH ErrorFlag = bitor(ErrorFlag,WHEELSLIP); end end
例 — 誤
function EngineFaultEvaluation(EngineData) %#codegen global ErrorFlag_DataStore RMP_HIGH = 10000; RMP_LOW = 10; HIGHRPMFAULT = 2^1; LOWRPMFAULT = 2^2; if EngineData > RPM_HIGH ErrorFlag_DataStore = bitor(ErrorFlag_DataStore,HIGHRPMFAULT); end if EngineData < RPM_LOW ErrorFlag_DataStore = bitor(ErrorFlag_DataStore,LOWRPMFAULT); end function WheelFaultEvaluation(WheelData) %#codegen global ErrorFlag_DataStore SLIP_HIGH = 1000; WHEELSLIP = 2^3; if WheelData > SLIP_HIGH ErrorFlag_DataStore = bitor(ErrorFlag_DataStore,WHEELSLIP); end end
根拠
サブ ID a:
データ ストアを使用すると、データ フローの可読性が低下し、更新参照のタイミングでエラーになる可能性があります。
検証
モデル アドバイザー チェック: Check MATLAB code for global variables (Simulink Check)
最終更新
R2020a
バージョン履歴
R2020a で導入