Mục lục:

Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **: 6 bước (có hình ảnh)
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **: 6 bước (có hình ảnh)

Video: Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **: 6 bước (có hình ảnh)

Video: Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **: 6 bước (có hình ảnh)
Video: Part 3 - Babbitt Audiobook by Sinclair Lewis (Chs 10-15) 2024, Tháng mười hai
Anonim
Image
Image
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **
Đồng hồ treo tường ma trận LED RGB O-R-A và hơn thế nữa ** được cập nhật vào tháng 7 năm 2019 **

Xin chào. Tôi đang ở đây với một dự án mới tên là O-R-A

Đó là đồng hồ treo tường Ma trận LED RGB hiển thị:

  • giờ: phút
  • nhiệt độ
  • độ ẩm
  • biểu tượng điều kiện thời tiết hiện tại
  • Sự kiện Lịch Google và thông báo nhắc 1 giờ

tại một thời điểm cụ thể, nó hiển thị:

  • Lịch Google danh sách sự kiện hôm nay và ngày mai
  • dự báo thời tiết
  • tin nóng hổi

Các chức năng gây nghiện:

  • ngay hiện tại
  • Magic 8 bóng
  • Hẹn giờ trong bếp

Đối với bất kỳ chức năng nào, thiết bị sẽ phát một âm thanh cảnh báo khác. Đối với tất cả các loại điều kiện thời tiết, tệp âm thanh tương ứng sẽ được phát khi chức năng được gọi.

Các chức năng như danh sách Lịch Google, Dự báo thời tiết, tin nóng RSS bắt đầu vào thời điểm đã chọn trước khi thiết bị ở "chế độ đồng hồ", chúng cũng có thể được gọi là vận hành trực tiếp các công tắc. Một chức năng khác trong "chế độ đồng hồ" hiển thị ngày / tháng / năm hiện tại. Nó có thể được chạy bằng cách nhấn nút ENTER. Nhấn nút CHANGE STATE và sau đó nhấn nút ENTER trong vòng 3 giây ở "chế độ đồng hồ", cho phép bạn vào menu tùy chọn. Nút CHANGE STATE được đặt để cuộn menu bên trong, nút ENTER để xác nhận tùy chọn đã chọn.

Dự án này là sự phát triển của LEGOLED và TEMPO trước đây của tôi. Bảng điều khiển ma trận led RGB hiện có độ phân giải 32x64, vì vậy có thể hiển thị đồ họa dễ hiểu hơn, văn bản cố định và cuộn cùng một lúc. Sử dụng các chức năng TEMPO, thiết bị sẽ tự động bật và tắt mà không cần bất kỳ nút bấm hoặc bộ hẹn giờ bên ngoài nào. Mô-đun PIR phát hiện sự hiện diện của người do đó bật / tắt màn hình.

Dự báo thời tiết và dữ liệu lịch được thu thập mỗi phút do Lịch Google và Bản đồ thời tiết mở.

Dự án này hoàn toàn có thể tùy chỉnh bắt đầu từ Raspberry PI B +, 2 mô-đun LED ma trận 16x64 rgb và bộ nguồn. Nó có thể được mở rộng, giống như tôi đã làm, thêm card âm thanh USB, loa, mạch nguồn bật / tắt.

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

  • Raspberry Pi B + (với wifi hoặc dongle tích hợp)
  • Ma trận led 2 x 16x64 RGB hoặc 2 x 32x32
  • khung chung (khoảng 40x50 cm & sâu 3 cm)
  • tấm nhựa mờ
  • phim năng lượng mặt trời cửa sổ
  • PS 5V 10A
  • dây cáp
  • vỏ bọc nhiệt rắn (*)
  • mô-đun chuyển tiếp (*)
  • PS bổ sung cho bộ khuếch đại âm thanh (*)
  • Mô-đun khuếch đại âm thanh 3W (*)
  • diễn giả (*)
  • Card âm thanh USB (*)
  • 2 x công tắc nhỏ (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Điện trở: 3x1K, 2x10K, 1x2K (*)
  • khối thiết bị đầu cuối (*)
  • dải tiêu đề nữ (*)
  • dải tiêu đề nam (*)

(*) không bắt buộc

Bước 2: Thiết lập Raspberry Pi

Hướng dẫn này về cơ bản dựa trên thư viện Raspbian Jessie Lite, Python 2.7 và RGB LED MATRIX của người dùng Hzeller Github.

Trước hết là cập nhật và nâng cấp RPI

Cài đặt git

~ $ sudo apt-get install git

Tải xuống thư viện RGB LED MATRIX từ Github

~ $ git clone

~ $ cd rpi-rgb-led-ma trận

~ $ sudo làm

danh sách đen thẻ âm thanh bên trong RPI

~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf

danh sách đen snd_bcm2835

EOF

~ $ sudo update-initramfs -u

Đặt các thông số soundcard bên ngoài nếu cần khả năng âm thanh:

~ $ sudo nano /usr/share/alsa/alsa.conf

thay đổi:

defaults.ctl.card 0

defaults.pcm.card 0

đến

defaults.ctl.card 1

defaults.pcm.card 1

sau đó khởi động lại.

Bây giờ cài đặt thư viện ma trận

~ $ cd / home / pi / rpi-rgb-led-ma trận

~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-gối -y

~ $ make build-python

~ $ sudo make install-python

và cài đặt các thư viện khác cần thiết:

~ $ sudo easy_install pip

~ $ sudo pip cài đặt

Sao chép tập lệnh samplebase.py từ ~ / rpi-rgb-led-matrix / bindings / python / samples / vào thư mục chính

Nhận khóa API đăng ký miễn phí để mở Bản đồ thời tiết

Cài đặt ngay bây giờ trình bao bọc Python OWM cho PYthon 2.7 (cảm ơn người dùng CSPARPAGithub)

~ $ sudo pip cài đặt git +

Nhận thông tin đăng nhập Lịch Google theo hướng dẫn tại API lịch Google

Để chơi âm thanh, hãy cài đặt Pygame

~ $ sudo apt-get install python-pygame

Nguồn cấp RSS cần được cài đặt Feedparser

~ $ sudo pip cài đặt feedparser

sao chép tập lệnh của tôi ORAeng_131.py (phiên bản tiếng Anh) hoặc ORAita_131.py (phiên bản tiếng Ý) vào thư mục chính

tạo thư mục cho âm thanh và hình ảnh:

mkdir dbsounds

mkdir owm

tải xuống và sao chép tất cả các tệp-p.webp

www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0

thêm thông tin đăng nhập OWM của bạn vào dòng 69 (API_key)

đặt thành phố để dự báo thời tiết (kiểm tra xem nó có được phủ bởi OWM hay không và tên chính xác được chấp nhận) tại các dòng 213, 215

obs = owm.weather_at_place ('Napoli, IT')

fc = owm.three_hours_forecast ('Napoli, IT')

********************************** CẬP NHẬT 28/7/2019 ********** ******************

API Lịch Google mới tạo ra các vấn đề. Tôi đã giải quyết việc xóa một số mô-đun:

~ $ sudo apt-get remove --purge python-setuptools

~ $ sudo apt-get autoremove python-pyasn1

thử chạy script

~ $ sudo python ORAeng_150.py # hoặc ORAita_150.py cho phiên bản tiếng Ý

ở lần đầu tiên tập lệnh sẽ yêu cầu ủy quyền GCAL. Nhấp vào liên kết đến thông tin đăng nhập api của google. Sau đó, hãy cấp quyền, nếu mọi thứ ổn, bạn sẽ thấy đồng hồ bắt đầu.

do sử dụng quá nhiều RAM sau vài giờ, tôi đã viết một tập lệnh chỉ khởi động lại tập lệnh python khi mức sử dụng RAM vượt quá ngưỡng. Sau đó sao chép vào thư mục chính tập lệnh có tên memcheck đổi tên thành memcheck.sh và thêm vào crontab -e cùng với tập lệnh chính

* / 5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py

Bước 3: Tập lệnh

Tập lệnh chính cần được sửa đổi cho phù hợp với nhu cầu của bạn. Giả sử rằng thông tin đăng nhập Lịch OWM và Goggle được đặt làm hướng dẫn API tương ứng của chúng, các thông số quan trọng nhất là:

danh sách sự kiện lịch hoạt động mỗi giờ ở phút thứ 2, 32 (xem dòng kịch bản 65)

điều kiện thời tiết và dự báo hoạt động hàng giờ ở phút thứ 7, 37 (xem dòng kịch bản 66)

tin tức nóng hổi phát hàng giờ ở phút 11 (xem dòng kịch bản 67)

kênh rss tin tức nóng hổi. Tập lệnh bên trong được đặt RSS có thể hướng dẫn, nhưng có thể thay đổi. (xem dòng script 366)

Rõ ràng, script ưu tiên cho các thông báo nhắc nhở hoặc sự kiện trên lịch incomings. Đôi khi đồng hồ không thực hiện các tính năng của nó để tránh vượt qua các chức năng.

Bộ hẹn giờ bật / tắt Attiny85 cần được lập trình khi tải lên bản phác thảo Tempo_V1_9_1Mhz_bugfix.ino.

Điều này cho phép bật thiết bị lúc 8 giờ sáng và tắt lúc 23 giờ. Xem hướng dẫn để biết thêm thông tin.

Bước 4: Mạch

Mạch
Mạch
Mạch
Mạch
Mạch
Mạch

Mạch về cơ bản có 3 phần

- hẹn giờ bật / tắt nguồn được xử lý bởi mô-đun DS3231, Attiny85 và Mosfet

- công tắc để điều khiển thủ công các tính năng của đồng hồ

- phần kết nối nơi đi cáp cho dữ liệu Ma trận LED RGB và nguồn, bộ khuếch đại âm thanh và Raspberry Pi

Không đề cập đến bộ phân áp điện trở cho phép RPI đọc tín hiệu 5V CAO / THẤP từ Attiny85

Công tắc được kết nối với chân RPI một GND trực tiếp bằng điện trở bên trong

Bộ đếm thời gian Attiny85 đến từ dự án trước đây của tôi có tên là TEMPO. Về cơ bản, DS3231 gửi tín hiệu LOW đến chân ngắt Attiny85 để đánh thức nó từ chế độ ngủ. Khi thức dậy, Attiny85 sẽ gửi tín hiệu CAO đến bóng bán dẫn Mosfet, kích hoạt mạch cấp nguồn cho RPI, LED Matrix và bộ khuếch đại âm thanh (nếu không kết nối với PS phụ thông qua một rơ le, như cấu hình cuối cùng của tôi).

Để tắt RPI, kịch bản của tôi sẽ xem xét rằng RPI lắng nghe tín hiệu kỹ thuật số trên chân 14, khi nó ở mức CAO, được gọi là lệnh tắt. Sau đó RPI thực hiện một quá trình tắt máy chính xác, sau đó một phút, Attiny85 quay trở lại chế độ ngủ và Mosfet nhận được tín hiệu THẤP sẽ tắt toàn bộ thiết bị. Quá trình này là khó khăn nhưng hiệu quả.

Mô-đun PIR là tùy chọn và được kết nối trực tiếp với RPI GPIO.

Cấu hình của tôi yêu cầu các chân GPIO RPI sau được kết nối với:

15 đến PIR

14 đến Attiny85 chân 3 thông qua bộ chia điện áp

21 đến mô-đun chuyển tiếp

2 để chuyển đổi (NHẬP NÚT)

3 để chuyển đổi (NÚT THAY ĐỔI TIỂU BANG)

Vấn đề:

- nhiễu do nguồn điện LED Matrix, được giải quyết bằng cách sử dụng PS nhỏ chỉ cho bộ khuếch đại âm thanh. Một rơ le tùy chọn chỉ cho phép bật bộ khuếch đại khi được yêu cầu. Điều này có thể gây ra tiếng ồn khi bật / tắt.

Mạch đã được khắc bằng cách sử dụng tấm đồng, máy in 3D, bút đánh dấu và clorua sắt.

Bước 5: Lắp ráp

Lắp ráp
Lắp ráp
Lắp ráp
Lắp ráp
Lắp ráp
Lắp ráp
Lắp ráp
Lắp ráp

tôi đã điều chỉnh khung 40x50cm chung cho dự án này cùng với các bộ phận được in 3D và một số tính năng bổ sung tùy chọn.

Kính được che chắn bởi phim năng lượng mặt trời cửa sổ và tấm nhựa mờ. Led ma trận cần cách ly khoảng 1cm để tránh nhìn thấy led trắng bên trong. Các vít nhỏ là cần thiết như đai ốc và bu lông M3. Bắt buộc là dây cáp và vỏ bọc nhiệt rắn.

Ma trận đèn Led được vặn vào mặt sau của khung.

Bước 6: Và Bây giờ?

Và bây giờ ?
Và bây giờ ?
Và bây giờ ?
Và bây giờ ?

Bước tiếp theo sẽ là thêm một cảm biến nhiệt độ, kích hoạt chức năng bluetooth và, tại sao không, một trình phát radio internet cho đến khi Raspberry Pi tiềm năng tối đa.

Từ biệt

Cuộc thi đồng hồ
Cuộc thi đồng hồ
Cuộc thi đồng hồ
Cuộc thi đồng hồ

Về nhì trong cuộc thi đồng hồ

Đề xuất: