ola meu TCC eh uma casa inteligente, utilizando arduino mega + ethernet shield + android (eclipse)

estou tendo problemas, mas meu prof nao conseguiu tirar minha duvida meus companheiros de grupo e  eu conseguimos achar a solução neste site e venho pedir ajuda... ao incluir a nova rotina alarme utilizando sensor ultrassonico segue o codigo abaixo da erro de compilçao e alem do mais... nao consigo nem mesmo "incluir a rotina" sendo que tenho mais uma que eh o motor que vo utilizar para o portao da garagem

segue o codigo abaixo em anexo o arquivo ino... e pra quem nao tem o arduino irei postar no corpo desta mensagem, o motor da garagem nao esta incluido pois a primeira dificuldade veio o ultrassonico simulando o alarme e incluindo na minha rotina do programa principal é o que estou tendo problemas

#include <SPI.h>

#include <String.h>

#include <Ethernet.h>

#include <Ultrasonic.h>

byte mac[] = {
0x90, 0xA2, 0xDA, 0x00, 0x9B, 0x36
};
// Endereço Mac
byte ip[] = {192, 168, 1, 177 };
// Endereço de Ip Arduino
EthernetServer server(8090);
// Porta de serviço

int cozinha = 7; // wifi

int sala = 3; // wifi

int quarto2 = 6;

int quarto = 2;

int cooler1 = 5;

int cooler2 = 4;

int portao = 8;

Ultrasonic ultrasonic(9, 10);
const int alarme1 = 11;
const int alarme2 = 12;
long microsec = 0;
float distanciaCM = 0;

String readString = String(30);
// string para buscar dados de endereço

boolean statusQuarto = false;

boolean statusSala = false;

boolean statusQuarto2 = false;

boolean statusCozinha = false;

boolean statusCooler1 = false;

boolean statusCooler2 = false;

boolean statusPortao = false;

boolean statusAlarme = false;


// Variável para o status do portão

void setup()
{

// Inicia o Ethernet

Ethernet.begin(mac, ip);

// Define os pinos como saída

pinMode(quarto, OUTPUT);

pinMode(sala, OUTPUT);

pinMode(quarto2, OUTPUT);

pinMode(cozinha, OUTPUT);

pinMode(cooler1, OUTPUT);

pinMode(cooler2, OUTPUT);

pinMode(portao, OUTPUT);

pinMode(alarme1, OUTPUT);

pinMode(alarme2, OUTPUT);

// Inicia a comunicação Serial

Serial.begin(9600);
BuzzerDistancia();
}

void loop()
{
microsec = ultrasonic.timing();
distanciaCM = ultrasonic.convert(microsec, Ultrasonic::CM);

BuzzerDistancia();

Serial.print(distanciaCM);
Serial.println(" cm");
delay(1);
}

void BuzzerDistancia()
{

digitalWrite(alarme1, LOW);
digitalWrite(alarme2, LOW);
}

// Criar uma conexão de cliente

EthernetClient client = server.available();


if (client)
{

while (client.connected())

{

if (client.available())

{

char c = client.read();

// ler caractere por caractere vindo do HTTP

if (readString.length() < 30)

{

// armazena os caracteres para string

readString += (c);

}

//se o pedido HTTP terminou

if (c == '\n')

{

// vamos verificar se a lâmpada da área deve ser ligada

// Se a string possui o texto L=Ligar


{

// vamos verificar se a lâmpada da sala deve ser ligada

// Se a string possui o texto L=Ligar

if (readString.indexOf("LigarSala") >= 0)

{

// A lâmpada vai ser ligada

digitalWrite(sala, HIGH);

statusSala = true;

}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarSala") >= 0)

{
// A lâmpada vai ser desligada

digitalWrite(sala, LOW);

statusSala = false;

}


{

// vamos verificar se a lâmpada do quarto2 deve ser ligada

// Se a string possui o texto L=Ligar

if (readString.indexOf("LigarQuarto2") >= 0)

{

// A lâmpada vai ser ligada


digitalWrite(quarto2, HIGH);


statusQuarto2 = true;

}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarQuarto2") >= 0)

{

// A lâmpada vai ser desligada


digitalWrite(quarto2, LOW);

statusQuarto2 = false;

}

if (readString.indexOf("LigarQuarto") >= 0)

{

// A lâmpada vai ser ligada

digitalWrite(quarto, HIGH);

statusQuarto = true;

}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarQuarto") >= 0)

{

// A lâmpada vai ser desligada

digitalWrite(quarto, LOW);

statusQuarto = false;

}

{

// vamos verificar se a lâmpada da cozinha deve ser ligada

// Se a string possui o texto L=Ligar

if (readString.indexOf("LigarCozinha") >= 0)

{

// A lâmpada vai ser ligada

digitalWrite(cozinha, HIGH);


}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarCozinha") >= 0)

{

// A lâmpada vai ser desligada


digitalWrite(cozinha, LOW);

statusCozinha = false;
}

{

if (readString.indexOf("LigarCooler1") >= 0)

{

// A lâmpada vai ser ligada

digitalWrite(cooler1, HIGH);

statusCooler1 = true;

}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarCooler1") >= 0)

{
// A lâmpada vai ser desligada

digitalWrite(cooler1, LOW);

statusCooler1 = false;

}

{

if (readString.indexOf("LigarCooler2") >= 0)

{

// A lâmpada vai ser ligada

digitalWrite(cooler2, HIGH);

statusCooler2 = true;

}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarCooler2") >= 0)

{
// A lâmpada vai ser desligada

digitalWrite(cooler2, LOW);

statusCooler2 = false;

}

{

if (readString.indexOf("LigarPortao") >= 0)

{

// A lâmpada vai ser ligada

digitalWrite(portao, HIGH);

statusPortao = true;

}

// Se a string possui o texto L=Desligar

if (readString.indexOf("DesligarPortao") >= 0)

{
// A lâmpada vai ser desligada

digitalWrite(portao, LOW);

statusPortao = false;

}

{
if (readString.indexOf("LigarAlarme") >= 0)

{

if (distanciaCM < 100)
{
digitalWrite(alarme1, HIGH);
digitalWrite(alarme2, HIGH);
statusAlarme = true;
}
}

{
if (readString.indexOf("DesligarAlarme") >= 0)

{
void BuzzerDistancia()
{
digitalWrite(alarme1, LOW);
digitalWrite(alarme2, LOW);
statusAlarme = false;
}
}


// dados HTML de saída começando com cabeçalho padrão

client.println("HTTP/1.1 200 OK");

client.println("Content-Type: text/html");

client.println();

client.println("<font size='20'>");

if (statusQuarto)
{

client.print("lampada quarto ligada");

}
else
{

client.print("lampada quarto desligada");

}

//limpa string para a próxima leitura

readString = "";


// parar cliente

client.stop();

}
}
}
}
}
}
}
}
}
}
}
}
}

Exibições: 176

Anexos

Responder esta

Respostas a este tópico

veja esse video sobre a correçao da biblioteca Ultrasonic.h e veja eh o seu caso

https://www.youtube.com/watch?v=Spw90nHUBws

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço