Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (6)

LED Cube 5x5x5 là một sản phẩm được các bạn trẻ làm khá phổ biến hiện nay. Hôm nay, dientu5ngay sẽ hướng dẫn bạn từng bước về cách chế tạo khối LED 5x5x5 lập phương bằng Arduino Mega. Hướng dẫn này cũng sẽ bao gồm tất cả các nguyên tắc cơ bản cần thiết để tạo ra một khối LED 5x5x5, như cách tạo bố cục 3D bằng cách sử dụng đèn LED, cách tạo các hoạt ảnh và mẫu khác nhau, hoạt động của mạch và mã, cấu hình bảng và chân của Arduino Mega.

Tổng quan bo mạch Arduino Mega tạo LED Cube 5x5x5

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (8)
Tổng quan bo mạch Arduino Mega 

Để làm LED Cube 5x5x5 cần sử dụng một bo mạch coa số chân vào ra tương đối lớn. Vì vậy chúng tớ quyết định chọn bo Arduino Mega 2560 với nhưng ưu điểm của nó.

Cấu hình chân của Arduino Mega

  • Digital I/O Pin: D0-D53
  • Chân đầu vào tương tự: A0-A15
  • Các chân PWM: 2 – 13, 44 – 46
  • Chân I2C: SDA (20), SCL (21)
  • Chân SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS)

Các chân UART:

  • TX0-D0, RX0- D1
  • TX1-D19, RX1- D18
  • TX2-D16, RX2-D17
  • TX3-D14, RX3-D15

Đặc điểm của Arduino Mega

  • Điện áp hoạt động: 5V
  • Điện áp đầu vào: 6-20V
  • Hoạt động hiện tại:
  • Điện áp đầu ra: 3.3V và 5V
  • Dòng điện đầu ra: 20mA (5V) và 50mA (3.3V)
  • Chân I / O kỹ thuật số: 54
  • Chân ADC: 16
  • Chân PWM: 15
  • UART: 4

Các thành phần cần thiết cho dự án LED Cube 5x5x5 này

Nguyên lý hoạt động của dự án LED Cube 5x5x5

Khối LED này bao gồm tổng cộng 125 đèn LED. Chúng tôi sẽ điều khiển từng đèn LED với sự trợ giúp của Arduino Mega. Để điều khiển tất cả đèn LED có trong khối LED, chúng tôi đã chia khối này thành 5 lớp (Layer) và 25 cột. Các lớp là layer0, layer1, layer2, layer3, and layer 4. Mỗi lớp bao gồm 25 đèn LED và cực âm của tất cả các đèn LED hiện diện trong một lớp được kết nối với nhau. Tương tự, tất cả các lớp khác bao gồm cùng một số lượng đèn LED và cực âm của tất cả các đèn LED được kết nối với nhau..

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (4)
Các lớp (Layer) nối chung cực âm 

Khi đó chúng ta có 25 cột bắt đầu từ c0, c2, c3, c4, c5 ……… ..c24. Cột c0 bao gồm đèn LED từ layer0, layer1, layer2, layer3, and layer 4, và cực dương của tất cả các đèn LED này được kết nối với nhau. Tương tự, tất cả các cột khác được kết nối theo cách tương tự.

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (5)
Các cột nối với cực dương của LED ở mỗi Layer 

Vì vậy, mỗi LED có một vị trí duy nhất trong khối LED có thể được xác định bằng số lớp và cột. Giống như, đèn LED đầu tiên của khối lập phương là (layer0, c0). tương tự như vậy LED thứ 2 của khối lập phương là (layer0, c1), v.v.
Giả sử nếu bạn muốn BẬT đèn LED đầu tiên thì bạn phải kết nối layer0 với GND và c0 với 5V. Tương tự, nếu bạn muốn bật đèn LED cuối cùng thì bạn phải kết nối layer4 với GND và c24 với 5V. Tương tự như vậy, bạn có thể BẬT và TẮT tất cả các đèn LED.

Các bước thiết kế khối LED Cube 5x5x5

Bước 1: Kiểm tra đèn LED

