Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Componentes e Materiais

Arduino UNO × 1
Arduino Ethernet Shield × 1
Sensor de Temperatura Analógico × 1

Sobre o Projeto

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

(De https://www.instructables.com/id/Call-my-Arduino/)

Como habilitar chamadas telefônicas para seu Arduino, usando Twilio e Yaler.net

O Twilio é um serviço Web que transforma tudo em um telefone. É uma API REST para telefonia, hospedada na nuvem. Neste caso, o Twilio solicita ao Arduino um novo arquivo voice.xml sempre que alguém liga para o número de telefone predefinido do Arduino. O conteúdo da resposta é lido para o chamador por Alice, uma voz do mecanismo de texto-para-fala do Twilio.

O Yaler.net permite acesso Web a dispositivos embarcados atrás de firewall, NAT ou roteador de rede móvel. Aqui, permite que o Twilio acesse o arquivo voice.xml no Arduino, que está em uma rede local e portanto não tem seu próprio endereço IP público (divulgação: sou fundador do Yaler).

Esta demo usa um sensor de temperatura, mas qualquer outro sensor funcionaria. Um exemplo de produto real seria o detector de fumaça Canary (agora Birdi) que permite donos preocupados ligarem para verificar se a bateria ainda está boa.

Em um nível mais abstrato, este Instructable tenta mostrar como, em uma Internet das Coisas aberta, serviços de nuvem modulares podem ser livremente combinados para construir soluções novas, simples e confiáveis. HTTP e Webhooks FTW! Mas vamos começar...

(Aqui está um vídeo explicando este projeto do IoTLive, parte do IoTDay 2014)

https://www.youtube.com/watch?v=4IPwkW38oIw

Material

Passo 1: Ligando o Sensor

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Adicione o Ethernet Shield ao Arduino e conecte o sensor de temperatura como mostrado. Para detalhes sobre sensoriamento de temperatura com o sensor TMP36, veja ex: https://learn.adafruit.com/tmp36-temperature-sensor/using-a-temp-sensor

Caso queira adicionar outros sensores (digitais), lembre-se que alguns pinos são usados pelo Ethernet Shield.

Passo 2: Instalando a Biblioteca Yaler

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Siga os três passos para Instalando a biblioteca em https://yaler.net/arduino. Se ainda não fez, cadastre-se em https://yaler.net/ para uma conta de teste gratuita e anote o domínio de relay (a chave secreta não é necessária).

Passo 3: Programando o Arduino

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Baixe o código fonte Arduino TwilioYalerWebService

https://bitbucket.org/tamberg/iotworkshop/raw/default/Arduino/TwilioYalerWebService/TwilioYalerWebService.ino?at=default

Abra o código do Arduino

O programa implementa um servidor Web muito simples que escuta requisições HTTP de entrada. Quando uma requisição chega, o programa responde com um documento XML. O servidor não se importa se o caminho da URL é / ou /voice.xml.

Altere o endereço MAC

Certifique-se de que o endereço MAC no código do Arduino seja único. Isso é especialmente importante se houver vários Arduinos na mesma rede local. Uma forma simples de obter um endereço (esperançosamente) único é procurar o MAC do seu computador e adicionar 1 ao último dígito.

Insira seu domínio de relay

Em vez de criar um servidor local com EthernetServer server(80); criamos um acessível via relay Yaler try.yaler.net, na seguinte linha:

YalerEthernetServer server("try.yaler.net", 80, "RELAY_DOMAIN");

Substitua RELAY_DOMAIN pelo seu domínio de relay, ex: para gsiot-ffmq-ttd5 digite:

YalerEthernetServer server("try.yaler.net", 80, "gsiot-ffmq-ttd5");

Note que você também pode usar o servidor local, se souber configurar port forwarding para abrir uma porta para requisições HTTP de entrada no seu firewall local. O importante é que o Twilio possa acessar o Arduino da nuvem.

Salve alterações e faça upload

Salve todas as alterações e faça upload do programa para seu Arduino. Mantenha o cabo USB conectado ao seu computador de desenvolvimento por enquanto, e abra o console serial para ver saída de debug.

Passo 4: Acessando o Arduino

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Acesse seu Arduino de qualquer navegador

A biblioteca Yaler torna seu Arduino (e com ele o documento XML) acessível da Internet pública em https://RELAY_DOMAIN.try.yaler.net/, ex: para o domínio de relay gsiot-ffmq-ttd5 a URL é https://gsiot-ffmq-ttd5.try.yaler.net/ Ou, para ficar mais bonito para o Twilio: https://gsiot-ffmq-ttd5.try.yaler.net/voice.xml

Verifique o documento XML

O conteúdo do documento XML diz ao Twilio o que responder a uma chamada telefônica de entrada. Você pode até escolher a voz de texto-para-fala. Aqui é Alice. O formato XML do Twilio é chamado TwiML. Veja https://www.twilio.com/docs/api/twiml para detalhes. Note que o texto de resposta contém a temperatura real. Aqueça seu sensor e atualize o documento no navegador com F5 para ver a mudança.

Solução de Problemas

Caso obtenha página vazia ou erro, certifique-se que seu cabo Ethernet está conectado e verifique https://yaler.net/browser para debug específico do navegador.

Passo 5: Configurando um Número Twilio

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino
Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino
Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Cadastre-se

Primeiro, para obter uma conta Twilio, cadastre-se em https://www.twilio.com/

Compre um número de telefone

Para receber chamadas, você precisará de um número, que tem um (pequeno) custo. Faça login, navegue até Numbers e selecione o submenu Twilio Numbers, para ver a aba Manage Numbers.

Clique no botão Buy a number, marque a caixa Voice e clique Search, depois escolha um número e clique Buy para comprá-lo.

Configure a URL do Webhook voice.xml

Na aba Manage Numbers, clique no número que acabou de comprar. Defina a Response URL para https://RELAY_DOMAIN.try.yaler.net/voice.xml e certifique-se que POST está selecionado, ex: para o domínio de relay Yaler gsiot-ffmq-ttd5 defina a Response URL para https://gsiot-ffmq-ttd5.try.yaler.net/voice.xml

Passo 6: Fazendo uma Chamada de Teste

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Uma vez que o Arduino está configurado, você pode ligar para ele de qualquer telefone - até do seu avô.

É isso, obrigado por ler. @tamberg

Código

Bitbucket

https://bitbucket.org/tamberg/iotworkshop/raw/default/Arduino/TwilioYalerWebService/TwilioYalerWebService.ino?at=default

Esquemáticos

Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino

Processo de manufatura

  1. Sticks Antitranspirante/Desodorizante: Ciência, História e Insights de Fabrico
  2. Abridor de Garagem Raspberry Pi com Streaming de Vídeo ao Vivo – Guia Passo a Passo
  3. Imagem 3D de Alta Resolução de Nanofios Core-Shell GaN/(In,Ga)N em Formato de Lápis via Tomografia Eletrônica
  4. Construa um Spybot Controlado por Bluetooth com Arduino
  5. FlickMote: Controle Remoto IR por Gestos para Casa Inteligente
  6. DIY Arduino TV B-Gone: Controle Remoto Universal para Todas as TVs
  7. Habilite Chamadas Telefônicas no Arduino UNO com Twilio e Yaler – Projeto Chame Meu Arduino
  8. Construa um Relógio Mestre LED Personalizado com Alarme – Visível a 12 Metros
  9. Find Me: Localizador Inteligente de Objetos com Arduino e Bluetooth
  10. Construindo um Business Case Forte para CMMS: Aumentando Eficiência e ROI da Manutenção