Mục lục:

Ánh sáng tâm trạng nguồn mở, tương tác: 9 bước (có hình ảnh)
Ánh sáng tâm trạng nguồn mở, tương tác: 9 bước (có hình ảnh)

Video: Ánh sáng tâm trạng nguồn mở, tương tác: 9 bước (có hình ảnh)

Video: Ánh sáng tâm trạng nguồn mở, tương tác: 9 bước (có hình ảnh)
Video: [Official MV HD] Lạc Đường - Phạm Trưởng 2024, Tháng bảy
Anonim
Ánh sáng tâm trạng nguồn mở, tương tác
Ánh sáng tâm trạng nguồn mở, tương tác

Tài liệu hướng dẫn này sẽ hướng dẫn cách tạo ra một ánh sáng tâm trạng đa chức năng, tương tác. Cốt lõi của dự án này là đèn LED BlinkM I2C RGB. Khi tôi đang duyệt web vào một ngày nọ, BlinkM đã thu hút sự chú ý của tôi, và tôi chỉ nghĩ rằng đó là một cách quá tuyệt để bỏ qua. Vì vậy, vài tháng sau, tôi quyết định tạo ra một số loại tâm trạng bằng cách sử dụng nó. Và nó đây!

Bước 1: Những gì bạn cần

Dự án này có thể khá rẻ nếu bạn sử dụng đúng công cụ. Tôi sẽ lưu ý các bộ phận thay thế có thể được sử dụng để làm cho nó ít tốn kém hơn. Tôi chỉ sử dụng một số thành phần đắt hơn một chút, do mặt mà nó làm cho quá trình xây dựng dễ dàng hơn một chút.

Nguồn sáng:

Đèn LED điều khiển BlinkM RGB I2C

Bộ điều khiển:

Bộ vi điều khiển Arduino - Tôi đã sử dụng 'Arduino Nano' vì tôi cần thứ gì đó thực sự nhỏ, do lượng không gian có sẵn bên trong 'đèn cảm ứng' được sử dụng để chứa mọi thứ

Nhà ở:

Tôi đã xem xét nhiều loại vỏ bọc khác nhau cho ánh sáng tâm trạng này, và cuối cùng tôi quyết định được thứ mà tất cả chúng ta đều quen thuộc: những 'đèn vòm cảm ứng' rẻ tiền đó. Tôi đã tìm thấy một gói hai gói ở nhà với giá chỉ khoảng 4 đô la. Khoảng không gian trong những chiếc đèn này là quá đủ để lắp tất cả các thành phần, nếu bạn làm đúng.

Nguồn / Kết nối:

Lúc đầu, tôi nghĩ sẽ rất tuyệt nếu sử dụng hết nguồn pin này (vì vỏ máy đã có sẵn một ngăn chứa pin rất tiện lợi), nhưng điều đó không thực tế nếu bạn sử dụng nó trong thời gian dài. Thay vào đó, tôi sử dụng giắc cắm nguồn DC 5,5mm từ vô tuyến điện với một biến áp 12V 150Ma mà tôi đã đặt xung quanh. Bộ điều chỉnh trên Arduino hạ xuống 12 volt và 150Ma là dòng điện dồi dào để cung cấp năng lượng cho mọi thứ. Đối với dây, tôi chỉ sử dụng bất cứ thứ gì tôi có xung quanh. Tuy nhiên, hãy chắc chắn sử dụng dây lõi rắn.

Các thành phần:

Các thành phần được sử dụng để tạo ra ba cảm biến cho ánh sáng tâm trạng: cảm biến âm thanh, cảm biến 'chạm' và cảm biến ánh sáng. Đối với cảm biến âm thanh, bạn sẽ cần: - LM741 Op-Amp- Microhone điện tử (3 dây dẫn) - Điện trở 2,2k- Điện trở lại 100k- Điện trở 200k- Tụ điện 0,47uf- Tụ gốm 0,047uf- Điện trở 2x 10k- DiodeFor cảm biến 'tap', bạn sẽ chỉ cần: - Phần tử Piezo (bạn có thể lấy nó từ một số đồ chơi điện tử, điện thoại và nhiều thiết bị điện tử khác phát ra tiếng bíp hoặc bạn có thể lấy nó từ mouser, radiohack, v.v.).- Điện trở 1M … Và đối với cảm biến ánh sáng, bạn sẽ cần: - Tế bào CdS (LDR), tốt nhất là một tế bào rất lớn (độ phân giải cao hơn).- Điện trở 10K- Đầu cắm 3 chân & dây kết nối uốn (tùy chọn)

Khác

Tôi sử dụng breadboard vì tôi không thực sự muốn hàn nhiều. Tôi cũng đã sử dụng rất nhiều dây kết nối uốn cong để làm cho tất cả các kết nối an toàn hơn, nhưng đó là tùy chọn. Ngoài ra, bạn có thể sử dụng bảng phát triển homebrew để hỗ trợ vi ATmega168 và sử dụng ATmega168 kiểu DIP (loại dài với các dây dẫn lớn hơn). Tôi không chắc nó sẽ phù hợp như thế nào nhưng nó chắc chắn đáng để thử. Nếu bạn không sở hữu / không có tiền cho một breadboard, bạn có thể hàn ATmega168 thông thường vào PCB và thêm bộ điều chỉnh, kết nối lập trình, v.v.

Bước 2: Chuẩn bị 'đèn cảm ứng'

Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'
Chuẩn bị 'đèn cảm ứng'

Đầu tiên, chúng ta cần làm cho 'đèn cảm ứng' giá rẻ mà chúng ta có ở nhà kho thân thiện với tâm trạng. Đầu tiên, lật đèn lên và tháo nắp pin và các ốc vít. Bên trong ngăn chứa pin, bạn sẽ thấy bộ cố định bóng đèn. Lấy nó ra, và loại bỏ nó và bóng đèn. Tiếp theo, mở vỏ. Bây giờ chúng ta cần phải đối phó với sức mạnh. Tháo miếng kim loại ở giữa ngăn chứa pin cũng như dây kết nối nó với một trong các điểm tiếp xúc của pin. Hàn dây vào các điểm tiếp xúc của pin như hình minh họa. Bạn cũng có thể muốn dán nhãn nếu bạn không có dây màu khác. Chúng tôi cũng sẽ làm cho đèn tâm trạng này có thể hoạt động thông qua một biến áp ổ cắm trên tường. Khoan một lỗ bằng cách sử dụng một mũi khoan có kích thước bằng với đường kính của giắc cắm nguồn DC. Sau đó vặn nó vào cho đến khi nó bằng phẳng với vỏ. Sửa đổi cuối cùng mà chúng tôi cần thực hiện ở đây là thêm cảm biến vòi piezo. Tốt nhất nên gắn trên 'vành' nhựa để có độ nhạy tốt hơn. Tôi đã hình dung nó sau này trong hướng dẫn này được gắn ở nơi khác, nhưng đó chỉ là do tôi đã phải mở và đóng vỏ trong quá trình thử nghiệm đến mức dây bắt đầu bị đứt. Đơn giản chỉ cần keo nóng nó vào nhựa, nhưng đảm bảo nó không cản trở chuyển động cơ học trên mái vòm movabke! (tức là không để nó nhô ra quá nhiều).

Bước 3: Thêm bảo vệ mạch nguồn

Thêm bảo vệ mạch nguồn
Thêm bảo vệ mạch nguồn

Phần này là một tiện ích bổ sung đơn giản sử dụng điốt để bảo vệ máy biến áp trên tường / pin khỏi bị chiên nếu bạn lắp pin cùng lúc với giắc cắm nguồn DC. Bạn có thể sử dụng bất kỳ điốt chặn nào miễn là định mức điện áp tối đa cho chúng cao hơn định mức của máy biến áp tường. Phần có nhãn 'VIN' trong dải điện không được kiểm soát trên bảng mạch (đi đến VIN trên arduino). Phần có nhãn 'DCPower' là giắc cắm nguồn DC. Vì một số lý do, chương trình tôi sử dụng để tạo giản đồ này thực sự kén chọn nhãn, vì vậy đó là lý do tôi đặt tên cho nó. LƯU Ý: Nếu bạn không tạo mạch này, bạn sẽ KHÔNG thể giữ pin trong ngăn chứa pin cùng lúc bạn cắm đèn tâm trạng vào máy biến áp trên tường, nếu không sẽ làm hỏng nó.

