Índice:
Vídeo: Controle remoto IR universal AIY: 5 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Este instrutivo descreve como fazer um controle remoto infravermelho universal AIY. Isso pode ser usado para controlar qualquer reprodutor de TV, soundbar, digibox, dvd ou bluray usando sua voz.
Eu o chamo de universal, pois contém um receptor IR que pode ser usado para gravar o sinal infravermelho de qualquer controle remoto.
O projeto AIY usa o programa LIRC para gravar e transmitir o sinal IR.
Etapa 1: Faça PCB
Lista de peças:
Dois emissores LED infravermelhos de 940 nm e 5 mm
Um receptor infravermelho TSOP38238
Um transistor 2n3904
Um resistor de 10 ohms
Um veroboard
Quatro conectores únicos (opcional - cortei um conector de seis pinos em conectores únicos)
Cabos para conectar ao chapéu AIY.
Certifique-se de que os LEDs de IV tenham a perna longa na primeira linha e a perna curta na segunda. Segundo LED com perna longa na segunda linha e perna curta na terceira.
O transistor deve ter a base no terceiro, o coletor no quarto e o emissor no quinto. Certifique-se de que o lado plano do resistor está voltado para o conector.
O resistor fica entre as linhas cinco e oito.
Use um pedaço curto de fio para conectar a fileira um à fileira sete.
Conecte o receptor IR na linha sete, oito e nove.
Adicione os conectores às linhas um, quatro, oito e nove.
Os conectores são:
Linha um - potência de + 5v
Linha quatro - sinal do transmissor
Linha oito - Solo
Linha nove - sinal do receptor
Etapa 2: Conecte-se ao chapéu AIY
Eu soldei pinos de cabeçalho em meu AIY para tornar as coisas muito mais fáceis de conectar.
Os pinos que usei são Servo 0 (GPIO 26) e Servo 5 (GPIO 24) para o sinal. Eu também usei + 5v do pino horizontal acima dos pinos do Servo. Peguei o chão do GND próximo ao Servo 0, mas você pode usar o chão que quiser.
Usando os cabos apropriados, conectei o chapéu AIY à placa assim:
+ 5V para a linha um
Servo 0 (GPIO 26) para a linha quatro
GND para a linha 8
Servo 5 (GPIO 24) para a linha nove.
Etapa 3: Instale o LIRC
Supondo que você já tenha configurado e testado o AIY:
Precisamos instalar o LIRC. Siga este valioso instrutivo de mirza irwan Osman:
www.instructables.com/id/Install-Linux-Infrared-Remote-Control-LIRC-Package
OU uma instrução alternativa pode ser encontrada aqui por Alex Bane:
alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/
NOTA: para minha configuração, eu precisava garantir que o arquivo /boot/config.txt tivesse o seguinte:
dtoverlay = lirc-rpi, gpio_in_pin = 24, gpio_out_pin = 26
Etapa 4: obtenha ou crie arquivos LIRC para seus dispositivos
A próxima etapa cria o arquivo lircd.conf que contém os detalhes sobre o controle remoto para os dispositivos que você deseja usar.
Existem duas maneiras de fazer este arquivo:
1. Se tiver sorte, você pode encontrar um arquivo existente nas páginas do LIRC para o seu dispositivo
2. Se você não conseguir encontrá-lo, precisará gravar um arquivo usando o receptor de infravermelho e o controle remoto.
Para a etapa 1, vá para a página inicial do LIRC e verifique a lista de dispositivos suportados:
www.lirc.org/
Se você conseguir encontrar o arquivo do dispositivo, precisará transferir as informações do arquivo para o arquivo lircd.conf / etc / lirc
Como meu AIY não tem cabeçalho, uso WINScP para fazer as alterações em lirc.conf.
As informações de que você precisa começam com "início remoto" e termina com "fim remoto"
NOTA: Se você deseja controlar mais de um dispositivo, basta adicionar o código remoto adicional no mesmo arquivo após o "fim remoto" existente. Certifique-se de que cada controle remoto tenha um nome exclusivo. Eu uso "mytv" para minha televisão e "sky" para minha digibox do céu, etc.
Se você não conseguir encontrar o código do seu dispositivo, precisará gravá-lo.
Siga as instruções para aprender como gravar cada controle remoto usando LIRC:
www.instructables.com/id/Record-Infrared-Codes-of-Any-Remote-Control-Unit-f/
Depois de gravar o primeiro controle remoto, repita o processo até ter todos os controles remotos gravados. Você pode então atualizar o arquivo lirc.conf com todos os códigos que você gravou. Eu precisava fazer isso para minha barra de som.
Etapa 5: codifique AIY para controlar seus dispositivos
Para controlar o transmissor IR do AIY, faça as alterações necessárias no arquivo "assistant_library_with_local_commands_demo.py"
Você pode executar "assistant_library_with_local_commands_demo.py" no Start Dev Terminal para ver se seu código está funcionando.
Eu faço meu AIY iniciar automaticamente na inicialização, seguindo as instruções aqui:
aiyprojects.withgoogle.com/voice/#makers-guide-3-4--run-your-app-automatically
Esteja ciente de que, se quiser alterar seu código, você precisará interromper a execução do AIY e reiniciá-lo usando:
sudo service my_assistant stop
sudo service my_assistant start
O código anexado contém meu programa de trabalho atual.
(Observe que este código também contém recursos adicionais, como rádio pela Internet).
O código faz uso de variações no envio do LIRC send_start e send_stop para transmitir o sinal IR necessário. Descobri que é necessário introduzir uma pausa entre o início e a interrupção do sinal, e isso pode variar entre os dispositivos (minha TV Panasonic requer um sinal mais longo do que a sky box). Então, por exemplo:
subprocess.call ('irsend SEND_START mytv KEY_POWER', shell = True)
tempo.sono (0,5)
subprocess.call ('irsend SEND_STOP mytv KEY_POWER', shell = True)
Para enviar combinações de sinais, por exemplo o canal de TV Sky, criei uma lista que designava uma frase para um código de canal. Observe que às vezes o AIY nem sempre ouvirá a palavra certa, então também incluí variações da frase (como bbc 1 e bbc one, ou a palavra 'guia', bem como 'dave', pois AIY sempre retornou isso quando eu disse 'dave' - deve ser o meu sotaque!). Usei então uma rotina que pegava o código de três caracteres da lista e transmitia cada número (consulte o módulo ## Rotina de mudança de canal do céu ##)
Também é possível enviar combinações de sinais para vários dispositivos. Por exemplo, tenho uma rotina de "sistema ligado" que liga a TV, liga a barra de som, liga a sky box e muda para BBC 1.
Uma vez que o transmissor IR está funcionando com AIY, é possível pensar em todas as combinações diferentes para usá-lo. Por exemplo, posso enviar um comando de tempo para ajustar o volume na barra de som.
Feliz controle remoto AIY IR!