Réglage GPS Date et l’heure de votre fuseau horaire

Je peux me tromper complètement en mettant en place cette Instructables, mais j’ai eu du mal à trouver un moyen facile de corriger les données de date et heure GPS à mon fuseau ici en Australie. J’ai fait quelques projets Arduino qui ont inclus un module GPS avec une certaine forme d’enregistrement de données. Chaque fois que j’ai eu des difficultés de conversion heure UTC capturé de la chaîne de données NMEA en heure locale ou ont simplement abandonné et utilisé un CCF dans mon projet.

Il y a que quelques solutions sur le web incluent un couple ici sur Instructables, mais comme un codeur amateur, j’ai lutté pour intégrer le code dans mes propres croquis.

J’espère que cette annonce va donner ceux tout aussi mal, une solution facile. J’ai essayé de garder le code aussi simple que possible avec beaucoup d’options en fonction de votre configuration, Uno ou Mega, logiciels et matériels des ports série. J’ai aussi mis le calcul de fuseau horaire dans une fonction simple qui peut être copiée et collée directement dans vos propres croquis.

Vous devez installer la Bibliothèque TinyGPS ++ et la Bibliothèque AltSoftSerial pour le croquis pour compiler correctement. J’ai eu la meilleure compatibilité avec les modules GPS, que j’ai en utilisant la librairie TinyGPS ++. La bibliothèque AltSoftSerial le rend plus facile d’avoir plusieurs équipement série relié à votre Uno. Ce n’est pas un problème lorsque vous utilisez un méga, mais si vous ne souhaitez pas fixer vos équipements série sur broches numériques différents, c’est la bibliothèque plus simple que j’ai trouvé.

Voici le schéma ci-dessous :

 #include <Time.h> // Time Library #include <TinyGPS++.h> // GPS Library #include <AltSoftSerial.h> // Allows two Serial connections // Set GPS RX and TX pins if using software serial connections. // See below to use hardware serial connections //static const int RXPin = 4, TXPin = 3; // Example Uno static const int RXPin = 48, TXPin = 46; // Example Mega static const uint32_t GPSBaud = 4800; //static const uint32_t GPSBaud = 9600; // The TinyGPS++ object TinyGPSPlus gps; // Serial connection to the GPS device AltSoftSerial Serial_GPS; //#define Serial_GPS Serial1 // Uncomment this line & comment // above line to use a hardware // Serial Port // Change this value to suit your Time Zone const int UTC_offset = 10; // Eastern Australia Time time_t prevDisplay = 0; // Count for when time last displayed void setup() { Serial.begin(9600); Serial_GPS.begin(GPSBaud); // Start GPS Serial Connection Serial.println("Waiting for GPS time ... "); } void loop() { GPS_Timezone_Adjust(); // Call Time Adjust Function } void GPS_Timezone_Adjust(){ while (Serial_GPS.available()) { if (gps.encode(Serial_GPS.read())) { int Year = gps.date.year(); byte Month = gps.date.month(); byte Day = gps.date.day(); byte Hour = gps.time.hour(); byte Minute = gps.time.minute(); byte Second = gps.time.second(); // Set Time from GPS data string setTime(Hour, Minute, Second, Day, Month, Year); // Calc current Time Zone time by offset value adjustTime(UTC_offset * SECS_PER_HOUR); } } // -- Delete this section if not displaying time ------- // if (timeStatus()!= timeNotSet) { if (now() != prevDisplay) { prevDisplay = now(); SerialClockDisplay(); } } // -- Also delete the SerialClockDisplay()function ---- // } // Keep void SerialClockDisplay(){ // Serial Monitor display of new calculated time - // once adjusted GPS time stored in now() Time Library // calculations or displays can be made. if (hour() < 10) Serial.print(F("0")); Serial.print(hour()); Serial.print(F(":")); if (minute() < 10) Serial.print(F("0")); Serial.print(minute()); Serial.print(F(":")); if (second() < 10) Serial.print(F("0")); Serial.print(second()); Serial.print(" "); if (day() < 10) Serial.print(F("0")); Serial.print(day()); Serial.print(F("/")); if (month() < 10) Serial.print(F("0")); Serial.print(month()); Serial.print(F("/")); Serial.println(year()); } 

J’espère que vous avez trouvé cela utile et il facilite beaucoup votre prochain projet d’enregistreur de données GPS.

Articles Liés

Chapeau monté horloge avec multiples de soutien de fuseau horaire et de fonctionnalité GPS

Chapeau monté horloge avec multiples de soutien de fuseau horaire et de fonctionnalité GPS

J'ai voulu une horloge. Mais pas n'importe quel heure ! Je voulais qu'il soit capable de changer le fuseau horaire affiché à la chiquenaude d'un commutateur. Et je voulais aussi utiliser à Burning Man, pour montrer mon emplacement, pas dans le temps,
Horloge RTC DS1307 définir et afficher l’heure sur votre écran LCD.

Horloge RTC DS1307 définir et afficher l’heure sur votre écran LCD.

