samedi 4 novembre 2006

Retour des graphiques

Bon, je n'ai pas encore fait mon cable série espion, mais j'ai directement (re)connecté la station à  la passerelle.
Les données sont donc maintenant accessible sur le web. Mais :

  • la transmission est pas terrible (plus de murs à  passer, peut-être que l'environement electro-magnetique n'aide pas non plus ...) donc les données en provenance de l'exterieur ne sont la qu'épisodiquement :(
  • la station est posé sur l'UC, la température interieur est donc très élevée

On peux voir les données sous forme de graphique ou de tables. La présentation (en particulier des tables) nécessite encore des améliorations.

Le stockage et la génération des graphiques et des fichiers xml est basé sur l'excellent rrdtool dont j'ai déjà  parlé. La colle viens d'un scrip shell et d'une page php de mon cru.

Enfin, l'adresse : Météo de l'Ile-Grande

aussi accessible via la page d'acceuil


Commentaires du post original

dimanche 29 octobre 2006

Installation de la station météo WS2300

Cela fait longtemps que je réfléchis à  la manière d'installer ma station météo. Mon idée première était de la positionner sur le mat de l'antenne hertzienne, lui-même accroché à  la cheminée. Mais pour cela il fallait monter sur le toit. Je dois avouer que cette perspective ne m'emballait pas du tout. Aujourd'hui, après avoir lu quelques conseils sur comment grimper la haut en toute sécurité, et vu la configuration des lieux[1], j'ai décidé que je n'irais pas !
Le plus dur étant fait :) je me suis attaqué à  la fabrication d'un support pour accrocher les capteur sous le toit ... de la cabanne des enfants. C'est beaucoup plus accessible et moins dangereux :)

L'idée générale est d'avoir un petit mat pour élever l'anémomètre, un support pour le pluviomètre qui abritera aussi le thermomètre. Tout de suite, voici les photos :

Voici la disposition des capteurs sur la planche qui serivira de support. Elle sera bien sur verticale. Le pluviomètre sera éloigné par un support horizontal. Disposition générale

Comme le support de mat que j'ai trouvé est d'un diamètre beaucoup trop gros pour mon petit mat, j'ai fait une bague de serrage en bois. Bague de serrage

Voici le pluviomètre sans son cache, positionné sur son support. On remarque bien la bascule qui sert au comptage. Le pluviomètre à  nu

Le support sus-cité une fois fixé. On peux noter les trous qui permettront l'évacuation de l'eau. Le support horizontal

Tout est en place. Le montage sera boulonné à  travers la cloison de la cabanne dans une contre-planche pour assurer la rigidité de l'ensemble.[2] Capteurs fixés

Maintenant tout est monté, on peux voir le fière anémomètre face à  la grève. Anémomètre dans la nature

Et pour finir, une vue de l'ensemble en situation. Installation finie

Il reste deux petites choses à  faire :

  • fixer les cables qui sont pour le moment juste posés;
  • ajouter un bout de métal sur la bague de serrage, pour le moment la vis de serrage s'enfonce dans la bague en bois.

Voila, prochaine étape : finir mon cable série espion pour observer ce qui pose problème dans la communication entre l'IOLan et la station.

Notes

[1] pente du toit, cable électrique dans le passage...

[2] La cloison de la cabanne est très fine


Commentaires du post original

mercredi 23 août 2006

IOLan : lire les données météo via le réseau

IBM PS1Le 486 qui sert de serveur web a beau remplir sa fonction il est bruyant/consommateur pour une machine qui fonctionne tout le temps dans le salon. D'autant plus que dans le bureau, il y a un PC qui sert de passerelle et qui est presque tout le temps allumé. Il serait donc intéressant que ce 2ème PC héberge les données météo.

Mais la station de base doit rester dans le salon. Si elle déménage dans le bureau, elle ne servira plus. Deux solutions se proposent :

  • utiliser un long cà¢ble série (à  2400 bauds on peut monter à  3000 ft soit environ 914 m !), mais il doit traverser presque toutes les pièces de la maison :)
  • transformer l'interface série en interface wifi. Il existe des petits boà®tiers qui font ce genre de chose. J'en ai utilisé au boulot pour accéder aux consoles série de machines Sun.

L'idée serait donc d'avoir quelque chose comme cela : Réseau avec IOLan Ainsi, le serveur via Wifi/LiveBox/IOLan peux lire le port série de la station météo.

Je me suis donc acheté un boà®tier IOLan sur eBay. Il s'agit un Lantronix MSS1-T qui offre un port série. C'est un produit qui n'est plus supporté mais qui a le mérite de n'être pas cher par rapport à  ceux que l'on trouve neufs.

IOLanAucun problème en ce qui concerne la configuration réseau. Il prend une adresse IP par DHCP ou à  partir du 1er ping qu'il reçoit :

sudo arp -s 192.168.0.53 00:80:A3:0F:4D:95
ping 192.168.0.53

Une fois l'adresse IP attribuée, il suffit de faire un telnet dessus pour pouvoir configurer tranquillement l'iolan. On commence par enregistrer l'adresse pour ne pas reproduire la manip du ping à  chaque fois :

telnet 192.168.0.53
Local_2> SET PRIVILEGED
Local_2> CHANGE IPADDRESS 192.168.0.53

Puis l'on configure le port série pour pouvoir dialoguer avec la station météo (Les infos ont été trouvées dans le code source de open2300[1]) :

CHANGE SPEED 2400
CHANGE PARITY NONE
CHANGE STOPBITS 1
CHANGE CHARSIZE 8
CHANGE FLOW CONTROL NONE
CHANGE MODEM CONTROL DISABLED
CHANGE DTRWAIT ENABLED

ws2300La, je me dois de remercier chaleureusement Lolo, qui a mis le doigt sur un point que j'avais loupé, le DTR doit être au niveau bas avant la communication, sinon, rien ne fonctionne :( Qu'il en soit ici grandement remercié, j'ai passé plusieurs jours[2] avant que ce problème ne soit résolu.

Entre temps, j'ai trouvé un autre site qui offre de bonnes explications sur les stations ws2300 et en particulier sur le protocole de communication[3]

Une fois tout ceci fait, il suffit d'ouvrir une socket vers le port TCP 3001 dans laquelle on lit et on écrit comme sur le port série.

Maintenant, 2 nouvelles solutions s'offrent à  moi :

  • modifier open2300 pour qu'il utilise une socket plutôt que le port série
  • simuler un port série qui est en fait une socket vers mss1:3001

La 2ème a nettement ma préférence puisqu'elle évite toute modification de open2300 qu'il faudrait reporter à  chaque nouvelle version.

De plus après avoir envisagé de développer moi-même la glue entre tout ça, j'ai découvert que cela existait déjà . Merci les forums de LinuxFr. Le soft s'appelle ttyd dans le jargon debian et termpkg de son nom de baptême.

Je vais donc maintenant mettre en place une solution de ce type : utilisation de ttyd

Pour le moment, ça marchotte. Parfois la lecture de la valeur envoyée par la station ne se fait pas et open2300 reste bloqué en attente. Il faut sans doute que j'introduise un peu de latence dans ttyd[4], ou un mécanisme de timeout dans open2300.

Stay tuned ...

Notes

[1] Quel bonheur que la disponibilité des sources !

[2] et nuits

[3] ainsi qu'un soft en perl que je n'ai pas testé

[4] vive la disponibilité des sources et le droit de les modifier. Je me répète la non ?


Commentaires du post original

jeudi 10 août 2006

Serveur down

Le serveur météo est actuellement down pour maintenance et surtout évolution du processus de récupération des données ...

MSST-1

Question subsidiaire : qu'est-ce que c'est ? ;)


Commentaires du post original

jeudi 15 juin 2006

Réception du paquet

Ayé, je suis allé ce matin à  la poste chercher mon colis. :D

D'un aspect écrasé, il contient quand même bien ce que j'attendais. Voici quelques photos.
Laissez la souris sur la photo pour les commentaires et cliquez pour agrandir.

paquet boite ouverte fils ecran

Depuis ces photos:

  • L'heure est radio pilotée par le signal DCF77 émis depuis Mainflingen. Elle est donc à  l'heure atomique[1] ;)
  • j'ai aussi testé le transfert herzien entre les capteurs et la station (433MHz).

Bientôt les détails sur la liaison avec l'ordinateur.

Notes

[1] au délai de transmission radio pres


Commentaires du post original

vendredi 2 juin 2006

Premiers Graphiques

rrdtoolVoici les 1ers graphiques générés !

Un processus cron révéillé toutes les 5 minutes. Il utilise log2300 pour récupérer les données et stocke le tout dans une base rrdtool.

Les pages web sont faites en html+rrdcgi et les graphiques sont donc générés à  la vollée (si necessaire). Il en résulte un temps de chargement parfoit un peu long qui tombe en "network error"

Cela produit quand même de jolis graphiques : Temperature
Humidity

Il reste encore quelques petites choses sur la todo liste :

  • récuperer les données d'historique conservées dans la station en cas d'arrêt du PC
  • écrire les pages d'affichage d'historique sur 1 semaine / 1 mois / 1an (déja fait pour la température)
  • avoir la possibilité de consulter les données chiffrées plutôt que les graphiques
  • améliorer le graphisme des pages et les couleurs des graphs
  • packager tout cela proprement

Commentaires du post original