Raspberry Pi Alexa

Introdução

Existem diversos serviços de assistente pessoal inteligente, no entanto um dos populares em IoT é a Alexa da Amazon, que vem por default do dispositivo Amazon Echo Dot.

A Alexa, denominada com base na antiga biblioteca de Alexandria, é a assistente pessoal inteligente desenvolvida pela Amazon, que permite que se comunique por voz com um dispositivo, se lhe dêem comandos e o dispositivo execute ou controle equipamentos, reproduza música, efectue pesquisas, etc… Este artigo surge após o desafio colocado pelo Bruno Horta, no grupo Movimento Maker Portugal e que eu tive o prazer de aceitar e concluir dentro do prazo previsto!

Por detrás deste serviço existe um sistema de processamento de linguagem natural, desenvolvido pela Amazon, que permite que a voz humana seja compreendida, permitindo a execução das instruções dadas pelo utilizador.

Uma vez que em Portugal o dispositivo Amazon Echo, ainda não se encontra disponível e existe uma API que permite utilizar o serviço de assistente pessoal inteligente da Amazon. Ao longo do artigo será demonstrado como instalar o software e começar a utilizar este serviço num Raspberry Pi. No caso concreto, uma vez que foi utilizado um headset usb que não dispõe de botão para activar o microphone, a Alexa estará sempre em modo de “escuta”.

Não existem muitos dispositivos disponíveis compatíveis com a Alexa, no entanto não é complicado tornar um dispositivo compatível, recorrendo a uma API disponibilizada pela Amazon e às diversas bibliotecas disponíveis online. Os comandos da Alexa, são chamados de “skils” (capacidades), podendo ser desenvolvidos recorrendo à API e são de forma muito resumida, aplicações, que implementam determinada funcionalidade. Já existem diversas disponíveis, prontas a utilizar e equipamentos compatíveis com a Alexa. Para teste, foram usados alguns da itead.cc.

Uma das limitações da Alexa, prende-se com o facto de apenas conseguir receber e executar um comando de cada vez, isto claro além de terem de ser todos em inglês. Seria interessante em futuras versões ver o serviço a executar mais do que um comando, algo tipo “Alexa, turn on living room and entrance hall lights”.

Instalação

O primeiro passo é instalar a distribuição Raspbian, ou outra baseada em Debian, no Raspberry Pi. Para tal, basta gravar a imagem num cartão de memória SD/micro-SD, que irá ser utilizado no Raspberry Pi.

A distribuição do Raspbian pode ser encontrada em: https://www.raspberrypi.org/downloads/raspbian/.

Uma vez descarregada a imagem, o processo de instalação é diferente conforme o sistema operativo que esteja a ser utilizado no computador. Neste caso, será utilizado o Windows 8.1, pelo que será necessário descarregar a aplicação Win32DiskImager, que pode ser encontrada em https://sourceforge.net/projects/win32diskimager/. Uma vez descarregada os passos são simples!

  • Executar a aplicação Win32DiskImager;
  • Inserir o cartão SD/micro-SD na slot;
  • Na aplicação escolher a letra da unidade onde o cartão está;
  • Escolher o ficheiro da imagem;
  • Clicar “Write” e aguardar que complete;
  • Remover o cartão com segurança.

[...]

Leia o artigo completo na edição 57 da Revista PROGRAMAR

Publicado na edição 57 (PDF) da Revista PROGRAMAR.