Skip to main content

古い飛行機のロータリーインバータシステムを構築!Part1:原理と制御系

image of a vintage aircraft 400Hz rotary inverter

年代物の航空機400Hzロータリーインバータ用の制御システムを構築

今後計画しているプロジェクトでは航空機に搭載されているような三相115Vac400Hzの電源が必要になります。ソリッドステートインバータを作るという選択もありますが、今回は古い飛行機のロータリーインバータ(回転変流器)を手に入れたのでそちらの構築を進める事にしました。

インバータの制御について

ロータリーインバータはモータと発電機のセットと考える事ができ、モータ側には電機子と界磁コイルがあり、発電機側にも界磁コイルがありその制御も必要になってきます。モータの界磁電流を調整することで出力周波数を制御し、発電機の界磁電流を調整することで出力電圧を制御する事ができます。

制御ループを閉じるためにBARTH社のlococube mini-PLC STG-820 (134-8867) を2台使用します。このコントローラは安価ながら驚くほど高性能なPLCタイプの制御装置です。BARTH社のホームページではこれを「CAN Logic Controller(CAN論理制御器)」として記載しています。この制御装置にはCANインターフェース、0-30Vdcアナログ入力3系統、デジタル入力2系統、0-5Vdcアナログ出力1系統、デジタル出力4系統を備えています。

Image of BARTH lococube mini-PLC STG-820

またPLCのプログラミングにはBARTH社が提供するmiCon-Lというブロックベースのプログラミング言語やKEIL MDK、STM CubeIDEを使ったC/C++、さらにはArduinoプログラミング環境のいずれかを使用できます。3種類のプログラミング手法はどれも人気なもので扱いやすくサポートドキュメントも充実しています。

今回はアナログ出力が2つ必要なためコントローラを2つ使用しますが、各コントローラは1つのアナログ出力しかサポートしていません。しかしこれにより構成及び関連するロジックを、モータとジェネレータの2つにきちんと分割することができます。

今回はあまり一般的ではない電圧や周波数を測定する必要があります。そこで、Trumeter APM-FREQ-ANO (815-8330) を使用して周波数をTrumeter APM-VOLT-ANO (815-8306) を使用して電圧をそれぞれ測定するように構成します。これらのメータはいずれも4-20mAの電流ループ出力を提供し、その後電流-電圧変換モジュールに供給されます。

次にPLCは単純な電圧-ハイサイド電流簡易変換器を使って界磁電流を制御します。これはTexas Instruments社の「Precision Designs」(SLAU502)から引用したもので、デュアルまたは2つの別々のオペアンプ(演算増幅器)、2つのMOSFETおよび数種類の受動素子が必要です。

Circuit diagram for a PLC to control the field currents through the use of a simple voltage to high-side current converter.

lococube mini-PLCを始めよう

BARTH社のlococube STG-820 PLCは、同じくBARTH社が提供しているVK-16シリアルプログラミング用ケーブルがあれば簡単に立ち上げることができます。KEIL/STM CubeIDEやArduino環境を使う場合は、VK-35ケーブルとST-LinkなどのSWD(Serial Wire Debug)対応プログラマを併せて使う事で開発が可能になります。同時にC/C++を使った下位レベルのプログラミングが可能になります。

先程説明したmiCon-Lはドラッグ&ドロップでプログラムを構築できる「視覚化開発環境」を提供するため、プログラムの組み立てが早く可能です。さらにPLCにアップロードすればプログラムの動作をリアルタイムに確認できるためデバッグが容易です。

まずmiCon-Lアプリケーションをダウンロードしてフォルダに解凍します。注意点としてはインストーラは自己解凍型のアーカイブなのでデフォルトの“C:\Windows\system32”以外の場所に解凍する必要があります。

フォルダに解凍したらPDFファイルの「Getting Started」ガイドがありその後、プログラミング環境本体出てきます。プログラミング環境はスタートボタンなどのある選択ウインドウが起動します。

表示されているサンプルプログラムではアナログ入力の範囲を限定しそれを0-5Vdcのアナログ出力にミラーリングするプログラムです。

screen shot of a new project for the STG-820

まず新しいプロジェクトを作成し、今回使用するPLCタイプであるSTG-820を選択しました。プロジェクトが作成されるとステータスインジケータをトグルするLED点滅表示器を含む規定プロジェクトが表示されます。

