問題タブ [s-function]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
simulink - Simulink.Parameter を C S-Function に渡す
Simulink.Parameter
構造体(私の場合、構造体の構造体)をどのようにに渡しC S-function
ますか?
編集:
Simulink.Parameterに関する情報
次の方法で Simulink.Parameter オブジェクトを作成できます。
値は、構造体のmyStruct
通常の matlab 構造体です。これは私の場合の様子です:
これは、パラメーターを Simulink に渡すための特別なオブジェクト タイプであり、 からアクセスするメカニズムを探していますC S-function
。
ここMnWE
からダウンロードします。
編集2: 私はこのようにパラメータを読みました:
しかし、このアプローチが機能しない理由はわかります。Matlab の構造体オブジェクトは C 構造体とは異なります。つまり、メモリ内で連続しておらず、他のプロパティも含まれています。Matlab 構造体を配列にキャストしてから、C の配列を構造体定義にキャストすると思います。
matlab - Matlab S-Function でグローバル オブジェクトを使用する方法
Matlab S-Function の複数の関数でオブジェクトを使用する必要があります。オブジェクトはライブラリとして使用され、サーバーとの接続を設定し、各ループでデータを取得し、シミュレーションの最後に閉じる必要があります。オブジェクトの使用は次のようになります。
すべてのループで通信をインスタンス化して閉じるのは便利ではありません。オブジェクトを作成して " " に接続を設定し、" function setup(block)
" のデータを更新して " function Update(block)
" の接続を閉じたいのfunction Terminate(block)
ですが、これを行うには、"ObjectX" と "clientID" を関数間で共有する必要があります。
あなたが私を助けてくれることを願っています。
matlab - 個々のブロックのタイム ステップ サイズとシステムのタイム ステップ サイズとの関係は?
ご存知のように、レベル 2 の Matlab S Function には、次のようなブロックの次のヒット時間を取得するコマンドがあります。
個々のブロックの時間ステップ サイズとシステムの時間ステップ サイズの関係は何ですか。システムのサンプル タイム ステップがブロックのサンプル タイム ステップよりも大きい場合、どうなるでしょうか。私の意見では、ソルバーはおそらくすべての反復ですべてのブロックから block.NextTimeHit を検出し、現在の system.NextTimeHit がすべての block.NextTimeHit よりも小さいことを確認するため、ソルバーは決してそれを起こさせません。したがって、見逃されたブロックからのサンプルはありません。
simulink - Simulink S-Function からすべてクリア
simulink レベル 1 S-Function から clear all を呼び出そうとしています。ざっと見まし doc mexCallMATLAB
たが使い方がわかりません。関数が呼び出された後、ワークスペースをクリアしたいと思っていました。