| Index de l'article |
|---|
| Recyclage et monitoring d'un onduleur |
| Contexte |
| La Teracom TCW120 |
| Monitoring |
| Conclusion |
| Toutes les pages |
J'ai donc décidé d'utiliser une carte TCW120 pour surveiller mon onduleur. Pour celà, j'ai connecté ma carte sur mon réseau local, et j'ai connecté les bornes de la batteries sur l'entrée analogique de la carte TCW120.

La carte possède deux entrées analogiques. Une entrée qui gère le courant jusqu'à 20 v DC (continu) et la seconde qui gère jusqu'à 100 v DC. J'utilise donc l'entrée 1 (appelée Aln1) car l'onduleur envoit un maximum de 13,7v en charge.
Attention à bien respecter les polarités lorsque vous branchez l'entrée analogique sur la batterie !
Ensuite, il faut mettre en place un programme de surveillance. Cette carte gère le protocole SNMP qui est un protocole de supervision très connu. Vous n'aurez pas de mal à trouver des logiciels windows ou linux pour recevoir ces messages SNMP.
De mon coté, je ne travaille qu'avec Linux. Donc je vous propose de voir comment j'ai configuré ma Teracom à mon serveur linux. Tout d'abord, il faut activer le protocole SNMP via l'interface web de la carte TCW120 (Les options SNMP Traps ne servent que pour les entrées numériques, nous en parlerons dans un autre article).

La carte est configurée pour envoyer des événements sur le changement d'état des entrées et envoie des événements sur le dépassement du seuil de 10 volts DC.
Dans mon cas, je ne veux pas utiliser les évènements de dépassement de seuil, je veux juste surveiller la tension de charge de l'onduleur avec le logiciel NAGIOS. J'ai donc modifier les seuils de la carte avec les commandes suivantes pour passer l’alerte à 20 volts DC.
Via le Shell Linux : ( J'ai nommé la carte snmp dans mon DNS interne )
snmpset -v1 -c private snmp iso.3.6.1.4.1.17095.8.0 i 1 snmpset -v1 -c private snmp iso.3.6.1.4.1.17095.2.1.8.2.0 s "20" snmpset -v1 -c private snmp iso.3.6.1.4.1.17095.8.0 i 1 snmpset -v1 -c private snmp iso.3.6.1.4.1.17095.2.1.9.2.0 s "20" snmpset -v1 -c private snmp iso.3.6.1.4.1.17095.8.0 i 1
Et je rebooté la carte
snmpset -v1 -c private snmp iso.3.6.1.4.1.17095.9.0 i 1
pour connaître l’état de la batterie voici les commandes
Via le Shell Linux :
Lecture voltage analogique 1
snmpget -v1 -c public snmp iso.3.6.1.4.1.17095.3.2.1.0
Lecture voltage analogique 2
snmpget -v1 -c public snmp iso.3.6.1.4.1.17095.3.2.3.0
On obtient le voltage des 2 entrées :
iso.3.6.1.4.1.17095.3.2.1.0 = STRING: "13.5" iso.3.6.1.4.1.17095.3.2.3.0 = STRING: "0.0"
Et maintenant voici une page PHP pour récupérer cette valeur (pour l’entrée Analogique 1):
J'ai appelé ce script : volts1_snmp.php
<?php
$sys0 = snmpget("snmp", "public", "iso.3.6.1.4.1.17095.3.2.1.0");
$sys1 = eregi_replace("STRING:","",$sys0);
$valeur1 = str_replace("\"", "" , $sys1);
$valeur = $valeur1+0;
#echo 'Volts: '.$valeur;
echo round($valeur);
?>
En fonctionnement la batterie retourne 13,5 volts en valeur arrondie cela donne 14v. Dès que cela passe en charge sur l'onduleur, on a environ 12 volts en sortie de batterie.
Ces informations vont permettre de définir les paramètres du script Nagios. Le service Nagios pour l'onduleur portail est définit comme ci après.
Sous Debian, on crée un nouveau fichier de conf dans le répertoire /etc/nagios3/conf.d. J'ai nommé ce fichier tcw120_nagios2.cfg :
define host{
use generic-host ; Name of host template
to use
host_name tcw120
alias tcw120
address [IP de la carte Teracom]
}
define service{
use generic-service ; Name of service template to use
host_name tcw120
service_description Onduleur Portails
check_command check_tcw120!Analogique1!14!11!10
}
Mon réglage :
Le système est ok si on a un voltage arrondie supérieur ou égal à 14 v (mode connexion secteur). Le système est en alerte, si on a un voltage arrondie supérieur au egal à 11 v ( mode coupure ).
Le système est Critique si on passe en dessous de 11 V.
Comme je ne monitore qu'une entrée, pour le moment, je n'ai pas traité le premier paramètre du script nagios. Le script Nagios utilise ce script PHP. Il faut placer le script PHP dans le répertoire /usr/lib/nagios/plugins/ et on le nomme check_tcw120. Il faudra faire un chmod a+rx check_tcw120 pour le rendre exécutable:
#!/bin/bash
STATE_OK=0
STATE_WARNING=1
STATE_CRITICAL=2
STATE_UNKNOWN=3
#$1 non teste
if [ "$1" = "Analogique1" ] ; then
VALEUR=`/usr/bin/php /home/agalinier/public_html/snmp/volts1_snmp.php`
fi
if [ "$1" = "Analogique2" ] ; then
VALEUR=`/usr/bin/php /home/agalinier/public_html/snmp/volts2_snmp.php`
fi
#echo $VALEUR $2 $3
if [ $VALEUR -ge $2 ]; then
echo "Volts = $VALEUR v"
exit $STATE_OK
fi
if [ $VALEUR -ge $3 ]; then
echo "Volts = $VALEUR v"
exit $STATE_WARNING
fi
if [ $VALEUR -ge $4 ]; then
echo "Volts = $VALEUR v"
exit $STATE_CRITICAL
fi
echo "Volts : $VALEUR v"
exit $STATE_CRITICAL
#
Une fois le paramétrage terminé, il faur redémarrer Nagios:
/etc/init.d/nagios3 reload
Ensuite, on peut voir ce que celà donne dans Nagios. En mode connexion secteur, le service TCW120 est verte et retourne 14 V.

Dès qu'il y a une coupure on récupère bien l'information et on passe à 12,7 volts soit 13 v en arrondi.


















