LED照明の台頭は成層圏であり、その理由は簡単にわかります。それらは製造が安価で、他の照明オプションよりも消費電力が大幅に少なく、ほとんどの場合熱くならないため、さまざまな用途に安全です。
最も一般的なLED製品の1つはLEDストリップです。この記事では、Arduinoで最も一般的な2つのタイプを設定する方法について説明します。これらのプロジェクトは非常にシンプルで、たとえあなたが Arduinoの初心者 またはDIYエレクトロニクス、あなたはこれを行うことができるようになります。
また、ArduinoIDEを使用してそれらを制御します。このプロジェクトではArduinoUnoを使用していますが、互換性のあるほとんどすべてのボード(NodeMCUなど)を使用できます。
あなたのストリップを選択してください
LEDストリップを購入する際には、考慮すべきことがいくつかあります。 1つ目は機能です。主にアンビエント照明にストリップを使用することを計画している場合は、単純な 12v RGB LED ストリップ( SMD5050 )が正しい選択です。
これらのストリップの多くには、それらを制御するための赤外線リモコンが付属していますが、このプロジェクトでは、代わりにArduinoを使用します。少し時間をかけて買い物をしてください。これを書いている時点では、これらのストリップをわずかな費用で入手することができました。 1メートルあたり1ドル 。
画像クレジット:Shutterstock経由のphanu suwannarat
広告なしで無料ゲームをダウンロードする
もう少しハイテクなものが必要な場合は、 WS2811 / 12 / 12B 。これらのストリップ(と呼ばれることもあります ネオピクセル )チップセットが統合されているため、個別に対応できます。これは、周囲の照明以上の能力があることを意味します。
それらを使用して、安価なLEDピクセルディスプレイを最初から作成できます。あなたもあなた自身の個人的な屋内嵐雲ランプを作るためにそれらを使うことができます。
これらのストリップは、それらに電力を供給するために5vしか必要としません。 Arduinoボードから直接少量に電力を供給することは可能ですが、揚げたArduinoの臭いから身を守るために、通常は別の5V電源を使用することをお勧めします。個別にプログラム可能なLEDをお探しの場合は、これらが最適です。執筆時点では、それらは約のために利用可能です 1メートルあたり4ドル 。
考慮すべきもう1つのことは、これらのストリップが使用される可能性が高い場所です。これらのタイプのストリップは両方とも、さまざまな長さ、LED密度(1メートルあたりのLEDの数)、およびさまざまな耐候性の程度で提供されます。
LEDストリップを見るときは、リストの番号に注意してください。通常、最初の数字は1メートルあたりのLEDの数であり、文字は IP 数字が続くのはその耐候性です。たとえば、リストに 30 IP67 、これは 30 メートルあたりのLED。 NS 6 ほこりから完全に密閉されていることを示し、 7 一時的な水没から保護されていることを意味します。 (詳細については 耐候性とIP定格 。)選択したLEDストリップができたら、それをArduinoとリンクします。 SMD5050から始めましょう。
接続する
12v LEDストリップをArduinoに接続するには、いくつかのコンポーネントが必要です。
- 12v RGB LEDストリップ( SMD5050 )。
- 1 x Arduino Uno(互換性のあるボードならどれでもかまいません)
- 3 x 10k オーム抵抗器
- 3 x 論理レベル NチャネルMOSFET
- 1xブレッドボード
- フックアップワイヤー
- 12v電源
回路をセットアップする前に、について話しましょう MOSFET 。
マイクロコントローラよりも高い電圧の何かを制御しているときはいつでも、ボードが揚げられるのを防ぐために間に何かが必要です。これを行う簡単な方法の1つは、MOSFETを使用することです。パルス幅変調を送信することにより( PWM )への信号 ゲート 脚の間で通過する電力量を制御することが可能です ドレイン と ソース 足。 LEDストリップの各色をMOSFETに通すことにより、LEDストリップの個々の色の明るさを制御できます。
マイクロコントローラを使用する場合、物事が希望どおりに機能することを保証するために、ロジックレベルのコンポーネントを使用することが重要です。 MOSFETが 論理レベル ではなく 標準 。
次のように回路を設定します。
- Arduinoピンを接続します 9 、 6 、 と 5 に ゲート 3つのMOSFETの脚を接続し、 10k 接地レールにそれぞれに沿った抵抗。
- 接続します ソース グラウンドレールへの脚。
- 接続します ドレイン 足へ 緑 、 ネット 、 と 青 LEDストリップのコネクタ。
- 電源レールをに接続します + 12v LEDストリップのコネクタ(この画像では、LEDストリップのコネクタの色と一致するように電源線が黒であることに注意してください)。
- Arduinoのアースをアースレールに接続します。
- あなたを接続します 12v 電源レールへの電源。
ほとんどのLEDストリップには、接続が簡単なDupont [Broken URLRemoved]コネクタがあります。そうでない場合は、LEDストリップにワイヤーをはんだ付けする必要があるかもしれません。はんだ付けにかなり慣れていない場合でも慌てる必要はありません。簡単な作業です。必要に応じて、はんだ付けを開始するためのガイドが用意されています。
このプロジェクトでは、ArduinoボードにUSBで電力を供給します。 VINピンを使用してボードに電力を供給することもできますが、これを行う前に、ボードの電力制限を確認してください。
回路が完成すると、次のようになります。
すべてを接続したので、それを制御するための簡単なArduinoスケッチを作成します。
フェードアップ
ArduinoボードをUSB経由でコンピューターに接続し、ArduinoIDEを開きます。でボードに正しいボードとポート番号が選択されていることを確認してください ツール>ボード と ツール>ポート メニュー。新しいスケッチを開き、適切な名前で保存します。
このスケッチでは、ライトを一度に1色ずつフェードアウトし、数秒間オンのままにしてから、再びオフになるまでフェードアウトします。ここをたどって自分でスケッチを作成するか、単にダウンロードすることができます 完全なコード GitHubから。
どちらを定義することから始めます ピン MOSFETの制御に使用されます。
#define RED_LED 6
#define BLUE_LED 5
#define GREEN_LED 9
次に、いくつかの変数が必要です。全体を作成する 輝度 変数、および個々の色の明るさの変数。 LEDをオフにするためにメインの輝度変数のみを使用するので、ここでは最大輝度値の255に設定します。
また、フェードが発生する速度を制御する変数を作成する必要があります。
int brightness = 255;
int gBright = 0;
int rBright = 0;
int bBright = 0;
int fadeSpeed = 10;
あなたの中で 設定 関数Arduinoピンを出力に設定します。また、5秒の遅延を挟んでいくつかの関数を呼び出します。これらの関数はまだ存在していませんが、心配しないでください。後で説明します。
void setup() {
pinMode(GREEN_LED, OUTPUT);
pinMode(RED_LED, OUTPUT);
pinMode(BLUE_LED, OUTPUT);
TurnOn();
delay(5000);
TurnOff();
}
次に、を作成します オンにする () 方法:
void TurnOn() {
for (int i = 0; i <256; i++) {
analogWrite(RED_LED, rBright);
rBright +=1;
delay(fadeSpeed);
}
for (int i = 0; i <256; i++) {
analogWrite(BLUE_LED, bBright);
bBright += 1;
delay(fadeSpeed);
}
for (int i = 0; i <256; i++) {
analogWrite(GREEN_LED, gBright);
gBright +=1;
delay(fadeSpeed);
}
}
これらの3つ にとって ループは、指定された時間にわたって各色を最大の明るさにします。 fadeSpeed 価値。
最後に、を作成する必要があります 消す() 方法:
void TurnOff() {
for (int i = 0; i <256; i++) {
analogWrite(GREEN_LED, brightness);
analogWrite(RED_LED, brightness);
analogWrite(BLUE_LED, brightness);
brightness -= 1;
delay(fadeSpeed);
}
}
void loop() {
}
この方法は、 輝度 3つのカラーピンすべてに可変であり、一定期間にわたってそれらをゼロに減らします。コンパイルエラーを回避するために、ここでも空のループメソッドが必要です。
このスケッチが完成したら、保存します。スケッチを確認し、Arduinoボードにアップロードします。エラーが発生した場合は、コードをもう一度チェックして、厄介なタイプミスやセミコロンの欠落がないか確認してください。
これで、LEDストリップが各色を個別にランプアップし、白色を5秒間保持してから、均一にフェードアウトしてゼロになるはずです。
問題が発生した場合は、配線とコードを再確認してください。
このプロジェクトは簡単な開始方法ですが、このプロジェクトで取り上げられているアイデアを拡張して、非常に効果的な照明を作成することができます。さらにいくつかのコンポーネントを使用して、独自の日の出アラームを作成できます。 Arduinoにスターターキットが付属している場合は、部屋に入るときに任意のボタンまたはセンサーを使用してLEDをトリガーできます。例:
専用のビデオRAMウィンドウを増やす10
これで、 SMD5050s 、に移りましょう WS2812B ストリップ。
明るいアイデア
これらのストリップは、実行するために必要なコンポーネントが少なくて済み、使用できるコンポーネントの正確な値についてはある程度の余裕があります。この回路のコンデンサは、5vLEDが安定した電源を確実に得るようにします。抵抗は、Arduinoから受信したデータ信号に干渉がないことを保証します。
必要になるだろう:
- WS2811 / 12 / 12B 5v LEDストリップ(3つのモデルすべてにチップが統合されており、ほぼ同じように機能します)
- 1 x Arduino Uno(または同様の互換性のあるボード)
- 1 x 220-440オーム 抵抗器(これら2つの値の間であれば問題ありません)
- 1 x 100〜1000マイクロファラッド コンデンサ(これら2つの値の間であれば問題ありません)
- ブレッドボードとフックアップワイヤー
- 5V電源
図に示すように回路を設定します。
コンデンサは正しい方向でなければならないことに注意してください。コンデンサ本体のマイナス(-)記号を探すことで、どちら側がアースレールに接続されているかがわかります。
今回は、5V電源を使用してArduinoに電力を供給しています。これにより、完了したらプロジェクトがスタンドアロンになりますが、ここで注意すべき重要なことがあります。
まず、ボードを電源に接続する前に、ボードが5Vの電力を取り込むことができることを確認してください。ほとんどすべての開発ボードはUSBポートを介して5vで動作しますが、一部の電源入力ピンは電圧レギュレーターをスキップしてトーストに変えることがあります。
また、複数の個別の電源がArduinoに接続されていないことを確認することをお勧めします。外部電源を使用しているときは常にUSBケーブルを外してください。
プラグを差し込むと、次のようになります。
LEDストリップが配線されたので、コードに移りましょう。
眠りにつくのに良い映画
ダンスライト
ボードを安全にプログラムするには、 ワイン 電力線からの線。後で再接続します。
Arduinoをコンピューターに接続し、ArduinoIDEを開きます。で正しいボードとポート番号が選択されていることを確認してください ツール>ボード と ツール>ポート メニュー。
を使用します FastLED セットアップをテストするためのライブラリ。をクリックしてライブラリを追加できます スケッチ>ライブラリを含める>ライブラリを管理する FastLEDを検索します。 [インストール]をクリックすると、ライブラリがIDEに追加されます。
下 ファイル>例> FastLED を選択 DemoReel100 スケッチ。このスケッチは、 WS2812 LEDはストリップし、セットアップが非常に簡単です。
変更する必要があるのは DATA_PIN 一致するように変数 ピン13 、 そしてその NUM_LEDS 使用しているストリップにあるLEDの数を定義する変数。この場合、私は長いストリップから切り取った10個のLEDの小さな線だけを使用しています。より大きなライトショーのためにもっと使ってください!
それでおしまい!スケッチをボードにアップロードし、USBケーブルを外して、5V電源をオンにします。最後に、ArduinoのVINを電力線に再接続して、ショーを見てください!
何も起こらない場合は、配線を確認し、デモスケッチで正しいArduinoピンを指定したことを確認してください。
限りない可能性
デモスケッチは、WS2812ストリップで達成できる効果の多くの可能な組み合わせのいくつかを示しています。通常のLEDストリップからのステップアップであるだけでなく、それらも実用化することができます。良い次のプロジェクトは 独自のアンビライトを構築する あなたのメディアセンターのために。
これらのストリップは間違いなくSMD5050よりも機能的ですが、まだ標準の12vLEDストリップを軽視しないでください。価格の面で無敵であり、膨大な数があります LEDライトストリップのアプリケーション 。
LEDストリップの操作方法を学ぶことは、Arduinoの基本的なプログラミングに慣れるための良い方法ですが、学ぶための最良の方法は、いじくり回すことです。上記のコードを変更して、何ができるかを確認してください。これらすべてがあなたにとって少し多すぎる場合は、から始めることを検討してください 初心者のためのこれらのArduinoプロジェクト 。
画像クレジット:mkarco / Shutterstock
共有 共有 つぶやき Eメール キヤノン対ニコン:どちらのカメラブランドが優れていますか?キヤノンとニコンは、カメラ業界で最も有名な2社です。しかし、どのブランドがより良いカメラとレンズのラインナップを提供していますか?
次を読む 関連トピック- DIY
- Arduino
- LEDストリップ
- LEDライト
Ian Buckleyは、ドイツのベルリンに住むフリーランスのジャーナリスト、ミュージシャン、パフォーマー、ビデオプロデューサーです。マッドサイエンティストになることを期待して、執筆中やステージ上にいないときは、DIYの電子機器やコードをいじっています。
イアン・バックリーのその他の作品ニュースレターを購読する
ニュースレターに参加して、技術的なヒント、レビュー、無料の電子書籍、限定セールを入手してください。
購読するにはここをクリックしてください