はじめに
単相全波整流回路においてダイオードを用いた場合、出力される電圧は正弦波の絶対値を取った関数となる。しかし、このままでは直流電圧源として用いることが難しい。そこで、直流リアクトルという素子を回路に直列接続することで、脈動分を平滑することができる。今回は以下のような、全波整流波形に対してリアクトルによる平滑作用がどのようなものなのかについて、フーリエ解析を用いて調査した。結果以下のようなグラフを得ることができ、負荷電流は電圧の脈動分が平滑されて現れるということが分かった。
回路設定
以下のような回路設定で考える。
全波整流回路とフーリエ解析
全波整流回路によって生じる正弦波の絶対値を取った関数の電圧を表現する方法を考える。できれば、異なる周波数の正弦波の和という形で表したい。なぜなら、回路に直列リアクトルを接続する場合、負荷側の回路はRL回路になり、正弦波による電流の解析が行いやすいからである。なので、以下の式のように、電圧の関数に対してフーリエ解析を試みる。
v(t)= \frac{2V}{\pi}-\frac{4 V}{\pi}\Sigma_{n=0}^\infty{\frac{1}{(2n+1)(2n+3)}cos(2n+2)\omega t}
この関数を眺めてみると、第一項は直流分で第二項は正弦波交流分であることが分かる。直流分によって生じる電流は、直流電圧をRで除したものである一方、交流分に対してはL分によって電流は変化する。したがって、それらに対して留意することで、回路に流れる電流は以下のように表すことができる。
I(t)=\frac{2V}{\pi R}-\frac{4V}{\pi}\Sigma_{n=0}^\infty{\frac{1}{(2n+1)(2n+3)\sqrt{R^2+(2n+2)\omega L}}{cos((2n+2)\omega t-tan^{-1}({(2n+2) \frac{\omega L}{R})})}}
プログラム
したがって、以上の議論より、この回路の出力電圧(全波整流)と負荷に流れる電流の波形を描写するプログラムを作成した。
import numpy as np
import matplotlib.pyplot as plt
import japanize_matplotlib
import math
V=1
#積算数
n= 10000
#パラメータ
t = np.arange(0.0, 0.1, 0.001)
#電圧と電流の初期パラメータ
y1=0
y2=0
#回路素子
L=1.0
R=1
#角周波数
omega=50
# シグマの計算
for num in range(n):
y1= y1+ (1/((2*num+1)*(2*num+3)))*np.cos((2*num+2)*omega*t)
y2= y2+ (1/((2*num+1)*(2*num+3)))*np.cos((2*num+2)*omega*t-np.arctan((2*num+2)*omega*L/R))/(R**2+((2*num+2)*omega*L)**2)**0.5
#電圧
y1=2*V/math.pi-y1*(4*V/math.pi)
#電流
y2=2*V/(math.pi*R)-y2*(4*V/math.pi)
plt.plot(t, y1,color="red", label="電圧")
plt.plot(t, y2,color="blue", label="電流")
plt.title('コイルに流れる電流 L=%f' % L)
plt.xlabel('時刻t')
plt.legend() #凡例
plt.savefig("過渡応答コイルと抵抗L_%f.png"% L)
plt.show()
これにより、以下のようなグラフが書ける。
電圧は上のグラフのように脈動しているのに対して、電流はほとんど脈動していないのが分かる。直列リアクトルの意義を考えるため、負荷抵抗を一定として、直列リアクトルのみの値を0.01,0.1,1としたときの様子を調査する。
直列リアクトルの意義
L=0.01のとき
上グラフの通り、Lが小さい場合、電流は大きく脈動してしまう。これは、直流リアクトルの平滑作用が不十分であることが原因であると考えることができる。
L=0.1のとき
グラフの通り、L=0.01のときと比較して脈動分がなだらかになっている。
L=1のとき
この場合は、正弦波電圧の脈動分の影響は、電流にはほとんど影響されていないということが分かる。これが直流リアクトルの平滑化作用である。
まとめ
今回は単相全波整流回路における直流リアクトルの平滑化作用について、解析した。結果、確かに、直流リアクトルには平滑化作用があり、値を大きくするほどにその影響は高くなるということが分かった。