Índice:

Controle remoto IR universal AIY: 5 etapas
Controle remoto IR universal AIY: 5 etapas

Vídeo: Controle remoto IR universal AIY: 5 etapas

Vídeo: Controle remoto IR universal AIY: 5 etapas
Vídeo: wifi пульт для IR и RF кодов Broadlink RM4C Pro, работа в Home Assistant - управляем кондиционером 2024, Novembro
Anonim
Controle remoto infravermelho universal AIY
Controle remoto infravermelho universal AIY

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

Faça PCB
Faça PCB
Faça PCB
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

Conecte-se ao chapéu AIY
Conecte-se ao chapéu AIY
Conecte-se ao chapéu AIY
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!

Recomendado: