SSRでACをPWM制御する
概要
家庭用電源などのACを、SSRでPWM制御します。gnuplotのリハビリも兼ねて。
SSRとは
Solid State Relayの略です。半導体を使ったリレーのことです。機械接点がないので壊れにくいのですが、リレーとは異なる動きもするので注意が必要です。
OFFのタイミングは制御できない
SSRは、トライアックという半導体部品で回路のオンオフを実現しています。ゲートに小さな電流を流すことで、T1,T2間を導通させることができます。
しかし、ゲートへ電流を流すのをやめたとしても、トランジスタのようにオフにはできません。一度T1,T2間が導通すると、電流が流れ続ける限りONのままです。
交流の場合は、電流がゼロになるタイミングがあるので、そのタイミングでOFFになります。つまり、ごく短いパルスをゲートに加えると、50Hz地域なら最大10msだけONになります。
原理上、直流は制御できません(ONにはできるけど…)直流の場合は、リレーやFET、IGBTを使いましょう。
デューティー比=エネルギー比ではない
下図は、デューティー比10%のときのSSR動作イメージです。素直に実装しようとすると、こんなイメージを持つかと思います。
これでは、負荷に10%のエネルギーを与えられていません。
DCでは電圧が一定のため、デューティー比とエネルギー比が一致しますが、ACは電圧が変化するためデューティー比とエネルギー比が一致しません。もちろん計算で求めることができますが、三角関数使うので、少し面倒です。
タイミングがシビア
SSRを使ったPWMでは、OFFのタイミングが負荷側電源の周期に依存します。正確に制御するためには、制御入力のパルス周期と位相を負荷側電源の周期×2(または×1)に合わせてあげる必要があります。
ダメな例1。電源周波数50Hz、PWMのパルス周期11ms、周期がずれている場合のイメージです。
少しづつずれていって、長期的にみると出力50%になってしまいます。
ダメな例2と3。電源周波数が50Hz、PWMのパルス周期10msと周期は合っているが、位相がずれている場合のイメージです。
どちらも10%ではないですね。マイコンから制御しようと思うのであれば、AC100Vと周期・位相を合わせるのは大変です。絶縁も大変だし、部品が増えるし…。
ではどうするか
パルス周期を電源周期に合わせるのではなく、長くしましょう。パルス周期を長いほど、出力の精度が上がります。
下図は、電源周波数が50Hz、パルス周期100s、デューティー比40%です。
このようにすれば、位相を気にせず可変出力が得られます。