Hướng dẫn cơ bản để kết nối dải đèn LED với Arduino

Hướng dẫn cơ bản để kết nối dải đèn LED với Arduino

Sự phát triển của hệ thống chiếu sáng LED đã trở nên khác thường và rất dễ hiểu tại sao. Chúng rẻ để sản xuất, tiêu thụ ít điện năng hơn đáng kể so với các tùy chọn chiếu sáng khác và trong hầu hết các trường hợp, chúng không bị nóng, giúp chúng an toàn cho nhiều mục đích sử dụng khác nhau.





Một trong những sản phẩm đèn LED phổ biến nhất là LED dải. Trong bài viết này, chúng tôi sẽ đề cập đến cách thiết lập hai loại phổ biến nhất với Arduino. Những dự án này rất đơn giản, và ngay cả khi bạn là người mới bắt đầu với Arduino hoặc đồ điện tử DIY, bạn sẽ làm được điều này.





Chúng tôi cũng sẽ sử dụng Arduino IDE để điều khiển chúng. Dự án này sử dụng Arduino Uno, mặc dù bạn có thể sử dụng hầu hết mọi bảng tương thích (chẳng hạn như NodeMCU).





Chọn dải của bạn

Khi mua sắm dải đèn LED, có một số điều cần xem xét. Đầu tiên là chức năng. Nếu bạn đang có kế hoạch sử dụng các dải chủ yếu cho ánh sáng xung quanh, thì đơn giản 12v LED RGB dải ( SMD5050 ) sẽ là sự lựa chọn đúng đắn.

Nhiều dải trong số này đi kèm với một điều khiển từ xa hồng ngoại để điều khiển chúng, mặc dù trong dự án này, chúng tôi sẽ sử dụng Arduino để thay thế. Hãy dành một chút thời gian đi mua sắm xung quanh, tại thời điểm viết bài này, bạn có thể mua được những dải này với giá ít nhất là $ 1 mỗi mét .



Tín dụng hình ảnh: phanu suwannarat qua Shutterstock

google drive video không phát được

Nếu bạn muốn thứ gì đó công nghệ cao hơn một chút, hãy xem xét WS2811 / 12 / 12B . Những dải này (đôi khi được gọi là Neopixels ) có các chipset tích hợp cho phép chúng được giải quyết riêng lẻ. Điều này có nghĩa là chúng không chỉ có khả năng chiếu sáng xung quanh.





Bạn có thể sử dụng chúng để xây dựng màn hình pixel LED giá rẻ từ đầu. Bạn thậm chí có thể sử dụng chúng để làm đèn đám mây bão trong nhà cá nhân của riêng bạn.

Các dải này chỉ yêu cầu 5v để cấp nguồn cho chúng. Mặc dù có thể cấp nguồn cho một lượng nhỏ chúng trực tiếp từ bảng Arduino, nhưng nhìn chung, bạn nên sử dụng nguồn điện 5V riêng biệt để tránh bị sặc mùi Arduino. Nếu bạn đang tìm kiếm các đèn LED có thể lập trình riêng lẻ, chúng là dành cho bạn. Tại thời điểm viết bài, chúng có sẵn cho khoảng $ 4 mỗi mét .





Một điều khác cần xem xét là nơi có thể sử dụng các dải này. Cả hai loại dải này đều có độ dài khác nhau, mật độ đèn LED (số lượng đèn LED trên mỗi mét) và mức độ chống chịu thời tiết khác nhau.

Khi nhìn vào dải đèn LED, hãy chú ý đến các con số trên danh sách. Thông thường, số đầu tiên sẽ là số lượng đèn LED trên mỗi mét, và các chữ cái IP tiếp theo là các con số sẽ là khả năng chống chịu thời tiết của nó. Ví dụ: nếu danh sách cho biết 30 IP67 , điều này có nghĩa là sẽ có 30 Đèn LED trên mỗi mét. Các 6 biểu thị nó hoàn toàn được niêm phong khỏi bụi, và 7 có nghĩa là nó được bảo vệ chống lại sự chìm tạm thời trong nước. (Học ​​nhiều hơn về chống thời tiết và xếp hạng IP .) Khi bạn đã chọn dải đèn LED, đã đến lúc liên kết nó với Arduino. Hãy bắt đầu với SMD5050.

Bắt đầu kết nối

Để kết nối dải LED 12v với Arduino, bạn sẽ cần một số thành phần:

  • Dải đèn LED RGB 12v ( SMD5050 )
  • 1 x Arduino Uno (bất kỳ bảng tương thích nào cũng được)
  • 3 x 10k Điện trở Ohm
  • 3 x Mức độ logic MOSFET kênh N
  • 1 x Breadboard
  • Dây móc
  • Nguồn điện 12v

Trước khi thiết lập mạch, hãy nói về MOSFET .

Bất cứ khi nào bạn đang điều khiển thứ gì đó có điện áp cao hơn bộ vi điều khiển của mình, bạn cần một thứ gì đó ở giữa để ngăn bo mạch của bạn bị chiên. Một trong những cách đơn giản hơn để làm điều này là sử dụng MOSFET. Bằng cách gửi điều chế độ rộng xung ( PWM ) tín hiệu cho cánh cổng chân, có thể kiểm soát lượng điện truyền qua làm khô hạnnguồn chân. Bằng cách chuyển từng màu của dải LED qua MOSFET, bạn có thể kiểm soát độ sáng của từng màu riêng biệt trên dải LED.

Khi sử dụng bộ vi điều khiển, điều quan trọng là phải sử dụng các thành phần mức logic để đảm bảo mọi thứ hoạt động theo cách bạn muốn. Đảm bảo MOSFET của bạn mức logic và không Tiêu chuẩn .

Thiết lập mạch của bạn như sau:

  1. Kết nối các chân Arduino 9 , 6 , và 5 đến cánh cổng chân của ba MOSFET và kết nối một 10k điện trở phù hợp với từng đường sắt nối đất.
  2. Kết nối Nguồn chân vào đường sắt mặt đất.
  3. Kết nối Làm khô hạn chân với Màu xanh lá , Mạng lưới , và Màu xanh dương các đầu nối trên dải đèn LED.
  4. Kết nối đường ray điện với + 12v đầu nối của dải LED (lưu ý rằng trong hình ảnh này, dây nguồn có màu đen để phù hợp với màu của các đầu nối trên dải LED của tôi).
  5. Kết nối mặt đất Arduino với đường sắt nối đất.
  6. Kết nối của bạn 12v cung cấp điện cho các ray điện.

Hầu hết các dải đèn LED đều có đầu nối Dupont [Đã xóa URL bị hỏng], rất dễ kết nối. Nếu không, bạn có thể cần hàn dây vào dải đèn LED. Đừng hoảng sợ nếu bạn chưa quen với nghề hàn, đây là một công việc dễ dàng và chúng tôi có một hướng dẫn để bắt đầu với việc hàn nếu bạn cần.

Chúng tôi sẽ cấp nguồn cho bảng Arduino của mình bằng USB cho dự án này. Bạn có thể chọn cấp nguồn cho bo mạch của mình bằng cách sử dụng chân VIN, nhưng hãy đảm bảo rằng bạn biết các giới hạn về nguồn điện cho bo mạch của mình trước khi thực hiện việc này.

Khi mạch của bạn hoàn thành, nó sẽ trông giống như sau:

Bây giờ bạn đã kết nối mọi thứ, đã đến lúc tạo một bản phác thảo Arduino đơn giản để điều khiển nó.

Fade It Up

Kết nối bảng Arduino với máy tính của bạn qua USB và mở Arduino IDE. Đảm bảo rằng bạn đã chọn đúng bảng và số cổng cho bảng của mình trong Công cụ> BảngCông cụ> Cổng các menu. Mở một bản phác thảo mới và lưu nó với một tên thích hợp.

Bản phác thảo này sẽ làm mờ dần các đèn từng màu một, giữ chúng sáng trong vài giây, sau đó mờ dần cho đến khi chúng tắt trở lại. Bạn có thể theo dõi tại đây và tự tạo bản phác thảo hoặc chỉ cần tải xuống hoàn thành mã từ GitHub.

Bắt đầu bằng cách xác định cái nào ghim sẽ được sử dụng để điều khiển MOSFET.

#define RED_LED 6
#define BLUE_LED 5
#define GREEN_LED 9

Tiếp theo, bạn cần một số biến. Tạo tổng thể độ sáng biến, cùng với một biến cho độ sáng của từng màu riêng lẻ. Chúng tôi sẽ chỉ sử dụng biến độ sáng chính để tắt đèn LED, vì vậy hãy đặt nó thành giá trị độ sáng tối đa là 255 ở đây.

bạn cũng sẽ cần tạo một biến để kiểm soát tốc độ phai màu sẽ xảy ra.

int brightness = 255;
int gBright = 0;
int rBright = 0;
int bBright = 0;
int fadeSpeed = 10;

Trong của bạn cài đặt chức năng, chúng tôi sẽ thiết lập các chân Arduino của chúng tôi để đầu ra. Chúng tôi cũng sẽ gọi một vài hàm với độ trễ 5 giây ở giữa. Các chức năng này chưa tồn tại, nhưng đừng lo lắng, chúng tôi sẽ giải quyết chúng.

void setup() {
pinMode(GREEN_LED, OUTPUT);
pinMode(RED_LED, OUTPUT);
pinMode(BLUE_LED, OUTPUT);
TurnOn();
delay(5000);
TurnOff();
}

Bây giờ hãy tạo Bật () phương pháp:

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);
}
}

Ba cái này các vòng lặp đưa từng màu lên đến độ sáng đầy đủ của nó trong một thời gian được chỉ định bởi fadeSpeed giá trị.

Cuối cùng, bạn cần tạo Tắt() phương pháp:

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() {
}

Phương pháp này áp dụng độ sáng biến thành cả ba chân màu và giảm chúng về 0 trong một khoảng thời gian. Chúng tôi cũng cần một phương thức vòng lặp trống ở đây, để tránh lỗi biên dịch.

Khi bạn đã hoàn thành bản phác thảo này, hãy lưu nó. Xác minh bản phác thảo và tải nó lên bảng Arduino của bạn. Nếu bạn gặp lỗi, hãy kiểm tra lại mã xem có lỗi chính tả khó hiểu hoặc dấu chấm phẩy bị thiếu không.

Bây giờ, bạn sẽ thấy dải đèn LED của mình tăng lên từng màu riêng lẻ, giữ màu trắng trong 5 giây và sau đó mờ dần thành hư không:

Nếu bạn gặp bất kỳ khó khăn nào, hãy kiểm tra lại hệ thống dây điện và mã của bạn.

Dự án này là một cách đơn giản để bắt đầu, nhưng những ý tưởng được đề cập trong đó có thể được mở rộng để tạo ra ánh sáng thực sự hiệu quả. Chỉ với một vài thành phần nữa, bạn có thể tạo báo thức mặt trời mọc của riêng mình. Nếu bạn có bộ khởi động với Arduino, bạn có thể sử dụng bất kỳ nút hoặc cảm biến nào để kích hoạt đèn LED khi bạn bước vào phòng, ví dụ:

cách tải ứng dụng trên vizio tv

Bây giờ chúng tôi đã đề cập đến SMD5050s , chúng ta hãy chuyển sang WS2812B dải.

Sáng kiến

Các dải này yêu cầu ít thành phần hơn để chúng chạy và có một số thời gian để xác định chính xác giá trị của các thành phần bạn có thể sử dụng. Tụ điện trong mạch này đảm bảo rằng các đèn LED 5v có được nguồn điện ổn định. Điện trở đảm bảo tín hiệu dữ liệu nhận được từ Arduino không bị nhiễu.

Bạn sẽ cần:

  • WS2811 / 12 / 12B Dải đèn LED 5v (cả ba mẫu đều có chip tích hợp và hoạt động giống nhau)
  • 1 x Arduino Uno (hoặc bo mạch tương thích tương tự)
  • 1 x 220-440 Ohm Điện trở (bất cứ thứ gì giữa hai giá trị này đều ổn)
  • 1 x 100-1000 microFarad Tụ điện (bất cứ thứ gì giữa hai giá trị này đều ổn)
  • Breadboard và móc dây
  • Nguồn điện 5V

Thiết lập mạch của bạn như được hiển thị trong sơ đồ:

Lưu ý rằng tụ điện phải được định hướng chính xác. Bạn có thể biết mặt nào gắn vào ray nối đất bằng cách tìm dấu trừ (-) trên thân tụ điện.

Lần này, chúng tôi đang cấp nguồn cho Arduino bằng nguồn điện 5v. Điều này làm cho dự án trở nên độc lập sau khi chúng tôi hoàn thành, mặc dù có những điều quan trọng cần lưu ý ở đây.

Trước tiên, hãy đảm bảo rằng bo mạch của bạn có thể sử dụng nguồn 5v trước khi gắn nó vào nguồn điện. Hầu hết tất cả các bo mạch phát triển đều chạy ở 5v thông qua cổng USB, nhưng các chân đầu vào nguồn điện trên một số đôi khi có thể bỏ qua bộ điều chỉnh điện áp và biến chúng thành bánh mì nướng.

Ngoài ra, bạn nên đảm bảo rằng nhiều nguồn điện riêng biệt không được kết nối với Arduino - hãy ngắt kết nối cáp USB bất cứ khi nào bạn sử dụng nguồn điện bên ngoài.