Dùng đồng hồ vạn năng kim kiểm tra hoặc dung pin CR2032 để kiểm tra đèn LED sáng hay không.

Bước 2: Khoan lỗ

Lấy một tấm bìa cứng tạo 125 lỗ như trong hình. Bạn có thể sử dụng máy khoan cho. Lỗ có đường kính 5mm.

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (1)
Khoan lỗ để gắn LED 

Bước 3: Gắn LED

Gập đầu cực âm của tất cả các đèn LED như trong hình.

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (2)
Gắn LED chung các cực âm như trong hình 

Chèn tất cả 25 đèn LED vào lỗ.

Bước 4: Hàn từng Layer

Hàn cực âm của tất cả các đèn LED có trong hàng đầu tiên.

Bước 5: Hàn tất cả các hàng khác theo cách tương tự.

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (3)
Hoàn thiện các lớp 

Bước 6: Bây giờ, kết nối tất cả các hàng bằng dây thép.

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (99)
Kết nối các hàng bằng dây thép 

Bước 7: Tạo thêm bốn lớp như thế này.

Tổng cộng chúng ta cần năm lớp.

Bước 8: Nối các cột

Kết nối tất cả các cột một. Bạn có thể đặt một miếng bìa cứng giữa lớp để dễ hàn. Hãy nhớ rằng có 25 cột.

Bước 9: Hoàn thiện phần cứng

Sau khi kết nối tất cả các cột và lớp, bạn sẽ nhận được 5 lớp và 25 cột.

Bước 10: Kết nối với Arduino Mega

Kết nối tất cả các lớp và cột với Arduino Mega Board

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (7)
Sơ đồ kết nối các chân LED Cube 5x5x5 với Arduino Mega 

Bước 11: Tải Code lên Arduino Mega Board

int layerPin[5]={13,12,11,10,9};

int columnPin[25]={2,3,4,5,6,7,8,14,15,16,17,18,19,21,22,23,24,25,26,27,28,29,30,31};

void setup() {

for(int i=0;i<5;i++)

{

pinMode(layerPin[i],OUTPUT);

}

for(int i=0;i<25;i++)

{

pinMode(columnPin[i],OUTPUT);

}

for(int i=0;i<5;i++)

{

digitalWrite(layerPin[i],HIGH);

}

}

void loop() {

animation1();

clearPin();

animation2();

}

void clearPin()

{

for(int i=0;i<5;i++)

{

digitalWrite(layerPin[i],HIGH);

}

for(int i=0;i<25;i++)

{

digitalWrite(columnPin[i],LOW);

}

}

void animation1()

{

for(int i=0;i<25;i++)

{

digitalWrite(columnPin[i],HIGH);

for(int y=0;y<5;y++)

{

digitalWrite(layerPin[i],LOW);

delay(1000);

digitalWrite(layerPin[i],HIGH);

delay(1000);

}

digitalWrite(columnPin[i],LOW);

}

}

void animation2()

{

for(int i=0;i<5;i++)

{

digitalWrite(layerPin[i],LOW);

for(int y=0;y<25;y++)

{

digitalWrite(columnPin[i],HIGH);

}

delay(1000);

for(int y=0;y<25;y++)

{

digitalWrite(columnPin[i],LOW);

}

delay(1000);

digitalWrite(layerPin[i],HIGH);

}

}

Giải thích hoạt động của Code

Xác định tất cả các chân lớp trước. Đối với điều đó, tôi đã tạo một mảng có tên layerPin và lưu trữ tất cả số pin bên trong nó.

int layerPin[5]={13,12,11,10,9};

Xác định tất cả các chân cho các cột. Đối với điều đó, tôi đã tạo một mảng có tên là columnPin và lưu trữ tất cả các số pin bên trong nó.

int columnPin[25]={2,3,4,5,6,7,8,14,15,16,17,18,19,21,22,23,24,25,26,27,28,29,30,31};

Cài đặt ban đầu

Bên trong void setup (), trước tiên hãy đặt tất cả các PIN của lớp là OUTPUT dùng một vòng lặp for.

