GPS smartCORE Modul
Beschreibung
Das "gps" Modul ließt und interpretiert GPS Botschaften von einer seriellen Schnittstelle und produziert GPS Daten in entsprechende smartCHANNELs.
Hierbei wird die GPS Position (Breitengrad, Längengrad und geographische Höhe) in einer hierfür vorgesehenen Struktur zusammengefasst produziert.
Verwendete Schnittstellen & Protokolle
- NMEA 0183
JSON-Konfiguration
Im folgenden Abschnitt soll die gesamte JSON-Konfiguration des Moduls beschrieben und die einzelnen Parameter erläutert werden.
Beispielkonfiguration (minimal)
{
"module": "GPS",
"factory": "gps",
"config":
{
}
}
Beispielkonfiguration (maximal) (Kommunikation zu GPSD Server)
{
"module": "GPS",
"factory": "gps",
"config":
{
"host":"localhost",
"port":2947,
"outBufferSize": 1024,
"productionIntervalMs": 1000,
"process2dFixes": false,
"posFixModeStabilizationTimeMs": 0,
"updateIntervalMs": 100,
"rebootIntervalMs": 3600000,
"gpsLocationChannelName": "GPS.Location",
"gpsSpeedOverGroundChannelName": "GPS.SpeedOverGround",
"gpsSatelliteCountChannelName": "GPS.SatelliteCount",
"gpsPositionFixModeChannelName": "GPS.PositionFixMode",
"gpsHDOPChannelName": "GPS.HDOP",
"gpsPDOPChannelName": "GPS.PDOP",
"gpsVDOPChannelName": "GPS.VDOP",
"speedLimit": 280,
"satelliteSystem": "GPS_GLONASS"
}
}
Beispielkonfiguration (maximal) (direkte serielle Kommunikation, wo vorgesehen)
{
"module": "GPS",
"factory": "gps",
"config":
{
"rtPriority": 80,
"inBufferSize": 1024,
"outBufferSize": 1024,
"productionIntervalMs": 1000,
"process2dFixes": false,
"deviceType": "smartmini",
"device": "/dev/ttymxc2",
"baudRate": 115200,
"updateIntervalMs": 100,
"gpsLocationChannelName": "GPS.Location",
"gpsSpeedOverGroundChannelName": "GPS.SpeedOverGround",
"gpsSatelliteCountChannelName": "GPS.SatelliteCount",
"gpsPositionFixModeChannelName": "GPS.PositionFixMode",
"gpsHDOPChannelName": "GPS.HDOP",
"gpsPDOPChannelName": "GPS.PDOP",
"gpsVDOPChannelName": "GPS.VDOP"
}
}
Beispielkonfiguration (maximal, zu Zwecken der Kompatibilität) (direkte serielle Kommunikation, wo vorgesehen)
Bemerkung: Es wird lediglich ein einziges "nmeaInterface" unterstützt.
{
"module": "GPS",
"factory": "gps",
"config":
{
"rtPriority": 80,
"inBufferSize": 1024,
"outBufferSize": 1024,
"productionIntervalMs": 1000,
"process2dFixes": false,
"nmeaInterfaces":
[
{
"name": "GPS.NMEA",
"deviceType": "smartmini",
"device": "/dev/ttymxc2",
"baudRate": 115200,
"updateIntervalMs": 100,
"gpsLocationChannel": "GPS.Location",
"gpsSpeedovergroundChannel": "GPS.SpeedOverGround",
"gpsSatcountChannel": "GPS.SatelliteCount",
"gpsPosfixmodeChannel": "GPS.PositionFixMode",
"gpsHdopChannel": "GPS.HDOP",
"gpsPdopChannel": "GPS.PDOP",
"gpsVdopChannel": "GPS.VDOP"
}
]
}
}
Parameter-Liste
Parametername | Erforderlich | Datentyp | sinnvoller Wertebereich | Default | Beschreibung |
---|---|---|---|---|---|
rtPriority | Nein | INT | 1 - 99 | 80 | Priorität des Auslesens der seriellen Schnittstelle * |
inBufferSize | Nein | INT | 1 - | 1024 | Puffer [Bytes] für das Auslesen der seriellen Schnittstelle * |
outBufferSize | Nein | INT | 1 - | 1024 | Puffer [Samples] für die zu produzierenden smartCHANNELs |
productionIntervalMs | Nein | INT | 1 - | 1000 | Polling Intervall [ms] bzgl. der Produktion von Samples in smartCHANNELs |
process2dFixes | Nein | BOOL | false, true | false | Bereitstellung von GPS Positionen auf Basis von 2D GPS Fixen, wobei Höhe über NN aus dem letzten gültigen 3D GPS Fix bezogen wird |
posFixModeStabilizationTimeMs | Nein | INT | 1 - | 0 | Stabilisierungszeit, innerhalb der der notwendige Position Fix Mode vorliegen muss, damit GPS Position und Geschwindigkeit produziert werden *** |
nmeaInterfaces | Nein | JSON Array von JSON Objekten | Konfiguration der NMEA 0183 Schnittstellen ** |
*
nur für direkte serielle Kommunikation
**
nur zu Kompatibilitätszwecken
***
nur bei GPSD-Kommunikation
Konfiguration der NMEA 0183 Schnittstellen
Die NMEA 0183 Schnittstellen werden jeweils als JSON Objekt konfiguriert. Diese Parameter können auch direkt in der Konfiguration aufgeführt werden und sind:
Parametername | Erforderlich | Datentyp | sinnvoller Wertebereich | Default | Beschreibung | |
---|---|---|---|---|---|---|
name | Nein | String | "nmea0" | Name des NMEA Adapters | ||
host | Nein | String | gültiger Host | "localhost" | Host des GPSD Servers (TCP Kommunikation) bzw. "" (SHM Kommunikation) * | |
port | Nein | INT | gültiger Port | 2947 | Port des GPSD Servers (ignoriert für SHM Kommunikation) * | |
deviceType | Nein | String | "generic","smartmini","smartrail","smartminis" | automatisch detektiert | Gerätetyp des NMEA Adapters ** | |
device | Nein | String | Existierende Gerätedatei | automatisch detektiert | Gerätedatei des NMEA Adapters ** | |
baudRate | Nein | INT | 1 - | Gültige Baudrate | 115200 | Baudrate des NMEA Adapters ** |
updateIntervalMs | Nein | INT | 1000 - (smartMINI S), 200 - (bei satelliteSystem: "GPS_GLONASS_GALILEO" ), sonst 100 - | 1000 (smartMINI S), ansonsten 100 | Aktualisierungsintervall [ms] der NMEA Sentences | |
satelliteSystem | Nein | String | "GPS", "GLONASS", "GALILEO", "BEIDOU", "GPS_GLONASS", "GPS_GALILEO", "GPS_BEIDOU", "GPS_GLONASS_GALILEO" | "GPS_GLONASS" | Welches Satellitensystem zur Lokalisierung verwendet werden soll | Nur auf smartMINI und smartRAIL verfügbar. |
rebootIntervalMs | Nein | INT | 1 - | 3600000 | Intervall [ms], nach dem frühester Geräteneustart bei fehlender GPSD-Verbindung durchgeführt wird * | |
gpsLocationChannelName | Nein | String | [Name der Modulinstanz]".Location" | smartCHANNEL für Positionsdatenstruktur (Länge/Breite/Höhe) | ||
gpsSpeedOverGroundChannelName | Nein | String | [Name der Modulinstanz]".SpeedOverGround" | smartCHANNEL für Speed over Ground [km/h] | ||
gpsSatelliteCountChannelName | Nein | String | [Name der Modulinstanz]".SatelliteCount" | smartCHANNEL für Anzahl aktuell benutzter Satelliten | ||
gpsPositionFixModeChannelName | Nein | String | [Name der Modulinstanz]".PositionFixMode" | smartCHANNEL für Modus der Positionsbestimmung | ||
gpsHDOPChannelName | Nein | String | [Name der Modulinstanz]".HDOP" | smartCHANNEL für H DOP | ||
gpsPDOPChannelName | Nein | String | [Name der Modulinstanz]".PDOP" | smartCHANNEL für P DOP | ||
gpsVDOPChannelName | Nein | String | [Name der Modulinstanz]".VDOP" | smartCHANNEL für V DOP | ||
speedLimit | Nein | INT | KEIN Default (unbeschränkt) | vollständige Ausfilterung/Verwerfung von Geschwindigkeiten über eingestelltem Wert |
*
nur bei Verwendung von GPSD
**
nur für direkte serielle Kommunikation
Modul-Informationen
Information | Wert |
---|---|
Autor | optiMEAS Measurement and Automation Systems GmbH |
seit smartCORE | 0.8 |
Modultyp | Producer |
Abhängigkeiten | KEINE |