RC回路の勉強をしてみる その1

2020年6月7日

この記事は、ADALM2000で勉強をしてみる その3です。ADALM2000の話がほとんど出てこなかったためタイトルはやっていることにしました。

今回は、Transient Response of an RC Circuitのページを勉強していきたいと思います。RC回路は一次遅れ系なのでMATLABでシミュレーションでもしながら進めてみたいと思います。マイクロマウス競技の参加者には、スポンサーのMathWorksからMATLABの無償スポンサーライセンスをいただいているのでSimulinkの練習ということでやっていきたいと思います。

実験結果はWikiのページとほとんど変わらなかったため記載は省略させていただきます。必要に応じて実験風景や画像等を載せていきたいと思っています。




基礎編

一次遅れ系について簡易的に勉強をしてみる

WikiのBackgroundを読み始めると、Time Constant[時定数](τ)と呼ばれるものがでてきました。まずは、これが何のことなのか勉強をしていきたいと思います。

冒頭に書きましたが、時定数は電子回路や制御工学等で使われる制御モデルの一つだと思っておけばひとまずは問題ないはずです。実際にはいろいろとありますが、今回のRC回路で必要になりそうな点だけピックアップして書いていこうと思います。

一次遅れ系の説明ではよく式(1)の伝達関数や式(2)の出力の形でかかれることが多いです。

 

一次遅れ系では、システム(伝達関数)にステップ入力を与えたとき、時定数(τ)の時間でゲインKの63.2%まで応答する特性をもっています。ステップ入力を以下に示します。

(2)式は伝達関数にステップ入力を入れて、逆ラプラス変換してもとまったものになります。ステップ入力のラプラス変換をした後に、G(s)に入力して逆ラプラス変換をしてy(t)を求めるところまでをやっていきたいと思います。

(2)式を無事求めることができました。

RC回路の基礎について勉強をしていく

Wikiの内容に戻ります。RC回路の時定数は式(3)のように計算することで求まるそうです。

充電をするときは、一次遅れ系でゲインが入力する電圧Vとなり、放電をするときは初期値が現在の電圧で時刻が時定数のときに63.2%放電をするみたいです。充電の時のについては、式(2)に代入をすると次のようになりました。

放電するときの式は次のようになるそうです。

 

 

MATLABでシミュレーションをしてみる

Simulinkを使用して次のようにしてステップ入力をいれてみました。伝達関数の時定数に代入をしたもので考えています。

このシミュレーションで使用しているR,C,Tは以下の通りです。

R = 2.2 * 10^3;
C = 1 * 10^(-6);
V = 3.0;

出力結果は次のようになりました。時定数がとても短いため時間軸を拡大してやっと見れる程度でした。コンデンサの充電時間が早いことがよくわかります。

次に、方形波を入力に与えたときの応答をみていきたいと思います。

入力

出力

 

RC回路の基礎について勉強をしていくで求めた式と見比べてもおかしくなさそうです。また、WikiのADALM2000の実験結果とほぼ同様の結果になったため、正しくシミュレーションすることができたみたいです。

さいごに

ADALM2000のWikiを見ながら勉強を始めてみましたが、第二回目でこの重さ。制御関連の内容が入ってきたため基礎から学ぶことができているような気がします。改めて勉強をしながら、記事に起こすことで、自分が何処を理解できていなくて、何処が理解できているのかといった整理が同時にできました。記事を書くことによって勉強の質が上がっているかもなぁと思います。

RC回路で電圧の応答がわかりましたが電流の応答がわかりません。次回は電流の応答について書いていきたいと思います。ちょっとずつ理解をしながら進めていきたいです!