void setup() {

 

for(int i=0;i<5;i++)

{

pinMode(layerPin[i],OUTPUT);

}

Tương tự, đặt tất cả chân cột là OUTPUT bằng vòng lặp for.

for(int i=0;i<25;i++)

{

pinMode(columnPin[i],OUTPUT);

}

Đặt tất cả các chân của lớp là HIGH vì khi bạn sử dụng hàm pinMode (), theo mặc định, tất cả các chân được đặt thành LOW. Chúng tôi đã kết nối cực âm của tất cả các đèn LED với các chân lớp này. Vì vậy, chúng ta phải làm cho chúng HIGH.

for(int i=0;i<5;i++)

{

digitalWrite(layerPin[i],HIGH);

}

Đây là một chức năng để đặt tất cả các cột và chân lớp ở trạng thái mặc định. Các chân lớp phải được đặt thành HIGH và các chân cột phải được đặt thành LOW để TẮT đèn LED. Chức năng này sẽ giúp chuyển từ hiệu ứng này sang hiệu ứng khác.

void clearPin()

{

for(int i=0;i<5;i++)

{

digitalWrite(layerPin[i],HIGH);

}

for(int i=0;i<25;i++)

{

digitalWrite(columnPin[i],LOW);

}

}

Tạo hiệu ứng thứ nhất

Đây là một chức năng khác, tôi đã tạo chức năng này để tạo hoạt ảnh đầu tiên. Trong hình ảnh động này, tất cả các đèn LED sẽ lần lượt BẬT và TẮT.

void animation1()

{

for(int i=0;i<25;i++)

{

digitalWrite(columnPin[i],HIGH);

for(int y=0;y<5;y++)

{

digitalWrite(layerPin[i],LOW);

delay(1000);

digitalWrite(layerPin[i],HIGH);

delay(1000);

}

digitalWrite(columnPin[i],LOW);

}

}

Tạo hiệu ứng thứ 2

Chức năng này dành cho hoạt ảnh thứ hai. Trong hoạt ảnh này, Layer sẽ lần lượt được BẬT và TẮT. Đây là cách bạn có thể tạo bất kỳ hoạt ảnh nào bạn muốn bằng cách sử dụng khối LED này.

void animation2()

{

for(int i=0;i<5;i++)

{

digitalWrite(layerPin[i],LOW);

for(int y=0;y<25;y++)

{

digitalWrite(columnPin[i],HIGH);

}

delay(1000);

for(int y=0;y<25;y++)

{

digitalWrite(columnPin[i],LOW);

}

delay(1000);

digitalWrite(layerPin[i],HIGH);

}

}

Đây là vòng lặp chính của dự án này. Đầu tiên, animation1 sẽ chạy. Sau đó, sử dụng hàm clearPin (), chúng tôi sẽ xóa tất cả các chân. Sau đó animation2 sẽ chạy và ba hàm này sẽ chạy lặp đi lặp lại trong một vòng lặp.

void loop() {

animation1();

clearPin();

animation2();

}

Tận hưởng thành quả

Hướng dẫn tự làm LED Cube 5x5x5 với Arduino Mega (6)
Két quả  LED Cube 5x5x5 với Arduino Mega

CHÚC CÁC BẠN THÀNH CÔNG

Có thể bạn quan tâm

  1. Tài liệu lập trình Arduino miễn phí
  2. Tài liệu lập trình FPGA miễn phí
  3. Tài liệu điện tử công nghiệp miễn phí
  4. Tài liệu điện tử viễn thông miễn phí

NƠI MUA LINH KIỆN GIÁ TỐT

  1. Linh kiện điện tử giá siêu rẻ : Shop Ristina.vn
  2. Linh kiện điện tử, nhà thông minh : Shop Làm Chủ Công Nghệ
  3. Chuyên mạch nguồn, sạc dự phòng chỉ từ 1K: Shop Điện Tử AT
  4. Linh kiện tháo máy chất lượng: Shop Linh kiện điện tử HL
  5. Chuyên các thiết bị điện công nghiệp: Shop Linhkien123
  6. Chuyên pin sạc 18650, Pin sạc AA: Shop Linhkiengiatot

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *