Bonjour,
Je travail sur un projet dans lequel je dois afficher une température sur une page web, j'ai réussi à afficher une température sur une page via une adresse ip affecter au shield etc, mais maintenant j'aimerais afficher la vrai température ambiante car celle que j'ai actuellement est terriblement FAUSSE
( vous verrez vous meme dans le screenshot en pièce jointe
)
Et pour le code que j'utilise le voici, que dois-je modifier pour obtenir la VRAI temperature ? :
#include <OneWire.h>
#include <SPI.h> // bibliothèque de la liaison série
#include <Ethernet2.h> //Inclure la bibliothèque Ethernet
// Adresse MAC du shield l'adresse IP dépend de votre réseau local
byte mac[] = { 0x90, 0xA2, 0xDA, 0x10, 0x0A, 0x7D };
IPAddress ip(192,168,1,5); // à choisir sur votre réseau local – version adresse IP fixée
unsigned char mask[] = {255,255,255,0};
unsigned char gateway[] = {192,168,1,1};
int CAPTEUR_TEMP_PIN = 2; // adressage du capteur de temperature (PIN) //
int temp = 0; //définition de la variable entière (integer) //
float temperature = 0; // variable temperature en flottant //
float const_can = 0.0048828; // constante du convertisseur //
EthernetServer server(80); //Initialise le serveur Ethernet, port 80 par défaut pour HTTP
void setup()
{
Ethernet.begin(mac,ip,gateway,mask); //Démarrer la connexion Ethernet et le serveur (version DHCP)
server.begin();
Serial.begin(9600); //Affichage écran du PC
analogRead(CAPTEUR_TEMP_PIN);
}
void loop()
{
temp = analogRead(CAPTEUR_TEMP_PIN); // lecture du capteur de température //
temperature = (((temp*const_can)*1000)-500)/10; //calcul//
// Ecouter les clients entrants
EthernetClient client = server.available();
if (client) {
Serial.println("new client");
Serial.print("adresse IP: ");
Serial.println(Ethernet.localIP());
// Une requète HTTP terminée par une ligne vide
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
// Envoyer un header de résponse standard http
client.println("HTTP/1.1 200 OK"); //C'est OK
client.println();
client.println("<!DOCTYPE html>");
client.println("<html>"); //---- debut de la page HTML ---
client.println("<head>"); // ---- Entete de la page HTML ----
client.println("<meta content=\"utf-8\">");
client.println("<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=iso-8859-1\">");
client.println("<META HTTP-EQUIV=\"Content-Language\" CONTENT=\"fr-FX\">");
client.println("<title>Connexion au Serveur Arduino</title>");
client.println("</head>");
client.print("<body style=background-color:black>");
client.println();
client.println("<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1\">");
client.println("<center>"); // pour centrer la page HTML
client.println("<p style=\"color: white\">*************************************************
</p>");
client.println("<h2 style=\"color: red\">Bienvenue sur ma page !</h2>");
client.println("<p style=\"color: white\">*************************************************
</p>");
client.println("
"); //saut de ligne
// Sortir la valeur des mesures
client.println("<p style=\"color: white\">");
client.print("Temperature ambiante = ");
client.print(temperature);
client.print(" °C");
client.println("</center>"); // fin de la zone centrée
client.println("</body>"); // fin du body
client.println("</html>"); //---- fin de la page HTML
break;
}
}
}
delay(1); // Laisser au navigateur web le temps de recevoir les données
client.stop(); // Refermer la connexion:
}
