この LEDDIMMER は、定電圧に対して可変電圧を取得するために開発されたArduino UnoベースのPWM(パルス幅変調)回路です。PWMの方法を以下に説明します。1ワットのLED調光回路の構築を開始する前に、まず次の図に示すような単純な回路を検討してください。
ここで、図のスイッチが一定期間にわたって継続的に閉じられると、その間、電球は継続的にオンになります。スイッチが8msの間閉じられ、10msのサイクルで2msの間開かれた場合、電球は8msの時間内にのみオンになります。これで、10msの期間にわたる平均端末=ターンオン時間/(ターンオン時間+ターンオフ時間)、これはデューティサイクル と呼ばれ 、80%(8 /(8 + 2))であるため、平均出力電圧はバッテリー電圧の80%になります。
2番目のケースでは、スイッチは5msの間閉じられ、10msの期間にわたって5msの間開かれるため、出力の平均端子電圧はバッテリー電圧の50%になります。バッテリー電圧が5Vで、デューティサイクルが50%である場合、平均端子電圧は2.5Vになります。
3番目のケースでは、デューティサイクルは20%で、平均端子電圧はバッテリ電圧の20%です。
では、このテクニックはこのLED調光器でどのように使用されてい ますか? これについては、このチュートリアルの次のセクションで説明します。
図に示すように、Arduino UNOには6PWMチャネルがあるため、これらの6つのピンのいずれかでPWM(可変電圧)を取得できます。この章では、PIN3をPWM出力として使用します。
必要なコンポーネント
ハードウェア: ARDUINO UNO、電源(5v)、100uFコンデンサ、LED、ボタン(2個)、10KΩ抵抗(2個)。
ソフトウェア: arduino IDE
回路図と説明
回路は、回路図に従ってブレッドボードに接続されています。ただし、LED端子の接続には注意が必要です。この場合、ボタンはバウンス効果を示しますが、大きなエラーは発生しないため、今回は心配する必要はありません。
UNOからのPWMは非常に簡単です。PWM信号用のATMEGAコントローラーのセットアップは簡単ではありませんが、正確な信号のために多くのレジスターと設定を定義する必要がありますが、ARDUINOではそれらすべてを処理する必要はありません。
デフォルトでは、すべてのヘッダーファイルとレジスタはARDUINO IDEによって事前定義されています。これらを呼び出すだけで、適切なピンにPWM出力が得られます。
ここで、適切なピンでPWM出力を取得するには、2つの作業を行う必要があります。
|
まず、6つのピンからPWM出力ピンを選択する必要があります。その後、そのピンを出力として設定する必要があります。
次に、関数「analogWrite(pin、value)」を呼び出して、UNOのPWM機能を有効にする必要があります。ここで、「ピン」は、PWM出力が必要なピン番号を表し、「3」としています。したがって、PIN3ではPWM出力を取得しています。値は、0(常にオフ)から255(常にオン)の間のターンオンデューティサイクルです。ボタンを押すことで、この数値をインクリメントおよびデクリメントします。
Arduino UnoでのPWMピンの使用については、以下のCコードで説明されています。