GPS - RÉCUPÉRATION POSITION ACTUELLE, FICHIER TRACE, EXPORT KML OU GPX, TRAMES N

cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007 - 17 avril 2007 à 09:33
mheroui Messages postés 3 Date d'inscription vendredi 30 janvier 2009 Statut Membre Dernière intervention 13 juin 2009 - 18 juin 2009 à 01:57
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42310-gps-recuperation-position-actuelle-fichier-trace-export-kml-ou-gpx-trames-nmea-brutes-divers

mheroui Messages postés 3 Date d'inscription vendredi 30 janvier 2009 Statut Membre Dernière intervention 13 juin 2009
18 juin 2009 à 01:57
merci bcp, Jai essayer de reproduire une petite application avec export kml tte fois jai eu a chaque fois un problem
votre application marche trés bien.
mais la mienne jai toujours un message d'erreur:
value does not fall within the expected range.
Jai passé plus de trois heure a chercher comment resoudre ce problem mais sans aucun resultats.

je vous remercie d'avance .
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
16 juin 2009 à 20:27
Bien sûr, ce code est mis à disposition librement et en totalité.
S'il y a une rubrique "remerciements" dans votre programme, je ne suis pas contre, mais sinon il n'y a aucune condition !
mheroui Messages postés 3 Date d'inscription vendredi 30 janvier 2009 Statut Membre Dernière intervention 13 juin 2009
16 juin 2009 à 15:59
Bonjour,
svp Jaimerai savoir si je pourrai reutiliser le code pour developper ma propre application.
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
2 oct. 2008 à 10:25
Comme indiqué, c'est un projet .NET, donc i te faut un environnement de développement .NET.
Personnellement je travail avec Microsoft Visual Studio 2005. Mais je ne peux pas te dire si la version "Express", gratuite, est suffisante, je ne suis pas sûr qu'elle permette de faire des développements pour périphériques mobiles.

Idem pour les autres solutions gratuites telles que MonoDevelop ou SharpDevlelopp (ce derneir ne focntionne peut-être pas avec VB.NET).

Dans tous les cas il ne faut pas acheter Visual Studio si tu ne comptes pas te metter "sérieusement" au développement .NET. Essaye d'abord avec les versions gratuites.

Les programmes d'installation c'est encore autre chose. La solution standard de Visual Studio est relativement médiocre. Il existe des solutions professionnelles telles que Wise ou InstallShield, mais c'est hors de prix, surtout le 2e.

Mais là aussi je crois qu'il existes certains outils gratuits permettant de générer des cab, mais c'est fortement dépendant de la version de .NET à déployer.

Mais pour ce projet c'est relativement inutile puisqu'il suffit de copier l'EXE dans un répertoire.
bluedream64 Messages postés 2 Date d'inscription mercredi 1 octobre 2008 Statut Membre Dernière intervention 2 octobre 2008
2 oct. 2008 à 02:10
Merci JRay pour ta réponse rapide mais j'aurais besoin de savoir comment compiler tout ça.
Faut-il un environnement particulier pour la compilation (logiciel à acheter?).
et comment faire pour en faire un .cab permettant de l'installer sur le PDA?

Merci encore pour ton aide

Bluedream
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
1 oct. 2008 à 18:10
Oui, il faut compiler en EXE, puis le transférer sur le HTC avec ActiveSync (ou le gestionnaire de Vista).
Avant il faudra probablement télécharger et installer le .Net Compact Framework 2.0 (NetCf20) sur le site de Microsoft, parce que je ne crois pas qu'il soit préinstallé d'office sur le HTC 3300.
bluedream64 Messages postés 2 Date d'inscription mercredi 1 octobre 2008 Statut Membre Dernière intervention 2 octobre 2008
1 oct. 2008 à 17:50
Bonjour,

je débute en VB et je souhaiterais exécuter ce programme sur mon PDA (un HTC 3300 avec GPS intégré).

Comment dois-je m'y prendre? Faut-il les compiler pour obtenir un exe ?

Merci pour votre aide et bravo à jray pour son excellent travail!

Bluedream
cirek Messages postés 11 Date d'inscription vendredi 29 août 2003 Statut Membre Dernière intervention 1 février 2009
2 juin 2008 à 22:49
Très attirant comme code, je vais le tester et vous faire signe
stefb28 Messages postés 3 Date d'inscription vendredi 1 août 2003 Statut Membre Dernière intervention 12 juillet 2007
12 juil. 2007 à 21:21
Attention la norme NMEA propose un champ de plus pour le RMC, cf. cette page :
http://home.mira.net/~gnb/gps/nmea.html#gprmc

En utilisant ton code j'ai aussi une erreur qui apparait quand je coupe le port de mon GPS, j'ai rajouté une gestion d'exception dans la fonction pTimer_Tick :
Je remplace
[...]
Try
pBuffer &= pSerialPort.ReadExisting()
Catch ex As Exception
pTimer.Enabled = False
RaiseEvent ExeptionOccurs(ex)
Exit Sub
End Try
[...]
par
[...]
Try
pBuffer &= pSerialPort.ReadExisting()
Catch ex As Exception
pTimer.Enabled = False
Try
pSerialPort.Close()
Catch ex2 As Exception
RaiseEvent ExeptionOccurs(ex2)
Exit sub
End Try
RaiseEvent ExeptionOccurs(ex)
Exit Sub
End Try
[...]
cs_Mati68 Messages postés 2 Date d'inscription dimanche 16 juillet 2006 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 17:02
Si j'essaye d'enregistrer le point courant j'ai le message d'erreur suivant:Enregistrement impossible: la postion actuelle n'a pas pu être calculée! (ambiguité non résolues)
cs_Mati68 Messages postés 2 Date d'inscription dimanche 16 juillet 2006 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 16:30
Bonjour,

l'application fonctionne-t-elle avec windows mobile 5?
j'ai un Mio et un pocketLoox mais les ambiguités ne son jamais résolu, l'appli reste toujours en état de connexion donc jamais connecté
Merci d'avance
kanzs Messages postés 4 Date d'inscription mardi 12 décembre 2006 Statut Membre Dernière intervention 3 mai 2007
3 mai 2007 à 14:52
Puis-je me permettre de vous informer que je travaille sur itronix duo-touch avec antenne GPS plus camera integre, cette Tablet est equiper de Microsoft windows XP edition tablet PC 2005
version 2002.Service Pack 2.
Compte tenu des Interfaces Utilisateurs que je dois implementer, j'aimerai savoir les logiciels de configuration de ceux-ci.
les logiciels qui font le boulot du systeme que je veux interfacer pour l'utilisateur.
Esperant une aide de votre part , je vous remercie pour les precedentes reponses.
kanzs Messages postés 4 Date d'inscription mardi 12 décembre 2006 Statut Membre Dernière intervention 3 mai 2007
3 mai 2007 à 10:02
Merci beaucoup pour votre reponse, je me connais un peu plus en java est ce que vous pouvez m'aidez sur les paquetages java necessaire , le document de spécification technique et le developpement des Modules Fonctionnels (Interfaces Utilisateurs + logiciels de configuration de ceux-ci).
Je vous remercie de toute l'attention que vous portez à mes requetes.
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
1 mai 2007 à 08:15
Pour l'échange de fichiers la question fondamentale est de savoir si on veut des échanges/synchronisations bilatérales ou si on passe pas un serveur centrale qui rassemble tous les documents et les redistribue plus loin.
La deuxième solution étant évidemment la moins souple du point de vue de l'utilisateur (à moins d'une connexion Internet permanente y compris sur le terrain), mais le plus simple pour le contrôle et la synchronisation des versions.
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
1 mai 2007 à 08:12
Bonjour.

Je ne vais pas pouvoir répondre à tous les points, faute de temps et parce que ce que c'est pas l'endroit, mais la problèmatique semble plutôt être l'échange et la synchronisation de documents, le GPS est "secondaire".
A moins d'obliger l'utilisateur et exécuter une commande ou cliquer sur un bouton pour enregistrer la position GPS et l'associer à un document, le plus simple est peut-être de travailler avec la date/heure de création du document pour la même en concordance avec les mesures de GPS. Le problème est que cela sera impossible si le signal GPS a été perdu (ce qui devrait être transparent pour l'utilisateur) et qu'il faut stocker cette information et faire le tri ensuite.

Pour ce qui est du language, c'est flexible. IL pourrait y avoir le VBA si on veut intégrer à des applicatiosn existantes, mais vu le nombre de formats à supporter cela est peut-être complexe. Si c'est sur un tabletPC et non un PDA on peut utiliser un langage non spécifique aux périphériques mobiles. Vu qu'on doit travailler avec le système de fichiers et communiquer avec le port COM pour le GPS, il faut choisir un langage qui est bien "intégré" au système. Si l'OS est Windows, le .NET ou C++ peut être intéressant.
VB6 pourrait aussi faire l'affaire mais ce la devient vieux et je le déconseille pour débuter un nouveau projet. Je ne connais pas trop Delphi et les autres labguages Pascal, mais c'est certain qu'il peuvent aussi être intéressant.

Mais en tant que développeur professionnel, vu ce qui se fait actuellement et aussi vu mes préférences, je choisirais C# (.net) ou éventuellement VB.NET.

Monsieur, mon probleme est que je doit developper cette application sur une tablet PC de type "ITRONIX Duo-Touch", je ne sait pas quel est le language le plus aproprie, la recuperation du signal "GPS/GPRS" et comment gerer les differents echanges entre les differents chefs de chantiers.
Je vous remercie de toute l'attention que vous voudrez bien accorder a ma presente preoccupation.
kanzs Messages postés 4 Date d'inscription mardi 12 décembre 2006 Statut Membre Dernière intervention 3 mai 2007
27 avril 2007 à 17:19
Bonjour, moi je dois developper une application libellée comme suit :

Besoin :

Equiper les chefs de chantiers de tablette PC avec antenne GPS/EGNOS + appareil photo/caméra intégrés. Cet équipement doit être durci pour résister aux contraintes des chantiers : vibrations, chocs, chutes?

But :
Permettre aux chefs de chantier d'échanger tous types de fichiers avec leurs collègues de la base arrière (2 sites : Protec-feu et TPI).

Pour tous les échanges, le système doit fournir une information de géoréférencement (position et timbre temporel).

Les fichiers de type suivant doivent obligatoirement pouvoir être échangés : documents écrits (windows, PDF, txt,?.), photos, schémas techniques et tout autre type non défini ici.

Le système doit permettre aux itinérants de faire des requêtes sur le Serveur de la Base Documentaire de PF/TPI. De récupérer des fichiers de cette base, de pouvoir les modifier avant envoie de ceux-ci aux bons interlocuteurs.

Le système doit permettre aux itinérants de recevoir/modifier/renvoyer des schémas techniques.

Le système doit permettre aux itinérants de renvoyer les documents renseignés vers les « bons » interlocuteurs.
Pour tous les documents administratifs normatifs à renseigner, le système doit rendre obligatoire la validation des différents champs du document avant sauvegarde du document renseigné qui sera envoyé vers les services administratifs/comptables/techniques de PF/TPI.

Le système doit permettre la validation par les achats des bons de commande émis par les itinérants. La vérification par les itinérants, à la réception, de la conformité des commandes.

Le système doit permettre la vérification de la bonne exécution des commandes (commanditaires/fournisseurs/transporteurs/réception)

Le système doit archiver toutes les informations envoyées par les itinérants sur un serveur de backup qui servira de zone de stockage et permettra la sécurisation des données.

Le système doit permettre de retrouver toutes les informations contenues sur un tablette PC en cas de perte/vol/destruction/panne de celui-ci.

Concernant plus particulièrement les constats de fin d'achèvement de chantiers, le système en plus de toutes les caractéristiques énoncées ci-dessus doit permettre l'insertion de signatures électroniques.


Objectifs globaux de PF/TPI :
- Gain de temps et assurance que les itinérants ont accès à la bonne version de tous les documents dans le cadre de l'assurance qualité.
- Pour tous les documents remplis par le personnel itinérant, assurance que tous les champs sont correctement remplis.
- Permettre la circulation de l'information entre les bons interlocuteurs. Eviter les pertes d'informations.
- Gain de temps dans la réalisation des différents processus (commerciaux, bureau d'étude, ressources humaines, comptabilité, achats ?)
- Diminuer les contentieux/conflits avec les clients en ayant une information géoréférencée garantie.
- Améliorer les synergies au sein de l'entreprise.
- Création d'une structure d'information-type (base documentaire) pour un chantier générique.

Gains économiques envisagés par PF/TPI (informations fournies par mel de Mr Doutre le 13 mars 2007):

Les gains économiques sont les suivants:

-la transmission des données du chantier vers la base et vice et versa est estimée à 10% du temps du responsable d'affaires ou du conducteur de travaux sur l'ensemble de PF et TPI cela représente 150h/an/personne soit pour un effectif de 10 personnes 1500 h induisants un coût financier de 1500h x 60? = 90000 euros/an.
-le traitement , la relance pour avoir ou refaire les documents administratifs et les faire signer est estimé à 20% du temps des personnes administratives sur l'ensemble de PF et TPI cela représente 300h/an/personne soit pour un effectif de 8 personnes 2400 h induisants un coût financier de 2400h x 35? = 84000 euros/an.

l'ensemble de ces pertes cumulées se monte à 174 000 euros/an

Monsieur, mon probleme est que je doit developper cette application sur une tablet PC de type "ITRONIX Duo-Touch", je ne sait pas quel est le language le plus aproprie, la recuperation du signal "GPS/GPRS" et comment gerer les differents echanges entre les differents chefs de chantiers.
Je vous remercie de toute l'attention que vous voudrez bien accorder a ma presente preoccupation.
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
23 avril 2007 à 16:25
Là je n'ai pas d'idée, à débugger !!

Pour info, en ce moment je suis également sur un autre projet, mais uniquement dédié au post-traitement.
L'idée est d'utiliser un outil existant ou un logiciel de navigation pour enregistrement les trames NMEA et de les traiter/filter ensuite sur PC (et non PocketPC).

Pour cela j'ai fait un petit soft en C# dont le but est de filtrer les trames (par exemple en garder une seulement toutes les n secondes ou tous les n mètres), supprimer les points doubles, exporter en KML/GPX (comme dans cet exemple), mais aussi un outil de géoréférencement de photos (à venir) et un outil de visualisation locale avec google Maps (presque terminé, en JS).

Infos et téléchargement ici: http://www.csharpfr.com/codes/POST-TRAITEMENT-NMEA-GPS-FILTRAGE-POINTS-EXPORT-KML_42419.aspx
rdechap Messages postés 25 Date d'inscription lundi 10 février 2003 Statut Membre Dernière intervention 4 juillet 2008
21 avril 2007 à 18:18
JRAY> Merci pour ton aide
la trame GPRMC est ok car il y a un "A" au lieu du "V".
pour GPGSA,A,3,02,10,29,08,04,26,,,,,,,4.5,3
ou aussi GPGSA,A,3,02,10,29,04,26,,,,,,,,4.8,3.5

Pour info au même endroit le TOMTOM fonctionne tres bien.
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
20 avril 2007 à 14:36
rdechap> ou alors c'est bêtment parce que les ambiguités n'ont pas été résolues (le GPS est actif, mais pas de signal reçu ou trop peu de satellites vus).

Dans ce cas tes trames GGA doivent ressembler à ça:
$GPGGA,045058.907,,,,,0,00,,,M,0.0,M,,0000*54

Au lieu de ça lorsque qu'il y a "fix":
$GPGGA,045059.797,4649.6708,N,00708.7369,E,1,05,2.2,613.1,M,48.0,M,,0000*56
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
19 avril 2007 à 15:15
davidauche>
Bah fallait quand-même le faire ;-) personnellement j'ai du chercher un moment comment communiquer avec le GPS, appliquer une fromule mathématique n'est qu'une pure formalité.

L'export Google existe déjà et pour la programmation avec l'API Google je te laisse te débrouiller !!
Mais si vraiment tu es coincé fais-moi signe, j'ai un code permettant d'afficher un KML sur une carte y compris pour les KML locaux, pas besoin d'upload. Je peux te donner quelques tuyaux.

Quant aux projections j'ai tout ce qu'il me faut mais je ne peux malheureusement pas distribuer cela librement ici parce que je l'ai fait au boulot et il y a des droits...


rdechap>
C'est curieux. Tu n'as pas la notification "ambiguités résolues" ?
Si jamais il faut que tu modifies un peu le code lié à l'affichage des infos dans l'onglet position, peut-être qu'il y a un problème avec mes fromules de calcul de la projection Suisse si tu ne t'y trouves pas...
davidauche Messages postés 150 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 8 janvier 2008
19 avril 2007 à 13:01
Bon, cette phase est la plus simple à traiter!
T'as une trame de code nmea à parser chaque 2s et afficher les info!
Faut passer à la localisation des objets sur une carte avec les projections et les calculs mathématiques...
à la limite récupérer les maps de chez google.

Goo
rdechap Messages postés 25 Date d'inscription lundi 10 février 2003 Statut Membre Dernière intervention 4 juillet 2008
18 avril 2007 à 19:33
Bonjour,

Super soft c'est ce que je cherchais. l'aquisition fonctionne (les trames NMEA s'affichent) mais la connexion ne s"effectue jamais...aucune info dans la page position....

J'ai un AIRIS T620

Merci
pour vous aide
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
18 avril 2007 à 12:00
Le calcul de la position GPS est une intersection spatiale donc c'est tout à fait possible de calcul une altitude.
La trame GPS GGA contient l'altitude sur le géoïde (approximative) qui est celle que j'ai utilisé. Cette trame contient également la cote du géoïde , c'est-à-dire la différence entre l'ellipsoïde WGS84 et le géoïde. Il est donc possible d'obtenir la hauteur ellipsoïdale et éventuellemetn de calcul une altitude plus précise avec un modèle local du géoïde, ce qu'on a en Suisse par exemple mais que je n'ai pas intégré.
Par contre si tu utilises la trame TMC, qui est celle généralement utilisée, tu as par exemple la vitesse mais par contre pas l'altitude.
davidauche Messages postés 150 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 8 janvier 2008
18 avril 2007 à 10:41
heu! comment tu calcul l'altitude :)
Théoriquement c'est impossible :p
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
17 avril 2007 à 19:38
Non non effectivement ma question était stupide ^^
Je ne savais pas qu'il existait des pocket pc avec GPS (de palm oui, mais pour les pocket pc je l'ignorais), alors je voulais savoir si ça necessitait un materiel GPS dans le pocket pc pour la géolocalisation.
Il est évident après reflexion qu'il faut un pocket pc qui supporte le GPS lol, autant pour moi ^^
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
17 avril 2007 à 13:58
Je crois que je viens de comprendre ta question ! Sur le PocketPC il n'y a pas besoin de GPS pour pouvoir lancer l'application et utiliser les outils d'export par exemple. Pour la localisation là c'est évident.

Par contre si ta question était pour le déboguage, par exemple, et bien j'avoue que je n'ai pas bien compris (ni bien cherché) pourquoi, mais effectivement ça ne marche pas (en tout cas chez moi). Je pense que le problème est lié à la gestion du port COM avec le CF.NET (pSerialPort = new System.IO.Ports.SerialPort) mais je n'ai pas trouvé de solution.

Si je trouve ou si quelque me donne le tuyau, je modifierai en conséquence.
Je crois savoir qu'il existe des émulateurs de port série ou même de GPS pour l'émulateur PocketPC wous Windows, mais je n'ai pas testé.
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
17 avril 2007 à 13:26
Ben il faut un GPS intégré ou Bluetooth supportant le NMEA (en principe standard, en tout cas avec les puces SIRF Star III actuelles)
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
17 avril 2007 à 13:20
Salut

Juste une question, il faut que le pocket pc ai du materiel GPS spécial pour que ça marche ? (ou ça passe par internet ?)

Merci
cs_jray Messages postés 20 Date d'inscription mardi 16 mai 2000 Statut Membre Dernière intervention 1 mai 2007
17 avril 2007 à 09:33
Comme indiqué ci-dessus, le code peut encore être amélioré, surtout la gestion des avertissements et erreurs et les fichiers trace. Et aussi peut-être la gestion d'autres projections telles que UTM.

Je suis encore en train de travailler dessus, mais si certains d'entre vous remarquent des erreurs ou problèmes ou ont des suggestions, je suis preneur !

jray
Rejoignez-nous