From 8b49ad8ffe8b2ed9ef059da45a7a6e582428d97f Mon Sep 17 00:00:00 2001 From: "Kaz Saita(raspi4)" Date: Fri, 29 Mar 2024 15:15:21 +0900 Subject: [PATCH] sync notes(auto) --- ...1150355 state variable filterの動作原理.md | 78 +++++++++++++++++++ ...20240221150711 極、零点とフィルタの特性.md | 58 ++++++++++++++ .../20240301110205 Somewhere in Detroit.md | 6 ++ 3 files changed, 142 insertions(+) create mode 100644 content/20240221150355 state variable filterの動作原理.md create mode 100644 content/20240221150711 極、零点とフィルタの特性.md create mode 100644 content/20240301110205 Somewhere in Detroit.md diff --git a/content/20240221150355 state variable filterの動作原理.md b/content/20240221150355 state variable filterの動作原理.md new file mode 100644 index 0000000..c54dc52 --- /dev/null +++ b/content/20240221150355 state variable filterの動作原理.md @@ -0,0 +1,78 @@ +## 20240221150355 state variable filterの動作原理 +state variableが何か?をちゃんと説明している資料: +[Op-Amp Implementation of Analog Filters | Signal Processing: Continuous and Discrete | Mechanical Engineering | MIT OpenCourseWare](https://ocw.mit.edu/courses/2-161-signal-processing-continuous-and-discrete-fall-2008/resources/lpopamp/) + +一般的な二次のプロパーな伝達関数はこのように表される。 +$$ +H(s) = \frac{Y(s)}{U(s)} = \frac{b_{2}s^{2} + b_{1}s + b_{0}}{s^{2}+a_{1}s + a_0} \tag{1} +$$ + + $X(s)$ を導入して、分母と分子を分割すると、 + $$ + \begin{aligned} +H_{1}(s) &= \frac{X(s)}{U(s)} = \frac{1}{s^{2}+a_{1}s + a_{0}},\\ +H_{2}(s) &= \frac{Y(s)}{X(s)} = b_{2}s^{2} + b_{1}s + b_{0},\\ +H(s) &= H_{1}(s) \cdot H_{2}(s). + + \end{aligned} \tag{2} +$$ + +$H_1(s)$ の式を変形すると、 +$$ +X(s) \cdot (s^{2}+ a_{1}s + a_{0}) = U(s) \tag{3} +$$ +(3)式を展開して、ラプラス逆変換すると、 +$$ +\begin{aligned} +&X(s)\cdot s^{2}+ a_{1}X(s)\cdot s + a_{0}X(S)= U(s)\\ +&\Leftrightarrow +\frac{d^{2}}{dt^{2}}x(t)+a_1\frac{d}{dt}x(t) + a_{0}x(t) = u(t). +\end{aligned} \tag{4} +$$ + + +同様に、$H_2(s)$より、 +$$ +\begin{aligned} +Y(s) &= X(s) \cdot (b2s^{2}+ b_{1}s + b_{0})\\ +\Leftrightarrow y(t) &= b2\frac{d^{2}}{dt^{2}}x(t)+b1\frac{dx}{dt}x(t) + b_{0}x(t). +\end{aligned} \tag{5} +$$ +(4) の右辺を変形すると、 +$$ +\frac{d^{2}}{dt^{2}}x(t) = -a_1\frac{d}{dt}x(t) - a_{0}x(t) + u(t). \tag{6} +$$ + +(6)式はブロック図で以下のように表現できる。 +![[Pasted image 20240221143559.png|500]] +※ この段階ではフィードフォワード方向の伝達関数は含まれていないが、オールパスフィルタが必要で無い限り、実はここまでのブロックでOK。 + +このブロック図の伝達関数は(2)の$H_{1}(s)$ そのもの。 + +![[Pasted image 20240221144757.png | 500]] +このブロック図の赤矢印の点からの出力を計算したい。 $H_{1}$ の定義とブロック図上の関係から、以下が求められる。 + +$$ +\begin{aligned} +H_{LP}(s) &= a0 \cdot H_{1}(s) = \frac{a_{0}}{s^{2}+a_{1}s + a_{0}}\\ +\\ +H_{BP}(s) &= a1 \cdot s \cdot H_{1} = \frac{a_{1}s}{s^{2}+a_{1}s + a_{0}}\\ +\\ +H_{HP}(s) &= s \cdot s \cdot H_{1} = \frac{s^2}{s^{2}+a_{1}s + a_{0}} +\end{aligned} \tag{7} +$$ + +それぞれ、 +- $H_{LP}(s)$は零点を持たない2次の伝達関数 ローパスフィルタ +- $H_{BP}(s)$は零点を1つ原点に持つ2次の伝達関数 バンドパスフィルタ +- $H_{HP}$は零点を2つ原点に持つ2次の伝達関数 ハイパスフィルタ + +を構成していることがわかる。なぜ、それぞれがローパスやハイパスになるか? については、 +[[20240221150711 極、零点とフィルタの特性|極、零点とフィルタの特性]] を参照。 + +(2)の $H_2(s)$も含めた全体は、こんな感じ。これだと任意の2次の伝達関数が表現できる。 +![[Pasted image 20240221151936.png|500]] + + +## cf. +[Op-Amp Implementation of Analog Filters | Signal Processing: Continuous and Discrete | Mechanical Engineering | MIT OpenCourseWare](https://ocw.mit.edu/courses/2-161-signal-processing-continuous-and-discrete-fall-2008/resources/lpopamp/) \ No newline at end of file diff --git a/content/20240221150711 極、零点とフィルタの特性.md b/content/20240221150711 極、零点とフィルタの特性.md new file mode 100644 index 0000000..f378cf4 --- /dev/null +++ b/content/20240221150711 極、零点とフィルタの特性.md @@ -0,0 +1,58 @@ +# 20240221150711 極、零点とフィルタの特性 +#filter #analog #electronics + +## 周波数特性と極、零点 一般的な話 + +一般にフィルタ(というか古典制御の伝達関数)は、極と零点をつかって、以下のように書ける。 +$$ +\begin{aligned} +H(s) &= \frac{b_{ms^{m}+}b_{m-1}s^{m-1} + \dots + b_0 }{a_{n}s^{n}+ a_{n-1}s^{n-1} + \dots a_{0}}\\ +\\ +&= k\frac{(s-z_1)(s-z_{2)\dots}(s-z_m)}{(s-p_1)(s-p_2)\dots(s-p_n)} +\end{aligned} \tag{1} +$$ + +このとき、任意の複素平面上の点$q$における振幅、位相特性は +$$ +\begin{aligned} +|H(s)|_{s=q} &= k\frac{(q-z_{1})(q-z_{2)} \dots (q-z_m)} +{(q-p_1)(q-p_2)\dots(q-p_n)}\\ +\\ +&= k\frac{r_1e^{j\phi_{1}} \cdot r_2e^{j\phi_{2}} \cdots r_me^{j\phi_{m}}} +{d_1e^{j\theta_{1}} \cdot d_2e^{j\theta_{2}} \cdots d_ne^{j\theta_{n}}} +\end{aligned} \tag{2} +$$ +(2) の2番目は極座標表記。 +このとき、ゲイン$|H(s)|$ は +$$ +\begin{aligned} +|H(s)|_{s=q} & = k\frac{r_{1}r_{2}\cdots r_m}{d_{1}d_{2}\cdots d_n}\\ +\\ +&= \frac{\prod_{t=1}^{m}r_{t}}{\prod_{t=1}^{n}d_t} + +\end{aligned} \tag{3} +$$ + +位相 $\arg H(s)$ は +$$ +\begin{aligned} +\arg H(s) _{s=q} & = k\frac{\phi_{1}+ \phi_{2} + \cdots + \phi_{m}} +{\theta_{1}+ \theta_{2} + \cdots \theta_{n}}\\ +\\ +&= \frac{\sum\limits_{t=1}^{m}\phi_{t}}{\sum\limits_{t=1}^{n}\theta_t} + +\end{aligned} \tag{4} +$$ +と表せる。 + +周波数特性を気にしたい場合、 点$q$として、周波数$j\omega$ が0から$+\infty$ まで移動した時の振幅と位相を求めれば良い。つまり、虚軸を原点から上方向に進んでいく直線上で上記を求めれば良い。 + +## 2次の伝達関数の場合の例 + +## cf. +- [Pole-Zero Analysis | Introduction to Digital Filters](https://www.dsprelated.com/freebooks/filters/Pole_Zero_Analysis_I.html) +- [321 08 Poles, Zeros, and Frequency Response - YouTube](https://youtu.be/W2ubAg8RTd8?t=863) +- [Understanding Poles and Zeros in Transfer Functions - Technical Articles](https://www.allaboutcircuits.com/technical-articles/understanding-poles-and-zeros-in-transfer-functions/) +- [Site Unreachable](https://www.analog.com/jp/resources/technical-articles/a-filter-primer.html) +- [Lecture 23 Filters Hung-yi Lee. - ppt download](https://slideplayer.com/slide/3990721/) +- [Pole-Zero Analysis | Introduction to Digital Filters](https://www.dsprelated.com/freebooks/filters/Pole_Zero_Analysis_I.html) \ No newline at end of file diff --git a/content/20240301110205 Somewhere in Detroit.md b/content/20240301110205 Somewhere in Detroit.md new file mode 100644 index 0000000..e78efa5 --- /dev/null +++ b/content/20240301110205 Somewhere in Detroit.md @@ -0,0 +1,6 @@ +# 20240301110205 Somewhere in Detroit +#mus #detroit #techno + +Roland が作ったデトロイトテクノのドキュメンタリー + +https://www.youtube.com/watch?v=5ErxKvL_zzU