Basé sur mon premier Instructable.Basé sur le croquis de la CMEAjouter Rtc(realtimeclock) à votre Instructable.Éléments1 Arduino1 Usb conector fil1 RTC DS13071 fils1 appareil de télécharger scetch.1 fois / DS1307RTC bibliothèques http://playground.ar
Alerte de proximité GSM avec GPS lieu et l’heure

Alerte de proximité GSM avec GPS lieu et l’heure

Qu'est-ce que c'est?Un détecteur de mouvement de batterie qui rend compte de déclencher des événements par l'intermédiaire de SMS, ainsi que l'heure et le lieu, dérivé de GPS. Voici une vidéo d'elle en action :Où l'utiliser ?Je peux penser quelques c
DIY GPS Data Logger pour vous prochaine promenade/randonnée

DIY GPS Data Logger pour vous prochaine promenade/randonnée

C'est un enregistreur de données GPS que vous pouvez utiliser pour des fins multiples, dites si vousvous souhaitez enregistrer votre long trajet , que vous avez pris au cours du week-end pour vérifier les couleurs de l'automne.ou si vous avez une pis
Client d’Arduino Internet

Client d’Arduino Internet

MISE À JOUR ! 15/11/2015Ajouté un WiFi et option batterie rechargeable (étape 10).MISE À JOUR !Ajouté le commutateur 12h/24h et Standard / Daylight Savings Time Switch ! Voir les étapes 7 et 8.Avez-vous déjà souhaité une horloge qui a gardé l'heure e
Drapeaux de Sandcastle mignon

Drapeaux de Sandcastle mignon

faire des châteaux de sable a été et est encore, une activité favorite sur les vacances à la mer.  Alors pourquoi ne pas faire des souvenirs de vos enfants de faire des châteaux de sable sur la plage (ou dans leur bac à sable!) spéciale en leur disan
Temps GPS (UTC) pour la conversion d’heure locale à l’aide de Arduino

Temps GPS (UTC) pour la conversion d’heure locale à l’aide de Arduino

j'ai un récepteur GPS Holux M-1000, que vous pouvez l'utiliser avec un ordinateur portable, un PDA ou un téléphone portable via Bluetooth.  Je l'avais utilisée pour la navigation avec Palm TX et Treo700p (Oui, j'ai longtemps été un grand fan de la sé
Géolocaliser vos Photos appareil photo numérique dans Lightroom avec un Smartphone GPS

Géolocaliser vos Photos appareil photo numérique dans Lightroom avec un Smartphone GPS

Geotagging est un processus qui ajoute des informations de localisation géographique aux métadonnées de vos photos. Par exemple, si vous avez pris une photo du Golden Gate Bridge, photo géolocalisées aura l'emplacement où vous avez pris la photo près
Géolocalisation avec un autonome GPS unité & GeoSetter

Géolocalisation avec un autonome GPS unité & GeoSetter

j'ai cherché d'autres Instructables sur geotagging et tous ceux que j'ai trouvé utilisé Adobe Photoshop Lightroom pour faire de la géolocalisation. Avec le coût de Adobe Photoshop Lightroom n'importe où à partir de 170 $ à 300 $, Lightroom peut être
Super Horloge GPS précis & moniteur de batterie

Super Horloge GPS précis & moniteur de batterie

GPS est une réalisation impressionnante qui permet aux gens du monde entier ont accès à des données très utiles avec les bons outils. Le LinkIt un Conseil de développement, qui a un GPS embarqué, nous permet d'accéder à cette ressource. Nous allons u
Getting Started With GPS Linkit ONE

Getting Started With GPS Linkit ONE

En utilisant le GPS peut être un outil très puissant dans un projet. Il peut être utilisé pour trouver la vitesse d'un objet en mouvement, Découvrez le temps avec précision ou trouver où vous vous trouvez dans le monde. L'un jury Linkit rend l'utilis
Cellulaire tracker GPS avec des cartes de Cloud

Cellulaire tracker GPS avec des cartes de Cloud

ce projet montre comment construire un dispositif qui suit la localisation GPS, envoie des données via une connexion cellulaire Skywire vers le nuage et trace les coordonnées GPS sur une carte de sentier connectés de nuage qui est accessible depuis n
Boussole solaire.   Suped il peut encore lire l’heure !

Boussole solaire. Suped il peut encore lire l’heure !

Guides de survie sur le web ne présentent pas de quelque chose comme ça !Certaines de leurs façons d'utiliser le soleil pour trouver la direction semblaient un peu peu fiables et votre temps aussi.   Surtout en hiver profonde et été élevé lorsque le
AINA : Champ de laboratoire à l’aide de Edison IoT

AINA : Champ de laboratoire à l’aide de Edison IoT

AINA (Automated Information sur les attributs de la Nature) est un laboratoire de terrain de capteur électronique basé sur la plate-forme de l'ITO Intel® Edison . Les références de l'acronyme, « AINA », le mot hawaïen pour un terrain ou lieu.Aperçu d