Getting started, the “Analog Input” IO block was selected

コントローラのDC0-30Vの入力範囲を表す浮動小数点値を出力する「アナログ入力(Analog Input)」IOブロックをドラッグして取り込みました。ここで注意して欲しいのが「アナログ入力」アイテムをプログラミングエリアにドラッグするのではなく、その上のブロック表示をドラッグするためユーザーインターフェースは少し特殊になっています。

入力範囲を0-5Vdcの出力範囲に対して制限したいので、「リミッター(limiter)」ブロックをダイアグラムにドラッグして、入力をアナログ入力ブロックの出力に接続します。この操作は、ブロックの出力ノードをクリックし次のブロックの入力をクリックするだけで、自動的に接続されます。リミッターを配置したら制限する最小値と最大値を設定します。これはブロックのドキュメントを見て、最小/最大ピンで右クリックしてパラメータを割り当てます。パラメータの割り当てについてはここに書かれているので、良く読んで割り当ててみてください。

Circuit construction showing the limiter block

入力の制限が完了できたので、アナログ出力ブロックを追加しリミッター出力をブロックに接続できます。これでアナログ入力の0-5Vdcをアナログ出力の0-5Vdcにミラーリングできるようになりました。入出力の接続に数値の視覚化を追加し、シミュレーションを実行した時にその変化を観察できるようにします。

マクロブックはmiCon-Lでも作成できるのでプログラムをよりすっきりモジュール化する事ができます。メータは4-20mAを出力するので0-10Vを出力する2つの電流-電圧コンバータを使います。さらにその出力を再び電圧と周波数に変換します。

Macro block with a F-GEN block to hold the equation to convert the frequency

この一連の操作を行うために、0-10Vを0-400Hzに変換するロジックと演算を含む「V-TO-F」というマクロブックを作りました。このブロックには入力範囲を非常に小さな“正の値”(0V入力でゼロ除算させないため)から10Vまでを制限するリミッターと、周波数に変換する等式を成り立たせるため「F-GEN」ブロックを配置します。

シミュレーションを開始するには「実行(Run)」メニューに進み「シミュレート(Simulate)」をクリックし、プログラムをコンパイルして仮想PLC上で実行します。すると、画面がシミュレーション環境に切り替わりその後すぐにLEDが点滅表示します。あとは、ファンクションブロック同士をつなぐ配線を右クリックしてアナログ値を手動で入力します。

Begin the simulation and manually input analogue values

シミュレーションでプログラムが動いたので次はPLCで試してみましょう。今回作成したセットアップではポテンショメータをPLCの電源レールに接続しワイパーを「IN1」(選択したアナログ入力)に接続します。0-5Vdc出力は電圧DCレンジに設定されたマルチメータに接続され、出力電圧を監視できるようにしています。

circuit under test showing PLC, potentiometer and PSU

プログラムのコンパイルとダウンロードは「実行(Run)」メニューから「ダウンロード(Download)」をクリックするとプログラムがダウンロードされ、プログラミングソフトが監視モードになります。

ポテンショメータを調整することで入力電圧と出力電圧のリアルタイムに監視画面で確認でき、入力に合わせて0-5Vdcの出力も変化します。

Simulation showing visualisation by adding Trend-Writer block

また、PLCプログラムに様々なグラフ表示オプションを追加することで入出力値をより簡単に視覚化することができます。これは最大4つの値を時間とともにプロットできる「トレンドライター(Trend-Writer)」ブロックをドラッグ&ドロップして行います。これでリアルタイムで電圧を変化させるプロットが確認できるようになりました。

Graphing option showing voltage

まとめ

今回はロータリーインバータ(回転変流器)の基本、電圧と周波数の出力を設定するために必要な制御について調査・分析してきました。また、BARTH社のlococube STG-820 mini-PLCについてその機能と導入のしやすさについても紹介しました。

このシリーズのPart 2ではロータリーインバータの制御系と筐体を組み立て、電源を投入してインバータの動作を確認し、 Part 3では組み立てを完了しロータリーインバータの動作確認を行います。

Engineer of mechanical and electronic things by day, and a designer of rather amusing, rather terrible electric "vehicles" by night.
DesignSpark Electrical Logolinkedin