自作VVVFインバーターのためのPWM波形再現 (4) スペクトルとキャリア周波数 #床下電子音楽

前回:(3)信号波とキャリア

はじめに

今回は今までに得た知識を使って音を作り、そのスペクトルを見ていきます。スペクトル画像の生成にはWaveToneを使いました。

なお、パルス数$P$は今回使わず、キャリア振幅A_cは1で固定しています。また、音は線間電圧を生成したものです。

すべての変数を固定

まず

  • キャリア周波数$f_c$を1050Hzで固定
  • 信号波振幅$A_s$を1で固定
  • 信号波周波数$f_s$を50Hzで固定

というパターンのスペクトルを見ます。一応、音量に注意してください。

時間的な変化がない単純な音になりました。

信号波周波数$f_s$を変える

次に

  • キャリア周波数$f_c$を1050Hzで固定
  • 信号波振幅$A_s$を1で固定
  • 信号波周波数$f_s$0→50Hzに上げる

というパターンのスペクトルを見ます。

上でやったものよりもスペクトルがかなり変わっていますね。信号波周波数$f_s$を動かすだけでも大きく変化します。

f:id:yuppi5:20190919133506p:plain
図1

右下に見えているカーブは信号波周波数$f_s$と同じ成分です。

信号波振幅$A_s$を変える

次に

  • キャリア周波数$f_c$を1050Hzで固定
  • 信号波振幅$A_s$0→1に上げる
  • 信号波周波数$f_s$0→50Hzに上げる

というパターンのスペクトルを見ます。

初回の線間電圧のサンプル音に近づいてきましたね。インバーターは、信号波周波数$f_s$を上げるのと同時に信号波振幅$A_s$も上げています。

f:id:yuppi5:20190919133113p:plain
図2

VVVFは可変電圧・可変周波数という意味ですが、VVVF信号波振幅$A_s$可変と信号波周波数$f_s$可変によって実現されます。

キャリア周波数$f_c$を変える

最後にキャリア周波数$f_c$も変えていきます。

  • キャリア周波数$f_c$1050→1050→700→1800Hzにする
  • 信号波周波数$f_s$0→50Hzに上げる
  • 信号波振幅$A_s$0→1に上げる

というパターンにします。

一番よく聴こえる音が一定→下がる→上がる、という動きをしていることがわかるでしょうか。

f:id:yuppi5:20190919133515p:plain
図3

このよく聴こえてくる音の正体はキャリア周波数$f_c$に由来していて、これは信号波周波数$f_s$に関係なく設定できます。有名なドレミファインバーターキャリア周波数$f_c$を音階状に設定しています。有名といえば、E231系の近郊型の墜落インバーターもそうですね。わかっていた人もいると思いますが、先ほど作った音は墜落インバーターの設定を真似ています。

f:id:yuppi5:20190919133104p:plain
図4

通常は信号波周波数$f_s$が上がっているときにキャリア周波数$f_c$を下げることはありません。しかし墜落インバーターではそれをしていて珍しいため「墜落」と呼ばれたということが考えられます。

初回や第2回でお伝えしたとおり、電車のモーターから聴こえてくる音は線間電圧と同じ音になります。つまり、電車のモーターから聴こえてくる音のうち主なものはキャリア周波数$f_c$由来となります(※これが言えるのは低速域だけで、実際は高速域になるとキャリア周波数$f_c$以外の音のほうが大きく聴こえるようなります)。こうしたことから、電車の速度を上げつつ(=信号波周波数$f_s$を上げつつ)モーターから聴こえてくる音を音階状にするといった芸当が可能なのです。

まとめ

  • 信号波振幅$A_s$信号波周波数$f_s$を変えることでVVVFとなる
  • 一番よく聴こえてくる音はキャリア周波数$f_c$に由来する
  • 一番よく聴こえてくる音(キャリア周波数$f_c$由来)は信号波周波数$f_s$に関係なく設定できるので、音階状の音をモーターから鳴らすことも可能

キャリア周波数$f_c$」「信号波振幅$A_s$」「信号波周波数$f_s$」が多く出てきていたので、マーカーで色分けをしました。ご活用ください。

自作VVVFインバーターのためのPWM波形再現 (3) 信号波とキャリア #床下電子音楽

前回:(2)線間電圧と相電流

  • はじめに
  • 三角波の関数$\mathrm{tri}$について
  • 三角波の実装
  • 信号波とキャリアの別名称
  • 扱う変数
  • 変数の記号の由来
  • まとめ

はじめに

前回は再現に直接関係のない寄り道でしたが、今回は元の道に戻ります。

信号波には正弦波、キャリアには三角波が使われるということを初回に説明しました。

f:id:yuppi5:20190906151311p:plain
図1

続きを読む

自作VVVFインバーターのためのPWM波形再現 (2) 線間電圧と相電流 #床下電子音楽

前回:(1) 各種波形

  • はじめに
  • 前回
  • モーターとインバーターの回路と接続
  • 更に単純化
  • 導出過程
    • 実音
      • 線間電圧 $U-V$
      • U相電流 $2U-V-W$
    • スペクトル
    • 波形
  • 証明?
  • 音の出どころ
  • まとめ

