目次PIC回路集飾りランプ


飾りランプ制御回路 回路説明

サイリスタとは

最初にサイリスタの動作原理を説明します。サイリスタはダイオードの一種です。ダイオードと違うところはゲートと呼ばれるもう一つの端子を持っていることです。通常、ダイオードは順方向に電流が流れ、逆方向には電流は流れません。順方向というのはアノード側にプラス電圧を加え、カソード側にマイナスを加えることで、ダイオードに電流が流れます。


サイリスタの場合、アノードにプラス、カソードにマイナスをかけただけでは電流は流れません。ゲートにトリガ電流を流すと電流が流れ始めます。一度電流が流れ始めるとゲートのトリガ電流が無くなっても電流は流れ続けます。この電流はサイリスタに加わっている電圧を無くすまで流れ続けます。電流が止まると再びゲート機能が復活し、アノードとカソード間に電圧が加わっても、ゲートにトリガ電流が流れるまでサイリスタ自体へは電流が流れません。
SCR は Silicon Controlled Rectifier の略です。


半導体にはP型半導体とN型半導体の2種類があります。P型半導体は電子が少ない半導体、N型半導体は電子が多い半導体です。P型半導体では電子が無い部分は電子の穴というとこでホールと呼ばれプラスの電荷を持ちます。このホールは実際には存在せず、マイナスの電荷を持つ電子の穴があたかもプラスの電荷を持つ物質のように振る舞うため、考え出されたものです。
この2種類の半導体を組み合わせるといろいろな特徴を持った半導体が出来ます。
ダイオードはPとNを2層構造にしたものです。このようにすると、電流を片方向にしか流さない性質を持ちます。
トランジスタはPとNを3層構造にしたものです。PNPまたはNPNという構造を持っています。このようにすると、電流を増幅する性質を持ちます。
サイリスタの場合はPNPNという4層の構造を持っています。このようにすると、基本的にはダイオードと同じ性質を持ちますが、違いは電流が流れ始めるタイミングをゲートで制御できるようになります。




サイリスタの動作を理解するのに、トランジスタに置き換えてみる方法がわかりやすいと思います。これは1つのサイリスタの中央の2層を共有する2つのトランジスタ(TR1、TR2)という見方です。
ゲートに電流が流れない場合にはTR1はOFF状態になっていてTR1のコレクタには電流は流れません。そのため、TR2のベースにも電流は流れず、TR2もOFFの状態になっています。この状態ではアノードに電圧が加わってもサイリスタの電流は流れません。
次にゲート、すなわちTR1のベースに電流@が流れるとTR1はON状態になります。これによりTR1のコレクタを通してTR2のベース電流Aが流れます。TR2にベース電流が流れるのでTR2はON状態になり、TR2のコレクタを通してTR1のベースに電流Bが流れます。TR2からTR1のベースに電流が流れるので、ゲートの電流が無くなってもサイリスタには電流が流れ続けます。これを自己保持状態と言います。



双方向サイリスタ(トライアック)とは


双方向サイリスタとはサイリスタを逆方向に並列接続したものです。このようにすると交流電圧の流れ始めるタイミングを制御することが可能になります。実際には独立したサイリスタを2つ組み合わせるのではなく、左の図の右側のような構造でP型半導体とN型半導体が組み合わされています。
今回作成する制御装置では交流の電圧を制御するので、双方向サイリスタを使用しています。
双方向サイリスタは別名トライアックと言われます。



双方向サイリスタではゲートにパルス信号が加えられた時点から電流が流れ始めます。すなわち、ゲートパルスの位置を変えることにより流れる電流の量を変えることができます。

(参考)
Fundamental Characteristics of Thyristors
Thyristors & Triacs - Ten Golden Rules for Success In Your Application.

双方向サイリスタを使用した回路の動作は以下のようになります。以下では双方向サイリスタをトライアックとします。
トライアックに電圧がかかっても、ゲート(G)に電流が流れないと負荷(RL)に電流は流れません。
スイッチ(SW)が閉じてゲートに電流が流れるとMT1とMT2が導通状態になり、負荷に電流が流れます。
MT1とMT2が導通状態になると、R2よりトライアックの導通抵抗のほうが小さいので、ゲートにはほとんど電流は流れません。
スイッチが開いてもMT1とMT2の導通状態は継続し、負荷に電流が流れ続けます。
電源の極性が変わるとき、MT1とMT2を流れる電流は止まります。これによりトライアックは初期状態に戻ります。
逆方向の電圧がかかった場合も上記と同じような動作をします。
トライアックで負荷の電流量を調整するためには交流電圧がかかり初めてからゲートに電流を流すスイッチを閉じるタイミングを変えればよいことが分かります。
スイッチはミリ秒単位で動作する必要があるので、メカニカルなスイッチは使えません。電子部品が必要です。


