Mục lục:

Chu kỳ đèn LED RGB thông qua phổ màu bằng Raspberry Pi 2 và Scratch: 11 bước
Chu kỳ đèn LED RGB thông qua phổ màu bằng Raspberry Pi 2 và Scratch: 11 bước

Video: Chu kỳ đèn LED RGB thông qua phổ màu bằng Raspberry Pi 2 và Scratch: 11 bước

Video: Chu kỳ đèn LED RGB thông qua phổ màu bằng Raspberry Pi 2 và Scratch: 11 bước
Video: 1.2: Raspberry là gì? bạn có thể làm gì với nó 2024, Tháng mười một
Anonim
Chu kỳ đèn LED RGB thông qua phổ màu bằng Raspberry Pi 2 và Scratch
Chu kỳ đèn LED RGB thông qua phổ màu bằng Raspberry Pi 2 và Scratch

Cập nhật Ghi chú vào ngày 25 tháng 2 năm 2016: Tôi đã cải tiến chương trình Scratch và thiết kế lại tài liệu hướng dẫn của tôi.

Xin chào các bạn, với dự án này, tôi muốn sử dụng Scratch để xoay vòng một đèn LED RGB thông qua phổ màu.

Có rất nhiều dự án làm điều này với Arduino, vì vậy tôi rất tò mò muốn biết liệu tôi có thể đạt được kết quả tốt với Raspberry Pi hay không.

Nỗ lực đầu tiên của tôi đối với tài liệu hướng dẫn này không được tốt lắm, vì vậy tôi đã nghiên cứu thêm một chút và nghĩ rằng tôi có thứ gì đó hoạt động tốt hơn. Khi tôi đang xem qua một số dự án Arduino để cố gắng hiểu mình đã sai ở đâu trong chương trình ban đầu của mình, tôi tình cờ tìm thấy một tập lệnh Arduino hoàn toàn xuất sắc, tôi sẽ liên kết với bạn ở phần cuối. Bạn tôi, Andrew và tôi đã dành cả buổi chiều để chuyển đổi nó thành Scratch. Chúng tôi đã cố gắng hết sức với nó và tôi hy vọng bạn sẽ thử.

Dự án này là phần tiếp theo từ tài liệu hướng dẫn của tôi về cách thay đổi độ sáng của đèn LED bằng cách sử dụng các nút và Scratch mà bạn có thể tìm thấy ở đây:

www.instructables.com/id/PWM-Based-LED-Cont…

Liên kết đến Bản phác thảo Arduino gốc mà tôi đã dựa trên chương trình Scratch của mình:

www.arduino.cc/en/Tutorial/DimmingLED tác giả Clay Shirky

Bước 1: Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này

Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này
Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này
Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này
Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này
Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này
Cùng nhau thu thập những thứ bạn sẽ cần cho dự án này

Các thành phần bạn sẽ cần:

Raspberry Pi với hệ điều hành Raspian và kết nối internet

1 x Breadboard

1 x LED RGB (cực âm chung)

Điện trở 3 x 330 ohm (nâu cam cam)

4 x cáp breadboard nam / nữ

1 x cáp nam / nam breadboard (hoặc cáp jumper lõi đơn nhỏ nếu bạn có)

Bước 2: Hiểu các chân trên đèn LED RGB làm gì

Hiểu chức năng của các chân trên đèn LED RGB
Hiểu chức năng của các chân trên đèn LED RGB

Lấy đèn LED RGB của bạn và nhìn vào các chân, bạn sẽ nhận thấy rằng một chân dài hơn tất cả các chân khác. Định hướng đèn LED sao cho chân dài nhất này ở bên trái.

Chân 1 được sử dụng để làm cho đèn LED sáng ĐỎ

Chân 2 là chân nối đất

Chân 3 làm cho đèn LED tỏa sáng XANH

Chân 4 làm cho đèn LED sáng MÀU XANH

Đèn LED RGB tôi đang sử dụng có cực âm chung, về cơ bản có nghĩa là bạn kết nối chân nối đất của nó với chân nối đất của Raspberry Pi để làm cho nó hoạt động.

Bước 3: Cắm điện trở 330 Ohm và cáp nối đất vào bảng mạch

Lắp điện trở 330 Ohm và cáp nối đất vào bảng mạch
Lắp điện trở 330 Ohm và cáp nối đất vào bảng mạch

Để giữ cho mọi thứ dễ nhìn thấy trên sơ đồ, chúng ta có thể đặt các điện trở và cáp nối đất ở nơi chúng cần đến đầu tiên. Các điện trở không có cực nên không quan trọng chúng đi theo vòng nào.

Lưu ý: Tại sao chúng ta cần ba điện trở cho một đèn LED?

Hãy nghĩ về một đèn LED RGB như 3 đèn LED khác nhau được gộp lại thành một. Nếu chúng ta có 3 đèn LED riêng lẻ trong một mạch, chúng ta sẽ sử dụng một điện trở cho mỗi đèn, và vì vậy chúng ta cần một điện trở cho mỗi chân màu của đèn LED RGB.

Bước 4: Thêm đèn LED vào mạch của chúng tôi

Thêm đèn LED vào mạch của chúng tôi
Thêm đèn LED vào mạch của chúng tôi
Thêm đèn LED vào mạch của chúng tôi
Thêm đèn LED vào mạch của chúng tôi

Bây giờ chúng ta đã có điện trở và cáp nối đất tại chỗ, chúng ta có thể lắp đèn LED vào mạch breadboard. Định hướng đèn LED để chân dài nhất ở bên trái.

Nhẹ nhàng tách các chân ra một chút để chúng cắm vào breadboard, đảm bảo mỗi chân nằm trên cùng một đường dây với một điện trở tương ứng.

Chân dài nhất (chân 2) phải thẳng hàng với cáp nối đất màu đen.

Bước 5: Gắn cáp vào bảng mạch phần 1: Kết nối đất

Gắn cáp vào bảng mạch phần 1: Kết nối đất
Gắn cáp vào bảng mạch phần 1: Kết nối đất
Gắn cáp vào bảng mạch phần 1: Kết nối đất
Gắn cáp vào bảng mạch phần 1: Kết nối đất
Gắn cáp vào bảng mạch phần 1: Kết nối đất
Gắn cáp vào bảng mạch phần 1: Kết nối đất

Đầu tiên, hãy kết nối mặt đất từ Raspberry Pi với chân tiếp đất trên đèn LED.

Trong sơ đồ của tôi, tôi đã kết nối cáp nam / nữ từ chân 6 trên Raspberry GPIO với đường ray nối đất của bảng mạch để kết nối chân nối đất của đèn LED với Raspberry Pi.

Thẻ tham chiếu hiển thị cho bạn bố cục pin cho GPIO Raspberry Pi. GPIO 40 chân ở bên phải của hình ảnh là dành cho Raspberry Pi 2, mà tôi đang sử dụng để thực hiện dự án này.

Bước 6: Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ

Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ
Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ
Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ
Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ
Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ
Gắn cáp vào bảng mạch phần 2: Kết nối chân đèn LED màu đỏ

Đẩy đầu cáp nam vào lỗ ngay trên điện trở bên trái và đẩy đầu cáp vào GPIO17 (pin11) trên Raspberry Pi.

Thẻ tham chiếu cho các chân GPIO sẽ giúp hướng dẫn bạn đến đúng chân.

Bước 7: Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây

Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây
Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây
Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây
Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây
Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây
Gắn cáp vào bảng mạch phần 3: Kết nối chân đèn LED màu xanh lá cây

Đẩy đầu cáp đực vào lỗ ngay trên điện trở ở giữa và đẩy đầu cáp cái vào GPIO18 (pin12) trên Raspberry Pi.

Thẻ tham chiếu cho các chân GPIO sẽ giúp hướng dẫn bạn đến đúng chân.

Bước 8: Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam

Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam
Gắn cáp vào bảng mạch phần 4: Kết nối chân đèn LED màu xanh lam

Đẩy đầu nam của cáp vào lỗ ngay trên điện trở bên phải và đẩy đầu cáp vào GPIO27 (pin13) trên Raspberry Pi.

Thẻ tham chiếu cho các chân GPIO sẽ giúp hướng dẫn bạn đến đúng chân.

Bước 9: Lập trình trong Scratch: Kiểm tra mạch

Lập trình trong Scratch: Kiểm tra mạch
Lập trình trong Scratch: Kiểm tra mạch
Lập trình trong Scratch: Kiểm tra mạch
Lập trình trong Scratch: Kiểm tra mạch
Lập trình trong Scratch: Kiểm tra mạch
Lập trình trong Scratch: Kiểm tra mạch

Khi lần đầu tiên tôi bắt đầu dự án này, tôi đã hơi bất cẩn và trộn lẫn các dây cáp màu của mình, điều đó có nghĩa là khi tôi muốn màu đỏ bật lên, màu xanh lá cây sẽ xuất hiện, vì vậy tôi đã viết một chương trình đơn giản để xác minh rằng mọi thứ đã được kết nối chính xác.

Kiểm tra đèn LED được điều khiển bởi 3 cặp phím

Điều khiển A và Z ĐỎ, A bật đỏ, Z tắt đỏ

Điều khiển S và X XANH, S bật màu xanh lục, X chuyển sang màu xanh lục tắt

Điều khiển D và C MÀU XANH LÁ, D chuyển sang màu xanh lam bật, C chuyển sang màu xanh lam tắt

Đặt chân ở mức cao sẽ làm cho đèn LED sáng lên, đặt ở mức thấp sẽ làm đèn LED tắt.

Tải xuống chương trình và kiểm tra mạch của bạn nếu bạn muốn chắc chắn rằng nó được kết nối đúng cách.

Bước 10: Lập trình trong Scratch: Điều tôi muốn làm với đèn LED RGB

Lập trình trong Scratch: Điều tôi muốn làm với đèn LED RGB
Lập trình trong Scratch: Điều tôi muốn làm với đèn LED RGB

Lập trình trong Scratch là một trải nghiệm tuyệt vời. Nó có giao diện nhấp và kéo khá trực quan. Mặc dù nó được tạo ra chủ yếu để giới thiệu cho trẻ em làm quen với lập trình, tôi thực sự nghĩ rằng nó là một môi trường lập trình khá hữu ích như tôi nghĩ được thể hiện trong đoạn mã điều khiển đèn LED trong dự án của tôi.

Vì vậy, đây là những gì tôi muốn xảy ra:

Việc thay đổi màu sắc sẽ được thực hiện theo ba giai đoạn:

Trong giai đoạn đầu, chúng tôi bắt đầu với màu đỏ ở mức tối đa và màu xanh lá cây và xanh lam được đặt ở mức rất nhỏ.

Sau đó, chúng tôi bắt đầu giảm độ sáng màu đỏ xuống -1, trong khi tăng độ sáng của màu xanh lục lên 1.

Chúng tôi đã sử dụng bộ đếm vòng lặp để giới hạn số lần điều này xảy ra.

Khi bộ đếm vòng lặp đạt đến 255, chúng tôi bắt đầu giai đoạn thứ hai.

Trong giai đoạn thứ hai, màu xanh lá cây sẽ ở mức tối đa, màu đỏ và xanh lam được đặt ở mức thấp.

Chúng tôi giảm độ sáng xanh lục xuống -1 trong khi tăng độ sáng xanh lam lên 1.

Bộ đếm vòng lặp của chúng tôi cho giai đoạn thứ hai được đặt thành 509.

Khi nó đạt đến 509, chúng tôi sẽ bắt đầu giai đoạn 3.

Trong pha ba, màu xanh lam ở độ sáng tối đa và màu xanh lá cây và màu đỏ ở mức thấp.

Chúng tôi bắt đầu giảm độ sáng xanh dương xuống -1 trong khi tăng độ sáng đỏ lên 1.

Khi bộ đếm vòng lặp đạt 763, chu kỳ sẽ bắt đầu lại ở giai đoạn 1.

Chúng tôi có ba biến redVal, greenVal và blueVal để giữ các giá trị của mức độ sáng của mỗi màu và các giá trị này sau đó được gửi đến các chân GPIO chính xác để cấp nguồn cho các chân của đèn LED để đặt giá trị độ sáng của mỗi màu, từ đó cung cấp cho chúng tôi sự pha trộn màu sắc mà chúng tôi muốn.

Và đó là nỗ lực của tôi để xoay vòng qua phổ màu bằng cách sử dụng đèn LED RGB và Scratch.

Nếu bạn có Arduino và bạn chạy bản phác thảo mà tôi đã liên kết đã truyền cảm hứng cho tôi viết phiên bản Scratch, bạn sẽ thấy không có màu sắc nào nhấp nháy cả. Tôi không hoàn toàn chắc chắn tại sao phiên bản Scratch nhấp nháy nhiều như vậy. Tôi nghi ngờ rằng Arduino xử lý PWM tốt hơn, nhưng nếu bạn thấy điều gì đó trong mã của tôi cần được cải thiện, tôi thực sự sẽ rất biết ơn nếu bạn đã dành thời gian cho tôi biết.

Cảm ơn bạn đã đọc hướng dẫn của tôi và tôi hy vọng bạn có một ngày tuyệt vời!

Bước 11: Chụp màn hình chương trình Scratch

Chụp ảnh màn hình của chương trình Scratch
Chụp ảnh màn hình của chương trình Scratch

Nếu bạn muốn tự mình lập trình thì đây là một cái nhìn cận cảnh về bố cục.

Đề xuất: