Vous êtes ici

Surveiller la température d'une salle serveur (ou autre) avec de l'arduino et du PHP

Dans une salle serveur, la surveillance de la température est trés importante, une climatisation qui tombe en panne ne prévient pas forcément. Les systémes de surveillances de températures du commerce peuvent parfois être couteux. Ici, nous allons voir comment mettre en place cette surveillance à l'aide d'un simple batch en PHP ainsi qu'une carte arduino avec un capteur de température ( ici LM35 ) , donc pour un cout final d'une 20aines d'euros.

- Dans un premier temps, voici le schéma de cablage de l'arduino avec son capteur de température LM35 :

- Voici le code a mettre dans l'Arduino :

float temp;
int tempPin = 0;

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  temp = analogRead(tempPin);
  temp = temp * 0.48828125;
  Serial.println(temp);
  delay(1000);
}

- Voici le code PHP qui permet de vérifier la température ainsi qu'un envoi de mail en cas de température trop elevée ( ici 24°C ) et un fichier de log avec la date des relevés :

<?php
$port = fopen('COM3', 'w+');
sleep(2);
echo "Temperature salle serveur : ";
echo fgets($port);
$temp=fgets($port);
echo "°C";
fclose($port);

$date = date('d m o H i');
$fichier = fopen('c:/temp.txt', 'a+');
fwrite($fichier, 'Temperature : '.$temp ."Date : ".$date."\r\n"."\r\n");
fclose($fichier);

if ($temp > 24.00) {
 $headers ='From: "Aurelien"<[email protected]>'."\n"; 
     $headers .='Reply-To: [email protected]'."\n"; 
     $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; 
     $headers .='Content-Transfer-Encoding: 8bit'; 
     mail('[email protected]', 'Temperature salle Serveur',  'ATTENTION Trop chaud : '.$temp,            $headers);
echo " Trop chaud "; 
} else
{
echo " Temp ok "; 
}

?>

- Voici la commande à éxecuter en tâche planifiée à configurer pour avoir une vérification régulière de la température selon vos choix ( 10 min est le plus approprié ) :

C:\php5.3.0\php-win.exe -f C:\php5.3.0\src\temperature3.php

ici mon script php sera éxecuté de façon caché.

Voila, vous avez maintenant une surveillance de la température de votre salle serveur.

 

www.le-gas.fr : Le guide de l'admin Systeme