トライアック駆動回路

今回の回路ではスイッチの部分にフォト・トライアックという部品を使います。
フォト・トライアックを使う理由は回路の絶縁、交流回路と直流回路の分離、高速動作をさせるためです。メインのトライアックで扱う電圧は交流の100Vとか200Vのように比較的高い電圧です。しかし、PIC回路の電圧は直流の5Vなので、両者の回路を分離する必要があります。今回使用したTLP560というフォト・トライアックの場合、絶縁耐圧は2500Vです。LEDを直流5Vで動作するPICで制御すれば、AC100Vなどの回路の電流をトライアックで制御することが可能です。
フォト・トライアックはトライアックのゲートの部分にLEDが組み込まれている部品です。フォト・トランジスタと同じようにトランジスタのベースの部分にLEDで光を当てるとP型半導体とN型半導体の電子とホールの動きが活性化され、ベースに電流を流したのと同じ効果が生じます。ですから、LEDを点灯するとフォト・トライアックを導通状態にすることができます。
フォト・トライアックが導通状態になりメインのトライアックにゲート電流が流れるとメインのトライアックが導通状態になります。すると、フォト・トライアックのトライアック部にかかる電圧がほぼ0Vになるので導通状態が解除されます。ですから、メインのトライアックのゲートにはトライアックが導通するまでの短い時間しか電流は流れません。LEDの点灯時間がメインのトライアックが導通するまでの時間より長くてもフォト・トライアックには電圧がほとんどかかっていないので問題はありません。
以上の動作によりLEDの点灯制御でメインのトライアックのゲートのトリガ電流を制御することができます。
トライアックと並列に接続されているコンデンサ(C)と抵抗器(R)はトライアックが導通状態になった際に発生する急激な電流変化により負荷に高い電圧がかかるのを防ぐためです。負荷が抵抗器の場合にはあまり問題になりませんが、コイルなどが使われていると高い異常電圧が発生することがあります。
今回の回路ではRA0からRA4までをトライアック駆動用のポートとして使用しています。RA4は他のポートと違って外部駆動回路を持っていません。オープンドレインといってFETのON/OFF制御だけが行われます。ですから、フォト・トライアックのLEDを点灯させるのには外部にプルアップ抵抗器を入れる必要があります。
今回使用したトライアックは東芝製のSM12J45というタイプで最大定格 AC600V、12A のものです。AC240Vでも使用可能です。
フォト・トライアックにはゼロクロスタイプがあります。これはノイズを抑えるために交流の0VからONになるタイプです。今回は交流波形の途中からONにするのでこのタイプは使えません。


同期回路

トライアックを制御するためには交流電圧の0Vを起点にして必要な時間にゲートパルスを発生させる必要があります。そのためには交流電圧の0Vを検出する必要があります。
この回路により、交流電圧の極性が変わる時点でPICのRB0端子に5Vの電圧がパルス状に入力されます。
フォト・カプラを使う理由はフォト・トライアックと同様に回路の絶縁、交流/直流回路の分離、高速動作のためです。
フォト・カプラとしては交・直両用のフォト・カプラを使用しています。LEDを交流電圧で駆動し、その光でフォト・トランジスタのON/OFFを制御します。LEDは極性を逆にして並列に接続されています。そのため、交流電圧の極性が変わっても、どちらかのLEDが点灯します。LEDが点灯しているときにはフォト・トランジスタはON状態になり、PICのRB0端子の電圧はほぼ0Vになります。
交流電圧の極性が変わる部分では電圧が下がるので、どちらのLEDも点灯しない時間があります。このときにはフォト・カプラへの光は無くなるため、フォト・トランジスタはOFF状態になり、PICのRB0端子の電圧は5Vになります。PIC16FシリーズではRB0に入力されるパルスにより割り込み動作をさせる機能が備えられています。左の図ではRB0に外付けのプルアップ抵抗器を描いていますが、実際の回路ではPICに内蔵されているプルアップ機能を使用しています。
フォト・カプラのLED部に流せる電流は最大でも数十mAくらいです。ですから、LEDを点灯するための交流電圧に高電圧を使用することはできません。今回の場合はPIC用の電源を作るために使用しているトランスの6V電圧を使用しています。さらに、抵抗器を使って電流を抑えています。RB0に加わるパルスの幅はLEDの消灯時間に関係します。ただ、LEDが消灯する電流値が分からないので詳しくは分かりませんが、数百マイクロ秒と思われます。このくらいのパルス時間でもPICで検出することができます。

おおよそのパルス幅を計算すると以下のようになります。あくまでも、計算上です。
交流周波数=50Hz、LED最大電流=20mA、フォト・トランジスタがOFFになるLED電流=0.4mA と仮定します。
交流の周期時間は1/50=20ミリ秒。半サイクルの時間は10ミリ秒になります。最大電流(20mA)とLED電流(0.4mA)の比は0.02で、LED電流が0.4mAになるのは時間が1.2度進んだ時点です。sin(1.2deg) = 0.021。180度で10ミリ秒ですから、1.2度では0.067ミリ秒になります。プラス側とマイナス側があるので、パルス幅は約134マイクロ秒になります。上記の計算で使用している「フォト・トランジスタがOFFになるLED電流値」は正確には分かりません。0.4mAより大きな値でフォト・トランジスタがOFFになるのであれば、パルス幅はもっと広くなります。負荷によっては狭くもなります。
実際の値を計測してみました。今回の回路では約250マイクロ秒でした。
LEDの電流制御用抵抗器の値は次のように決めました。AC6Vrmsのピーク電圧は 6V x 1.4 = 8.4V。LEDの点灯時電圧を1.5Vとすると、20mAの電流を流すための抵抗値は ( 8.4V - 1.5V )/0.02A = 345Ω。抵抗器としては330Ωを使いました。


パターン選択回路


今回の回路では5つのAC回路を独立したパターンで点滅制御できるようにしています。各回路の点滅パターンをソフトウェアでそれぞれ記述してもよいのですが、今回はあらかじめ、いくつかのパターンをソフトウェアで作り、各回路の点滅パターンをBCDスイッチで選択できるようにしました。
PICの端子の数の制限でBCDスイッチの状態はデコーダ(74HC138)を使い5つのBCDスイッチを順番にスキャンし、スイッチの状態を取り込むようにしています。デコーダではPICからの信号により出力(Y0-Y4)のどれか一つだけが、Lレベル(0V)になります。それによりTR1からTR5のどれか一つだけがON状態になり、読み出すスイッチが指定されます。RBポートでは内部のプルアップ機能を使用しているのでBCDスイッチには回部のプルアップは必要ありません。RB5-6は出力ポートとして使用していますが、このポートにはプルアップ機能は影響しません。
BCDスイッチにダイオードを接続しているのは電流の回り込み防止です。BCDスイッチではスイッチの設定によって出力端子が内部で接続されます。例えば、BCDスイッチ1の設定を5とすると、出力の1と4がコモン(C)に接続されます。ダイオードが無いと、この接続が全体に影響し、スイッチでの設定が正しく読みとれません。



BCDスイッチは制御回路に搭載しましたが、パターンを変更する都度、ケースを開ける必要があります。そこで、ケースにサムホイールスイッチを付けてケースを開けなくてもパターンを変えられるようにしました。
BCDスイッチは設定を0にすると接点はどこにも接続されません。ですから、BCDスイッチを並列に接続する場合には、片方のBCDスイッチを0に設定する必要があります。


クロック発振回路



今回の回路ではトライアック駆動には1ミリ秒タイマー、明るさ制御には100ミリ秒オーダーの処理を実行します。この時間はPICにとっては比較的遅い時間です。100ミリ秒オーダーの時間を作るためにクロック発振は遅い周波数にしています。
PIC16F628では発振器を内蔵しています。回路を設計した後に分かりました。高精度の発振周波数が必要でない場合には外部の発振子は使う必要はありません。



電源回路


電源としてはPICを含めたICを駆動するために+5Vの電源が必要です。また、トライアックの制御の時間同期させるための交流電圧が必要です。
交流の電圧変換にはセンター・タップ付きの小型トランスを使いました。ダイオード・ブリッジを使用せずにセンター・タップ付きのトランスを使用したのは交流電圧の波形を観測するため、接地された交流電圧が欲しかったためです。
波形観測が必要無ければ、ダイオード・ブリッジで全波整流をしてもかまいません。その場合、センター・タップの無いトランスが使えます。