ArduinoUnoと1sheeldを備えた4x4x4LEDキューブ
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 16 | ||||
| × | 64 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 20 | ||||
| × | 1 |
このプロジェクトについて
これは、1sheeldとarduinounoを使用してスマートフォンに接続された素晴らしい4x4x4LEDキューブです。音楽をコントロールしましょう...
<図> <図> <図> <図>
LEDキューブの作成方法:
この指示に従って、LEDキューブを作成します。ステップ3、ステップ4、ステップ5のみが必要です。はんだ付けに関する基本的な知識が必要です。
http://www.instructables.com/id/LED-Cube-4x4x4/
**インストラクタブルのコンポーネントは必要ありません。必要なコンポーネントについては、以下のコンポーネントリストを参照してください。
動作理論:
各LEDのアノードにワイヤを配線することは明らかに非現実的です。
考えられる解決策の1つは、キューブを4つのレイヤーに分割することです。各レイヤーは、16個のLEDで構成されています。
垂直列のすべてのLEDは、共通のアノード(+)を共有します。
水平層のすべてのLEDは、共通のカソード(-)を共有します。
特定のLEDを点灯させるには、そのLEDを含む層にGND(-)を供給してから、そのLEDを含むカラムに5V(+)を供給します。
配線:
立方体を作成したら、列を制御するための16個のピンと、レイヤーを制御するための4個のピンが必要です。
Ω-各カラム制御ピンをに接続します 220 Ω直列の抵抗器、のもう一方の端子 抵抗器は、arduinoボードに取り付けられた1sheeldに接続されています。
*** 抵抗なしで1sheeld&arduinoに直接ワイヤーを接続してみましたが、実際に機能しましたが、お勧めしません。
※コラムコントロールピンは、13〜0のデジタルピンとアナログピンA4、A5に接続されています。 (図を参照)
*各ピンはその列の3つのLEDを制御するため、列を任意の組み合わせで自由に接続できます。
-レイヤーコントロールピンをアナログピンA0、A1、A2、A3に接続します。
*私のコードによると、下位層はピンA0に接続され、次の層はピンA1に接続され、次の層はピンA2に接続され、最上位層はピンA3に接続されます。 (図を参照)
-ワイヤーを1sheeldとarduinoに接続したら、コードをアップロードして、スマートフォンを1sheeldに接続できます。
* 1sheeldに慣れていない場合は、最初にこのチュートリアルに従うことができます。
http://1sheeld.com/tutorials/getting-started/
コード
- 無題のファイル
無題のファイル Arduino
/ *このコードは、1Sheeldとarduino Unoボードを使用して、スマートフォンのマイクを使用して4x4x4LEDマトリックスを制御します。回路:* 64個のLEDが1Sheeldおよびarduinoボードに接続された4x4x4キューブを形成します*列制御ピンはデジタルピン0〜13およびアナログピンA4およびA5に接続されます*レイヤー制御ピンはアナログピンA0〜A3に接続されます。 HassanIbrahimによる* / #define CUSTOM_SETTINGS#define INCLUDE_PUSH_BUTTON_SHIELD#define INCLUDE_MIC_SHIELD / * 1Sheeldライブラリをインクルードします。 * /#include// LEDマトリックス(列とレイヤー)のピン接続を定義します。//詳細については、チュートリアルを参照してください。intcoloumn13=13; // coloumn13は、arduinoボードのピン13に接続されているcoloumnを意味しますint coloumn12 =12; int coloumn11 =11; int coloumn10 =10; int coloumn9 =9; int coloumn8 =8; int coloumn7 =7; int coloumn6 =6; int coloumn5 =5; int coloumn4 =4; int coloumn3 =3; int coloumn2 =2; int coloumn1 =1; int coloumn0 =0; int coloumnA4 =A4; int coloumnA5 =A5; int layerA0 =A0; // layerA0は、arduinoのアナログピンA0に接続されているレイヤー(この例では最下層)を意味しますint layerA1 =A1; // *名前は、変更を容易にするためにこのように選択されますint layerA2 =A2; int layerA3 =A3; int counter; //列のバリエーションを作成するために使用されます// reset:void setup(){//通信を開始すると、セットアップルーチンが1回実行されます。 OneSheeld.begin(); Serial.begin(115200); //各ピンを出力として初期化します。 pinMode(coloumn0、OUTPUT); pinMode(coloumn1、OUTPUT); pinMode(coloumn2、OUTPUT); pinMode(coloumn3、OUTPUT); pinMode(coloumn4、OUTPUT); pinMode(coloumn5、OUTPUT); pinMode(coloumn6、OUTPUT); pinMode(coloumn7、OUTPUT); pinMode(coloumn8、OUTPUT); pinMode(coloumn9、OUTPUT); pinMode(coloumn10、OUTPUT); pinMode(coloumn11、OUTPUT); pinMode(coloumn12、OUTPUT); pinMode(coloumn13、OUTPUT); pinMode(coloumnA4、OUTPUT); pinMode(coloumnA5、OUTPUT); pinMode(layerA0、OUTPUT); pinMode(layerA1、OUTPUT); pinMode(layerA2、OUTPUT); pinMode(layerA3、OUTPUT);} //セットアップの終了//ループルーチンは永久に何度も実行されます:void loop(){//すべての列は5v(高)に接続されています。 digitalWrite(coloumn0、HIGH); digitalWrite(coloumn1、HIGH); digitalWrite(coloumn2、HIGH); digitalWrite(coloumn3、HIGH); digitalWrite(coloumn4、HIGH); digitalWrite(coloumn5、HIGH); digitalWrite(coloumn6、HIGH); digitalWrite(coloumn7、HIGH); digitalWrite(coloumn8、HIGH); digitalWrite(coloumn9、HIGH); digitalWrite(coloumn10、HIGH); digitalWrite(coloumn11、HIGH); digitalWrite(coloumn12、HIGH); digitalWrite(coloumn13、HIGH); digitalWrite(coloumnA4、HIGH); digitalWrite(coloumnA5、HIGH); delay(30); //マイクからノイズレベルを取得し、0v(低)に接続するレイヤーを制御します。 //各if-elseブロックは1つのレイヤーを制御します。 //値は携帯電話に応じて調整する必要があります。 / *キャリブレーションするには、スマートフォンの近くであらゆる種類の音楽を再生し、マイクシールドの読み取り値を確認して、適切な値を選択します。 * / //この例では、6のステップで良い結果が得られますif(Mic.getValue()> 70)//最初のレイヤーコントロール{digitalWrite(layerA0、LOW); delay(50); //表示をより明確にするため。速くするか遅くするかを変更することができます。 } else {digitalWrite(layerA0、HIGH); } if(Mic.getValue()> 76)// 2番目のレイヤーコントロール{digitalWrite(layerA1、LOW); delay(50); } else {digitalWrite(layerA1、HIGH); } if(Mic.getValue()> 82)//第3層コントロール{digitalWrite(layerA2、LOW); delay(50); } else {digitalWrite(layerA2、HIGH); } if(Mic.getValue()> 88)// 4番目のレイヤーコントロール{digitalWrite(layerA3、LOW); delay(50); } else {digitalWrite(layerA3、HIGH); }} //ループの終わり
1枚のLEDキューブ(マイクシールド)
回路図
この画像には抵抗器が含まれていません。 製造プロセス
- Samsung SAMIIO、Arduino UNO、RaspberryPiで数分で火災探知機を作る
- DIY LUMAZOID Arduino Music Visualiser
- MPU-6050を搭載したArduinoジャイロスコープゲーム
- イスラムの祈りの時間とArduino時計
- LEDとピエゾスピーカーを備えたDHT11センサー
- 1Sheeld / Arduinoとの盲ろう者のコミュニケーション
- Unopad-Abletonを搭載したArduinoMIDIコントローラー
- 温度および湿度データロガー
- LEDを制御するBluetoothを搭載したArduino!
- Arduinoを搭載したシンプルな障害物センサー
- CortanaでLEDを制御する