サイトマップ

回路の素101 072 フル・ブリッジ NチャネルMOSFETだけ使用

回路の素101 072 フル・ブリッジ NチャネルMOSFETだけ使用

負荷を正負両方向で駆動することができる
単電源で動作することができる
ゲートドライバICを使うことで、NチャネルMOSFETだけで構成でき、効率的

回路図作成

ゲートドライバICのモデルは下記で取得
https://www.infineon.com/cms/jp/product/power/gate-driver-ics/ir2111/

  • 基本的な構成

動作仕様

ゲートドライバICによって、各MOSFETへは、24V or 12V or 0V が供給される

入力  V_1 入力  V_2 MOSFET  M_1 MOSFET  M_2 MOSFET  M_3 MOSFET  M_4  V_{out+}  V_{out-} 出力  V_{out}
Lo Lo OV(OFF) 12V(ON) OV(OFF) 12V(ON) 0 0 0
Lo Hi OV(OFF) 12V(ON) 24V(ON) 0V(OFF)  V_{DS}  V_{CC} -  V_{DS} - V_{CC} + 2V_{DS}
Hi Lo 24V(ON) 0V(OFF) OV(OFF) 12V(ON)  V_{CC} - V_{DS}  V_{DS}  V_{CC} - 2V_{DS}
Hi Hi 24V(ON) 0V(OFF) 24V(ON) 0V(OFF)  V_{CC}  V_{CC} 0

応答性確認

import matplotlib.pyplot as plt
import numpy as np

from PyLTSpice import RawRead

fig = plt.figure(figsize=(6, 6))
ax1 = fig.add_subplot(4, 1, 1)
ax2 = fig.add_subplot(4, 1, 2, sharex=ax1)
ax3 = fig.add_subplot(4, 1, 3, sharex=ax1)
ax4 = fig.add_subplot(4, 1, 4, sharex=ax1)

fname = 'PrimaryCircuit7-072.raw'
LTR = RawRead(fname)
x     = LTR.get_trace('time').get_time_axis(0)

tmp1  = LTR.get_trace('V(vin1)').get_wave(0)
ax1.plot(x * 1000, tmp1, label='$Vin_1$')
tmp1  = LTR.get_trace('V(vin2)').get_wave(0)
ax1.plot(x * 1000, tmp1, label='$Vin_2$')

tmp1  = LTR.get_trace('V(vg1)').get_wave(0)
ax2.plot(x * 1000, tmp1, label='$V_{G1}$')
tmp1  = LTR.get_trace('V(vg2)').get_wave(0)
ax2.plot(x * 1000, tmp1, label='$V_{G2}$')
tmp1  = LTR.get_trace('V(vg3)').get_wave(0)
ax2.plot(x * 1000, tmp1, label='$V_{G3}$')
tmp1  = LTR.get_trace('V(vg4)').get_wave(0)
ax2.plot(x * 1000, tmp1, label='$V_{G4}$')

tmp1  = LTR.get_trace('V(vout+)').get_wave(0)
ax3.plot(x * 1000, tmp1, label='Vout+')
tmp2  = LTR.get_trace('V(vout-)').get_wave(0)
ax3.plot(x * 1000, tmp2, label='Vout-')
ax3.plot(x * 1000, tmp1 - tmp2, label='Vout')

tmp1  = LTR.get_trace('I(Rl)').get_wave(0)
ax4.plot(x * 1000, tmp1 * -1000, label='I$_{RL}$')

ax1.legend(); ax1.grid()
ax1.set_xlabel('[ms]'); ax1.set_ylabel('[V]')

ax2.legend(); ax2.grid()
ax2.set_xlabel('[ms]'); ax2.set_ylabel('[V]')

ax3.legend(); ax3.grid()
ax3.set_xlabel('[ms]'); ax3.set_ylabel('[V]')

ax4.legend(); ax4.grid()
ax4.set_xlabel('[ms]'); ax4.set_ylabel('[mA]')

fig.tight_layout()

fig.savefig('PrimaryCircuit7-072_Graph1.png')

ゲートドライバICで、少ない入力で制御を行うことができている

参考文献

この記事は以下の書籍を参考にしましたが、
私の拙い知識で書いておりますので、誤り等ありましたらご指摘ください