あなたは航空機や船舶でプロペラを見たことがありますが、実際にはそうではないにしても、確かに映画で見たことがあります。このセッションでは、Arduino、LED、DCモーターを備えたプロペラディスプレイを設計します。このプロペラディスプレイでは、テキストがプロペラのように円形に回転しているように見えます。
プロペラディスプレイは、LEDマトリックスのような方法です。8 * 1マトリックス(8行1列)の形で配置された8つのLED(発光ダイオード)が含まれています。それらははしごの形で上下に配置されています。これらの8個のLEDは、テキスト、数字、記号などのコンテンツを表示するように作成できます。これは、多くの静止画像を1つずつすばやく移動してアニメーションを知覚するPerception of Vision(POV)によって実現されます。または動画。これがどのように行われるかは、以下のチュートリアルで説明されています。
必要なコンポーネント:
- Arduino Uno
- DCモーター
- + 3.6VLI-IONバッテリー
- LED(8個)
- 1KΩ抵抗(8個)
プロペラディスプレイの構築:
最初に安定したベースを取ります; 横になっていた古いPCDVDドライブを使用しました。あなたは木の板または段ボール箱を手に入れることができます。次に、DVDドライブ(ベース)の中央に穴を開け、DCモーター軸を挿入します。穴がモーターを保持するのに十分しっかりしていて、モーターが自由に回転できることを確認してください。Feviquickを使用して軸を配置しました。
モーターの上部を支えて、不均一なバンプを均等にします。その上にドットボードを使用し、もう一度クイック接着剤を使用してDCモーターで貼り付けました。
LI-IONバッテリーを上に取り付けます。同じサイズのLI-IONバッテリーをお持ちでない場合は、そのままにしておいてください。その後、各LEDを取り出し、ボタン電池またはその他のソースでテストします。次に、いくつかの抵抗器を取り、以下に示す図と回路図のようにLEDではんだ付けします。
下の図と回路図に示すように、はんだ付けされたLEDと抵抗器をArduinoUNOに接続します。
UNOをDCMOTORの上部に取り付け、チェロテープを使用して固定してセットアップを完了します。したがって、最終的なプロペラのセットアップは次のようになります。
回路と動作の説明:
Arduino制御のPOVディスプレイの回路は非常にシンプルで、下の回路図のように8つのLEDをArduinoUnoに接続するだけです。
PORTD、PIN0 ------------------ LED8ポジティブターミナル
PORTD、PIN1 ------------------ LED7 POSITIVE TERMINAL
PORTD、PIN2 ------------------ LED6 POSITIVE TERMINAL
PORTD、PIN3 ------------------ LED5正端子
PORTD、PIN4 ------------------ LED4 POSITIVE TERMINAL
PORTD、PIN5 ------------------ LED3POSITIVE TERMINAL
PORTD、PIN6 ------------------ LED2 POSITIVE TERMINAL
PORTD、PIN7 ------------------ LED1POSITIVE TERMINAL
8x8 LEDマトリックスに列を追加して表示を拡張するのと同じように、LED列を追加する代わりに、DCモーターの動きを使用して最初のLED列を2番目のLED列の場所に移動します。
全体の状況を理解するために、プロペラディスプレイに「A」を表示させたいとします。次の図に示すように、LEDの「針」が最初はPOSITION1にあると考えてください。LEDニードルは8個のLEDの列です。
次に、モーターに電力を供給し、モーターが動作を開始します。
t = 0msで:針は位置1になります。この位置で、TOP LED(MSB)からBOTTOM LED(LSB)までの8つのLEDすべての電源がオンになります。
t = 1msで:針は位置2になります。位置1と同じように、この位置では、TOP LED(MSB)からBOTTOM LED(LSB)までの8つのLEDすべての電源がオンになります。
t = 2msで:針は位置3になります。この位置では、LED7、LED6、およびLED3のみがオンのままで、残りのLEDはオフになります。
t = 3msで:針は位置4になります。位置3と同じように、この位置ではLED7、LED6、およびLED3のみがオンのままで、残りのLEDはオフになります。
t = 4msで:針は位置5になります。位置3および4と同じで、この位置ではLED7、LED6、およびLED3のみがオンのままになります。残りのLEDは消灯します。
t = 5msで:針は位置6になります。この位置で、8つのLEDがすべて再びオンになり、TOP LED(MSB)からBOTTOM LED(LSB)がオンになります。
t = 6msで:針は位置7になります。位置6と同じように、この位置では8つのLEDすべてが点灯したままになります。
上で説明したように、適切な針の位置で適切なLEDをオンにして、必要な文字を表示します。針の動きの速度が遅い場合は、各LED列を個別に確認できます。ただし、モーターの速度が速く、針の動きが速すぎると、ディスプレイに「A」の文字が連続して表示されます。
プログラミングの説明:
回転しながら適切な時間に適切なLEDに電力を供給するようにArduinoをプログラムし、LED列に「CIRCUITDIGEST」というテキストが円形の位置で表示されるようにしました。
プロペラディスプレイのプログラミングは簡単に理解できます。 26x8のChar配列は、 揮発性の charALPHAと見なされてい ます。 この配列は、26x8の配列となる26個のアルファベットのそれぞれを表示するための針の8つの位置で構成されています。配列の26行は、26個のアルファベットを表し、各行の8列は、回転中に文字を表示するための針の8つの位置を表します。これで、各セルは、ニードルの特定の位置にある8個のLEDのオン/オフステータスを表す2進数で構成されます。ここでの針は、上で説明したようにArduinoに接続された8個のLEDのラインを指していることを覚えておいてください。
ここで、DCモーターを回転させ、「 forループ 」を8回繰り返して使用して、文字を表示する必要があります。同様に、10文字を表示する場合は、それぞれ8回の反復で 10'forループ ' を実行する必要があります。そのため、13の forループ を使用して、テキストCIRCUITDIGESTを表示しました。以下の完全なプログラムコードをデモビデオで確認してください。
これが、テキストがプロペラのように回転しているように、Arduinoで美しい視覚の持続(POV)錯覚を作成する方法です。