Mục lục:

Thanh LED đồng bộ lưới WiFi: 3 bước (có hình ảnh)
Thanh LED đồng bộ lưới WiFi: 3 bước (có hình ảnh)

Video: Thanh LED đồng bộ lưới WiFi: 3 bước (có hình ảnh)

Video: Thanh LED đồng bộ lưới WiFi: 3 bước (có hình ảnh)
Video: [iGate EW12ST] Hướng dẫn thiết lập mạng mesh với thiết bị Mesh wifi Thế hệ mới của VNPT Technology 2024, Tháng mười một
Anonim
Image
Image
Thanh LED đồng bộ lưới WiFi
Thanh LED đồng bộ lưới WiFi
Thanh LED đồng bộ lưới WiFi
Thanh LED đồng bộ lưới WiFi
Thanh LED đồng bộ lưới WiFi
Thanh LED đồng bộ lưới WiFi

Bởi CarlSTeleToylandFollow More của tác giả:

Bộ chọn màu từ xa cho đèn LED trong nhà
Bộ chọn màu từ xa cho đèn LED trong nhà
Bộ chọn màu từ xa cho đèn LED trong nhà
Bộ chọn màu từ xa cho đèn LED trong nhà
Đèn LED đồng bộ hóa rộng khắp khu vực lân cận
Đèn LED đồng bộ hóa rộng khắp khu vực lân cận
Đèn LED đồng bộ rộng khắp khu vực lân cận
Đèn LED đồng bộ rộng khắp khu vực lân cận
Đèn LED chiếu sáng cho nhà nghỉ kỹ thuật số vĩnh viễn V2
Đèn LED chiếu sáng cho nhà nghỉ kỹ thuật số vĩnh viễn V2
Đèn LED chiếu sáng cho nhà nghỉ kỹ thuật số vĩnh viễn V2
Đèn LED chiếu sáng cho nhà nghỉ kỹ thuật số vĩnh viễn V2

Giới thiệu: Một Nhà sản xuất từ thời thơ ấu với tất cả các triệu chứng cổ điển, một người chế tạo rô bốt và một CTO phần mềm Internet / Giám đốc Sản phẩm Công nghệ. Thông tin thêm về CarlS »

Dự án này là một tập hợp các thanh LED với các đèn LED kỹ thuật số có thể điều khiển riêng (WS2812b "Neopixels"). Chúng cho phép thực hiện các hoạt ảnh trên chúng mà không cần kết nối chúng lại với nhau. Họ sử dụng Lưới WiFi để kết nối với nhau và hoạt ảnh thích ứng với việc có nhiều hoặc ít thanh hơn trong lưới.

Nguồn cảm hứng là để một cặp trống chuyên về trang trí dùi cui / dùi cui cho một cuộc diễu hành Giáng sinh. Hoạt ảnh LED giữa chúng được đồng bộ hóa. Các đèn LED cũng có thể là sợi thay vì dải.

Việc sử dụng khác là để lắp đặt nghệ thuật LED nơi bạn không muốn chạy dây dữ liệu giữa tất cả các LEDS xung quanh phòng - tất cả những gì chúng cần làm là được cắm riêng lẻ.

Đối với dự án này, chúng không được kết nối với Internet. Họ thiết lập các điểm truy cập WiFi riêng và máy chủ web của riêng họ. Vì vậy, dự án này không phụ thuộc vào mạng bên ngoài và có thể chạy ở các địa điểm từ xa. Chúng chạy trên 5v, vì vậy có thể dễ dàng được cấp nguồn bằng pin điện thoại di động bên ngoài!

Bước 1: Các bộ phận

Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận

