Upload
smartappsbr
View
484
Download
10
Embed Size (px)
DESCRIPTION
Apresentação exibida no The Developer's Conference 2013 na trilha Arduino. Desenvolvida por Fabio Costa Mângia, diretor de integração na Smartapps.
Citation preview
Globalcode – Open4education
Conectando o Arduino à Nuvem
Fabio Costa Mângia Engenheiro Eletricista e Diretor de Integração da Smartapps
Globalcode – Open4education
Computação em nuvem do inglês, Cloud Computing
Globalcode – Open4education
API Smartapps
Smartbox
GET POST
PHP
Globalcode – Open4education
Smartbox
Arduino Mega2560 R3
Teclado de Membrana Matricial
Display 4 linhas x 20 caracteres – HD44780 (Interface I2c)
WiFi Shield
Case feito em acrílico cortado a laser Solarbotics
Globalcode – Open4education
Globalcode – Open4education
Globalcode – Open4education
Globalcode – Open4education
API Smartapps
Funcionamento simples: Requisições HTTP – TCP GET => Recebe dados do servidor
POST => Envia dados ao servidor
Arduino trabalha como cliente!
Requisitos para funcionamento: const char AuthID[] = "NDNiYTEW (...) VHdMYVFCaw”; (base64)
const char UserID[] = "3775158088eba25dade2776955d4cb46";
Globalcode – Open4education
GET Serial.println("connecting...");
client.println("GET /api/fp/to HTTP/1.1");
client.println("Host: smartapps_IP");
client.print("Authorization: Basic ");
client.println(AuthID);
client.println();
leitura_resposta(){
se resposta recebida
salva sessao
Serial.println(“Conectado!”);
senao
Serial.println(“ERRO!”);
}
Globalcode – Open4education
POST
String PostData = "produto=PAO&quantidade=100"
client.print("POST /api/fp/to/smartbox/");
client.print(UserID);
client.println("/dados/ HTTP/1.1");
client.println("Host: 177.71.182.171");
client.print("Authorization: Basic ");
client.println(AuthID);
client.print("Cookie: PHPSESSID=");
client.println(PHPSESSID);
client.println("Content-Type: application/x-www-form-urlencoded");
client.print("Content-Length: ");
client.println(PostData.length());
client.println("Connection: close");
client.println();
client.print(PostData);
client.println();
Globalcode – Open4education
Shield GSM
Biblioteca API
PCB e outros dispositivos
Globalcode – Open4education
Globalcode – Open4education
Agradecimentos Ao Professor Rodrigo Almeida
Orientador TCC https://sites.google.com/site/rmaalmeida/