Adafruit Ultimate GPS Breakout - 66 channel w/10 Hz updates [ADA746] vs arduino uno

Aldis1987
Offline
Зарегистрирован: 07.02.2020

Добрый вечер!

Я хочу подключить «Adafruit Ultimate GPS Breakout - 66 каналов с 10 Гц обновлениями [ADA746]» к arduino uno в соответствии с https://core-electronics.com.au/tutorials/how-to-use-gps-with-arduino.html

Я подключил схему, как показано на рисунке ... с помощью библиотеки "Adafruit GPS" и примера кода:

#include <Adafruit_GPS.h>
#include <Adafruit_GPS.h>
//We can now create our Software Serial object after including the library
SoftwareSerial mySerial(3, 2);

//And finally attach our Serial object pins to our GPS module
Adafruit_GPS GPS(&mySerial);

void setup() {
Serial.begin(115200); //This baud rate will help a lot in printing all of the data that comes from the GPS Module to the serial monitor
GPS.begin(9600); 
//These lines configure the GPS Module
GPS.sendCommand(PMTK_SET_NMEA_OUTPUT_RMCGGA); //Sets output to only RMC and GGA sentences
GPS.sendCommand(PMTK_SET_NMEA_UPDATE_1HZ); //Sets the output to 1/second. If you want you can go higher/lower
GPS.sendCommand(PGCMD_ANTENNA); //Can report if antenna is connected or not
}

void loop() {
//Now we will start our GPS module, parse (break into parts) the Last NMEA sentence 
GPS.parse(GPS.lastNMEA()); //This is going to parse the last NMEA sentence the Arduino has received, breaking it down into its constituent parts.
GPS.newNMEAreceived(); //This will return a boolean TRUE/FALSE depending on the case.
//Print the current date/time/etc
    Serial.print("\nTime: ");
    Serial.print(GPS.hour, DEC); Serial.print(':');
    Serial.print(GPS.minute, DEC); Serial.print(':');
    Serial.print(GPS.seconds, DEC); Serial.print('.');
    Serial.println(GPS.milliseconds);
    Serial.print("Date: ");
    Serial.print(GPS.day, DEC); Serial.print('/');
    Serial.print(GPS.month, DEC); Serial.print("/20");
    Serial.println(GPS.year, DEC);
    Serial.print("Fix: "); Serial.print((int)GPS.fix);
    Serial.print(" quality: "); Serial.println((int)GPS.fixquality);
//If GPS module has a fix, line by line prints the GPS information
    if (GPS.fix) {
      Serial.print("Location: ");
      Serial.print(GPS.latitude, 4); Serial.print(GPS.lat);
      Serial.print(", ");
      Serial.print(GPS.longitude, 4); Serial.println(GPS.lon);
      Serial.print("Location (in degrees, works with Google Maps): ");
      Serial.print(GPS.latitudeDegrees, 4);
      Serial.print(", ");
      Serial.println(GPS.longitudeDegrees, 4);
      Serial.print("Speed (knots): "); Serial.println(GPS.speed);
      Serial.print("Angle: "); Serial.println(GPS.angle);
      Serial.print("Altitude: "); Serial.println(GPS.altitude);
      Serial.print("Satellites: "); Serial.println((int)GPS.satellites);
    }
}

в результате я получаю следующий результат в терминале:

Aldis1987
Offline
Зарегистрирован: 07.02.2020
: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603 -> 
23:54:20.603 -> Time: 0:0:0.0
23:54:20.603 -> Date: 0/0/200
23:54:20.603 -> Fix: 0 quality: 0
23:54:20.603

 

Aldis1987
Offline
Зарегистрирован: 07.02.2020

но должно быть следующим: Arduino Serial Monitor displaying GPS Data

sadman41
Offline
Зарегистрирован: 19.10.2016

Так спутники не может поймать, поди?

andriano
andriano аватар
Онлайн
Зарегистрирован: 20.06.2015

Ну да.

1. Поиск спутников (особенно, если до этого был долгий период бездействия) - достаточно длительная операция. Минимум - несколько минут.

2. Чтобы приемник мог найти хоть один спутник, он должен находиться в соответствующем месте - где-то, где видно небо. В закрытом помещении спутники могут не быть найдены никогда.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

andriano пишет:

Ну да.

1. Поиск спутников (особенно, если до этого был долгий период бездействия) - достаточно длительная операция. Минимум - несколько минут.

2. Чтобы приемник мог найти хоть один спутник, он должен находиться в соответствующем месте - где-то, где видно небо. В закрытом помещении спутники могут не быть найдены никогда.

С языка сорвал (тормоз я :)). А скокма спутников видно? А где запрос серийного номера устройства для проверки связи?