差動増幅回路で作るボーカル・キャンセル回路
図1は,OPアンプ(AD8606)(1)と4つの抵抗で構成した差動増幅回路を使用した,ボーカル・キャンセル回路です.
この回路は,差動増幅回路にステレオ音楽信号を入力し,センタに定位するボーカル信号を取り除いて,OUT端子に演奏信号だけを出力します.
R1~R4の抵抗値の組み合わせで,ボーカル・キャンセル効果が十分に得られないのは表1の(a)~(d)のどの組み合わせでしょうか.

ボーカル・キャンセル効果が十分に得られない,抵抗値の組み合わせは?
| R1 | R2 | R3 | R4 | |
|---|---|---|---|---|
| (a)の組み合わせ | 10kΩ | 20kΩ | 10kΩ | 20kΩ |
| (b)の組み合わせ | 20kΩ | 20kΩ | 20kΩ | 20kΩ |
| (c)の組み合わせ | 20kΩ | 10kΩ | 20kΩ | 10kΩ |
| (d)の組み合わせ | 20kΩ | 10kΩ | 10kΩ | 20kΩ |

ボーカル信号は,LchとRchに同相信号として存在します.差動増幅回路は,2つの信号の差成分だけを増幅するため,同相成分は出力されず,ボーカル信号を除去できます.図1の回路が,差動増幅回路として正しく動作する抵抗値の組み合わせは(a)~(d)のどれかということを考えてください.
図1の差動増幅回路が正しく動作するためには,「R4/R3=R2/R1」という条件を満たしている必要があります.表1の(a)~(d)の抵抗値で,「R4/R3」と「R2/R1」を計算すると表2のようになります.
(d)の組み合わせは「R4/R3=R2/R1」という条件を満たしていないため,差動増幅回路として正しく動作しません.そのため,ボーカル・キャンセル効果が十分に得られないのは「(d)の組み合わせ」ということになります.
| R4/R3 | R2/R1 | |
|---|---|---|
| (a)の組み合わせ | 20kΩ/10kΩ=2 | 20kΩ/10kΩ=2 |
| (b)の組み合わせ | 20kΩ/20kΩ=1 | 20kΩ/20kΩ=1 |
| (c)の組み合わせ | 10kΩ/20kΩ=0.5 | 10kΩ/20kΩ=0.5 |
| (d)の組み合わせ | 20kΩ/10kΩ=2 | 10kΩ/20kΩ=0.5 |
●1つのOPアンプで構成した差動増幅回路
2つの信号の差電圧を増幅するのが差動増幅回路です.図2は,1つのOPアンプと4本の抵抗で構成した差動増幅回路です.この差動増幅回路の出力電圧がどのようになるか,考えてみます.

図2のように,2つの信号源がある回路の解析は,図3の(a),(b)のように,一方の信号源をショートした,2つの回路に分解して考えると簡単です.分解した(a),(b)それぞれの回路の出力電圧を求め,最後に加算することで,元の回路の出力電圧を求めることができます.このような考え方を「重ねの理」と言います.

それぞれの回路の出力電圧を求め,加算することで,元の回路の出力電圧が求まる.
▼V2をショートした回路の出力電圧
図3(a)は,V1を入力とすると反転増幅回路として動作し,そのゲイン(Ga)は式1で表されます.
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(1)そのため,OUT端子の出力電圧(VOUTa)は式2で表されます.
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(2)なお,R3,R4はOPアンプの非反転入力端子をGND電位とするだけで,ゲインには関与しません.
▼V1をショートした回路の出力電圧
図3(b)は,V2を入力とすると非反転増幅回路として動作します.入力信号(V2)は,抵抗(R3),R4で分圧されます.OPアンプの非反転入力端子(x点)の電圧(Vx)は,式3で表されます.
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(3)x点からOUT端子までのゲイン(Gx)は,式4で表されます.
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(4)式3,式4より,OUT端子の電圧(VOUTb)は,式5のように計算することができます.
・・・・・・・・・・・・・・・・・・・(5)▼差動増幅回路の出力電圧
図2の差動増幅回路の出力電圧(VOUT)は,VOUTaとVOUTbを足したものになり,式6で表されます.
・・・・・・・・・・・(6)式6は式7のように変形できます.
・・・・・(7)ここで「R4/R3=R2/R1」とすると,式7は式8のように簡単化できます.
・・・・・(8)式8から分かるように,差動増幅回路の出力電圧は,V2とV1の差電圧に比例し,そのゲインは「R2/R1」となります.差動増幅回路は,2つの信号の差成分のみを出力し,同相成分は出力しません. ただし,同相成分が完全に除去されるのは,4つの抵抗の抵抗値を「R4/R3=R2/R1」となるように設定した場合に限られます.
●差動増幅回路をボーカル・キャンセル回路として使用
一般的な音楽信号は,LchとRchの2つの信号で構成されたステレオ信号となっています.LchとRchの2つのスピーカから異なる音を出すことで,音楽に立体感と広がりが現れます.
一方,LchとRchのスピーカで全く同じ音を出すと,人間は左右のスピーカの中央から音が出ているように感じます.
図4は,ステレオ・スピーカで音楽を再生したときのイメージ図です.一般的に,ボーカルはスピーカの中央から聞こえるように録音することが多いため,ボーカル信号は,LchとRchに,同じ大きさの同相成分として含まれています.そのため,ステレオ音楽信号を図2の差動増幅回路に入力すると,同相成分であるボーカル信号は出力されず,演奏等の差成分のみを取り出すことができます.

