Índice:
- Etapa 1: O que você precisa
- Etapa 2: configuração do Raspberry Pi
- Etapa 3: os scripts
- Etapa 4: O circuito
- Etapa 5: montagem
- Etapa 6: e agora?
Vídeo: Relógio de parede de matriz LED O-R-A RGB e muito mais ** atualizado em julho de 2019 **: 6 etapas (com fotos)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Olá. Aqui estou eu com um novo projeto chamado O-R-A
É um relógio de parede RGB LED Matrix que exibe:
- hora: minuto
- temperatura
- umidade
- ícone de condição climática atual
- Eventos do Google Agenda e notificações de lembrete de 1h
em um momento específico mostra:
- Lista de eventos do Google Agenda hoje e amanhã
- previsão do tempo
- últimas notícias
Funcionalidades adicionais:
- data atual
- Bola 8 mágica
- Cronômetro de cozinha
Para qualquer funcionalidade, o dispositivo reproduz um alarme de áudio diferente. Para todos os tipos de condições climáticas, há um arquivo de áudio correspondente a ser reproduzido quando a funcionalidade é chamada.
As funcionalidades como lista do Google Calendar, previsão do tempo, notícias de última hora RSS começam no horário pré-selecionado quando o dispositivo está no "modo relógio", também podem ser chamadas operando diretamente os interruptores. Outra funcionalidade durante o "modo relógio" exibe o dia / mês / ano atual. Pode ser executado pressionando o botão ENTER. Pressionar o botão CHANGE STATE e, em seguida, o botão ENTER dentro de 3 segundos no "modo relógio", permite que você entre no menu de opções. O botão ALTERAR ESTADO é definido para rolar dentro do menu, o botão ENTER é para confirmar a opção selecionada.
Este projeto é uma evolução do meu anterior LEGOLED e TEMPO. O painel de matriz de led RGB agora tem resolução de 32x64, portanto é possível exibir gráficos mais inteligíveis, fixos e texto de rolagem ao mesmo tempo. Usando as funcionalidades TEMPO, o dispositivo liga e desliga automaticamente sem qualquer botão ou temporizador externo. Um módulo PIR detecta a presença de pessoas, portanto, liga / desliga a tela.
A previsão do tempo e os dados do calendário são coletados a cada minuto fornecidos pelo Google Calendar e Open Weather Map.
Este projeto é totalmente personalizável a partir de um Raspberry PI B +, matriz de LEDs de 2 módulos 16x64 rgb e fonte de alimentação. Ele pode ser expandido, como eu fiz, adicionando placas de som USB, alto-falantes, circuito de alimentação liga / desliga.
Etapa 1: O que você precisa
- Raspberry Pi B + (com wi-fi ou dongle integrado)
- Matriz led 2 x 16x64 RGB ou 2 x 32x32
- quadro genérico (40x50 cm e profundidade de 3 cm aproximadamente)
- folha de plástico fosco
- filme solar de janela
- PS 5V 10A
- cabos
- bainha termoendurecível (*)
- módulo de relé (*)
- PS extra para amplificador de áudio (*)
- Módulo amplificador de áudio 3W (*)
- caixas de som (*)
- Placa de som USB (*)
- 2 x microinterruptor (*)
- PIR (*)
- Attiny85 (*)
- DS3231 (*)
- Mosfet IRF540 (*)
- Resistores: 3x1K, 2x10K, 1x2K (*)
- bloco terminal (*)
- tiras de cabeçalho fêmea (*)
- tiras de cabeçalho macho (*)
(*) opcional
Etapa 2: configuração do Raspberry Pi
Este guia é basicamente baseado na biblioteca Raspbian Jessie Lite, Python 2.7 e RGB LED MATRIX do usuário Hzeller Github.
Em primeiro lugar, atualizar e atualizar RPI
Instale o git
~ $ sudo apt-get install git
Baixe a biblioteca RGB LED MATRIX do Github
~ $ git clone
~ $ cd rpi-rgb-led-matrix
~ $ sudo make
placa de som interna RPI da lista negra
~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf
lista negra snd_bcm2835
EOF
~ $ sudo update-initramfs -u
Defina os parâmetros da placa de som externa se precisar de recursos de áudio:
~ $ sudo nano /usr/share/alsa/alsa.conf
mudança:
defaults.ctl.card 0
defaults.pcm.card 0
para
defaults.ctl.card 1
defaults.pcm.card 1
em seguida, reinicie.
Agora instale a biblioteca de matriz
~ $ cd / home / pi / rpi-rgb-led-matrix
~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-pillow -y
~ $ make build-python
~ $ sudo make install-python
e instale outras bibliotecas necessárias:
~ $ sudo easy_install pip
~ $ sudo pip install
Copie o script samplebase.py de ~ / rpi-rgb-led-matrix / bindings / python / samples / para o diretório inicial
Obtenha a chave de API registrando-se gratuitamente para abrir o mapa meteorológico
Instale agora o wrapper OWM Python para PYthon 2.7 (graças ao usuário CSPARPAGithub)
~ $ sudo pip install git +
Obtenha a credencial do Google Agenda seguindo as instruções na API do Google Agenda
Para reprodução de áudio, instale o Pygame
~ $ sudo apt-get install python-pygame
Os feeds RSS precisam do Feedparser instalado
~ $ sudo pip install feedparser
copie meu script ORAeng_131.py (versão em inglês) ou ORAita_131.py (versão em italiano) para o diretório inicial
crie pastas para sons e imagens:
mkdir dbsounds
mkdir owm
baixe e copie todos os arquivos-p.webp
www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0
adicione sua credencial OWM à linha 69 (API_key)
defina a cidade para a previsão do tempo (verifique se ela é coberta pelo OWM e o nome correto é aceito) nas linhas 213, 215
obs = owm.weather_at_place ('Napoli, IT')
fc = owm.three_hours_forecast ('Napoli, IT')
*********************************** ATUALIZAÇÃO 28/7/2019 ********** ******************
A nova API do Google Agenda cria problemas. Resolvi remover alguns módulos:
~ $ sudo apt-get remove --purge python-setuptools
~ $ sudo apt-get autoremove python-pyasn1
tente o script rodando
~ $ sudo python ORAeng_150.py # ou ORAita_150.py para a versão italiana
na primeira vez, o script pedirá autorização GCAL. Clique no link para a credencial da API do Google. Dê permissão então, se tudo estiver ok, você verá que o relógio começa.
devido ao uso excessivo de RAM após várias horas, escrevi um script que simplesmente reinicia o script python quando o uso de RAM ultrapassa um nível limite. Em seguida, copie para o diretório inicial o script denominado memcheck renomeando para memcheck.sh e adicione ao crontab -e o script principal.
* / 5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py
Etapa 3: os scripts
O script principal precisa ser modificado de acordo com suas necessidades. Supondo que as credenciais do OWM e do Goggle Calendar sejam definidas como suas respectivas instruções de API, os parâmetros mais importantes são:
lista de eventos do calendário em execução a cada hora no minuto 2, 32 (consulte a linha 65 do script)
condições meteorológicas e previsão de execução a cada hora no minuto 7, 37 (consulte a linha 66 do script)
notícias de última hora a cada hora no minuto 11 (consulte a linha 67 do script)
canal de rss de notícias de última hora. O script interno é definido como RSS instrutível, mas pode ser alterado. (consulte a linha 366 do script)
Obviamente, o script dá prioridade a eventos de calendário de entrada ou notificações de lembrete. Às vezes, o relógio não executa seus recursos para evitar o cruzamento de funcionalidades.
O temporizador de ligar / desligar Attiny85 precisa ser programado carregando o esboço Tempo_V1_9_1Mhz_bugfix.ino.
Isso permite ligar o dispositivo às 8 da manhã e desligá-lo às 23. Veja o tutorial para mais informações.
Etapa 4: O circuito
O circuito tem basicamente 3 seções
- temporizador de ligar / desligar controlado pelo módulo DS3231, Attiny85 e Mosfet
- interruptor para controle manual dos recursos do relógio
- seção de conexão onde está o cabeamento para dados e alimentação RGB LED Matrix, amplificador de áudio e Raspberry Pi
Não mencionado um divisor de tensão resistivo que permite RPI ler um sinal HIGH / LOW 5V de Attiny85
As chaves são conectadas ao pino RPI e GND diretamente usando resistores internos
O temporizador Attiny85 vem do meu projeto anterior chamado TEMPO. Basicamente, o DS3231 envia sinal LOW para o pino de interrupção Attiny85 que o tira do modo de hibernação. Ao acordar o Attiny85 envia sinal HIGH para o transistor Mosfet, ativando o circuito de alimentação para RPI, LED Matrix e amplificador de áudio (se não estiver conectado ao PS extra através de um relé, como minha última configuração).
Para desligar o RPI, meu script contempla que o RPI escuta o sinal digital no pino 14, quando está HIGH, é chamado de comando de desligamento. Em seguida, o RPI executa um processo de desligamento correto e, após um minuto, o Attiny85 volta ao modo de hibernação e o Mosfet recebe um sinal LOW que desliga todo o dispositivo. Este processo é difícil, mas eficaz.
O módulo PIR é opcional e conectado diretamente ao RPI GPIO.
Minha configuração requer que os seguintes pinos RPI GPIO sejam conectados a:
15 para PIR
14 para Attiny85 pino 3 através do divisor de tensão
21 para o módulo de relé
2 para mudar (botão ENTER)
3 para mudar (BOTÃO DE ALTERAÇÃO DE ESTADO)
Problemas:
- ruído devido à fonte de alimentação LED Matrix, resolvido usando um pequeno PS apenas para o amplificador de áudio. Um relé opcional permite ligar o amplificador apenas quando necessário. Isso pode causar um ruído de choque ao ligar / desligar.
O circuito foi gravado com placa de cobre, impressora 3D, marcador e cloreto férrico.
Etapa 5: montagem
Eu adaptei um quadro genérico de 40x50cm para este projeto junto com peças impressas em 3D e alguns extras opcionais.
O vidro é protegido por um filme solar de janela e uma folha de plástico fosco. A matriz de Led deve ser mantida a cerca de 1cm do vidro para evitar ver o branco dentro dos leds. Parafusos pequenos são necessários como porcas e parafusos M3. Obrigatórios são cabos e bainha termofixa.
As matrizes de led são aparafusadas no painel traseiro da moldura.
Etapa 6: e agora?
O próximo passo será adicionar um sensor de temperatura, ativação de recursos bluetooth e, por que não, um player de rádio na Internet até o potencial máximo do Raspberry Pi.
Tchau
Vice-campeão no Concurso de Relógios
Recomendado:
Relógio de parede explosivo faça você mesmo com iluminação por movimento: 20 etapas (com fotos)
Relógio de parede explosivo faça você mesmo com iluminação por movimento: neste vídeo / instrutível, vou mostrar passo a passo como fazer um relógio de parede de aparência única e criativa com sistema de iluminação por movimento integrado. Esta ideia de design de relógio bastante original é orientada para tornar o relógio mais interativo . Quando eu ando
Controle remoto IR de fácil configuração usando LIRC para o Raspberry PI (RPi) - julho de 2019 [Parte 1]: 7 etapas
Fácil configuração do controle remoto IR usando LIRC para o Raspberry PI (RPi) - julho de 2019 [Parte 1]: Depois de muita pesquisa, fiquei surpreso e desanimado com as informações conflitantes sobre como configurar o controle remoto IR para meu projeto RPi. Achei que seria fácil, mas configurar o Linux InfraRed Control (LIRC) tem sido problemático por muito tempo
Controle remoto IR de fácil configuração usando LIRC para o Raspberry PI (RPi) - julho de 2019 [Parte 2]: 3 etapas
Fácil configuração do controle remoto IR usando LIRC para o Raspberry PI (RPi) - julho de 2019 [Parte 2]: Na Parte 1, demonstrei como montar o RPi + VS1838b e configurar o módulo LIRC do Raspbian para receber comandos IR de um remoto IR. Todos os problemas de configuração de hardware e LIRC são discutidos na parte 1. A Parte 2 demonstrará como fazer a interface do hardwa
Motor USB muito, MUITO fácil !: 3 etapas
Realmente, REALMENTE fácil USB Motor !: Finalmente, meu segundo instrutível !!! Este é um ventilador para você ou seu computador que funciona a partir de qualquer porta USB disponível. Eu recomendo para iniciantes em eletrônica, até os profissionais. É fácil e divertido, você pode fazer em literalmente cinco minutos !!! REAL
Muito simples mas muito eficaz Prank (computador): 3 etapas
Muito simples … No entanto, muito eficaz Prank (Computer Prank): Este Instructable é MUITO simples, mas MUITO eficaz! O que vai acontecer é: você oculta todos os ícones na área de trabalho da vítima. A vítima vai pirar quando vir o computador depois que você fizer a pegadinha. Isso não pode danificar o computador de forma alguma