Bước 4: Thêm Breadboard, Arduino và BlinkM

Thêm Breadboard, Arduino và BlinkM
Thêm Breadboard, Arduino và BlinkM

Trước khi thêm breadboard, chúng ta cần phải cách ly các điểm tiếp xúc của pin khỏi mặt sau breadboard bằng kim loại (nghĩa là nếu bạn có tấm kim loại bị dính vào của bạn. Nếu không, hãy bỏ qua bước này). Dán một ít băng keo lên tất cả các điểm tiếp xúc kim loại để đảm bảo chúng được cách điện. Chúng tôi không muốn bất kỳ dây điện bị lộ. Bây giờ keo xuống (tôi đã sử dụng keo nóng) bảng mạch trên đầu ngăn chứa pin. May mắn cho chúng tôi, nó tình cờ phù hợp một cách hoàn hảo. Bây giờ cắm dây dương (+) và dây âm (-) từ bước 2 vào một trong các dải nguồn âm và dương của breadboard. Bây giờ chúng ta có thể kết nối arduino và nháym với nhau. Đây là kết nối pin:

  • A5 - Đồng hồ (có nhãn 'c' trên BlinkM)
  • A4 - Dữ liệu (có nhãn 'd' trên BlinkM)

Và một trong những điều bạn đã làm, hãy kết nối VCC (+) KHÔNG ĐƯỢC CHẤP NHẬN với chân 'VIN' trên arduino, và VCC CÓ QUY ĐỊNH với chân (+) trên BlinkM. Sau đó kết nối GND trên arduino và BlinkM với GND trên dải nguồn và kết nối cả hai dải nguồn GND lại với nhau. HÃY CẨN THẬN không trộn lẫn các kết nối này, nếu không bạn có thể làm hỏng BlinkM.

Bước 5: Cảm biến - Âm thanh, Chạm và Ánh sáng

Cảm biến - Âm thanh, Chạm và Ánh sáng
Cảm biến - Âm thanh, Chạm và Ánh sáng
Cảm biến - Âm thanh, Chạm và Ánh sáng
Cảm biến - Âm thanh, Chạm và Ánh sáng
Cảm biến - Âm thanh, Chạm và Ánh sáng
Cảm biến - Âm thanh, Chạm và Ánh sáng

Tiếp theo là các cảm biến. Cảm biến ánh sáng là đơn giản nhất để cấu tạo. Dây đi ra bên phải kết nối với arduino. Thông tin thêm về chân MÀ các cảm biến kết nối với là ở bước tiếp theo. Cảm biến âm thanh khó hơn một chút, nhưng không quá phức tạp. XIN LƯU Ý: Tôi không hiển thị một mạch phân áp ở đây. 2.5V trong sơ đồ phải được cung cấp thông qua một thứ gọi là 'bộ chia điện áp'. Nó là một mạch rất, rất đơn giản bao gồm nhiều điện trở cố định, hoặc một nồi (chiết áp). Dùng nồi 50K cho mạch này. Google 'bộ chia điện áp' và xem mục nhập wikipedia để được trợ giúp về cách xây dựng bộ chia điện áp. CHỈNH SỬA 27/09/08: Tôi đã loại bỏ mạch âm thanh này và thay vào đó sử dụng một mạch được trục vớt từ mặt dây đèn kích hoạt âm thanh. Mạch ở đây không hoạt động tốt; Tôi không chắc tại sao, nhưng thiết kế có sai sót, có gì đó không ổn. Tôi nhận thấy mạch từ mặt dây chuyền sử dụng op-amp SMD LM386. Tôi chỉ hàn trước khi các điện trở đi đến đèn LED, VCC và GND. Sau đó, tất cả những gì tôi phải làm là thao tác các giá trị trong phần mềm một chút và bắt đầu! hoạt động tốt hơn ánh sáng tâm trạng đáp ứng âm thanh. Ở thời điểm hiện tại, đoạn video phát ánh sáng theo nhạc là lúc đoạn mạch ban đầu được sử dụng. Có lẽ tôi sẽ tải lên một cái khác thể hiện thiết kế được cải tiến (có vẻ như nó phản hồi với âm nhạc do mạch mới). Tôi không chắc làm thế nào để hàn phần tử piezo, vì vậy tôi đã đoán và hàn nó như hình. Nó hoạt động, mặc dù. Sự phân cực của piezo không quan trọng. Điện trở nằm trên bảng mạch (không được hiển thị). LƯU Ý QUAN TRỌNG KHÁC: Các giá trị cho các mạch này SẼ khác với giá trị của bạn, vì vậy bạn SẼ cần thực hiện một số điều chỉnh trong mã. Nếu bạn có bất kỳ câu hỏi nào về những giá trị này, vui lòng cho tôi biết.

Bước 6: Tìm không gian cho các cảm biến và kết nối tất cả

Tìm không gian cho các cảm biến và kết nối tất cả
Tìm không gian cho các cảm biến và kết nối tất cả
Tìm không gian cho các cảm biến và kết nối tất cả
Tìm không gian cho các cảm biến và kết nối tất cả

Phần này không nên quá khó. Vỏ 'đèn cảm ứng' có không gian rộng rãi để lắp mọi thứ chúng ta cần. Tôi đã đặt các cảm biến ở bất cứ nơi nào chúng vừa vặn. Tất cả các kết nối là:

  • Chân A6: Cảm biến âm thanh - LƯU Ý: đối với người dùng không phải arduino nano, các arduino khác không có chân analog thứ 7. Bạn sẽ phải thay đổi điều này trong mã.
  • Chân A3: Cảm biến Piezo (cảm biến chạm)
  • Chân A0: Cảm biến ánh sáng

Hãy CHẮC CHẮN bạn không vô tình kết nối dây dẫn (+) của cảm biến với dải điện không được kiểm soát, nếu không bạn sẽ làm hỏng chúng.

Bước 7: Kiểm tra nó

Kiểm tra nó
Kiểm tra nó
Kiểm tra nó
Kiểm tra nó

Đảm bảo rằng các kết nối nguồn tốt; cắm nó vào bằng cách sử dụng bộ đổi nguồn và thử nó bằng pin. Một vấn đề phổ biến là kết nối kém với mặt đất và dương. LƯU Ý: Tôi biết rằng hình ảnh không hiển thị cảm biến ánh sáng; Tôi chỉ lấy nó trước khi tôi thêm phần đó.

Bước 8: Lập trình nó, đóng nó lại và sử dụng nó

Lập trình nó, đóng nó lại và sử dụng nó
Lập trình nó, đóng nó lại và sử dụng nó
Lập trình nó, đóng nó lại và sử dụng nó
Lập trình nó, đóng nó lại và sử dụng nó
Lập trình nó, đóng nó lại và sử dụng nó
Lập trình nó, đóng nó lại và sử dụng nó

Mã tôi đã sử dụng sử dụng thư viện được tạo bởi Tod E. Kurt (www.todbot.com/blog) và những người tạo ra BlinkM (ThingM). Tôi sẽ cố gắng thêm ghi chú vào mã khi có thể để làm cho nó dễ hiểu hơn; Tôi đang bận vào thời điểm hiện tại. Bạn phải có thư viện mã (tệp có nhãn "BlinkM_funcs.h") được mở trong phần mềm arduino khi tải lên mã, nếu không mã sẽ không hoạt động. Nếu bạn muốn xem mã nhưng không có phần mềm arduino, bạn có thể mở nó bằng một chương trình xử lý văn bản (hay còn gọi là wordpad cho người dùng windows). Ý tưởng cho các chức năng mới được hoan nghênh. Xin vui lòng đăng chúng; Tôi muốn tạo mã nguồn mở này. Mục đích của cách tôi cấu trúc mã là để các chức năng mới có thể được thêm vào một cách dễ dàng. Một số chức năng được nhà sản xuất (ThingM) lập trình vào BlinkM, nhưng tôi đã thực hiện hai trong số đó; 'Ánh sáng âm thanh' và 'Ánh sáng bắt chước'. Ngay bây giờ nó có những thứ sau:

  • Ánh sáng tâm trạng - Từ từ mờ dần đến các màu ngẫu nhiên
  • Nến - Chập chờn như một ngọn nến với cam và vàng
  • Water Reflections - 'Shimmers' với màu xanh lam, màu ngọc lam và màu lục lam
  • Màu theo mùa - Chuyển các màu theo mùa (tôi nghĩ chúng có màu xanh lam, xanh lục, tím và cam)
  • Giông tố - Đôi khi nhấp nháy mô phỏng tia chớp
  • Đèn dừng - Chuyển từ đỏ sang vàng sang xanh lục và quay lại
  • Mimic Light - Ghi lại một chuỗi lên đến 50 chu kỳ bật / tắt ánh sáng (bạn có thể sử dụng đèn pin), 'ghi nhớ' thời gian bật / tắt, sau đó phát lại chúng trong một vòng lặp không bao giờ kết thúc.
  • Ánh sáng âm thanh - Nhịp điệu cho âm thanh của âm nhạc

Chạm nhẹ vào vòm mờ để thay đổi chức năng bất kỳ lúc nào. Có một ngoại lệ đối với quy tắc này: khi bạn đạt đến chức năng 'bắt chước ánh sáng', nó sẽ nhấp nháy màu xanh lục. Nếu bạn chạm vào mái vòm trong khi nó đang nhấp nháy, nó sẽ chuyển đến chức năng cuối cùng ('đèn âm thanh'). Nếu bạn chỉ đợi, nó sẽ chuyển đến chức năng 'bắt chước ánh sáng'. Khi bạn đến chức năng 'đèn âm thanh', bạn không thể thay đổi các chức năng và chuyển đến chức năng đầu tiên, do cách nó đọc cảm biến âm thanh. Bây giờ đến phần khó. Để đóng vỏ đèn theo tâm trạng, bạn phải thực hiện một số bước cẩn thận. Đầu tiên, bạn phải xếp các lò xo hỗ trợ với các mấu nhỏ trên vòm nhựa. Vì giắc cắm nguồn DC nằm trên vành và các dây dẫn đến breadboard, bạn phải trượt vòm nhựa qua các dây đó TRƯỚC, sau đó xếp các cột vít của vành ngoài với các vết lõm trên vòm nhựa. Đảm bảo rằng tất cả các mấu thẳng hàng với vị trí của các lò xo hỗ trợ, cũng tương ứng với các cột vít trên vành và các lỗ vít trên tấm đế. Sau đó, khi bạn đã chắc chắn mọi thứ đều thẳng hàng, hãy chụp phần viền bên ngoài xuống tấm đế. Tiếp theo, đảm bảo rằng không có dây nào bị mắc kẹt trong lò xo hoặc ở nơi mà chúng có thể bị kẹt trong tương lai. Điều này sẽ cản trở chuyển động của mái vòm nhựa. Cuối cùng, thay thế các vít và tận hưởng! Lưu ý cuối cùng: QUAN TRỌNG: KHÔNG sử dụng pin và cắm bộ chuyển đổi trên tường cùng một lúc. Tôi không chắc điều gì sẽ xảy ra nhưng tôi chắc chắn rằng nó sẽ phá hủy mọi thứ được kết nối với nguồn điện !!

Bước 9: HẠN CHẾ

Đây là một số video: Đây là 6 chức năng được lập trình sẵn được tích hợp trong BlinkM:… Đây là mã phản hồi âm thanh / nhạc tùy chỉnh mà tôi đã thêm (bạn có đoán được đó là bài hát gì không… ?:… Và cuối cùng, nhưng chắc chắn là không ít nhất, là chức năng thú vị nhất (tôi nghĩ), và khó nhất để thực hiện tất cả chúng; chức năng 'bắt chước ánh sáng':

Đề xuất: