stuck
8. stuckInformations sur un certain nombre d'onduleurs
Contenu de cette section
Cette section contient des informations spécifiques de certains onduleurs.
Ce que je souhaiterais serait de disposer des informations sur le port de
contrôle de l'onduleur (ce que fait chaque broche et ce qu'elle attend qui
soit fait), sur le câble fourni par le constructeur (ce qu'il connecte et
où), ainsi qu'une version modifiée de powerd.c qui fonctionne avec
l'onduleur.
Ce que j'ai actuellement est une description à peu près complète de chaque
onduleur.
Je voudrais essayer d'affiner chaque information, mais comme je ne
peux tester chaque onduleur, il est difficile de décider exactement de ce
qui est nécessaire.
De plus, chaque onduleur semble avoir quelques trucs supplémentaires qui
sont bien décrits par les auteurs de chaque section.
Ainsi, pour l'heure, je laisse tout en place.
Tout pour un HOWTO épais.
Veuillez m'envoyer vos expériences pour les inclure ici.
8.1 Expériences générales.
J'ai conservé les commentaires des gens, mais n'ai pas encore obtenu la
permission de les inclure ici.
Voici un sommaire général de ce que j'ai entendu dire.
- APC :
Ne donneront pas d'informations sur leur mode "intelligent" sans votre
signature d'un accord de confidentialité.
Donc, les gens sont forcés d'utiliser leurs onduleurs "intelligents"
en mode "bête", comme souligné plus bas.
Diverses tentatives de rétro-ingénierie ont été soldées par des niveaux
de réussite différents.
- Best :
Serviables et aimables.
Fournissent le code source et la documentation pour les deux modes.
- Tripp Lite :
Une personne a dit que Tripp ne diffuserait pas non plus d'information.
- Upsonic :
Quelqu'un a dit qu'Upsonic a discuté de détails techniques au téléphone,
répondu aux questions par fax et est serviable en général.
8.2 Advice 1200 A
Onduleurs d'Advice Electronics, Tel Aviv, Israël (Tout leur matériel
porte une étiquette à leur nom).
Spécification des broches du port de contrôle.
- 2 - Coupure de courant.
- 5 - Batterie faible.
- 6 - Extinction de l'onduleur.
- 4 - Masse commune des broches 2, 5 et 6.
Ils m'ont aussi donné le dessin suivant qui ne m'a servi à rien, mais peut
vous être utile si vous souhaitez fabriquer vous-même un câble :
Câble fourni.
Ils m'ont d'abord donné un câble qui appartenait à un paquetage DOS de
contrôle de l'onduleur appelé RUPS.
Je l'ai utilisé pour les tests.
Une fois ceux-ci satisfaisants, ils m'ont donné un câble qu'ils utilisent
pour les serveurs Netware connectés à des onduleurs.
Il fonctionnait à l'identique.
Voici les détails :
- DTR - Alimentation du câble (powerd.c doit le monter) ;
- CTS - Courant présent (descend quand le courant est coupé) ;
- DSR - Batterie faible (descend lorsque la batterie faiblit) ;
- RTS - Extinction de l'onduleur (à monter pour éteindre).
(le powerd.c inclus dans SysVinit place ou laisse RTS haut, causant l'arrêt
de l'onduleur immédiatement lors du lancement de powerd !)
8.3 Advice 1200 Aname="Trust Energy Protector 400/600"
Cette section n'est pas utile seulement pour le Trust Energy Protector.
Elle illustre les nouvelles fonctionnalités d'init.
Comment utiliser un Trust Energy Protector 400/650 sous Linux ?
par
Ciro Cattuto
Version 1.0 - 31 mars 1997
- Connexion PC-onduleur
Le Trust Energy Protector 400/650 est équipé d'un port de signaux.
A l'aide d'un câble adapté, il est possible de connecter celui-ci sur
un ordinateur pour réagir aux événements concernant l'alimentation
électrique.
- Le port de signaux de l'onduleur
L'assignement des broches du port de signaux DB-9 de l'onduleur est le
suivant, comme indiqué dans le manuel utilisateur :
- broche 2
Ce relais est fermé lorsque le courant d'alimentation est coupé.
- broche 4
Masse des broches 2 et 5.
- broche 5
Ce relais est fermé lorsque la batterie dispose de moins d'une minute et
demi d'autonomie.
- broche 6
L'utilisateur peut envoyer un signal haut (+5V à +12V) durant plus d'une
milliseconde pour éteindre l'onduleur.
Cette option ne peut être activée que durant une coupure de courant.
- broche 7
Masse de la broche 6.
- le câble
Voici le câble que j'ai utilisé pour connecter l'onduleur au port série de
mon ordinateur.
Pour un port série DB-9, les broches 6, 20, 8, 7, 5 et 2 correspondent
respectivement aux broches 6, 4, 1, 5, 8 et 3.
- Comment fonctionne le câble ?
L'ordinateur monte DTR et vérifie que DSR soit haut pour s'assurer
que le câble soit connecté à l'ordinateur.
Tant que le courant est là, DCD et CTS sont hauts tous les deux
(à cause des résistances).
Lorsque le courant est coupé, le relais entre les broches 2 et 4 de l'onduleur
se ferme, et DCD descend pour signaler la coupure.
De même, lorsque les batteries sont faibles, le relais entre les broches 5 et 4
se ferme, faisant descendre CTS .
Durant une coupure de courant, l'ordinateur peut éteindre l'onduleur en
montant TX durant 1 ms au moins.
Cela peut être réalisé aisément en envoyant un octet 0xFF au port série
avec une vitesse faible.
- le daemon powerd
Pour utiliser les informations disponibles sur le port série, il faut utiliser
un programme qu surveille celui-ci, décode le signal et envoie les messages
appropriés au système d'exploitation, en l'occurence au processus init .
Ce dernier peut exécuter des scripts et programmes conçus pour gérer
(proprement !) l'événement de coupure de courant.
- compiler powerd
En annexe A se trouve le code de powerd , le daemon que j'utilise pour
surveiller le Trust Energy Protector 400/650.
Pour le compiler, il faut le source du paquetage SysVinit (j'ai utilisé
celui de sysvinit-2.60).
Ecrasez simplement le powerd.c d'origine et compilez-le.
- Comment fonctionne powerd ?
Dès le démarrage, powerd ouvre le périphérique série connecté à
l'onduleur et monte DTR .
Ensuite, il forke un daemon et se termine en laissant celui-ci tourner.
Le daemon powerd peut se trouver dans l'un des trois états suivants :
- Etat 0 - le courant est bon
Dans cet état, powerd lit le port série toutes les T0_SLEEP
secondes (voir les lignes #define au début du code source).
Si DCD descend, powerd bascule en état 1.
Si CTS descend, powerd bascule en état 2 (cela ne doit pas
arriver si DCD n'est pas descendu avant, mais j'ai préféré assurer
le coup).
- Etat 1 - le courant est coupé
Une coupure de courant a été détectée.
DCD est bas et powerd lit le port de l'onduleur toutes les
T1_SLEEP secondes.
Si DCD remonte, il bascule en état 0.
Si CTS tombe, il bascule en état 2.
- Etat 2 - la batterie est faible
La batterie de l'onduleur est faible.
Le daemon powerd reste dans cet état.
A chaque changement d'état de powerd, il prévient le processus init
afin que l'action appropriée soit effectuée.
Ces événements sont tracés à l'aide du système de trace du système
d'exploitation (NdT : syslogd).
Si DSR est bas, c'est qu'il y a un problème au niveau du câble.
powerd continue à surveiller la ligne DSR et envoit un message
d'avertissement toutes les deux minutes au système de trace.
- Utiliser powerd
Le daemon powerd doit être lancé par les scripts d'initialisation
durant le démarrage du système.
J'ai ajouté les lignes suivantes dans mon script
/etc/rc.d/rc.local :
En premier, on efface (si nécessaire) le fichier /etc/turnUPSoff .
Celui-ci est utilisé par le script de shutdown (/etc/rc.d/rc.0
dans mon cas) pour décider s'il faut arrêter l'onduleur ou non.
Voir plus bas pour plus d'informations.
Ensuite, on désactive le contrôle de flux matériel sur le périphérique
série connecté à l'onduleur et on positionne la vitesse à 75 bauds.
Maintenant, nous sommes sûr que le signal TX restera haut suffisamment
longtemps pour arrêter l'onduleur si nous envoyons un caractère 0xFF
au port série (à nouveau, voir plus bas).
Enfin, nous lançons le daemon powerd en lui indiquant le port à
surveiller.
Notez que nous n'avons pas à lire de caractères sur ce port, donc pas
d'inquiétude en cas de conflit d'interruptions - il n'aura aucune influence.
- Le fichier inittab et les scripts de shutdown
Le processus powerd tourne maintenant, et il enverra des signaux à
init en cas de coupure de courant.
Il faut maintenant configurer le système afin qu'il puisse réagir de
manière utile lorsque ces signaux sont reçus.
- Modification de inittab
Ajoutez les lignes suivantes à proximité du début de votre fichier
/etc/inittab :
- Les scripts
Les scripts powerfail_script , powerokay_script et
powerfailnow_script sont exécutés lorsque init reçoit le
signal correspondant.
Il ont la responsabilité d'arrêter le système de manière propre ou
d'arrêter un shutdown en cours au cas où le courant reviendrait.
Voici les scripts que j'utilise actuellement :
/etc/powerfail_script
Mon Trust Energy Protector 400 n'alimente que l'ordinateur, j'ai donc une
réserve de courant assez importante.
Dans mon secteur, les coupures de courant ne durent souvent que quelques
minutes, donc le système réagit à celles-ci de la manière suivante :
Il attent 10 minutes (habituellement, le courant revient avant) puis
arrête le système, en laissant aux utilisateurs le temps de fermer leurs
applications et de se déconnecter.
Avant d'exécuter la commande shutdown, je vérifie qu'il n'y a pas
d'autre shutdown en cours.
Je crée aussi le fichier /etc/turnUPSoff afin que le système
arrête l'onduleur.
/etc/powerokay_script
Si le courant revient, on tue le script powerfail_script et tout
shutdown en cours.
On n'oublie pas de supprimer /etc/turnUPSoff .
/etc/powerfailnow_script
Si la batterie faiblit, on s'assure qu'aucun shutdown ne soit en cours,
on crée le fichier /etc/turnUPSoff puis on arrête le système
immédiatement.
- Le script d'arrêt système
Lorsque l'arrêt du système est effectué, on peut arrêter l'onduleur en
montant le signal TX du port série durant plus d'une milliseconde.
Celui-ci est déjà configuré correctement par la commande stty du
script rc.local .
Si le fichier /etc/turnUPSoff est présent, on envoit l'octet
0xFF (tous les bits à 1) sur le port série.
Pour cela, on ajoute les lignes suivantes autour de la fin du script
d'arrêt (/etc/rc.d/rc.0 dans mon cas).
L'emplacement correct dépend de la manière dont le système est
configuré, mais il doit pouvoir se situer avant la commande echo
qui affiche le message "System is halted".
- Remarques générales
Ce document contient des choses que j'ai apprises en tentant de configurer
mon système Linux avec le Trust Energy Protector 400.
Certaines informations (le chemin d'accès aux scripts d'initialisation, par
exemple) peuvent être spécifiques à mon système, et il vous faudra
vraisemblablement faire quelques adaptations.
Néammoins, j'espère que ce document sera une trace utile pour ceux qui
essaieront d'utiliser un onduleur de ce type sous Linux.
Si vous rencontrez des difficultés, recherchez des informations plus
générales dans le reste de ce Howto.
Bonne chance !
- Retour d'informations
J'apprécierais énormément tout retour d'informations concernant ce document,
afin de pouvoir affiner celui-ci et y corriger de possibles erreurs (je sais
que l'anglais que j'utilise n'est pas excellent, mais après tout, je suis
italien !
NdT : On se demande quelquefois s'il faut vraiment tout traduire :-))
).
Envoyez tout commentaire/suggestion/critique à l'adresse suivante :
ciro@stud.unipg.it
Si vous rencontrez des problèmes d'utilisation de l'onduleur Trust Energy
Protector 400/650 sous Linux, vous pouvez aussi me contacter.
J'essaierai de vous aider.
- Informations légales
Je n'ai aucune relation avec Trust Networking Products.
L'information contenue dans ce document est livrée "telle quelle".
Vous pouvez l'utiliser à vos risques et périls.
Je ne puis être tenu responsable d'un quelconque dommage ni perte de données
résultant de l'utilisation du code ni des informations données ici.
Ciro Cattuto
- Appendix A - Code source du daemon powerd>
8.4 Advice 1200 ATrust UPS 400-A
J'ai reçu un message à propos du Trust UPS 400-A.
Je ne sais pas si c'est le même que le Trust Energy Protector 400,
donc voici le message
(NdT : le texte qui suit a été reformaté. Le document d'origine
comporte une copie de courrier électronique)
:
Marcel Amerlaan
16 juillet 1997
- disponibilité
Cet onduleur ne semble plus être fabriqué par son
constructeur
,
mais cela ne veut pas dire qu'il ne soit plus disponible :
j'ai acheté le mien très peu cher il y a seulement un mois.
De plus, cette entreprise réétiquette souvent ses produits.
- câble
Il est facile à fabriquer à l'aide du câble d'origine pour powerd
et de la documentation de Trust.
Il présente deux améliorations :
- indication de batterie faible ;
- extinction de l'onduleur.
La fonction "cable check" n'est pas utilisée car l'onduleur
ne semble pas la reconnaître.
- conclusion
Voilà tout ce que je crois savoir.
Si vous voulez plus d'informations sur l'onduleur, le câble ou le
logiciel, contactez-moi.
Et souvenez-vous que tout ce qui est décrit ici fonctionne pour moi
mais je ne garantis pas que ce soit le cas pour vous.
8.5 Advice 1200 ASustainer S-40a
Informations sur le Sustainer S-40a
(NdT : le texte qui suit a été reformaté. Le document d'origine
comporte une copie de courrier électronique)
:
Evgeny Stambulchik
10 septembre 1995
- environnement
Sustainer S-40a avec le paquetage unipower (récemment renommé genpower),
câble maison (cf. infra).
J'ai envoyé une copie de tout ça à Tom Webster, l'auteur du paquetage, et
cela devrait apparaître dans la nouvelle version.
- câble
- Note : les broches d'arrêt indiquées dans la documentation
technique (4 et 6) sont incorrectes. Les bonnes sont 6 et 7, comme sur le
schéma joitnt ;
- Note 2 : les broches côté PC entre parenthèse sont pour un
connecteur 25 broches, les autres pour un 9 broches.
- fichier unipowerd.h
- fichier genpowerd.h
Pour la nouvelle version du logiciel (genpowerd), je pense qu'il faut
ajouter la ligne suivante :
8.6 Advice 1200 ASystel
Une autre entreprise israélienne.
Je ne leur ai jamais acheté d'onduleur, mais il m'ont for aimablement
fourni une documentation détaillée sur leur port de communication.
Il devrait être assez facile de contrôler leur onduleur.
Leur numéro de téléphone est :
972-8-409-019 (fax 972-8-407-216).
8.7 Advice 1200 ADeltec Power, Fiskars Power Systems et Exide
Fiskars
est une holding finnoise, anciennement propriétaire de
Deltec Power
.
En mars 1996, Fiskars a vendu Deltec Power à
Exide
.
A cette date, Deltec Power était l'un des plus gros constructeurs
d'onduleurs.
Avec Fiskars, Deltec fabriquait les PowerServers 10, 20, 30 et 40.
La page web de Deltec Power en mentionne d'autres.
Exide joint maintenant un logiciel de contrôle avec ses onduleurs qui
fonctionne sous Linux.
Ils vendent aussi celui-ci séparément et affirment qu'il fonctionne avec
d'autres onduleurs aussi.
J'aimerais avoir des nouvelles de gens qui utilisent ce logiciel.
Voici l'annonce qu'ils m'ont envoyée par e-mail :
Exide Electronics annonce Lansafe III, logiciel de gestion d'onduleurs
sous Linux.
Lansafe III est une application de gestion d'onduleurs.
Elle permet l'arrêt automatique du système en cas de coupure de courant
de longue durée qui dépasserait l'autonomie de la batterie de l'onduleur.
Lansafe III permet les messages "broadcast" et l'envoi de courriers
électroniques en fonction des réglages utilisateur.
La séquence d'arrêt peut aussi être paramétrée.
Lansafe III fonctionne avec la plus grande partie des onduleurs Exide
Electronics.
Il permet aussi l'arrêt automatique simple avec des onduleurs d'autres
constructeurs.
Lansafe III pour Linux fonctionne sur les systèmes Linux à base Intel.
Deux interfaces sont fournies : mode caractères et X11/Motif.
Lansafe III fonctionne sur toutes les plateformes majeures de systèmes
d'exploitation :
Linux, IBM AIX, HP UX, Digital Unix, SCO Unix, Solaris, SunOS,
AT&T Unix, toutes les plateformes Windows, OS/2, Novell et
Macintosh en particulier.
Lansafe III est fourni avec les onduleurs Exide suivant :
- OneUPS Plus ;
- NetUPS ;
- PowerWare Prestige ;
- PowerWare Profile ;
- PowerWare Plus 5xx.
Il est aussi fourni avec les onduleurs FPS Power Systems :
- PowerRite Plus ;
- PowerRite Max ;
- PowerWorks A30 ;
- PowerWorks A40 ;
- séries 9 000 ;
- séries 10 000.
Il est aussi possible d'acquérir une licence logicielle séparée pour
l'utilisation d'un onduleur plus ancien ou d'un autre constructeur.
Les licences simples sont à USD 149, des licences site sont disponibles.
Pour tout détail, visitez nos sites web :
www.exide.com
,
www.fiskarsUPS.com
et
www.deltecpower.com
Accessoirement, lorsque j'ai tenté de me connecter à www.fiskarsUPS.com,
il m'a été demandé une identification et un mot de passe.
8.8 Advice 1200 AOnduleur Beaver modèle UB500
Dan Fandrich
écrit :
Je pense avoir réussi à faire fonctionner mon vieil onduleur Beaver modèle
UB500 avec genpower.
L'interface utilise des niveaux de tension compatibles RS-232, donc
l'installation est simple.
Ily a un connecteur DB-9 femelle à l'arrière qui se connecte directement dans
un port série DB-9 de PC à l'aide d'un câble droit.
Les interrupteurs DIP permettent quelques ajustements.
Pour émuler le type d'onduleurs apc1-nt de genpower, ils doivent être
positionnés comme suit :
- 1 on (CTS = coupure de courant) ;
- 2 off (CTS = batterie faible) ;
- 3 off (DSR = coupure de courant) ;
- 4 off (DSR = batterie faible) ;
- 5 off (CD = coupure de courant) ;
- 6 on (CD = batterie faible) ;
- 7 off (RI = coupure de courant) ;
- 8 off (RI = batterie faible) ;
- 9 on (DTR = extinction) ;
- 10 off (RTS = extinction).
Les interrupteurs forment des groupes de paires adjacentes pour chaque
broche de sortie.
Ils sont exclusifs mutuellement - ne tentez pas de positionner ON les
5 et 6 ensemble, par exemple, ou vous ferez un court-circuit entre les
signaux coupure de courant et batterie faible.
C'est tout ce qu'il y a à dire.
Vous pouvez ajouter cela à votre documentation.
8.9 Advice 1200 ASendom
Charli
écrit :
J'ai connecté un onduleur Seldom avec powerd.
Peut-être que ce qui suit sera utile avec d'autres onduleurs.
J'ai utilisé le diagramme de la page de man de powerd :
En fait, l'onduleur seldom n'utilise pas de relais mais quelque chose
d'autre et fonctionne dans un sens, mais pas dans l'autre.
Si donc le câble ne fonctionne pas, il faut essayer d'inverser les
broches sur le "relais".
8.10 Advice 1200 ABest
L'information sur les onduleurs Best est disponible sur le site web de
Best Power
.
Leur site contient un paquetage checkup.tar (section
Logiciels
)
de communication avec leurs onduleurs, aussi bien en modes intelligent que
bâte, fourni en sources, donc compilable sous Linux.
- Best Fortress avec le logiciel de Best
Mini-Howto des onduleurs Best Power
par
Michael Stutz
et
http://dsl.org/m
.
Version 1.0, 14 août 1997
Avertissement
Copyright 1997 Michael Stutz
NdT : la traduction de ce paragraphe
est fournie à titre indicatif au lecteur.
Se reporter à la version originale pour les termes exacts.
;
cette information est libre ;
elle peut être redistribuée et/ou modifiée selon les termes de la Licence
Publique Générale GNU (GPL) version 2 ou (à votre préférence) ultérieure,
pour autant que la présente phrase soit conservée ;
cette information est fournie SANS AUCUNE GARANTIE ;
sans même de garantie implicite d'adaptation à un besoin particulier ;
se reporter à la GPL de GNU pour plus de détails.
Introduction
Best Power
est constructeur d'onduleurs de haute qualité, et leur série Fortress est
particulièrement bien adaptée à des utilisateurs habituels de Linux.
Bien que ses produits ne soient actuellement pas aussi bon marché que
certains autres (comme ceux d'APC), Best Power fournit le code source de
son logiciel et a été très réactif quant aux questions posées par des
utilisateurs de Linux.
De plus, son matériel semble choisi souvent par les consommateurs,
ce qui en fait un bon choix pour les utilisateurs de Linux.
Ce document décrit l'installation d'un onduleur Best Power Fortress (le
modèle utilisé est un 660a de 1996 accompagné de son CD-ROM) sur une machine
Linux.
Installation
Matériel
Installez l'onduleur comme indiqué par les instructions.
Les séries Fortress de Best Power sont fournies avec un câble RS-232
destiné à être connecté à un port série libre à l'arière de l'ordinateur.
Logiciel
Voici ce qui diffère du manuel, qui ne contient pas actuellement
d'instructions spécifiques pour Linux.
En revanche, le CD-ROM d'accompagnement conient avec le code source du
logiciel de l'onduleur, ce qui en rend la mise en oeuvre triviale.
Pour réaliser celle-ci, suivez les étapes ci-dessous, et utilisez
le manuel comme référence pour avoir une vue d'ensemble sur le fonctionnement
général du logiciel.
J'ai pris la liberté de faire quelques modifications dans ce HOWTO sur la
configuration du logiciel Fortress pour Unix d'une manière qui me semble
plus adaptée à un système Linux.
Par exemple, j'ai éliminé la nécessité d'un répertoire /etc/best , et
placé les exécutables dans /usr/local/bin qui me semble un endroit
plus approprié.
- D'abord, créez le script "upsdown" destiné à être exécuté
lors d'un arrêt secteur.
Celui-ci va arrêter le système :
- Maintenant, créez les répertoires pour la documentation et le code
source :
- Montez le CD-ROM, et désarchivez le fichier
unix/checkups.tar
dans un répertoire temporaire :
- Allez dans le répertoire
etc/best/advanced qui doit avoir
été créé dans le répertoire temporaire à partir de l'archive ;
- Copiez la documentation et les fichiers script à leurs emplacements
idoines dans le système :
- Nettoyez le chantier dans le répertoire temporaire et compilez le
logiciel :
- Testez l'onduleur.
Remplacez
ttySx par le port série de votre choix.
Si votre connexion est bonne, vous devriez voir une ligne de caracères
s'imprimer à l'écran :
- Rendez le programme checkups exécutable au démarrage pour le tester.
Cela peut être réalisé d'un certain nombre de manières différents (décrites
dans le manuel).
Celle que j'ai utilisée consiste à ajouter une ligne dans
/etc/inittab :
- Testez le tout.
Supprimez l'alimentation secteur de l'onduleur en retirant le fusible
de l'onduleur, et attendez quelques minutes.
Le logiciel affiche un message d'alerte puis arrête le système après
quelques instants.
- Si cela fonctionne, retirez l'option
-c500 de la ligne de votre
inittab (qui en gros implique d'arrêter le système systématiquement
au lieu de ne le faire que lorsque le courant est coupé), et vous pouvez
rouler !
Conclusion
Toute suggestion permettant d'améliorer ce document ou les techniques qui
y sont décrites est la bienvenue.
A l'instant où j'écris ces lignes, Best Power semblait intéressé par
l'inclusion de la présente information ou d'une autre dans la sienne afin
d'aider les utilisateurs de Linux par rapport à ses produits, il
s'agit donc réellement d'une entreprise à promouvoir.
Vous pouvez lui transmettre vos impressions à
sales@bestpower.com
et
support@bestpower.com
.
- Best Fortress LI-950
-
Quelques commentaires sur le Best Fortress, de
Leonard N. Zubkoff
,
message du 25 mai 1995 dans comp.os.linux.hardware
(NdT : le texte qui suit a été reformaté. Le document d'origine
comporte une copie de message de forum)
:
Citation de nautix@community.net :
D'accord avec ce que dit Craig.
APC a été très peu coopératif, mais je n'ai que de bonnes choses à dire
sur Best.
J'utilise son modèle LI 660 ; 660 VA, des tas d'indications sur le
panneau frontal, etc.
Le logiciel CheckUPS est en option payante et nécessite quelques
bidouillages pour entrer dans mons système de fichiers FSSTND-isé
(NdT : File System STaNDard, le standard de répartition des éléments
dans les répertoires préconisé pour Linux) (les répertoires et noms de
fichiers sont en dur pour SunOS 4.1.x).
Je serai heureux de vous envoyer mes diffs, si vous les voulez (j'adore
quand un constructeur fournit le source en tant que pratique commerciale
normale !!).
Le logiciel CheckUPS est limité, cependant, à réaliser des arrêts
automagiques (NdT : automagic dans le texte).
L'onduleur peut fournir des tas d'informations sur son état ; CheckUPS
ne contrôle que "Si le courant est coupé, combien de temps reste-t'il
d'autonomie à la batterie ?".
Best suit aussi ses questionnaires de satisfaction clients.
J'ai indiqué ma déception que CheckUPS ne dispose pas de plus de fonctions
d'interrogation (comme le voltage en entrée, en sortie, le pourcentage de
charge, etc.) qui sont disponibles en entrée.
J'ai demandé les spécifications de l'interface ; ils ont dit : "bien
sûr" et me l'ont envoyé en 2 jours, gracieusement.
Un contrôleur d'état de l'onduleur complet est dans ma casserole de
derrière.
Quelqu'un voit-il une utilité à ce genre d'utilitaire ?
Réponse de Leonard N. Zubkoff :
Laissez-moi ajouter une autre recommandation pour Best Power.
Je viens d'acheter un Fortress LI-950, mais j'ai décliné leur offre
logicielle pour CheckUPS.
Contrairement à certaines autres gammes, un simple câble trois fils
suffit à connecter le Fortress à un port série -- pas besoin de montage
"pull-up" à faire dans le câble.
Quelques minutes de bidouillage et j'avais un programme qui fait à la fois
daemon d'arrêt système et qui coupe le courant de sortie ensuite lorsque
le système est arrêté durant une période sur batterie.
Je pourrais éventuellement utiliser le mode de communications série plus
intelligent plutôt que le simple mode de contact, et j'ai donc demandé la
documentation au support technique de Best, et il est arrivé aujourd'hui,
une semaine après mon appel.
Après avoir étudié celle-ci, je déciderai si une interface plus intelligente
est réellement intéressante, en particulier puisque dans certains cas
j'aurais besoin d'arrêter deux machines en réseau partageant l'onduleur.
Leonard.
- Best Ferrups
-
En complément à la documentation et au logiciel sur le site web de Best,
vous pouvez aussi utiliser le paquetage bestups-0.9.tar.gz (section
Logiciel
).
Nous avons juste commencé à le tester avec notre Ferrups 5 kVA.
L'idée de base est qu'il y a deux modules.
L'un qui reçoit des demandes d'information du port réseau, les relaie à
l'onduleur, et renvoit les résultats.
Le second module parle au premier, interprète les résultats, et répond
OK ou FAIL.
C'est suffisant pour que le paquetage powerd-2.0.tar.gz (section
Logiciel
) fasse le reste.
Les détails se trouvent dans le paquetage lui-même.
Par ailleurs, notre Ferrups 5 kVA a fonctionné sans histoire pour
nos 10 ordinateurs et 30 écrans.
8.11 Advice 1200 AGPS1000 d'ACCODATA
8.12 TrippLite BC750LAN (Standby UPS)
Tom Webster
, l'auteur du paquetage genpower, m'a envoyé des
informations sur le TrippLite BC750LAN.
Si vous avez l'un d'entre eux, c'est probablement le meilleur paquetage
pour commencer.
Mais pour être exhaustif, voici le diagramme de brochage du câble (réalisé
par tâtonnements, et sans documentation) :
8.13 APC
Si la pléthore de paquetages pour APC cités plus haut ne vous permettent
pas de démarrer, il est possible que la section qui suit soit d'une
certaine utilité.
- Backup-UPS
-
Il semble qu'il y ait une certaine controverse sur la fiabilité des
informations indiquées ici sur les APC Back-UPS, donc, soyez prudent.
Je préface cette section avec un message d'avertissement que j'ai recu.
Il peut ne pas prendre tout son sens tant que le reste de la section
n'est pas lu, mais ainsi, au moins vous aves plus de chances de le voir.
Et, à nouveau, comme je n'ai aucun onduleur APC, je ne peux vérifier
la fiabilité d'aucun de ces messages.
- Un message d'avertissement
-
Message de
Marek Michalkiewicz
sur le BUPS-HOWTO
(NdT : le texte qui suit a été reformaté. Le document d'origine
comporte une copie de courrier électronique)
:
Si vous voulez connecter un onduleur APC Back-UPS sur votre machine Linux,
ce qui suit peut vous intéresser.
Il y a un bon BUPS-HOWTO qui décrit comment le faire.
Mais il comporte un "bug".
Le signal RTS du port série est utilisé pour arrêter l'onduleur.
Celui-ci ne s'arrêtera que s'il travaille sur batterie.
Le manuel indique que le le signal d'arrêt doit durer au moins 0,5ms.
Mais un temps inférieur est suffisant, au moins pour mon propre APC
Back-UPS 600.
L'utilisation de RTS peut être dangereuse, car ce dernier est monté à
l'ouverture du périphérique.
Le programme backupsd le redescend ensuite, mais il reste haut un moment.
Cela coupe le courant lors du premier lancement de backupsd s'il y a une
coupure secteur à ce moment précis.
Cela peut arriver par exemple si l'onduleur est éteint, et que le
courant revienne seulement pour un moment.
Soit il faut lancer backupsd avant de monter les systèmes de fichiers en
lecture/écriture, soit (de préférence) utiliser TX (broche 3) plutôt que
RTS (broche 7) pour éteindre l'onduleur (la numérotation est pour un DB-9).
On peut utiliser ioctl(fd, TCSBRKP, 10); pour monter TX pendant
une seconde, par exemple.
L'utilisation de TX doit etre plus sûre.
Je posterai peut-être les diff si le temps me le permet...
- BUPS-HOWTO
-
Luminated Software Group Présente
HOWTO utilisation d'onduleurs Back-UPS (d'APC)
(pour protéger votre système Linux)
Version: 1.01 BETA
Document de :
Christian G. Holtje
Information sur le câblage et aide :
Ben Galliart
Adaptation française :
Bernard Choppy
Ce document est placé dans le Domaine Public à une condition.
Celle-ci est que ce qui appartient a César revienne à César.
Modifiez ceci autant que vous voulez, rappelez juste que nous avons
travaillé dessus.
Attention !
Ni moi, ni aucun de ceux qui on écrit ou aidé à ce document, ne
garantissons quoi que ce soit concernant ces textes/sources/indications.
Si quoi que ce soit est endommagé, nous n'y sommes POUR RIEN !
Cela fonctionne POUR AUTANT QUE NOUS LE SACHIONS, mais nous pouvons avoir
fait des erreurs.
Donc, soyez prudent !
NdT : Le document d'origine contient des références de pièces détachees
Radio-Shack, qui etaient distribuées par le réseau Tandy en France.
Ce reseau n'existe plus, et les références ont donc été supprimées de la
version française.
Le lecteur néammoins intéressé pourra se reporter à la version anglaise du
présent document.
Bien, vous venez juste d'acheter (ou vous allez le faire) un Back-UPS
d'APC (d'autres modèles pourront peut-être bénéficier de ces
informations, avec peu ou pas de modifications, mais nous ne savons pas).
Vous avez jeté un coup d'oeil au prix du couple logiciel/câble
Power-Chute, et n'êtes pas sûr que le jeu en vaille la chandelle.
Bien, j'ai fait mon propre câble, et mon propre logiciel et je les utilise
pour arrêter automatiquement mon système Linux lors d'une coupure secteur.
Vous savez quoi ?
Vous pouvez aussi !
*** Le Câble ***
C'était la partie la plus difficile à imaginer (je m'y connais peu
en hardware, donc Ben a fait le plus gros du travail).
Pour en fabriquer un, vous devez acheter ce qui suit chez votre marchand
d'électronique du coin :
- 1 connecteur â souder subminiature mâle DB-9 ;
- 1 connecteur â souder subminiature femelle DB-9 ;
- 2 boîtiers pour les connecteurs ci-dessus (vendus séparement en général) ;
- Du câble multi-brins (pas du mono-brin).
Il vous faut aussi, mais vous pourrez peut-etre l'emprunter :
- un fer à souder ;
- de la soudure.
Ok...
Voici comment connecter le tout !
Ces diagrammes montrent le côté ARRIERE (celui où vous soudez les câbles sur
les broches).
Les lettres V, R et B représentent les couleurs des câbles que j'ai
utilisés, et facilitent la distinction des lignes
(Note : j'utilise la numérotation standard RS-232 (pour autant qu'on puisse
dire)
.
Le manuel de l'APC utilise une numérotation différente.
Ignorez-la !
Utilisez la nôtre...
Je l'ai déjà changée pour vous !).
Pour ceux qui préfèrent les chiffres :
---- Complément : Utilisation des broches RS-232 ! ----
Puisque nous avons eu à trouver cette information :
Depuis l'ARRIERE (côté soudure), les broches sont numérotées ainsi :
Les broches signifient
Ce que nous avons fait était la connexion de la ligne RS-232 de l'onduleur
"Fail Output" sur CD, le châssis de l'onduleur sur Gnd, et l'entrée "Shut
Down" sur RTS.
Facile, maintenant qu'on vous le dit, non ?
Je n'ai aucune idée du comportement du logiciel ci-dessous, si vous
achetez le câble d'APC.
Il peut fonctionner, ou non.
*** Le Logiciel ***
J'utilise le paquetage SysVInit de Miquel van Smoorenburg pour Linux
(voir à la fin pour emplacements, remerciements, adresses E-mail, etc.).
Je ne sais ce qui doit être changé pour utiliser l'init de quelqu'un d'autre,
mais je sais que ce code (qui suit) fonctionne avec celui de Miquel.
Simplement ainsi je remercie comme je le dois.
J'ai regardé dans le code de Miquel pour comprendre comment ioctl()
fonctionnait.
Si je n'avais pas eu cet exemple, j'aurais eu des problèmes.
J'ai aussi utilisé la routine powerfail() (telle quelle, je crois),
puisqu'elle doit interagir avec init, j'ai pensé qu'il devait savoir ça
mieux que moi.
Le fichier .c est à la fin de ce document, et nécessite seulement
d'être copié/collé.
Pour cela, supprimez simplement tout ce qui n'est pas du code.
Ce document doit se terminer par la ligne /* Fin de Fichier */...
Coupez le reste.
Ce programme peut, soit être lancé comme daemon pour contrôler l'état
de l'onduleur et l'indiquer à init, soit être lancé pour envoyer la commande
kill-power (coupure d'alimentation) à l'onduleur.
L'alimentation ne sera coupée que s'il y a un problème secteur et que
l'onduleur est sur batteries.
Une fois le courant revenu, il se rallume.
Pour le lancer comme démon, entrez simplement :
/dev/backups est un lien vers /dev/cua0 (COM 1, pour les
DOSseurs) actuellement.
La beauté du lien est que je n'ai qu'à le refaire si je passe sur COM 2 ou
COM 3.
Ensuite, si le secteur s'arrête, init lancera les commandes de powerwait .
Un exemple (qui vient de mon /etc/inittab ) :
Powerwait sera lancé si le courant baisse, et powerokwait s'il revient.
Voici mon rc.power complet :
Pas mal, non ?
En fait, il y a un petit problème, là...
Je n'ai pas eu le temps de le trouver...
S'il y a un gourou "sh" par ici...
J'ai laissé un petit détail de côté, c'est de faire couper l'alimentation
par l'onduleur si le PC est arrêté courant coupé.
Cela est réalisé en ajoutant la ligne suivante à la fin de votre script halt :
Cela va simplement couper l'alimentation si le secteur est coupé.
*** Tester le tout ***
C'est juste une petite section pour vous dire :
SOYEZ PRUDENT !
Je vous recommande la sauvegarde de vos partitions Linux, avec
plusieurs sync avant de tester, et d'être prudent en général.
Evidemment, je ne fais que vous le recommander.
Je n'ai pas été prudent du tout, et j'ai eu à nettoyer ma partition
plusieurs fois pendant les tests de ma configuration.
Mais celle-ci fonctionne. :-)
*** Où l'obtenir ***
Le SysVInit de Miquel van Smoorenburg's peut se trouver sur :
SysVinit-2.50.tgz
et une correction pour certains shell bash se trouve juste à côté :
SysVinit-2.50.patch1
Pour ce qui est d'obtenir ce HOWTO, vous pouvez m'envoyer un E-mail,
docwhat@uiuc.edu avec pour sujet :'request' et le mot-clef 'backups' dans le
corps du message :
Demande du HOWTO original
(il est possible que j'automatise cela, et d'autres choses).
*** Section des remerciements qui sont dûs ***
Merci à :
-
Miquel van Smoorenburg
pour son superbe paquetage SysVInit et son
powerd.c qui m'ont
beaucoup aidés ;
-
Christian Holtje
Documentation
backupsd.c (ce qui n'est pas de Miquel) rc.power ;
-
Ben Galliart
Le câble, informations sur le standard RS-232 et astuces bruyantes
(non rapportées ici).
- Autres informations
(NdT : Le document original comporte de nombreuses copies de courriers
électroniques à ce point. Le traducteur s'est permis d'en réaliser une
synthèse plus courte et, il l'espère, plus facile à utiliser)
Message de
Jim Ockers
du 12 janvier 1995 dans comp.os.linux.hardware :
Selon la base de connaissances (KnowledgeBase) de Microsoft, il
semble que la broche 5 du connecteur des onduleurs APC Back-UPS et
Smart-UPS (testé avec un Back-UPS 400 sous Windows NT)
monte un signal "batterie faible" deux minutes au moins avant
l'épuisement de la batterie.
Ce signal est au niveau "TTL collecteur ouvert", et peut être ramené
aux niveaux RS-232 selon le schéma suivant :
Par ailleurs, le manuel de l'onduleur stipule que la broche commune à
utiliser est la 4 (et non la 9, même si celles-ci sont branchées ensemble).
Message de
Peter Kammer
du 7 octobre 1996 :
Les schémas de brochage sont inversés en ce qui concerne les connecteurs
mâles : en effet, les broches sont numérotées de manière inverse sur les
connecteurs mâles et femelles (puisque leurs sens s'opposent lors du
brancement).
Il faut donc considérer que les schémas pour les connecteurs mâles sont vus
côté extérieur et non côté intérieur (soudure), contrairement à ce qui est
indiqué.
Par ailleurs, il existe un document de référence technique pour les onduleurs
Back-UPS qui se trouve sur le
site web
d'APC.
Message de
Troy Muller
du 6 avril 1997 :
L'onduleur Back-UPS Pro 650 fonctionne avec le câble standard d'APC.
La référence du câble est 940-023A et le logicel est
Enhanced_APC_BackUPS.
Ce logiciel envoit des messages globaux toutes les deux secondes, mais un eu
de bidouillage de dowalll.c permet de limiter cette fonction.
- APC Smart-UPS
-
De nombreuses personnes ont un APC Smart UPS.
Il semble qu'il existe des paquetages pour utiliser ceux-ci en mode
"intelligent" (voir les paquetages mentionnés plus haut
Enhanced_APC_UPSD-v1.4.tar.gz ,
apcd-0.5.tar.gz et
smupsd-0.7-1.i386.rpm
décrits dans la section
Logiciels
).
Je ne sais pas ce que vaut le support pour chacun d'eux.
Il semble qu'APC continue à refuser de publier son protocole
pour le mode "intelligent" sans un accord de non-diffusion, ainsi
tout le monde a dû faire de la rétro-ingéniérie dessus.
Le consensus général est d'investr dans une gamme qui publie cette information,
comme Best.
Une autre possibilité est d'utiliser la version du logiciel de contrôle
d'onduleurs Powerchute d'APC pour SCO Unix via le paquetage
de compatibilité iBCS.
Clive A. Stubbings
me dit que cela fonctionne bien après quelques
ajustements du script d'installation.
Il dit que le seul problème est que "l'interface graphique semble avoir
des problèmes à contrôler des onduleurs à-travers le réseau".
Si vous possédez un APC Smart-UPS et que vous n'arriviez pas à le faire
fonctionner en mode intelligent avec aucun de ces logiciels, vous pouvez
malgré tout encore l'utiliser en mode bête.
Les sections qui suivent détaillent cette procédure.
J'ai reçu, en particulier, des messages concernant les modèles 600,
700 et 1400.
Il vous faudra probablement bidouiller powerd.c comme indiqué dans la
section
Analyse de câbles et modification de powerd.c
.
Message de
Lam Dang
du 19 août 1994 dans comp.os.lnux.misc :
Réalisation du câble pour un APC Smart-UPS modèle 600.
Le cable est a realiser entre un connecteur DB-9 femelle sur l'onduleur
et un DB-25 male sur l'ordinateur.
Le boitier du DB-25 est assez grand pour contenir un regulateur de tension
et deux resistances.
L'interface entre le connecteur de l'onduleur et celui du PC est ainsi :
Vous pouvez utiliser la broche 6 de l'onduleur au lieu de la broche 3
(elles sont inverses l'une de l'autre).
La complication est de monter les broches collecteur ouvert 3 (ou 6) et 5
de l'onduleur.
Ce modèle APC fournit une sortie non regulée de 24 V continu sur la broche 8.
La tension de sortie est disponible tout le temps (au moins un peu après
que le signal de batterie faible soit monté).
L'intensite est limitee a 40mA.
Pour monter, la broche 8 est l'alimentation d'un régulateur de tension de +5V.
La sortie de ce régulateur passe dans deux resistances de 4,7kohm.
L'autre bout d'une resistance connecte les broches 3 (Coupure de courant) de
l'onduleur et 5 du PC (CTS).
Celle de l'autre resistance connecte les broches 5 de l'onduleur (Batterie
faible) et 8 du PC (DCD).
Les deux resistances consomment environ 2 mA lorsqu'elles sont a la masse.
Lorsque l'onduleur est alimenté, les broches 5 (CTS) et 8 (DCD) côté PC
doivent être très proches de 5V, et monter la broche 20 pendant 5 secondes
ne doit avoir aucun effet.
Lorsque l'onduleur passe sur batteries, la broche 5 (CTS) doit tomber à 0V,
la broche 8 (DCD) doit rester à l'identique à 5V, et monter la broche 20
(DTR) en court-circuitant les broches 8 et 20, par exemple, doit éteindre
l'onduleur après environ 15 secondes.
Lorsque la diode "Low Battery" du panneau frontal s'allume, la broche
8 (DCD) doit descendre à 0V aussi.
Les tensions de l'interface onduleur sont NEGATIVES pour la coupure de secteur
(sur la broche 3 de l'onduleur) et la batterie faible, et POSITIVE pour
l'arrêt à distance.
Les paramètres de ligne série comme la vitesse n'ont aucune importance.
Liste du materiel necessaire :
- un boîtier DB-9 ;
- un connecteur sub-DB-25 femelle ;
- un régulateur de tension 7805 +5Vdc ;
- deux résistances de 4,7kohm ;
- un carte à composants perforée ;
- un câble avec au moins un connecteur 9 broches mâle.
Et de plus :
- un multimètre ;
- un fer à souder;
- quelques heures...
- APC Smart-UPS 700
-
Voici quelques détails sur le fonctionnement du modèle 700 en mode bête,
qui présente une utilisation futée d'un transistor placé dans le câble qui
éteint l'onduleur lorsque l'ordinateur est éteint.
J'utilise un APC Smart-UPS 700 pour mon système Linux sur une carte
ASUS.
Pour utiliser quelques possibilites de l'onduleur, il faut quatre choses :
1) faire un câble RS-232 avec une petite interface ;
2) le source du powerd du paquetage sysvinit (j'utilise la version 2.6
de Miquel van Smoorenburg). Il faut ensuite modifier ce powerd ;
3) changer /etc/inittab ;
4) faire un script qui lance certaines commandes si le courant est coupé
ou si la batterie est faible.
Quelques possibilités :
Lorsque le secteur est coupé, un script est lancé et une entrée est faite
dans syslog.
Si la batterie est faible, un autre script est lancé (qui arête l'ordinateur,
évidemment) et une entrée est faite dans syslog.
Si l'ordinateur est arrêté et que le courant l'est aussi, l'onduleur sera
arrêté à son tour.
1) D'abord le câble :
Si l'on jette un coup d'oeil à l'arrière de l'onduleur, on y trouve un
connecteur femelle comme celui-ci :
D'un autre côté, l'arrière du PC présente un connecteur mâle comme celui-ci :
Il faut réaliser l'interface suivant entre ces connecteurs :
- j'utilise un transistor "BC140", mais à peut près n'importe
quel transistor NPN devrait faire l'affaire ;-)
- Le transistor fonctionne comme "inverseur".
Si l'on éteint l'ordinateur ET que le courant est coupé, la broche 4 du
PC descend et la broche 1 de l'onduleur monte.
Cela éteint l'nduleur pour économiser la batterie.
2) Le source de powerd
J'ai juste retouché très peu le source (donc c'est en fait celui de
Miquel).
(a) Emet une "alerte" vers syslogd si la broche 8 du PC (DCD )
est basse (c'est qu'alors, le câble n'est pas connecté) ;
(b) DCD descendu à zéro -> le courant est coupé -> appel de
powerfail(0) -> envoi de INIT_CMD_POWERFAIL au processus init ;
(c) DCD remonté -> le courant est revenu -> appel de powerfail(1) ->
envoi de INIT_CMD_POWEROK au processus init ;
(d) DSR et DCD descendus à zéro -> le courant est coupé et la
batterie est faible > appel de powerfail(2) -> envoi de
INIT_CMD_POWERFAILNOW au processus init .
Et voilà.
3) Modifier inittab
init reçoit les commandes INIT_CMD et lance les scripts idoines :
Ce qui signifie, par exemple : si le courant est coupé (powerwait ,
lancer le script /sbin/init.d/powerfail avec le paramètre
"start ".
4) Le script powerfail
Eh bien, cela devrait être simple ;-)
Vous voilà prêt maintenant, mais restez prudent : cela fonctionne pour moi,
mais je ne peux évidemment pas garantir que quoi que ce soit de cela
fonctionne pour vous.
Un petit conseil pour finir : si /sbin/init.d/powerfail
arrête votre PC, DTR descend, donc la broche d'arrêt (côté onduleur) monte.
Dès cet instant, il faut entre 20 et 30 secondes à l'onduleur pour
s'arrêter.
C'est de votre responsabilité d'empêcher votre machine Linux de redémarrer
durant ces 20 secondes (en particulier, de monter les volumes disque).
Cela ne fut pas un problème pour mon système.
Quatre méthodes simples permettent d'empêcher Linux de démarrer rapidement :
- le BIOS doit réaliser certaines routines (comme identifier le nombre
de pistes de votre lecteur de disquettes si vous en avez un) ;
- LILO peut être configuré pour attendre s'il est installé ;
- il peut ne rien y avoir à faire (comme dans mons cas) ;
- il est possible d'acheter plus de mémoire afin que le décompte dure
30 secondes.
Cela doit correspondre environ à 1 024 Mo ;-).
- APC Smart-UPS 1 400
-
Autre jour, autre APC.
Voici pour le Smart-UPS 1 400, en mode bête.
Daemon d'onduleur pour FreeBSD (2.1.5 - testé).
Schéma de branchement :
Description
Fonctionnement :
upsd enregistre tous les changements d'état de l'onduleur (courant
présent ou absent, batterie faible ou bonne).
Lorsque le courant est absent et que la batterie est faible, upsd
active le signal d'arrêt de l'onduleur, attend le nombre de secondes indiqué
sur la ligne de commande, et lance le script d'arrêt.
Exemple de script :
Source d'upsd :
Chapitre suivant,
Chapitre Précédent
Table des matières de ce chapitre,
Table des matières générale
Début du document,
Début de ce chapitre
[22 février 2002, JDNet]
|