はじめに

今回は線間電圧について深追いするだけなので、正直再現にはほぼ役立たない知識になると思います。ですので、この回は飛ばしてもらっても構いません。

続きを読む

自作VVVFインバーターのためのPWM波形再現 (1) 各種波形 #床下電子音楽

  • PWMについて
  • 信号波とキャリア
  • 出力パルスについて
    • 音を比較する
      • 単相で生成した音
      • 線間電圧で生成した音
  • まとめ

こんにちは、床下電子音楽のゆっQと申します。これから何回かにわたってVVVFインバーターの波形を再現する上で必要だった知識について書いていきます。

始めは用語が多く登場するのでとっつきにくいかもしれません。図を多めにつけたので、それを見てイメージをつかんでいただけたらと思います。

PWMについて

f:id:yuppi5:20190830185446p:plain
図1

続きを読む

JavaScriptのfunction宣言をアロー関数に置き換える正規表現パターン

はじめに

VSCodeを想定しています。

やり方

検索:function (.+)\((.*)\)
置換:const $1 = ($2) =>

動作の様子

f:id:yuppi5:20190710213455p:plain
置換前
f:id:yuppi5:20190710213527p:plain
置換後

今後の展開

「function」と関数名の間の空白を半角スペース1個固定にしているので、ここは改良点になると思います。

3レベルVVVFインバーターを作りました

ちょくちょく構想をしていた3レベルインバーターがようやく完成しました。


完成までの道すじから今後の課題まで

試験回路の作成

とりあえずハーフブリッジの回路を作ってゲート信号を入力して無負荷で動かしてみました。直流280V入力で特に発熱等は確認されなかったので、基板の制作に移りました。

基板を設計

KiCADで配線をガーッって書いて発注しました。いままで使っていたインバーターに重ねたかったのでB基板の大きさに合わせて作りました。おかげで配置がギュウギュウになって、一部の配線をジャンパー線でまかなわないといけなくなりました。あと、Cスナバーをとりあえず取り付けたんですが意味を成しているかは不明です。

基板完成!しかし…

個人での作例がなかったんですがまあ行けるっしょ!って感じではんだ付けまでして動かしたら良い動きをしないんですよね。
電源のスイッチをオフにしてキャパシターに溜まっている電荷だけで動かしたんですが、マイコンを起動するとなぜか上のキャパシターの電圧が低くなっていってしまう。

f:id:yuppi5:20190430144817p:plain
不具合

壊れる素子

280Vを通電したところU相の素子(FET)が壊れました。原因を探ったところ、マイコンリセット時に48MHzのクロック?が出るピンがあり、それが悪さをしていたようです。
基板の部品の密度が高いせいで素子を交換するのに苦労しました…。

発煙

素子を取り替え、ピンを変更したあと無負荷で動作試験をしました。このときスライダックを入手したので、それを使って電圧を上げていきながら行いました。
直流電圧140Vくらいまではほぼ問題なかったんですが、200Vまで上げるとどこからか発煙したので中止しました。電源を落としキャパシターを放電したあと基板を触ると熱い部分があったので、多分何か問題が起きていますね。(ハーフブリッジで試験したときに無事だったのはなんだったんだろう…?)
ゲート信号を全く与えない状態(全て0)で280Vに上げても特に問題はなかったので、原因は素子ではなさそうです。

デッドタイムを長く

原因が結局よくわからないまま時間が進むのも良くなかったので、とりあえずデッドタイムを長くして対症療法的に対策をしました。そうすると発熱が多少改善されました。

問題点

  • 回路がガバ
  • 電源が弱い
  • 電源の入力電圧をスライダックで半分にしていて音量が小さい
  • なぜか発熱するFET

最初の2点はすぐ直せるとして、後ろの2点は今後の長期の課題ですね。素子壊したくないですし。
そういえば、回路の甘さと電源の弱さで一番最初の再現*1を思い出しました。当時はスライダックもオシロスコープもなかったですけどね。

今後の課題

280Vで動かせるようにすることと、SDカードでも3レベルの設定で鳴らせるようにすることですね。


その他

先駆者

素子が壊れて萎えていたところ、ぽんずさん*2に先を越されていました。


基板の部品の配置がかっこいい。東武30000系の音良いですよね。
オシロスコープがぽんずさんと同じだったので全く同じにするのもなあと思い、Twitterの動画ではオシロのチャンネルに3と4を使いました。

ノッチオフ時について

f:id:yuppi5:20190430151648j:plain
動画の最後のあたりのスクリーンショット
ノッチオフというか回転数0のときにスイッチングしているのは、ブートストラップでやっていた2レベル時代の名残です。

最後に

問題点・課題が多いですが、とりあえず完成してモーターを回せたのは良かったです。

f:id:yuppi5:20190430151316j:plain
マイコンボードの下に見える青い基板が今回作ったもの

*1:自作VVVFインバーター東武50000系を再現しました(2016/05/23) https://youtu.be/7dzAvt-umCw

*2:ぽんずさんによる記事:3レベルVVVFインバータを作った - ぽんず製造所 http://pons.blog.jp/archives/79636359.html