一般的に,ボーカルはスピーカの中央から聞こえるように録音することが多い.
●差動増幅回路で同相信号が消去されることを確認
図5は,図1をシミュレーションする回路です.差動増幅回路で同相信号が消去されることを確認するための回路です.使用しているOPアンプは,最大出力電流が±80mAのAD8606で,OUT端子にヘッドホンを接続することができます.

R1~R4の値は変数とし,「.step」コマンドと「table」コマンドを使用して変化させる.
R1~R4の値は変数とし,「.step」コマンドと「table」コマンドを使用して,表1の(a)~(d)の抵抗値の組み合わせでシミュレーションを行います.
信号源VLmとVRmは互いに逆位相で,ピーク電圧100mV,400Hzの正弦波です.この信号はLch端子とRch端子に差動信号として加わります.信号源Vocalは,ピーク電圧400mV,1kHzの正弦波です.この信号はLch端子とRch端子に同じレベルで加わる,同相信号となります.
図6は,図5のシミュレーション結果です.1段目が,「(a)の組み合わせ」,2段目が「(b)の組み合わせ」,3段目が「(c)の組み合わせ」,4段目が「(d)の組み合わせ」のときのOUT端子の波形です.1段目から3段目の波形は400Hzのみで,同相信号の1kHzは出力されていません.

4段目の波形は400Hzに同相信号の1kHzが重畳されたものとなっている.
4段目の定数は,「R2/R1=10k/20k=0.5」,「R4/R3=20k/10k=2」となっており,「R4/R3=R2/R1」という条件を満たしていないためです.
このように,差動増幅回路では,「R4/R3=R2/R1」となるように定数設定を行えば,同相信号を除去できることが分かります.
なお,「.step」コマンドで,複数条件のシミュレーションを行い,図6のように分割した波形表示領域(Plot Pane)に,ひとつの条件の波形だけを表示したいときは,次のように行います.
まず,グラフ領域を右クリックし,表示されたメニューから,[View][Select Steps]を選択します.表示されたメニュー画面で,表示したいステップ番号を選択し,画面下の[Apply to All Panes]のチェックを外します.
●低域不足を改善するため同相除去性能の周波数特性を調整
差動増幅回路は,簡易的なボーカル・キャンセル回路として使用することができます.ただし,ボーカル・キャンセル後の音楽は,低域が不足していると感じることがあります.これは,ステレオ信号に含まれる低域信号がLch,Rchの同相成分として録音されていることが多いためです.そのため,差動増幅回路の低域の同相除去性能を悪化させることで,低域不足を改善できます.
図7は,差動増幅回路の,同相信号ゲインの周波数特性をシミュレーションするための回路です.OPアンプの非反転入力端子側のコンデンサ(C1)の容量値を,「.step」コマンドで10μFと0.047μFに変化させ,同相信号(Vocal)のゲインの周波数特性をシミュレーションします.

コンデンサ(C1)の容量値を,「.step」コマンドで10μFと0.047μFに変化させる.
図8は,図7のシミュレーション結果です.青線が「C1=0.047μF」のときの周波数特性で,低域のゲインが0dBとなっています.これは,同相信号として録音されている低域成分が,ボーカル・キャンセル後の信号に,そのまま出力されることを意味しています.

「C1=0.047μF」のときの周波数特性は,低域のゲインが0dBとなっている.
●ステレオ音楽信号を入力しボーカル・キャンセル効果を確認
図9は,差動増幅回路にステレオ音楽信号を入力し,ボーカル・キャンセル効果を確認するための回路です.入力信号としてステレオWAVファイルを使用するには,信号源(VL)の電圧値を「wavefile="Koisim_Sinsy.wav" chan=0」と設定し,信号源(VR)の電圧値を「wavefile="Koisim_Sinsy.wav" chan=1」と設定します.これで,入力信号としてステレオWAVファイルが使用できます.

ボーカル・キャンセル後の信号を「Vocal_cancel.wav」という名前のWAVファイルとして出力する.
次に,「.wave」コマンドを使用して,ボーカル・キャンセル後の信号をWAVファイルとして出力します.「.wave "Vocal_cancel.wav" 16 44.1K V(Out)」とすることで,V(Out)の信号を,サンプリング周波数44.1kHz,16ビットというフォーマットで,「Vocal_cancel.wav」という名前のファイルに書き出します.
なお,"Koisim_Sinsy.wav"は,自動作曲システムのCREEVO(2)で製作したもので,歌声には歌声合成システムのSinsy(3)が使用されています.
図10は,図9のシミュレーション結果です.上段が入力したLch信号で,中段がRch信号,下段がボーカル・キャンセルされたOUT端子の波形です.

「Vocal_cancel.wav」という名前のWAVファイルが作られる.
回路図ファイルと同じフォルダに,「Vocal_cancel.wav」という名前のWAVファイルが作られます.入力音源の「Koisim_Sinsy.wav」と聞き比べてみてください.
▼シミュレーション時間の短縮
図9の回路は,22秒間の解析を行うため,シミュレーションに非常に時間がかかります.シミュレーション時間を短縮したい場合は,OPアンプを簡易モデルに変更した回路図ファイルの「difAmp_WAV_opamp.asc」を使用してください.
以上,差動増幅回路を使用したボーカル・キャンセル回路について解説しました.
差動増幅回路は様々な用途があり,また今回紹介した回路以外にも,いくつかの構成方法があります.今後,それらの事例を紹介していきます.
◆参考・引用*文献
(1) AD8606データシート:アナログデバイセズ
(2) CREEVO進化する自動作曲システム:CREEVO開発プロジェクト
(3) 歌声合成システム Sinsy:名古屋工業大学 徳田・南角・橋本研究室
解説に使用しました,LTspiceの回路をダウンロードできます.
LTspice12_011.zip
●データ・ファイル内容
difAmp_sine.asc:図5の回路
difAmp_sine.plt:図6のグラフを描画するためのPlot settingsファイル
difAmp_AC.asc:図7の回路
difAmp_AC.plt:図8のグラフを描画するためのPlot settingsファイル
difAmp_WAV_AD8606.asc:図9の回路
difAmp_WAV_AD8606.plt:図10のグラフを描画するためのPlot settingsファイル
difAmp_WAV_opamp.asc:図9の回路の高速解析版
difAmp_WAV_opamp.plt:図10のグラフを描画するためのPlot settingsファイル
Koisim_Sinsy.wav:サンプル・ステレオ音源
■LTspice関連リンク先
● LTspice ダウンロード先
● LTspice Users Club
● LTspice メール・マガジン全アーカイブs
◆ Season01 LTspice電子回路マラソン・アーカイブs
◆ Season02 LTspiceアナログ電子回路入門アーカイブs
◆ Season03 LTspice電源&アナログ回路入門アーカイブs
◆ Season04 IoT時代のLTspiceアナログ回路入門アーカイブs
◆ Season05 オームの法則から学ぶLTspiceアナログ回路入門アーカイブs
◆ Season06 LTspiceエデュケーショナル・ファイルで学ぶアナログ回路アーカイブs
◆ Season07 LTspiceドット・コマンドから学ぶアナログ回路アーカイブs
◆ Season08 LTspiceで始める実用電子回路入門アーカイブs
◆ Season09 LTspiceで学ぶオーディオ回路入門アーカイブs
◆ Season10 LTspiceとデータシートで学ぶ実践アナログ回路入門アーカイブs
◆ Season11 LTspiceとデータシートで学ぶ実践アナログ回路アーカイブs









