resample()
関数を使用して、Qダウンサンプリング係数の可変引数をSimulinkで取得する必要があります。基本的にこのコードを含むSimulinkのfcn
ブロック:MATLABへの入力が機能を解釈して、デスクトップシミュレーションでコード生成でresample()関数。可変Qダウンサンプリング係数を使用する方法はありますか?
function y = resample(data,Q)
y=resample(data,1000,Q);
私は、変数Qは、それを指定することにより、引数として仕事を得ることができますが、私はCコードを生成する必要があるため、私の唯一のオプションはfcnブロックを使用することですが、明らかに上記の制限のためにコンパイルされません。
error: the downsample factor Q must be constant
私は、これはリサンプル関数のdocumented limitationであることを理解:
resample: The upsampling and downsampling factors must be specified as constants. Expressions or variables are allowed if their values do not change.
これに対処するための任意の回避策または異なるアプローチ?おそらく、同じ仕事をすることができる他のブロックですか? ofcはSimulinkコーダーと互換性がなければなりません。
ありがとうございます!
説明をいただきありがとうございます。値が広い範囲(数百以上)を持っているため、条件付き分岐は醜くなります。私は今、downsample()とupsample()が同じものになるかどうかを調べようとしています。 –