graphWeather et import MySQL ?

Une question, un bug ?
Répondre
blarose

Message par blarose »

Bonsoir Titoine,

J'utilise depuis quelques temps le programme mysql2300 d'OpenWS2300, pour enregistrer les données 10' de ma station dans une table MySQL.
Cette solution pour enregistrer les données de la station WS2300 présente beaucoup d'avantages par rapport à HeavyWeather et son fichier history.dat :
- facilité de lecture/correction des données
- facilité pour exporter les données
- consomme quasiment pas de ressource CPU

Mais depuis quelques temps, j'ai aussi découvert ton programme GraphWeather, dont la sortie graphique est excellente. Malheureusement, il lit le fichier history.dat

C'est ce qui m'amène à la question :
envisages tu de proposer plusieurs options de lecture pour les données ?
pourquoi pas une table MySQL ? mais un fichier texte irait aussi très bien.

Cordialement.
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Salut,

J'ai déja lu certains messages sur le forum infoclimat sur l'export/import Mysql, ca m'avait donné des idées... Je pense que c'est réalisable, sous forme d'un plugin, le plus dur étant la gestion de l'ordre des champs qui peut varier d'un utilisateur à l'autre. Je vais regarder ce que je peux faire sur la dessus. Un futur plugin peut-être.

J'avais aussi pensé à une liaison entre GraphWeather et un serveur web local, un script php qui puisse commander la génération de graphs (choix période, feuille de style). Enfin ca, c'est un idée...

Je note en tout cas ta proposition pour la future version 1.4.

Antoine.
blarose
Nouveau membre
Messages : 1
Inscription : mar. mars 21, 2006 7:02 pm
Localisation : Frouzins (près de Toulouse)
Contact :

Message par blarose »

Bonjour,

C'est vrai que dans l'idéal, il serait vraiment très confortable de pouvoir définir soi même les champs de sa table.
Mais bon, c'est surement assez compliqué à gérer.

Le programme mysql2300 possède déjà un format prédéfini pour l'enregistrement de données de la WS2300.
Ca pourrait devenir un format de table par défaut.
Je le copie ici pour info :

#
# Table structure for table `weather`
#

CREATE TABLE `weather` (
`timestamp` bigint(14) NOT NULL default '0',
`rec_date` date NOT NULL default '0000-00-00',
`rec_time` time NOT NULL default '00:00:00',
`temp_in` decimal(3,1) NOT NULL default '0.0',
`temp_out` decimal(3,1) NOT NULL default '0.0',
`dewpoint` decimal(3,1) NOT NULL default '0.0',
`rel_hum_in` tinyint(3) NOT NULL default '0',
`rel_hum_out` tinyint(3) NOT NULL default '0',
`windspeed` decimal(3,1) NOT NULL default '0.0',
`wind_angle` decimal(3,1) NOT NULL default '0.0',
`wind_direction` char(3) NOT NULL default '',
`wind_chill` decimal(3,1) NOT NULL default '0.0',
`rain_1h` decimal(3,1) NOT NULL default '0.0',
`rain_24h` decimal(3,1) NOT NULL default '0.0',
`rain_total` decimal(4,1) NOT NULL default '0.0',
`rel_pressure` decimal(4,1) NOT NULL default '0.0',
`tendency` varchar(7) NOT NULL default '',
`forecast` varchar(6) NOT NULL default '',
UNIQUE KEY `timestamp` (`timestamp`)
) TYPE=MyISAM;


Sinon, la 1.3 tourne très bien. Je l'ai depuis quelques jours sur mon site et aucun problème.
Le ftp est maintenant beaucoup plus endurant qu'avec la 1.2.

A+
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Je mettrais cette table la par défaut, merci. Peut-être que ce sera la seule, ca va dependre si j'ai le temps ou pas de faire une option "choix des champs".

Antoine.
Hervé Le Roy

Message par Hervé Le Roy »

Salut TiToine

Le programme mysql3600 utilise le même format de table que mysql2300. Ca me parait une bonne idée de partir de ce format, qui devrait convenir à la plupart des utilisateurs de stations LaCrosse.

A+

mysql3600 fait partie du package open3600: http://open3600.fast-mail.nl/tiki-index.php
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

J'ai commencé a faire le plugin.
On pourra associer un champ sql pour chaque sonde.
Par contre des champs comme rain_1h, tendency, forecast n'ont pas d'équivalent dans GraphWeather, mais rien n'empêche d'associer rain_1h à la sonde solar_radiation, ou index_uv (il suffit juste de le savoir et de modifier la feuille de style en conséquence).
Enfin, je vais peut-être ajouter des sondes, alors c'est peut être l'occasion de mettre les manquantes.

Par contre le problème ce sont les unités...elles seront certainement figées aux unités des champs SQL.
Dans l'utilisation que vous faites de la base (scripts, ou logiciels), changez vous les unités ?
Hervé Le Roy

Message par Hervé Le Roy »

Voilà ce que j'ai dans open3600.conf

# Units of measure (set them to your preference)
# The units of measure are ignored by wu3600 and cw3600 because both requires specific units

WIND_SPEED m/s # select MPH (miles/hour), m/s, or km/h
TEMPERATURE C # Select C or F
RAIN mm # Select mm or IN
PRESSURE hPa # Select hPa, mb or INHG


Je viens de télécharger open2300 et voilà ce qu'il y a dans open2300.conf

# Units of measure (set them to your preference)
# The units of measure are ignored by wu2300 and cw2300 because both requires specific units

WIND_SPEED m/s # select MPH (miles/hour), m/s, or km/h
TEMPERATURE C # Select C or F
RAIN mm # Select mm or IN
PRESSURE hPa # Select hPa, mb or INHG

Bref, les deux logiciels ont le même fichier de configuration, dans lequel on peut choisir les unités de mesure. L'idéal serait de pouvoir indiquer dans graphweather l'unité choisit dans openxx00.conf
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Ok, merci pour l'info, je pense mettre le choix des unités importées dans les options du plugin. Ca donnera :

Image
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Salut, j'ai 2 petites questions :
Le timestamp correspond t'il au rec_date et rec_time ?
La direction du vent est dans quel format ? je vois que c'est un char(3), mais sous quel forme ? encodage 0..16, ou 0..360, ou bien texte (N,NNE,etc.) ?

Antoine.
hleroy
Nouveau membre
Messages : 2
Inscription : dim. avr. 02, 2006 10:05 pm

Message par hleroy »

Salut Titoine,

voilà le contenu de la BDD. comme tu peux le voir, le vent est en code texte (anglais : WNW..)

mysql> select * from weatherinfo where timestamp > 20060402230000;
+----------------+----------+----------+---------+----------+----------+------------+-------------+-----------+----------------+------------+------------+---------+----------+---------+---------+------------+--------------+--------------+----------+----------+
| timestamp | rec_date | rec_time | temp_in | temp_out | dewpoint | rel_hum_in | rel_hum_out | windspeed | wind_direction | wind_angle | wind_chill | rain_1h | rain_24h | rain_1w | rain_1m | rain_total | rel_pressure | abs_pressure | tendency | forecast |
+----------------+----------+----------+---------+----------+----------+------------+-------------+-----------+----------------+------------+------------+---------+----------+---------+---------+------------+--------------+--------------+----------+----------+
| 20060402230003 | 2 | 23:00:03 | 21.2 | 10.0 | 7.0 | 54 | 82 | 12.2 | WNW | 292.5 | 6.2 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.6 | 1018.5 | Rising | Sunny |
| 20060402230105 | 2 | 23:01:05 | 21.2 | 10.0 | 7.0 | 54 | 82 | 13.6 | W | 270.0 | 5.6 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
| 20060402230203 | 2 | 23:02:03 | 21.2 | 10.1 | 7.1 | 54 | 82 | 12.9 | WSW | 247.5 | 6.0 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
| 20060402230303 | 2 | 23:03:03 | 21.2 | 10.1 | 7.1 | 54 | 82 | 9.4 | W | 270.0 | 7.7 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
| 20060402230405 | 2 | 23:04:05 | 21.2 | 10.1 | 7.1 | 54 | 82 | 9.8 | WSW | 247.5 | 7.5 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
| 20060402230504 | 2 | 23:05:04 | 21.2 | 10.1 | 7.1 | 54 | 82 | 8.7 | WNW | 292.5 | 8.1 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.6 | 1018.5 | Rising | Sunny |
| 20060402230603 | 2 | 23:06:03 | 21.2 | 10.1 | 7.1 | 54 | 82 | 14.7 | WSW | 247.5 | 5.3 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
| 20060402230704 | 2 | 23:07:04 | 21.2 | 10.0 | 7.0 | 54 | 82 | 10.0 | WSW | 247.5 | 7.2 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
| 20060402230803 | 2 | 23:08:03 | 21.2 | 10.0 | 7.0 | 54 | 82 | 8.3 | WNW | 292.5 | 8.2 | 0.0 | 2.5 | 48.1 | 108.2 | 215.4 | 1001.7 | 1018.6 | Rising | Sunny |
+----------------+----------+----------+---------+----------+----------+------------+-------------+-----------+----------------+------------+------------+---------+----------+---------+---------+------------+--------------+--------------+----------+----------+
9 rows in set (0.00 sec)
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Super, merci de l'information.
Je me sers de wind_angle, c'est parfait car GraphWeather se base sur du 0..360.

Sinon le plugin avance bien, j'ai obtenu les premieres courbes avec mon ancienne base météo maison (avec des champs différents). Reste la lecture des différents timestamp possibles (champ Timestamp, DateTime, Date, Time et eventuellement Char) et des unités.

Les performances sont correctes si il n'y a pas trop de valeurs à aller chercher dans la base. Enfin pour l'instant je n'ai rien optimisé, mais ca marche relativement bien :D

Antoine.
Répondre