問題タブ [transfer-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.
matlab - `tf()`の逆はありますか?
連続時間伝達関数の分子と分母があります。同等の離散時間伝達関数の分子と分母を別々に取得したい。
私のコードは以下の通りです:
どうすればよいですか?
matlab - Matlab、TF(伝達関数)の出力を構成します
matlabで関数を使用するtf
と、必要な出力が正確に得られません。
例えば:
生産:
連続時間伝達関数。
私が望むのはこれです:
かわいらしいフォーマットは欲しくない。伝達関数に直接アクセスしたい。
matlab - Matlab2つの伝達関数を追加する
たとえば、2つの伝達関数を一緒に追加しようとしています。
MATLABは、tf1とtf2を直列に接続されたブロックと見なすため、tf1とtf2を乗算すると、次のようになります。
MATLABにtf1とtf2の合計を返すようにするにはどうすればよいですか?したがって、私が探している伝達関数は次のとおりです。
matlab - 入力数と出力数をハードコーディングせずに MIMO (多入力多出力) 伝達関数システムを作成する
はじめ
に 大規模なシステムの一部として、リード ダイアゴナル*の出力に入力のみをリンクする多入力多出力伝達関数を作成しようとしています。つまり、入力 1 と出力 1、入力 2 と出力 2 などの間にゼロ以外の伝達関数があります。
*MIMOシステムが公正なコメントであると本当に考えているかどうかにかかわらず、実際にはMIMOであるより大きなシステムにリンクしているため、この形式でそれを望んでいます.
ハードコーディング
伝達関数を連結することでこれを実現できます
これは問題なく動作しますが、(a) 入力/出力の数をハードコーディングし、(b) 入力と出力が増えるほど恐ろしくなります。
diag function
この問題は diag 関数には完璧に見えましたが、タイプ 'tf' には diag が定義されていないようです
手動
のマトリックス操作 マトリックスを手動で操作しようとしました (実際に機能することを期待していたわけではありません)。
tf の Direct to MIMO 形式
tf には、すべての分子と分母を別々に表現し、MIMO システムを直接作成する形式もあります。これをハードコードされていない形式で使用しようとしました
これはほとんど機能しましたが、残念ながら、分子と分母は0ではなく、オフ対角で空です。エラーにつながる
質問
入力と出力の数を「ハードコーディング」せずに、伝達関数から MIMO システムを作成することは可能ですか?
matlab - Simulink での System Identification Toolbox 伝達関数の使用
System Identification Toolbox (SIT) 内で作成された伝達関数を Simulink にインポートしてテストしようとすると、何か根本的に間違っていると思います。
私がやっていることの簡単な例を挙げます。振幅が 1、周波数が 1.5rad/s の 12 秒から 25 秒までのオフセット正弦波である入力があり、測定された出力が得られます。
SIT を使用して、次の一致を与える単純な 2 極 1 ゼロ伝達関数を作成しました。
次に、周波数 1.5rad/s の正弦波入力と開始 t=12 を持つ次の構成で調査するために、この伝達関数を Simulink にインポートしようとしました。LTI システム ブロックは、ワークスペース内の伝達関数変数を参照します。
このシミュレーションを 13 秒間実行すると、ブロックへの入力は期待どおりですが、伝達関数後の信号は期待されるものとほとんど一致せず、桁違いです。
前:
役職:
私が間違っている場所と、tf
in simulink からの出力が SIT に表示されるモデル出力とほとんど似ていない理由について、誰かが洞察を与えることができますか? 私は制御理論の基本的な理解を持っていますが、これを理解するのに苦労しています.
matlab - 時間領域の伝達関数
時間領域に 2 つの信号 (X と Y) があります。それらの間の伝達関数を計算しようとしています。関数 tfestimate を使用しました。この関数は、伝達関数を周波数の関数として返し、tfestimate が伝達関数を推定する周波数のベクトルを返します。私の信号は複雑ではないため、正の周波数に対してのみ返されます。私の問題は、この伝達関数を時間領域で視覚化する方法です。次のコードを試しましたが、返される関数は時間領域で逆になっています。なぜだろう。
結果の 't' は伝達関数ではなく、時間が逆になったバージョンです。誰かが何が起こっているのかを理解するのを手伝ってくれますか? ありがとう。
matlab - MATLAB 伝達関数 (tf 関数) をフォーマットしますか?
MATLAB で PI コントローラーの伝達関数を入力したいと考えています (そして、最終的にはそのナイキスト線図を実行します)。これは一般的な形式です。
私の質問は、tf() 関数を使用して MATLAB でプロットする場合、KI を s で乗算するのではなく、s で割るにはどうすればよいですか? 係数を入れただけでsの適切な累乗を割り当てるのはかなり上手なようですが、ドキュメントを読んだ後でもsで割るように指示する方法がわかりません。
どんな助けでも大歓迎です、ありがとう!