begin process at 2010 03 14 08:23:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Désencapsulation de trames Météo


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Désencapsulation de trames Météo

mercredi 23 mars 2005 à 11:32:17 | Désencapsulation de trames Météo

Ruben_Manu

URGENT !!!!!!!!!!!!!!!
Bonjour à tous,

Voilà j'ai commencé mon projet de BTS IRIS et celui-ci consiste à récuperer 
des trames météo grâca à un port série RS232.
J'ai réussi à établir la liaison RS232 ( ouverture,ecriture,lecture,fermeture).

Maintenant, il me reste à désencapsuler chaque données métorologiques se
trouvant dans les trames.

Je voudrais savoir, quelles fonctions faut-il utilisées pour ce genre de trames ?
Sur le site aucune personne n'a ce genre de code à proposer.  
Il me reste qu'à esperer que l'un d'entre vous puisse m'aiguiller.

Merci d'avance,
Cordialement,

Ruben
mercredi 23 mars 2005 à 11:52:34 | Re : Désencapsulation de trames Météo

Arnotic

Administrateur CodeS-SourceS
Bonjour,

Si tu ne donne aucune précision je ne vois pas comment on pourrait t'aider.

@+
Arnotic,
Admin CS, MVP Visual C++
jeudi 24 mars 2005 à 17:45:45 | Re : Désencapsulation de trames Météo

cleter

heu précise ton probleme, di nous si tu programme en c ou c++,
et je voi pas trop ou est le pb, tu recoi des infos que tu range ds une variable je suppose.
Si tes données sont en binnaire, bein, pr les récupéré, tu fai comme en cours de logique: des ET des OR (pour les masques) et des décalage a droite ou a gauche, je pense que c'est es principaux outils.
Maintenant si c'est des chaine de caractere que tu recoi, c'est un peu plus simple, tu utilise les fonction de string.h et ca ira tou seul


mercredi 6 avril 2005 à 15:02:27 | Re : Désencapsulation de trames Météo

Ruben_Manu

Je code en C++
Je recois des trames météo de protocole WMR918 (station météo WMR918 ONCORE) qui sont envoyés par chaque capteurs ( capteur pluie, vent,
température,...).
Mon problème est tout simple.
Je voudrais savoir comment on fait pour prendre les données utiles dans ces
trames, les convertir et les mettre dans un tableau.
Le protocole de cs trames sont spécifique à la station météo WMR918.

Quelles fonctions utilise t-on ?

Je ne vois pas quels éléments je pourrais vous donner .

Merci d'avance de votre aide. 
samedi 14 mai 2005 à 18:57:18 | Re : Désencapsulation de trames Météo

Ruben_Manu

URGENTISME !!!!!!!!!!
Détaille en plus:

- trames qu'il faut convertir d'ascii en héxa.
- 9 trames différentes au total identifiable sur le sixième octet.
0: vent  1: pluie 3:temperature, etc...

-chaque trame a la même en-tête  'FF FF'.

je pense qu'il faudrait que je mette le trame dans un tableau mais que c'est pas comment m'y prendre pour séparer chaque trame et y mettre des condition ainsi que des pointeurs

chaque trame trames contiennent des données qui doivent etre extraite séparément.

Ex: trame pluie 

FF FF 00 04 45 03 51 00 00 00 58  BG

FF FF : en-tête      00: Identifiant capteur (ici pluie)
04: état batterie      45: direction du vent
etc....

Les données peuvent être soit de type float soit de type int.

Merci d'avance pour ce qui peuvent m'aiguiller...

   
mercredi 22 février 2006 à 15:03:26 | Re : Désencapsulation de trames Météo

DouDaL

Bonjour, j'ai la meme chose a effectuer mais je ne vois pas quelle fonction utiliser pour recuperer les informartions codes en hexadecimal. Si quelqu'un peut m'aider, sa serait cool. J'ai mon premier oral dans 2 semaines
mercredi 22 mars 2006 à 22:07:26 | Re : Désencapsulation de trames Météo

chooloveloo

Je suis egalement en BTS IRIS, mon projet est le même que toi. J'ai effectuer la liaison entre la station et le PC.
Tout d'abord j'ai utilisé un Thread d'écoute permettant de ne pas bouffer toute la memoire vive car je lis continuellement sur la RS242. J'effectu donc un partage de memoire. Dans ce Thread, je devrais recevoir une trame, la decoder, la moyenner avec la precedente et la renger dans une structure.

Tout d'abord,
Il faut lire la trame, non comme un tout  mais plutot comme une serie d'informations qu'il faut extraire.

FF FF 00 04 45 03 51 00 00 00 58  BG

Tu dois d'abord extraire l'entete pour aprés reccuperer le type de la trame (pluie ici).
Tu (nous) vas donc devoir apeller la fonction readfile pour lire la trame.

Pour degager l'entete, il faut declarer un tabeleau de 3 octets (1 pour FF, 1 pour FF et 1 pour le type)

void CRS232::LireXOctets(3 ,EnTete ) //3 est le nombre d'octet à lire. EnTete est du type char

{
        unsigned long OctetsLus;
        ReadFile( hCom , Entete , 3 , &OctetsLus , NULL );
};

puis tantque le premier ou le deuxieme octet de EnTete ne sont pas egals à FF tu fait un decalage à gauche.
En sortie de la boucle tu te retrouves donc avec EnTete qui est egale à : "FF FF 00" où 00 est le type.

                while( ( EnTete[0] != 0xFF ) || ( EnTete[1] != 0xFF ) )
                {
                        EnTete[0] = EnTete[1];
                        EnTete[1] = EnTete[2];
                        ObjetCRS232.LireXOctets( 1 , &EnTete[2] );
                };
Selon le type (EnTete[2]) tu va relire X octets sur le port serie. (le nombre d'octets est differents suivant le type de la trame)
Ensuite il suffit de ranger la "vraie" trame (donc sans l'entete FF FF et sans le type) dans SA structure  appropriée.
Créé une structure pour chaque type de trame.

ex structure trame pluie :

struct Rain
{
        bool RateOver;
        bool TotalOver;
        bool YesterdayOver;
        unsigned int CurrentRainRate;
        float TotalRainFall;
        unsigned int YesterdayRainFall;
        struct Horloge TotalStartDate;
};

Ce n'est qu'une idée parmis tant d'autres...mais je n'est trouvé que celle ci :p
Le code est en cours d'ellaboration.
En tout cas j'espere t'avoir aidé!!
Pour plus d'info contact moi : chooloveloo@hotmail.fr


jeudi 15 janvier 2009 à 17:51:32 | Re : Désencapsulation de trames Météo

slybest

Bonjour,
Alors suite a ce poste très enrichissant et étant donnée que je me confronte au même problème que citer précédemment j'aimerais rouvrir ce topic pour avoir plus de détails. En effet on trouve très peut de données ou de documentation sur la station météo WMR 918 sur internet c'est pourquoi j'aimerais avoir des nouvelles et des détails supplémentaire sur la structure des trames, etc... Voilà si les personnes ayant déjà réussi à créer des programmes pour cette station qu'il mette leurs codes.

Merci d'avance pour votre aide vous pouvez me contacter directement par mail à l'adresse suivante :

laisse_betom@hotmail.com


Cette discussion est classée dans : reste, rs232, météo, trames, désencapsulation


Répondre à ce message

Sujets en rapport avec ce message

bug sur rs232 [ par yo972 ] salut !j'ai réalisé un programme sur la rs232 sur C++Builder,je dois envoyer un chiffre sur la ligne rs232.j'ai réussi à l'exécuter une fois mais aprè Liaison série RS232 [ par NerOcrO ] Je cherche des programmes pour m'aider à programmer sur la liaison série RS232 en DOS. RS232 [ par bryg ] Salut,Comment mettre en place une liaison RS232 entre 2 PC.Merci de l'aide voici mon E-Mail: nofrifr@yahoo.fra+. com serie RS232 [ par hotrod1 ] Y'a t il quelqu'un qui saurait programmer la lecture / écriture d'un port serie rs232 sous visual c++ 6 , et sous win 2000 ???Sinon, si c'est possible com serie rs232 [ par hotrod1 ] Y'a t il quelqu'un qui saurait programmer la lecture / écriture d'un port serie rs232 sous visual c++ 6 , et sous win 2000 ???Sinon, si c'est possible com serie rs232 . [ par hotrod1 ] Y'a t il quelqu'un qui saurait programmer la lecture / écriture d'un port serie rs232 sous visual c++ 6 , et sous win 2000 ???Sinon, si c'est possible générer des trames mac/llc [ par syl81 ] Salut Je voudrais générer des trames mac/llc avec un prgm en c++ sous windows de préférence.Je peux travailler soit avec une carte réseau soit avec le thread et RS232 [ par icarus13 ] Quelqu'un peut m'aider ? Je dois lancer plusieurs thread à la fois dont qui envoie un tableau par la liaison série !Merci !Yan thread et RS232 [ par icarus13 ] Quelqu'un peut m'aider ? Je dois lancer plusieurs thread à la fois dont un qui envoie un tableau par la liaison série !Merci !Yan Lecture d'un port serie (RS232) sous LINUX [ par DjBouch ] Je suis en BTS informatique industriel et mon projet consiste à lire les trames d'une station météo (wmr918) à travers un port série (RS232) sous Linu


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,390 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales