問題タブ [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.

0 投票する
1 に答える
430 参照

matlab - m-file-function を C(または MEX) S-function に変換する手順はありますか?

MATLAB コードとして記述された単純な関数があります。例えば:

matlabFunctionこの関数は、シンボリック式を使用してコマンド アプリケーションから派生します。MATLAB S-Function ブロックまたは Interpreted MATLAB ブロックで使用する代わりに、C S-Function、MEX S-Function などのパフォーマンスを高速化するために S-Function に変換することができます。ありがとう

0 投票する
2 に答える
1677 参照

matlab - simulink で s-function のパラメーターとして変数を使用する方法


手動で挿入された定数を使用せずに、変数を使用して s-function のいくつかのパラメーターを指定したいと考えています。
matlab でグローバル変数を定義し、それらをパラメーターとして使用しようとしましたが、正常に動作します。
とにかく、simulink で計算された変数を他の関数のパラメータとして使用したい。出来ますか?もしそうなら、どうすればできますか?
1 つのアイデアは、matlab e でグローバル定数を引き続き使用して simulink から更新することでしたが、「ワークスペースへ」ブロックがそれらを構造体または配列に変換し、単一の値が必要なため、それを行うことができません。

編集: ワークスペースのグローバル変数の変数を更新することは、simulinkが最初に値を読み取ったように見えるため、役に立ちません

0 投票する
1 に答える
1552 参照

c++ - .cpp ファイルの STRINGIFY

それらをコンパイルするために作成されたいくつかの .cpp ファイルを読み込んでおり、レベル 2 S-Function のために MATLAB で使用する mex ファイルを持っています。

私はこの命令が実際に何のためにあるのか知りたいです:

ご協力いただきありがとうございます。

0 投票する
1 に答える
142 参照

matlab - S-Function .cpp の void** とは

MATLAB S-Function に基づく .cpp ファイルに記述されたコードを読み込んでいます。

私はそれが何を意味するのか知りたいだけです:

どの型の変数ですか?そして、2つの星は何を表していますか?

御時間ありがとうございます。

0 投票する
1 に答える
320 参照

matlab - S-Function Builder を使用して配列サイズの入力を取得する方法

MATLAB2014b s-function ビルダーを使用しており、入力配列のサイズを取得したいと考えています。たとえば、次の入力があります。名前: A、次元: 2、行: 1、列: 16、実数

出力ペインで、配列サイズを取得するために次のコードを記述しました。

Simulink モデルで "size_1" を出力すると、"1" が得られます。結果は 16 になると予想しています。私のコードは間違っていますか? 入力配列サイズを取得する方法はありますか?

0 投票する
1 に答える
994 参照

matlab - s-function で使用されている定数変数を matlab で調整可能にする方法

シングル トラック モデルをモデル化する AC コード内の関数を呼び出す単純な S-Function を作成しました。質量、ヨー慣性モーメント、ステアリング比などを保存するために定数変数を使用しています。これらの変数を調整可能にする方法を知りたいと思っていました。S-Function からサブシステムを作成し、リアルタイム ワークショップ -> S-Function の生成を使用して、リストから調整可能なパラメーターを選択したいと考えています。しかし、今のところ、調整可能なパラメーターを何も指定していないため、調整可能なパラメーターを見つけることができません

これは私の S-Function コードです

これは関数 singletrack() を持つロジックファイルです

および対応する .h ファイル

ssSetSFcnParamTunable() を使用する必要があることはわかっていますが、例を見た後でも、その方法がわかりません!!

アップデート:

変数をグローバル real_T real_T *m_s,*cv_s,*ch_s,*lv_s,*lh_s,*theta_s,*I_s_s,*dt_s; として宣言しました。

これらのコード行を mdlInitializeSizes() に追加しました。私はそれをmexし、すべてが順調です。しかし、s-function ブロックを使用して、s-function の名前を mex ファイルに変更すると、matlab がクラッシュします。また、これらの引数を single_track () 関数へのポインターとして渡します

なぜクラッシュがあるのですか?

0 投票する
0 に答える
1321 参照

matlab - レガシ コード ツールで S-Function ブロックからパラメーターを取得する方法

私は調整可能なパラメーターに取り組んでおり、手動の s-function を使用すると非常に簡単です。しかし、変数を調整可能 (s-function パラメーター ブロック からパラメーターとして取得) し、レガシ コード ツールを使用して s-function を自動的に生成したい場合はどうすればよいでしょうか。それは可能ですか?

たとえば、単純な単線モデルを作成しました。これは single_track.h ファイルです

これは single_track.c ファイルです

double m から double dt までの引数は、s-function ブロックからのパラメーターとして期待される入力であり、「double a」および「double b」の値は入力から取得されるため、それらについて心配する必要はありません。

手動で、mdlInitializeSize ssSetNumSFcnParams(S, 8); の S 関数にいくつかのグローバル変数を導入しました。

これは手動で機能しますが、自動的に機能するようにレガシーコードに入れる方法

私は以前に定義済みの値を使用していたレガシーコードを書きましたが、うまくいきました:

そしてCreateBusObject_retvale.mは

0 投票する
1 に答える
1733 参照

matlab - Matlab の「バス オブジェクト」を「Level-2 MATLAB S-Function」に入力する方法

Simulink で m-file s-function ブロックにバス データ型を使用することは可能ですか?

matlabのドキュメントやオンラインのどこにも、この例は見つかりませんでした。

C で記述された s-Function の場合、API は次のようになります。

*.m ソース コード内から同じデータ型 (C の構造体、Matlab のバス オブジェクト) にアクセスしたいと考えています。これに関する例やチュートリアルを知っていますか? お気づきかもしれませんが、私は Simulink 環境にあまり詳しくありません...

これが可能かどうかについても、さまざまな情報を見つけました

Q: レベル 2 の S-Function はバス オブジェクトをサポートしていますか?