2017-01-18 1 views
0

Je développe une application qui communique avec un récepteur GPS via le port de communication. Chaque type de récepteur a son propre ensemble de commandes natives pour le faire fonctionner et actuellement je choisis le type du récepteur (Ublox, Omnistar, Novatel etc.) manuellement.Déterminer le type de récepteur automatiquement à partir du port

Je me demandais s'il y avait une option pour rendre le processus de détermination automatique? Est-il possible de déterminer le type de récepteur uniquement par connexion au port? Toute aide serait appréciée. Je vous remercie.

Répondre

0

Je n'ai aucune expérience avec la communication série avec les récepteurs GPS, mais peut-être un aperçu général pourrait aider jusqu'à ce qu'un expert approprié arrive. Comme je le vois, vous avez deux options - soit demander le type de marque/modèle/protocole reçu si une telle requête existe pour ces types de périphériques, ou si elles peuvent être en quelque sorte faites pour fournir des informations d'identification . Ou vous pouvez faire quelques conjectures intelligentes ... Si chaque périphérique a une commande qui lui est propre, de préférence avec une réponse déterministe, vous pouvez essayer d'envoyer chacune de ces commandes à l'appareil. Il suffit ensuite de rechercher la réponse dans une table prédéfinie et de voir quel périphérique correspond. Si vous savez que la commande A produit le résultat X dans le périphérique 1 (et seulement dans ce périphérique), puis en envoyant A et en obtenant X, vous pouvez dire que le périphérique 1 est connecté. Assurez-vous de ne rien envoyer de dangereux - n'envoyez pas aléatoirement la commande A si pour l'appareil 2 cela signifie "supprimer tout et éteindre".

+0

Thanx. Je pensais à la même chose. Créez des messages prédéfinis qui fonctionnent chacun sur un type de récepteur spécifique. Les envoyer un par un jusqu'à recevoir la réponse appropriée. Peut-être que quelqu'un ici aurait une approche différente. –