回答:
トライアックがオフになったことをどのように知ることができますか?
トライアックがオンのとき、トライアックの両端の電圧はゼロに近い電圧にクランプされます。(トライアックのデータシートでは、ワーストケースのV_A1_A2_onが+-1.5 Vのようなものを示している場合があります)。
多くの回路は、トライアックの両端の電圧(正または負)が約+10 Vを超えているか、または約-10 Vを下回っていることを検出し、トライアックが確実にオフであることを示します。AN307の図4を参照してください。
ソリッドステートリレーが行わないライン電圧を検知するのではなく、すべてのゼロクロスソリッドステートリレーが行うように、トライアックの両端の電圧を検知することを検討しましたか?
トライアックのゲートを起動して任意のモーター速度(通常の速度の半分としましょう)を取得する必要があるのはいつですか?
いくつかの負荷の場合、速度はトライアックのオン時間にほぼ比例します。これらの負荷の場合、最大速度の半分に近い速度を得るには、トライアックを1/2時間オンにします(トライアックを1/2時間オフにします)。
多くの場合、速度の2乗に応じて負荷が増加します(たとえば、車両を空中に押し込むとき)。これらの負荷の場合、最大速度の半分に近い速度を得るには、トライアックを1/4の時間オン(トライアックを3/4の時間オフ)にします。
ほとんどの場合、物事を動かすためだけの最小オン時間(最大オフ時間)があります。それより少ないものと、いくらかの電力が入りますが、何も動きません。
Olin Lathropが言及しているように、出力速度とトライアックのオンタイムを数回実験的に測定することで十分な場合があります(おそらく、フルオンタイムの1 / 5、2 / 5、3 / 5、4 / 5、またはフルオフタイム)、どの設定が半分の速度に近いかを確認し、開ループを実行してもほぼ同じになることを期待します。
特定の速度を正確に維持することが重要である場合は、クローズドループを実行することができます。つまり、タコメーターの種類を追加して常に実際の速度を測定し、何かを追加してループを閉じ、測定された速度が低すぎる場合などの時間(オフ時間を減らします)
誘導負荷を制御するときに、いつトライアックのゲートを点火する必要がありますか?
製造元が提供するデータシートとアプリノート(この場合はSTアプリケーションノートAN307:「誘導負荷でのトライアックの使用」)で推奨されている方法で行うことを検討してください。
おそらく最も簡単なアプローチは
ACラインのゼロクロッシングがいつ発生するかを知る必要があります。他の人が言っていることとは異なり、トライアックをオンにしたときに電圧ゼロ交差を探しています。これは、トライアックがまだオンになっていないため電流がゼロであることを考えると明らかです。
下部回路で電圧ゼロ交差を測定しようとしているように見えますが、正常に機能するように実験を行う必要があるかもしれません。ゼロ交差のたびにLEDがオンにならず、ゼロ交差のたびにトランジスタがオフにならないように、電圧が十分に低いことを期待しています。したがって、ゼロ交差ごとに小さな正のグリッチが発生することを期待しています。プルアップが機能するのに十分なほどトランジスタがオフになるまでLEDをオフにしてから、位相遅延をほとんど起こさずにすべてを実行させるのは難しいことです。
私がこれをしなければならなかった1つのケースでは、私はプッシュプル構成で2つのオプトを使用しました。LEDは背中合わせに配線されていたので、ラインサイクルごとにそれぞれがオンになりました。出力は、一方がハイになり、もう一方がローになるように配線されました。結果の出力は、デューティサイクルが50%でエッジがゼロ交差に非常に近い、きれいな方形波でした。
いずれの場合でも、ゼロクロスあたりの信号が得られたら、トライアックをオンにする前に可変遅延を追加するだけです。遅延は、0からラインサイクルのほぼ半分まで可能です。遅延が長いほど、モーターへの全体的な平均電圧が低くなります。ライン周波数が50 Hzの場合、サイクル全体は20ミリ秒、半サイクルは10ミリ秒なので、可変遅延期間はおそらく0〜9ミリ秒程度に制限する必要があります。
モーターが遅延の関数として見る平均電圧を決定するために実験する必要があります。負荷がわかっている場合は、これを計算できます。負荷には予測不可能な誘導成分があるため、トライアックは実際には次の電圧ゼロ交差の後にいくらかオフになります。この遅延自体は、ターンオン遅延の関数として、およびモーターの動作の関数として変化します。ターンオン遅延が小さい場合、インダクタは半ラインサイクルのほとんどを充電するため、放電するのにしばらく時間がかかります。遅延が長い場合、インダクターは低電圧で短時間だけ充電されるため、放電してゼロ電流レベルに達してトライアックがオフになるまでの時間はごくわずかです。
見かけのモーター電圧が低い場合(ターンオン遅延が長い場合)、次の半サイクルの終わり近くにトライアックを再びオンにしようとする前にトライアックがオフになるため、ターンオフラグは問題になりません。モータードライブをターンアップして、ターンオン遅延を減少させると、次の半サイクルのターンオン信号の後に、インダクターのゼロ電流が発生します。これでトライアックが常時オンになります。つまり、モーターは全線間電圧を確認できます。ターンオン遅延を短くしても、モータードライブは増加しません。ただし、モーターはほぼ完全に制御されていますが、ラインサイクル全体に均等に分散されていないだけです。小さなターンオン遅延は、継続的にオンするのと同じです。
これは、トライアックがターンオン遅延から半ラインサイクルの終わり近くまで継続的に駆動されることを前提としています。これにより、電流が何をしているかに関係なく、各半ラインサイクルのオンフェーズ中にトライアックがオンになることが保証されます。これを行わず、代わりにターンオン遅延後に短いブリップでトライアックを駆動すると、2つの悪いことが起こります。まず、モーターが完全にオンになり、次の電源投入後に前の半サイクルからの現在のゼロ交差が発生すると、そのゼロ交差でトライアックがオフになります。第2に、機械的に整流されたモーターで発生する可能性があるように、電流に短いグリッチがある場合、トライアックはオフになる可能性があります。
電圧ゼロ交差ではなく、電流ゼロ交差を検出する必要があります。
これを行う最も簡単な方法は、AC負荷と直列にシャント抵抗を配置し、その抵抗の両端の電圧降下を測定することです。これにより、流れる電流を直接測定できます。多くの場合、可能な限り最小のシャント抵抗を使用する必要があるため、この電圧を増幅する必要があります。
そこから、この電圧を使用してコンパレータまたは同様のデバイスに給電し、uCのゼロクロッシング割り込みをトリガーします。
現在のクロスが近づき、ゼロを渡すと、コンパレーターが複数回発火するため、通常、これを処理するために何らかのウィンドウ処理機能を含める必要があります。
3つのオプションのいずれかを使用することをお勧めします。2つ(aおよびb)は、電圧ZCのみの知識を含みます。もう1つ(c)は、電圧と個別の負荷電流の両方の知識を含みます [モーターが「steerageway」に到達し、検出可能なACを伝導した後] ZC。
各オプションについて:「甘い」極性でトライアックゲートに高周波PWMドライブを使用します(象限IIIではなく、同相または負のゲートドライブが最も望ましい)。また、サイリスタゲートは必ずしも連続的な駆動を必要とせず、半波中に開始する(つまり、電流が流れる)まで頻繁に通知する必要があります。
各オプションは、速度に対してほぼ同じ電圧ZCが計算されていることを前提としています(誘導モーターの位相制御は非常に非効率的であり、妥当な負荷トルクでは速度低下はあまり利用できず、モーターの失速と過熱は最良の状況で一般的です)。
実験はもちろん最良の決定要因ですが、43.2kHz (編集:2倍の誤り)-> 21.6kHz pwmのような25%デューティでは、60Hzの位相の1度あたり4分の1度の長いパルスが発生し、これは電力になる可能性があります。 -セーバー、それでも非常に信頼できるモータードライバー。以下では、「電圧ZC」という用語は、特定の速度低下について、半波ごとに既知の位相角に置き換えることができます。
オプション(a)ゲートドライブPWMは、電圧ZCから、計算された(または過大評価された、または実験的に決定された)現在のZC位相角をちょうど超えるまでアクティブです。
オプション(b)ゲートドライブPWMは、電圧ZCから次の電圧ZC近くまでアクティブです-チャンスはありません。
オプション(c)ゲートドライブPWMは、電圧ZCから観測された電流ZCをちょうど過ぎるまでアクティブです。
個人的に私はオプション(a)を使用してフルスピードで大成功しています。位相制御により速度を落としてもほとんど何もしていません。オプション(b)を単に使用しない理由は、
速度を下げたい場合は、DCモーター(安価)またはVFD(トルク)を使用します。
対照的に、現在のレトロフィットプロジェクトでは、上記のオプション(a)を使用して速度制御を試み、成功した結果を報告します。