Relógio falante de Halloween baseado no Rpi Pico
Relógio falante de Halloween que toca sons a cada hora cheia. Apenas alguns componentes externos (fáceis de encontrar e soldar) são necessários. A placa de uma face pode ser fabricada em casa. Projeto altamente personalizável que envolve múltiplas áreas de conhecimento (STEAM): Eletrônica, programação, marcenaria, artes, etc.
Componente chave: Movimento de relógio de quartzo com gatilho
Conceito:
Um grande número de relógios de parede musicais no mercado carecem da possibilidade de mudar os sons originais. Um relógio com essa capacidade pode ser construído com um sistema embarcado. Mas qual escolher? O Raspberry Pi Pico foi escolhido por 3 razões:
Não é necessário instalar software para o download inicial do firmware A memória onboard de 2 MegaBytes de flash pode armazenar alguma quantidade de sons sem precisar de memória externa Pode ser alimentado por 2 baterias AA sem componentes adicionais.
A Rpi Pico consome cerca de 1,6 mA no seu modo de consumo mais baixo (sono profundo). Pode parecer pouco, mas é alto demais para um circuito alimentado por bateria, pois elas se esgotarão em cerca de dois meses. Por esse motivo, um circuito de alimentação externo que pode desligar completamente a placa foi adicionado. Depois disso, o consumo de energia caiu para 70 uA, então as baterias durarão por um ano.
O Rpi Pico age como armazenador e tocador de som. Para exibir o tempo e gerar um sinal de “hora”, foi usado um movimento de relógio de quartzo com gatilho. Ao combinar esses dois elementos, nasceu um relógio falante de som.
Recursos principais:
- Duas versões da mesma aplicação (quase): Uma desenvolvida em CircuitPython e a outra no C/C++ SDK.
- Compatível com os sistemas operacionais mais comuns.
- Não é necessário instalar aplicativos para o download inicial do firmware.
- Não é necessário recompilar o código (na aplicação desenvolvida em CircuitPython) para mudar os sons.
- Até 3 anos em modo de standby usando uma par de pilhas AA.
- Componentes fáceis de encontrar e soldar.
Software:
Assim que ligado, o Rpi Pico coloca um nível baixo no GPIO que está conectado ao circuito de alimentação para mantê-lo ligado, então decide qual arquivo deve ser tocado e, após o som terminar, é colocado um nível alto no GPIO desligando o Pico. Além disso, é lida uma sensibilidade à luz para não tocar som quando estiver escuro (à noite).
Os arquivos de som são reproduzidos sequencialmente, um por um a cada ligada. Um ponteiro para o próximo arquivo é armazenado na memória não volátil, cuidado ao modificar o programa para manter a escrita mínima.
Peculiaridades da versão C/C++ SDK:
Os sons a serem reproduzidos devem ser convertidos primeiro para o formato WAV de 16 bits mono a 44100 Hz, em seguida convertidos para arrays C[] antes da compilação. A aplicação usa uma PWM via saída digital e interrupções para reproduzir sons.
O programa começa a ser executado logo após a ligação. A principal desvantagem do aplicativo por enquanto é que ele só suporta arquivos .WAV, que são grandes e não podem ser alterados sem recompilar o código.
Peculiaridades da versão CircuitPython:
Sons a serem tocados devem ser convertidos para o formato MP3 mono, o aplicativo usa módulos audiomp3 e audiopwmio para saída de áudio de um pino digital (PWM). Esses arquivos são armazenados no sistema de arquivos fornecido pelo CP, então a sua modificação é simples, basta arrastar e soltar.
Arquivos MP3 podem armazenar cerca de 10 vezes mais tempo de som do que WAV para o mesmo tamanho de arquivo, no entanto, a execução do tempo de execução do CircuitPython leva mais de um segundo após a ligar, então provavelmente não será uma coisa boa para qualquer tipo de aplicação final.
Hardware:
Componentes externos fazem parte de uma das três diferentes funcionalidades:
-
On/Off : O circuito é composto por um MOSFET, o terminal de dreno conectado a 3V3_EN e o terminal de fonte conectado a GND. Conectados à porta há 2 elementos: um capacitor para o solo e um resistor para V+. O circuito funciona da seguinte maneira:
-
Passo 1: O capacitor é totalmente carregado, ligando o MOSFET e ligando 3V3_EN ao solo, desligando totalmente a placa Rpi Pico.
-
Passo 2: O capacitor é rapidamente descarregado pelo breve fechamento dos contatos do movimento do relógio, desligando o MOSFET e ligando a Rpi Pico. A primeira coisa a fazer após a ligar é manter o capacitor descarregado com a ajuda de uma saída GPIO em nível baixo.
-
Passo 3: Enquanto o som é reproduzido, o nível baixo na GPIO é mantido. Uma vez que o som termina, a saída GPIO é ligada em nível alto, fazendo com que o MOSFET ligue novamente, desligando a Rpi Pico até o próximo fechamento de Interruptor.
-
Amplificador de áudio: amplificador de uma etapa, com um único transistor NPN alimenta um pequeno alto-falante de 8 Ohms. Há também um filtro RC passa-baixa de entrada para suavizar o ruído devido à saída PWM.
-
Detecção de dia/noite: Sensor de luz visível para evitar a reprodução de sons à noite. Conectado a um pino ADC.
Montagem da placa:
A Rpi Pico, alto-falante, sensor de luz e contatos de relógio podem ser soldados diretamente à placa para obter um perfil de altura muito pequeno ou adicionar barra de pinos para uma opção mais flexível.
A placa de de camada única pode ser gravada em casa. Há algumas pad GPIO livres para experimentação e também furos de montagem perto das cantos.
Para construir o relógio de parede, escolha uma placa ou disco feito de plástico ou madeira, com diâmetro suficiente para esconder o movimento do relógio e a placa de som. Fixe todos os componentes eletrônicos e, em seguida, acessórios decorativos, como luzes LED. Finalize com a pintura.
Para ajustar a hora, retire todas as baterias e as mãos do relógio (hora, minuto, segundo). Gire lentamente a chave de ajuste do relógio até ouvir um som de “clique”. Coloque todas as mãos do relógio apontando para 12 horas. Coloque as baterias. Os sons podem ser deslocados pressionando o interruptor de botão momentâneo na placa.
Lista de materiais
Componente | Ligação do compra! | Folha de dados |
---|---|---|
Barra de pinos fêmea 2.54mm | Compre aqui | FHA3-S1XX.pdf |
barra de pinos macho 2.54mm | Compre aqui | PHA1-S3XX.pdf |
1/4W 1% TH Resistors | Compre aqui | MGR-SERIES.pdf |
Botão Microchave Push Button 6x6mm | Compre aqui | TS-1301.pdf |
Raspberry Pi Pico | Compre aqui | pico-datasheet.pdf |
Suporte Caixa para 2 Pilhas AA para PCB | Compre aqui | Comfortable_Catalog.pdf |
8 Ohm Alto-falante 29 mm 0.25W | Compre aqui | DXP29W-A.pdf |
MOSFET 2N7000 | Compre aqui | NDS7002A-D.pdf |
TRANSISTOR BIPOLAR NPN 2N2222A | Compre aqui | P2N2222A-D.pdf |
TH Capacitor eletrolítico radial | Compre aqui | TS13DE-CD110X.pdf |
TH Capacitor ceramico disco | Compre aqui | TS15.pdf |
movimento de relógio de quartzo com gatilho | Compre aqui | 12888SE_TRIGGER_CLOCK_MOVEMENT.pdf |
Wall Clock hooks DIY | Compre aqui | wall_clock_hook.pdf |
Fotodiodo de luz visível TEPT5700 | Compre aqui | tept5700.pdf |
Fio De Fada Led a bateria | Compre aqui | LED_Copper_Wire_Battery_Box.pdf |
Placa de circuito impresso
Placas de circuito impressas (PCB) | Ligação do compra | Arquivos de origem |
---|---|---|
Placa de som (diretório de hardware) | Compre aqui | SINSONTE |
Software
Software | Source files |
---|---|
Firmware CircuitPython & SDK C/C++ (diretório de software) | SINSONTE |
Componentes opcionais:
Componente | Ligação do compra | Folha de dados |
---|---|---|
Broca Escalonada bit 3 a 20 mm | shop now | 3_pc_set_3-20mm_drill_bit_incremental_center_punch.pdf |