Pessoal, realizei a conexão com o BD através da lib. em questão.

A conexão esta sendo realizada normalmente, porém, o valor de leitura (umidade e temperatura) esta salvando zero no BD.

No serial monitor a leitura é informada corretamente.

Obs: Estou utilizando o Ethernet Wiznet W5100 e sensor de temperatura e umidade DHT11

#include <Ethernet.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

#include "DHT.h"
#define DHTPIN A2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);

byte mac_addr[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

IPAddress server_addr(xxx, xxx, x, xxx);
IPAddress ip(xxx, xxx, x, xxx);
IPAddress subnet(xxx, xxx, x, x);


char user[] = "meuusuario";
char password[] = "senha";

char INSERT_SQL[] = "INSERT INTO tcc.sensor (humidity, temperature) VALUES (humidity, temperature)";

EthernetClient client;

MySQL_Connection conn((Client *)&client);

void setup() {
Serial.begin(9600);
dht.begin();
while (!Serial);

}

void loop() {

float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
float f = dht.readTemperature(true);

if (isnan(humidity) || isnan(temperature) || isnan(f)) {
Serial.println("Failed to read from DHT sensor!");
return;
}

Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" *C ");

Ethernet.begin(mac_addr, ip);

Serial.println("Connecting...");

if (conn.connect(server_addr, 3306, user, password)) {
delay(1000);
MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);
//sprintf(INSERT_SQL);

cur_mem->execute(INSERT_SQL);

delete cur_mem;

Serial.println("Data recorded.");
}
else
Serial.println("Connection failed.");

}

Exibições: 1517

As respostas para este tópico estão encerradas.

Respostas a este tópico

Funcionou?

Realizei as alterações conforme sugeriu.

Aparentemente esta funcionando agora :D

Muito obrigada pela dica!

Estarei testando outros sensores..

Depois dou um feedback do resultado.

Michele Honda   

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço