駆動ここでマイコンでLEDを直接光らせる例も試しておきましょう。ブレッドボード上の回路をいったんばらして、LEDを直接電源につなぐ形の組んでみます。この例ではLEDはマイコンの内部を通して電源に繋がっています。先ほどと同じようにPCからの入力に応じてLEDが点滅するはずですが、大分と暗くなっているはずです。それでは電流を測定してみましょう。13?28回路図LEDには約5mAの電流が流れています。先ほどの例と比べると、LED1灯を暗めに光らせているだけなのに、より多くの「マイコンからの出力電流」を消費しています。マイコンの許容負荷ぎりぎりですので、同じピンからはこれ以上外部回路を増設することも困難でしょう。トランジスタを利用することのメリットが実感できたのではないかと思います。ここではLEDのアノード側をGPIOに接続していますが(ソース接続)、電流を消費する用途ではカソード側をGPIOに接続することが多いです(シンク接続)。詳しくは本編を参照してください。トランジスタやFETの電圧降下13.4.2.1でLEDの電流制限抵抗の求め方を説明しました。電源電圧からLEDの順電圧を差し引いてからオームの法則に従って抵抗値を求めるという方法です。トランジスタやマイコンのGPIOを使った場合にも、トランジスタやマイコンを単純なスイッチと見なして計算すれば、だいたいは想定に近い電流量が得られます。正確に計算をする場合には、トランジスタや、マイコン内部のスイッチ素子(FET)による電圧降下を考慮する必要があります。トランジスタやFETはスイッチングに使う部品ですから、内部抵抗が0であるのが理想的です。実際には、電流を流すときには抵抗分が発生し、電圧が降下します。トランジスタであれば、データシートに「コレクタ・エミッタ間飽和電圧」として、降下する電圧が掲載されています。LEDの電流制限抵抗を求める場合には、電源電圧から、LEDの順電圧と、トランジスタのコレクタ・エミッタ間飽和電圧を差し引くことにより、抵抗にかかる電圧が求められます。そこで、流したい電流値を定めて、抵抗値を求めます。FETであれば「ゲート・ソース間オン抵抗」としてゲート・ソース間に発生する抵抗値が記載されています。LEDの電流制限抵抗を求める場合には、抵抗が2本直列になると考えます。スイッチング素子を使わない場合と同じ方法で必要な抵抗値全体を求め、ここからFETのオン抵抗を差し引きます。マイコンのGPIOはFETで構成されていますが、データシート上は、電圧降下分は、オン抵抗ではなく出力電圧として規定されていることが多いです。流れる電流量に応じて、出力できる電圧が下がることが多いので注意してください。コラム13?8デジタルトランジスタ本項ではトランジスタをスイッチとして用いる方法を紹介していますが、スイッチとして用いる用法に特化したトランジスタとして、「デジタルトランジスタ」というものが販売されています。筆者は初めてこの名前を聞いたときに何か新しい種類の半導体が開発されたのかと思ったのですが、そういう意味ではありません。通常の小信号用トランジスタのパッケージの中に、ベース抵抗とベース・エミッタ間抵抗(バイアス抵抗)を内蔵して、外付け部品なしにそのままデジタル回路に接続できるようにしたものです。工業用向けの製品の感がありましたが、最近は店頭でTO-92パッケージ(2SC1815と同じ外観ということです)のものが販売されるようになりました。比較的入手が用意なのは東芝のRN1001?RN1006/RN2001?2006だと思います。RN100xはNPN、RN200xはPNPです。RN1004***P3041043***デジタルトランジスタを利用すると、抵抗をつなぐ手間が省けますから、実装面積を気にする必要のないホビー用途でも便利です。狭いブレッドボードを使用しているときには便利でしょう。デジタルトランジスタは、多様な回路に対応できるよう、バイアス抵抗の値が異なる複数種類の製品が用意されており、どれを適用してよいのか迷います。本当はまずは計算で最適値を求めるべきだと思うのですが、筆者は余り得意ではありませんので、とりあえず上記のRNシリーズの製品をすべてSTM32に接続し、実験してみました。実験内容としては、そもそもスイッチングができるかということと、オン時のベース電流、負荷にかかった電圧を計測しています。ベース電流は少ないほどマイコンの負担が少なくなり優秀と言えます。負荷にかかった電圧は、これを電源電圧から引くと、出力飽和電圧が求められますので、これが小さいほど損失が少ないと言えます。コレクタ電流も計測すればよかったのですが、これはデータシートを信じることにします。実験回路は以下の通りです。電源電圧は実測で3.309Vでした。負荷としてLEDを接続しています。並列に抵抗を入れているのは、少しでも電流を多くしてトランジスタに対する負荷を大きくし、厳しい条件で実験するためです。この状態でのコレクタ電流は15mAでした。この負荷だとRN1003/RN1004/RN2003/RN2004は負荷のスイッチングができませんでした(データシートから読み取れるコレクタ電流を超えています)ので、200Ωの抵抗とLEDだけにしています。この状態でのコレクタ電流は4mAでした。実験結果は以下の通りです。最大コレクタ電流はデータシートの目測値です。コレクタ電流RN10010.49mA3.20V25mARN10020.24mA3.09V17mARN10030.11mA3.22V14mARN10040.05mA3.17V5mARN10051.08mA3.24V44mARN10060.51mA3.21V34mARN20010.53mA3.19V19mARN20020.24mA3.13V14mARN20030.12mA3.25V9mARN20040.05mA3.23V6mARN20051.16mA3.23V38mARN20060.53mA3.21V27mA電源電圧や使用法にもよりますので一概には言えませんが、LEDのスイッチングであればRN1006/RN2006、使用電流が大きくなる場合はRN1005/RN1005、マイコン側の出力電流容量がシビアな場合にはRN1003/RN2004あたりを使うのがよいのではないでしょうか。電子部品と工具このページはITと知的財産の法律情報「法務ネット」の管理人が制作・運営しています。