Integração com Arduino IoT Cloud Amazon Alexa
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Aplicativos e serviços online
| ||||
| ||||
|
Sobre este projeto
Introdução:Primeiros passos
Neste tutorial, usaremos Arduino IoT Cloud. Se você for novo no Arduino IoT Cloud, recomendamos primeiro dar uma olhada neste projeto introdutório, que lhe dará uma visão geral e o guiará pelo processo de configuração de seus bordo, coisas e propriedades da IoT Cloud e colocá-lo a bordo.
Parte 1:Arduino IoT Cloud
Na página principal do IoT Cloud, criaremos algo novo e atribuiremos a ele um nome significativo. Em seguida, selecionaremos o tabuleiro vamos usar. Se você não consegue ver seu quadro, pode ter ignorado a adição de um novo dispositivo seguindo o procedimento que começa após clicar em ADICIONAR DISPOSITIVO botão, em Dispositivos seção.
Depois de fazer isso, adicionaremos três propriedades para a nossa coisa . Os dois primeiros representarão as lâmpadas , o último a temperatura.
O tipo ColoredLight nos permite controlar um RGB Luz, permitindo-nos controlar o seu brilho e cor. Defina-o como ReadandWrite porque precisaremos controlar seu comportamento usando Alexa.
O DimmedLight tipo é de uma forma semelhante à anterior, mas apenas nos permite controlar o brilho de uma luz.
A última propriedade a ser adicionada é a temperatura . Vamos adicionar este como Somente leitura, uma vez que queremos apenas saber seu valor, não defini-lo. Como tipo, podemos usar Temperatura sensor (Celsius), mas sinta-se à vontade para defini-lo como Fº se for melhor para você.
Aqui está o Painel visão de sua Coisa deve ser parecido com este ponto:
Ao adicionar propriedades, certifique-se de usar apenas os tipos listados na Página inicial inteligente seção, caso contrário, eles não funcionarão com Alexa.
Agora vá para o Editor da web clicando em Editar esboço botão em seu Coisa visualização de edição de.
Parte 2:Editor da Web do Arduino
No Editor da web, precisamos adicionar algum código ao Sketch gerado automaticamente para nós.
Como queremos ler alguns dados ambientais (ou seja, temperatura, mas fique à vontade para adicionar luz, umidade e pressão, se desejar), importaremos o Arduino_MKRENV biblioteca no topo de nosso Sketch
#include
Em seguida, definimos algumas constantes para os pinos da placa que serão usados para R, G, Bandwhitelight , assim o código fica mais legível:
#define PIN_MEETING_ROOM 5 # define PIN_LOUNGE_AREA_R 2 # define PIN_LOUNGE_AREA_B 3 # define PIN_LOUNGE_AREA_G 4
Agora na função de configuração podemos inicializar o Arduino MKR ENV Shield com:
if (! ENV.begin ()) {Serial.println ("Falha ao inicializar o escudo MKR ENV!"); enquanto (1);}
Desta forma, se o escudo não estiver instalado Sketch a execução será bloqueada.
Não precisamos especificar que
pinMode
precisa ser OUTPUT
porque usaremos analogWrite ()
para definir a intensidade do nosso LED branco ou as cores individuais do RGB. Na função de loop vamos ler a temperatura a cada segundo:
temperatura =ENV.readTemperature (); atraso (1000);
Finalmente, é hora de implementar nossas funções de retorno de chamada:aquelas que serão executadas toda vez que houver uma alteração em uma Propriedade O valor de é obtido da IoT Cloud.
Temos que implementar
onMeetingRoomChange
e onLoungeAreaChange
: void onMeetingRoomChange () {uint8_t brilho =mapa (meetingRoom.getBrightness (), 0, 100, 0, 255); if (meetingRoom.getSwitch ()) {Serial.println (brilho); analogWrite (PIN_MEETING_ROOM, brilho); } else {analogWrite (PIN_MEETING_ROOM, LOW); }}
com o código acima, primeiro lemos o valor de brilho da nuvem e mapa para um valor utilizável, então verificamos se o interruptor de luz está ligado, se estiver podemos ligar a luz, usando o
brilho
vermelho antes. Caso contrário, desligamos a luz O princípio de funcionamento é o mesmo para o outro retorno de chamada:
void onLoungeAreaChange () {uint8_t r, g, b; loungeArea.getValue (). getRGB (r, g, b); if (loungeArea.getSwitch ()) {Serial.println ("R:" + String (r) + "G:" + String (g) + "B:" + String (b)); analogWrite (PIN_LOUNGE_AREA_R, r); analogWrite (PIN_LOUNGE_AREA_B, b); analogWrite (PIN_LOUNGE_AREA_G, g); } else {Serial.println ("Lâmpada desligada"); analogWrite (PIN_LOUNGE_AREA_R, 0); analogWrite (PIN_LOUNGE_AREA_B, 0); analogWrite (PIN_LOUNGE_AREA_G, 0); }}
A única diferença notável é o fato de que em vez do brilho justo, temos três componentes distintos:são a representação da cor RGB da luz. Claro que podemos definir cores personalizadas por nome no aplicativo Alexa para que não tenhamos que dizer manualmente quais quantidades de Vermelho, Verde ou Azul queremos definir.
Parte 3:Configuração de habilidades do Amazon Alexa
Agora precisaremos do aplicativo Amazon Alexa, que pode ser baixado da Apple App Store ou Google Play Store. Depois de instalado, faça login com sua conta existente ou crie uma nova.
Vamos seguir as etapas necessárias para instalar o Arduino Alexa Skill. Seguiremos a sequência de imagens abaixo para ver todas as etapas necessárias.
Parte 4:configuração de dispositivos Amazon Alexa
Depois de esperar um pouco, você verá que alguns dispositivos foram encontrados.
Depois de tocar em Escolher dispositivo você verá a página de configuração listando todos os dispositivos disponíveis (eles serão nomeados de acordo com a forma como nomeamos nossas propriedades no Arduino IoT Cloud).
Vamos escolher um dispositivo e tocar em Definir Para cima Dispositivo . Se desejar, você também pode adicioná-lo a um grupo (desta forma, você pode controlar e organizar seus dispositivos mais facilmente), caso contrário, pule esta parte.
Repita a configuração processo para cada dispositivo que você deseja controlar.
Finalmente, a visualização do dispositivo deve ser semelhante a esta:
Podemos finalmente começar a perguntar coisas como "Alexa, qual é a temperatura no escritório?" ou "Alexa, acenda a luz da sala de reuniões".
Divirta-se jogando com Alexa e IoT Cloud. Se você tiver dúvidas ou construir este projeto, deixe-nos saber nos comentários abaixo.
O Arduino Equipe
Código
Arduino
Esquemas
Processo de manufatura
- Nevoeiro vs. Nuvem para IoT
- Infineon nomeada Parceira de Tecnologia Avançada da Amazon Web Services
- Amazon Alexa Controlando um Chromecast
- Habilite o controle Alexa para o seu ventilador de teto
- Monitor de freqüência cardíaca usando IoT
- Usando IoT para controlar remotamente um braço robótico
- LEDs controlados por Alexa através do Raspberry Pi
- Arduino Cloud Sensor Tower
- Piscina Azure IoT
- A nuvem na IoT