Các phần sau đã được sử dụng trong dự án cho mỗi dải:

  • Dải đèn LED WS2812b không thấm nước. Tôi đã sử dụng 30 đèn LED / mét. Loại không thấm nước thường có sẵn băng dính hai mặt nên rất dễ lắp vào. Bạn sẽ cần 1 mét cho mỗi kênh vì các kênh dài một mét. Nhiều đèn LED hơn trên mỗi mét cũng không sao - chỉ cần đảm bảo có được nguồn điện lớn tương ứng. Mỗi (5050) đèn LED trong các dải này có thể sử dụng tối đa 60ma khi bật hoàn toàn.
  • Vỏ dự án điện tử bằng nhựa 60x36x25mm - cái này đủ nhỏ để chứa D1 Mini.
  • Giắc cắm DC 5.5mm x 2.1mm gắn bảng điều khiển
  • Nguồn điện 5v - một bộ 2 amp sẽ ổn với 30 LEDS @ 0,06 amp mỗi khi bật đầy.
  • Cáp USB to 5.5mm x 2.1mm nếu bạn muốn cấp nguồn cho dự án này từ pin USB
  • Bo mạch D1 Mini ESP8266 - cũng có sẵn với giá ít hơn, nhưng thời gian chờ lâu hơn.
  • Kênh nhôm với nắp và nắp cuối cho dải đèn LED. Có nhiều cấu hình để bạn lựa chọn. Cái này đủ rộng cho dải LED WS2812b (12mm) và cấu hình thấp.
  • Thanh nhôm - kênh có chiều rộng 17mm, vì vậy thanh nhôm rộng 1/2 "là kích thước tốt. Nó phải dày 1/16" và dài 6 "cho mỗi thanh bạn làm.
  • Băng keo xốp hai mặt - rộng 1/2 ".
  • Tụ điện 1000uF - được khuyến nghị cho mỗi dải, để giúp ngăn chặn điện áp tăng đột biến làm hỏng đèn LED.
  • Trèo lên dây. Dây silicone 26 gauge này rất mềm dẻo và giúp giữ cho dây không kéo miếng hàn ra khỏi dải đèn LED. Nó cũng không bị chảy khi bạn chạm vào nó với mỏ hàn. Tôi cũng đã sử dụng dây servo cũng rất linh hoạt, nhưng dây silicone là dây yêu thích mới của tôi. Bạn sẽ chỉ cần trên 6 "mỗi màu (đỏ, đen, vàng).
  • Dây jumper - cái màu đỏ, đen và vàng được sử dụng để kết nối với CPU. Bạn có thể bỏ qua những điều này và hàn dây móc trực tiếp vào bảng nếu bạn là người tự tin.
  • Một điện trở 330 ohm để giảm nhiễu trong đường dữ liệu dải LED.
  • Một Diode Tín hiệu 1N4448 hoặc tương tự để cho phép bộ xử lý 3.3v điều khiển dải LED 5v một cách đáng tin cậy.
  • Ống co nhiệt 3mm - bạn sẽ chỉ cần khoảng 5 "trong số đó.

Bước 2: Xây dựng các quán bar

Xây dựng các quán bar
Xây dựng các quán bar
Xây dựng các quán bar
Xây dựng các quán bar
Xây dựng các quán bar
Xây dựng các quán bar
Xây dựng các quán bar
Xây dựng các quán bar

Cấu trúc của các thanh giống như trong Hướng dẫn trước này. Ở đây có các hình ảnh từng bước tương tự từ bản dựng gần đây và bạn có thể tìm thấy cuộc thảo luận trên Có thể hướng dẫn khác.

Một mẹo mới để dán các đèn LED xuống kênh nhôm: Đôi khi băng keo hai mặt trên các dải LED ngắn hơn một chút so với bảng mạch LED và bạn sẽ thấy một chút khóa ở dải LED. Nếu bạn chỉ cần cắt băng ở vị trí đó, nó sẽ nằm phẳng.

Tôi cũng đã sử dụng một số giọt keo UV để khóa dây nguồn và bất kỳ phần nào của dải đèn LED không nằm xuống.

Thay vì các bộ điều khiển Particle Photon, dự án này sử dụng các bo mạch WeMos D1 Mini đã qua sử dụng, dựa trên bộ chip ESP8266. Đây là những điều tốt đẹp và nhỏ cho một dự án LED. Tôi đã sử dụng tiêu đề nam để có chỗ cho vận động viên nhảy cầu nữ. Đảo ngược các đầu nối sẽ không vừa với vỏ máy. Cách làm này cũng dễ hàn. Tôi cũng đã sử dụng dây lõi rắn 20 khổ có uốn trên các đầu nối cái và cách đó cũng hoạt động, nhưng tốn nhiều công sức hơn.

Các thanh này sử dụng cùng một phương pháp tiếp cận LED hy sinh cho LED đầu tiên. Trong thực tế, nó thực sự không đáng chú ý. Ngoài ra, khoảng cách nhỏ giữa hai đầu tiên cũng gần như không đáng chú ý

Nếu bạn định sử dụng các kẹp để gắn kênh nhôm, thanh nhôm kết nối kênh với hộp dự án có thể cản trở việc gắn trực tiếp các kẹp vào tường, vì vậy bạn có thể cần đặt một số vòng đệm hoặc đai ốc lỏng lẻo bên dưới ở đó để chống lại chúng bằng 1/16.

Bước 3: Mã lưới

Image
Image
Mã lưới
Mã lưới

Mỗi thanh LED chạy cùng một mã. Cơ sở của dự án này là Thư viện PainlessMesh tại https://gitlab.com/BlackEdder/painstMesh. Thư viện đó xử lý hầu hết các công việc cấp thấp như thiết lập các Điểm truy cập, Máy chủ Web, v.v. Mỗi thanh là một nút lưới.

Lưới có một bộ điều khiển và thông báo thay đổi hoạt ảnh được phát tới tất cả các nút / thanh LED. Đối với một lưới lớn, có thể có một số độ trễ trong tin nhắn, nhưng đối với quy mô mà tôi đang làm việc, điều đó không đáng chú ý.

Khi khởi động, nút giả định rằng nó là bộ điều khiển, nhưng sau đó thông báo ChangeNodes sẽ kích hoạt đánh giá. # ID chip thấp nhất trong lưới sẽ trở thành bộ điều khiển. Điều này thường mất một hoặc hai giây để tất cả các nút ổn định và giả sử một bộ điều khiển duy nhất. Bạn có thể nỗ lực nhiều hơn để đồng bộ hóa lại nhanh hơn (giữa hình ảnh động), nhưng những thông báo thay đổi đó khá ồn ào, vì vậy dù sao thì mạng cũng cần một chút thời gian để ổn định. Trong thực tế, một khi chúng tái đồng bộ, chúng sẽ rất vững chắc.

Đối với các hoạt ảnh vượt qua các thanh, mã sẽ lấy danh sách các nút, sắp xếp nó, sau đó chỉ vẽ nếu nút hiện tại là nút đang được vẽ. Chúng sắp xếp theo thứ tự id chip, vì vậy bạn có thể tạo các hoạt ảnh nhất quán, bất kể khi nào chúng khởi động. Ngoài ra, các hình ảnh động sẽ thích ứng với các nút bị loại bỏ.

Mã hoạt ảnh xuất hiện ở ba nơi. Đầu tiên là hàm getCallback, nơi thanh đã nhận một lệnh hoạt ảnh mới. Điều này khá đơn giản - chỉ cần đặt kích thước bước thời gian cho hoạt ảnh và đặt lại bộ đếm. Vị trí thứ hai là trong hàm vòng lặp. Trong đó, mã sẽ kiểm tra xem hoạt ảnh hiện tại đã được thực hiện xong chưa và chuyển sang bước tiếp theo. Vị trí cuối cùng cho mã hoạt ảnh là hàm stepAnimation, nơi tất cả các bản vẽ được thực hiện.

Hệ thống sử dụng bộ đếm thời gian mili để cập nhật - tránh sử dụng chức năng trì hoãn vì nó chặn một số thư viện. Mã mili phải di chuyển chính xác.

Lưu ý rằng tôi gặp sự cố với thư viện NeoPixel và không đau đớn với nhiều đèn LED, vì vậy tôi đã chuyển sang FastLED.

Đây là mã trên GitHib, và nó cũng được đính kèm ở đây. Bạn tải nó khá nhiều trên tất cả các thanh và bạn đã sẵn sàng để bắt đầu mã hóa hoạt ảnh LED!

Đề xuất: