Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
récupération d'une Trames GPS
Bonsoir à tous,
Je crois que dans cette affaire, il faut raison garder concernant la précision ! inutile d'avoir 30 décimales pour les coordonnées. le 1/1000 de degrés donne 1851mm . Je pense donc que tous les calculs peuvent se faire avec des entiers sans problème.
Cela est à considérer avec la précision intrinsèque des données GPS, qui si elles sont données avec une précision de 2.5m pour ce GPS, il certain qu'en pratique, cette précision est rarement atteinte. Les raisons sont multiples comme le soulignait Paul. Car outre le nombre de satellites, leur position dans le ciel est très importante. Une indication importante est la DOP (dilution of position) donné par la trame GSA je crois, qui renseigne sur le degré de précision à attendre. Plus le nombre est petit, plus grande est la précision.
Concernant le cercle de longitude , il est // à l'équateur, à la latitude du lieu. donc plus on se rapproche des pôles plus ce cercle est petit ...
Toujours pas compris l'intérêt de passer par des DMS pour faire des calculs ! Sauf à disposer d'une bibliothèque ad hoc qui traite ces valeurs, ce dont je doute!
Si en physique on travaille surtout en radians, ce n'est pas un hasard.
Je crois que dans cette affaire, il faut raison garder concernant la précision ! inutile d'avoir 30 décimales pour les coordonnées. le 1/1000 de degrés donne 1851mm . Je pense donc que tous les calculs peuvent se faire avec des entiers sans problème.
Cela est à considérer avec la précision intrinsèque des données GPS, qui si elles sont données avec une précision de 2.5m pour ce GPS, il certain qu'en pratique, cette précision est rarement atteinte. Les raisons sont multiples comme le soulignait Paul. Car outre le nombre de satellites, leur position dans le ciel est très importante. Une indication importante est la DOP (dilution of position) donné par la trame GSA je crois, qui renseigne sur le degré de précision à attendre. Plus le nombre est petit, plus grande est la précision.
Concernant le cercle de longitude , il est // à l'équateur, à la latitude du lieu. donc plus on se rapproche des pôles plus ce cercle est petit ...
Toujours pas compris l'intérêt de passer par des DMS pour faire des calculs ! Sauf à disposer d'une bibliothèque ad hoc qui traite ces valeurs, ce dont je doute!
Si en physique on travaille surtout en radians, ce n'est pas un hasard.
récupération d'une Trames GPS
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
ça le fait avec des Doubles flottants ..
Temps-X va etre content !
du RapidQ
Temps-X va etre content !
du RapidQ
Code : Tout sélectionner
$Include "Rapidq.inc"
$Include "Minimize.inc"
Dim i as integer
Dim j as integer
Dim k as integer
Dim l as integer
Dim m as integer
Dim Lat_A_Degre as double
Dim Lat_B_Degre as double
Dim Long_A_Degre as double
dim Long_B_Degre as double
Dim Lat_a as double
Dim Lat_b as double
Dim Long_a as double
dim Long_b as double
dim R as double
dim d as double
dim PI as double
dim df1 as double
Create MainForm as QForm
Caption = "Calcul distance points GPS"
Top = 127
Left = 642
Width = 477
Height = 348
End Create
Create Label1 as QLabel
Parent = MainForm
Top = 120
Left = 72
Width = 160
Height = 45
Caption = "Label1"
Color = &HF0F0F0
Font.Name = "MS Sans Serif"
Font.Color = -2147483640
Font.Size = 12
Font.AddStyles fsBold
End Create
Create Label2 as QLabel
Parent = MainForm
Top = 200
Left = 72
Width = 184
Height = 61
Caption = "Label2"
Color = &HF0F0F0
Font.Name = "MS Sans Serif"
Font.Color = -2147483640
Font.Size = 12
Font.AddStyles fsBold
End Create
Function Distance() as double
R = 6378000.000 ' Rayon de la terre en M
Lat_a = (PI * Lat_A_degre)/180.0
Lon_a = (PI * Long_A_degre)/180.0
Lat_b = (PI * Lat_b_degre)/180.0
Lon_b = (PI * Long_B_degre)/180.0
Distance= R * (PI/2 - asin( sin(lat_b) * sin(lat_a) + cos(lon_b - lon_a) * cos(lat_b) * cos(lat_a)))
End Function
PI=3.141592653589793238
Lat_A_Degre=45.852165
Long_A_Degre= 5.063613
Lat_B_Degre= 45.757818
Long_B_Degre= 4.832374
df1=Distance()
Label1.Caption="dist 20.92kms Dagneux-Lyon => " + str$(df1) + "m"
'-Tour Eiffel
Lat_A_Degre= 48.85837288276533
Long_A_Degre= 2.2944796085357666
'un point dans la rue adjacente
Lat_B_Degre=48.86030413121802
Long_B_Degre=2.295973041789125
df1=Distance()
Label2.Caption="dist 241M Tour eiffel et rue à coté => " + str$(df1) +" m"
SetMinimize(MainForm)
MainForm.ShowModal
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
récupération d'une Trames GPS
-
Jérémy
Administrateur du site- Messages : 2723
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Re ,
Je trouve 271 mètres ! est ce une erreur de calcul ou l’approximation ?
Je suis resté en degré pour éviter les conversions inutiles et gagner en temps de calcul.
en sachant que je n'ai rien arrondi !
pas sur que le calcul du coef soit utilise sur ce coup vu sa valeur !
Je trouve 271 mètres ! est ce une erreur de calcul ou l’approximation ?
Je suis resté en degré pour éviter les conversions inutiles et gagner en temps de calcul.
Calcul de X ( Latitude) :
LatA - LatB = 0,00193124845269
1° = 111111 mètres donc
0,00193124845269° = 214,58294682683859 mètres
Calcul du coef
Coef = cos((lat A - lat B)/2)
Coef = 0,99999999985798276732360805289735
Calcul de Y (Longitude) :
Y = (longA - longB) * coef * 111111
Y = 165,93686219040595502936796895009
Et pour finir notre Pythagore
D² = X² + y²
D² = 73580,883302487615104661638845443
D = Racine carré ( 73580,883302487615104661638845443 )
D = 271,25796449595284667603789269645 mètres
en sachant que je n'ai rien arrondi !
pas sur que le calcul du coef soit utilise sur ce coup vu sa valeur !
récupération d'une Trames GPS
récupération d'une Trames GPS
-
Jérémy
Administrateur du site- Messages : 2723
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonjour ,
Ben je pense avoir respecté la règle de ton calcul pour le coef .
coef = cos((lat A - lat B)/2)
coef = cos( (48.86030413121802 - 48.85837288276533) / 2 )
coef = 0,99999999985798276732360805289735
Je comprends bien que c'est très proche de 1 donc on se trouve sur l'équateur donc aucune incidence sur le calcul final. Ce n'est pas la bonne formule
PieM a écrit :Source du message si Coef = 0,999999999, c'est que Paris est passé à l'équateur !!
Ben je pense avoir respecté la règle de ton calcul pour le coef .
coef = cos((lat A - lat B)/2)
coef = cos( (48.86030413121802 - 48.85837288276533) / 2 )
coef = 0,99999999985798276732360805289735
Je comprends bien que c'est très proche de 1 donc on se trouve sur l'équateur donc aucune incidence sur le calcul final. Ce n'est pas la bonne formule
récupération d'une Trames GPS
récupération d'une Trames GPS
récupération d'une Trames GPS
-
Jérémy
Administrateur du site- Messages : 2723
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
-----Tour Eiffel
Dégré Decimaux
Lat : 48,858372
Lon : 2,2944796
------Rue de la tour eiffel
Lat : 48,860304
Lon : 2,295973
1° = 11131700 centimètres
LatA - LatB =
48,860304 - 48,858372 = 0,001932
(0,001932 * 11131700) = 21506 centimètres
coef = cos(LatA + Latb) / 2)
coef = cos ( 97,718676 / 2 ) = cos (48,859338)
coef = 0,658
puis :
LonA - LonB =
2,295973 - 2,2944796 = 0,0014934
0,0014934 * 0,658 * 11131700 = 10938 centimètres
X² + Y² = Distance²
(21506²)+(10938²) = 582147880
Racine carré de = 24127 centimètres
ALLEEELLUIIHHAAAA
récupération d'une Trames GPS
récupération d'une Trames GPS
-
Jérémy
Administrateur du site- Messages : 2723
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Merci PieM ,
Mais tu m'as bien mâché le travail quand même ! Franchement j'ai encore appris plein de truc.
Après avoir mis au point la formule de calcul d'une distance entre deux points, il me faut maintenant faire exécuter ça par mon PIC pour vérifier mon programme et ensuite sur la façon de traiter l'information.
Car le GPS sera sur le robot. et que le PIC de ce robot a pas mal de truc a faire.
Du coup je ne sais pas trop comment m'y prendre .
Soit je fais les calculs avec les PIC du robot , ainsi j'envoie par voir radio (à ma télécommande) peu de données car elles sont déjà transformées
Ou alors j'envoie les valeurs brutes par voie radio , mais ça fait beaucoup de données et je les traites avec mon PIC écran sur la télécommande qui lui se tourne un peu les pouces !
Si vous avez des idées suggestions par expérience je suis preneur ?
Mais tu m'as bien mâché le travail quand même ! Franchement j'ai encore appris plein de truc.
Après avoir mis au point la formule de calcul d'une distance entre deux points, il me faut maintenant faire exécuter ça par mon PIC pour vérifier mon programme et ensuite sur la façon de traiter l'information.
Car le GPS sera sur le robot. et que le PIC de ce robot a pas mal de truc a faire.
Du coup je ne sais pas trop comment m'y prendre .
Soit je fais les calculs avec les PIC du robot , ainsi j'envoie par voir radio (à ma télécommande) peu de données car elles sont déjà transformées
Ou alors j'envoie les valeurs brutes par voie radio , mais ça fait beaucoup de données et je les traites avec mon PIC écran sur la télécommande qui lui se tourne un peu les pouces !
Si vous avez des idées suggestions par expérience je suis preneur ?
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 56 invités