Sau khi bạn được cắm vào, nó sẽ trông như thế này:

Bây giờ dải đèn LED của chúng ta đã được kết nối, hãy chuyển sang mã.

giả lập máy tính bảng android cho windows 10

Đèn khiêu vũ

Để lập trình bảng của chúng tôi một cách an toàn, hãy ngắt kết nối RƯỢU dòng từ đường dây điện. Bạn sẽ đính kèm lại nó sau.

Gắn Arduino của bạn vào máy tính và mở Arduino IDE. Kiểm tra xem bạn đã chọn đúng bảng và số cổng trong Công cụ> BảngCông cụ> Cổng các menu.

Chúng tôi sẽ sử dụng FastLED thư viện để kiểm tra thiết lập của chúng tôi. Bạn có thể thêm thư viện bằng cách nhấp vào Phác thảo> Bao gồm Thư viện> Quản lý Thư viện và tìm kiếm FastLED. Nhấp vào cài đặt và thư viện sẽ được thêm vào IDE.

Dưới Tệp> Ví dụ> FastLED chọn DemoReel100 bản phác thảo. Bản phác thảo này chu kỳ nhiều thứ khác nhau có thể được thực hiện với WS2812 Dải đèn LED và cực kỳ dễ cài đặt.

Tất cả những gì bạn cần thay đổi là DATA_PIN biến để nó khớp chốt 13 , và NUM_LEDS để xác định có bao nhiêu đèn LED trong dải bạn đang sử dụng. Trong trường hợp này, tôi chỉ sử dụng một dòng nhỏ gồm 10 LEDS được cắt từ một dải dài hơn. Sử dụng nhiều hơn cho một màn trình diễn ánh sáng lớn hơn!

Đó là nó! Tải bản phác thảo lên bảng của bạn, ngắt kết nối cáp USB và bật nguồn điện 5v của bạn. Cuối cùng, gắn lại số VIN của Arduino vào đường dây điện và xem chương trình!

Nếu không có gì xảy ra, hãy kiểm tra hệ thống dây điện của bạn và bạn đã chỉ định đúng chân Arduino trong bản phác thảo demo.

Khả năng vô tận

Bản phác thảo demo cho thấy một số kết hợp hiệu ứng có thể có với các dải WS2812. Cùng với một bước tiến so với dải đèn LED thông thường, chúng cũng có thể được đưa vào sử dụng thực tế. Một dự án tốt tiếp theo sẽ là xây dựng tình yêu của riêng bạn cho trung tâm truyền thông của bạn.

Mặc dù các dải này chắc chắn có nhiều chức năng hơn so với SMD5050, nhưng đừng giảm giá các dải LED 12v tiêu chuẩn. Chúng không thể đánh bại về giá cả và có một số lượng lớn ứng dụng cho dải đèn LED .

Học cách làm việc với dải LED là một cách tốt để làm quen với lập trình cơ bản trên Arduino, nhưng cách tốt nhất để học là mày mò. Sửa đổi đoạn mã trên và xem bạn có thể làm gì! Nếu tất cả những điều này là quá nhiều đối với bạn, hãy cân nhắc bắt đầu với các dự án Arduino này dành cho người mới bắt đầu .

Tín dụng hình ảnh: mkarco / Shutterstock

Đăng lại Đăng lại tiếng riu ríu E-mail Canon so với Nikon: Thương hiệu máy ảnh nào tốt hơn?

Canon và Nikon là hai tên tuổi lớn nhất trong ngành công nghiệp máy ảnh. Nhưng thương hiệu nào cung cấp dòng máy ảnh và ống kính tốt hơn?

Đọc tiếp
Chủ đề liên quan
  • DIY
  • Arduino
  • Dải đèn LED
  • Đèn LED
Giới thiệu về tác giả Ian Buckley(216 bài báo đã xuất bản)

Ian Buckley là một nhà báo tự do, nhạc sĩ, nghệ sĩ biểu diễn và nhà sản xuất video sống ở Berlin, Đức. Khi không viết hay trên sân khấu, anh ấy sẽ mày mò với các thiết bị điện tử hoặc mã tự làm với hy vọng trở thành một nhà khoa học điên rồ.

Xem thêm từ Ian Buckley

Theo dõi bản tin của chúng tôi

Tham gia bản tin của chúng tôi để biết các mẹo công nghệ, đánh giá, sách điện tử miễn phí và các ưu đãi độc quyền!

Bấm vào đây để đăng ký
Thể LoạI Diy