Höchstgeschwindigkeit

Der Dienst Roads API gibt die zulässige Höchstgeschwindigkeit für einen Straßenabschnitt zurück. Bei Straßenabschnitten mit variablen Geschwindigkeitsbegrenzungen wird die Standardgeschwindigkeitsbegrenzung für den Abschnitt zurückgegeben.

Die Genauigkeit der von Roads API zurückgegebenen Tempolimitdaten kann nicht garantiert werden. Die bereitgestellten Tempolimitdaten sind nicht in Echtzeit verfügbar und können geschätzt, ungenau, unvollständig oder veraltet sein. Hier findest du eine Liste der Regionen, in denen Daten zu Geschwindigkeitsbegrenzungen verfügbar sind.

Anfragen

Senden Sie Anfragen für Geschwindigkeitsbegrenzungen über HTTPS im folgenden Format:

https://roads.googleapis.com/v1/speedLimits?parameters&key=YOUR_API_KEY

Verwendung von Parametern

Erforderliche Parameter

  • Entweder ein path- oder ein placeId-Parameter.
    • path: Eine Liste mit bis zu 100 Kombinationen aus Breiten- und Längengrad, die einen Pfad darstellen. Breiten- und Längengradwerte müssen durch Kommas getrennt werden. Breiten-/Längengradpaare müssen durch das Pipe-Zeichen „|“ getrennt werden. Wenn Sie den Parameter path angeben, wird der Pfad zuerst an die wahrscheinlichste Straße angepasst, die von einem Fahrzeug befahren wird (wie bei der snapToRoads-Anfrage). Anschließend wird das Tempolimit für den entsprechenden Straßenabschnitt ermittelt. Wenn Sie nicht möchten, dass der Pfad durch die API an Rasterlinien ausgerichtet wird, müssen Sie einen placeId-Parameter übergeben, wie unten beschrieben. Im folgenden Beispiel wird der Parameter path mit drei Breiten-/Längengradpaaren gezeigt: path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.
    • placeId: Die Orts-ID(s) für ein oder mehrere Straßenabschnitte. Achten Sie darauf, dass sich jede Orts-ID auf einen Straßenabschnitt und nicht auf einen anderen Ortstyp bezieht. Sie können mit jeder Anfrage bis zu 100 Orts-IDs übergeben. Die API führt für die angegebenen Orts-IDs kein Road-Snapping durch. Die Antwort enthält eine Geschwindigkeitsbegrenzung für jede Orts-ID in der Anfrage. Sie können eine snapToRoads- oder nearestRoads-Anfrage senden, um die relevanten Orts-IDs zu ermitteln, und sie dann als Eingabe für die speedLimits-Anfrage verwenden. Im folgenden Beispiel wird der Parameter placeId mit zwei Orts-IDs verwendet: placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU
  • key: Der API-Schlüssel Ihrer Anwendung. Ihre Anwendung muss sich jedes Mal identifizieren, wenn sie eine Anfrage an die Roads API sendet. Dazu muss sie in jeder Anfrage einen API-Schlüssel angeben. Informationen zum Abrufen eines Schlüssels

Optionale Parameter

  • units – Gibt an, ob Geschwindigkeitsbegrenzungen in Kilometern oder Meilen pro Stunde zurückgegeben werden sollen. Dies kann entweder auf KPH oder MPH festgelegt werden. Die Standardeinstellung ist KPH.

Antworten

Die folgenden Elemente können in einer speedLimits-Antwort enthalten sein:

  • speedLimits: Ein Array mit Straßenmetadaten. Jedes Element besteht aus den folgenden Feldern:
    • placeId: Eine eindeutige Kennung für einen Ort. Alle Orts-IDs, die von Roads API zurückgegeben werden, entsprechen Straßenabschnitten.
    • speedLimit: Das Tempolimit für diesen Straßenabschnitt.
    • units: Gibt entweder KPH oder MPH zurück.
  • snappedPoints: Ein Array von angepassten Punkten. Dieses Array ist nur vorhanden, wenn die Anfrage einen path-Parameter enthält. Jeder Punkt besteht aus den folgenden Feldern:
    • location: Enthält einen latitude- und einen longitude-Wert.
    • originalIndex: Eine Ganzzahl, die den entsprechenden Wert in der ursprünglichen Anfrage angibt. Jeder Wert in der Anfrage sollte einem gerundeten Wert in der Antwort entsprechen. Diese Werte werden ab 0 indexiert. Ein Punkt mit einem originalIndex von 4 ist also der gerundete Wert des fünften Breiten-/Längengrads, der an den Parameter path übergeben wird.
    • placeId: Eine eindeutige Kennung für einen Ort. Alle Orts-IDs, die von Roads API zurückgegeben werden, entsprechen Straßenabschnitten. Die placeId kann in einer Anfrage für Tempolimits übergeben werden, um das Tempolimit für diesen Straßenabschnitt zu ermitteln.
  • warning_message: Ein String mit einer für Nutzer sichtbaren Warnung.

Beispielanfrage mit einem Pfad

Mit dieser Anfrage wird die zulässige Höchstgeschwindigkeit für jeden Straßenabschnitt abgerufen, der den angegebenen Breiten-/Längengradpaaren auf einem Pfad über die Vasco-da-Gama-Brücke in Lissabon, Portugal, am nächsten liegt.

Anfrage

https://roads.googleapis.com/v1/speedLimits?path=38.75807927603043,-9.03741754643809|38.6896537,-9.1770515|41.1399289,-8.6094075&key=YOUR_API_KEY

Antwort

{
  speedLimits:
  [
    {
      placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE",
      speedLimit: 105,
      units: "KPH"
    },
    {
      placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU",
      speedLimit: 70,
      units: "KPH"
    },
    {
      placeId: "ChIJJ4vQRudkJA0RpednU70A-5M",
      speedLimit: 55,
      units: "KPH"
    }
  ],
  snappedPoints:
  [
    {
      location:
      {
        latitude: 38.75807927603043,
        longitude: -9.037417546438084
      },
      originalIndex: 0,
      placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE"
    },
    {
      location:
      {
        latitude: 38.689653701836896,
        longitude: -9.177051486847693
      },
      originalIndex: 1,
      placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU"
    },
    {
      location:
      {
        latitude: 41.13993011767777,
        longitude: -8.609400794783655
      },
      originalIndex: 2,
      placeId: "ChIJJ4vQRudkJA0RpednU70A-5M"
    }
  ],
  warningMessage: "Input path is too sparse. You should provide a path where consecutive points are closer to each other. Refer to the 'path' parameter in Google Roads API documentation."
}

Beachten Sie die Warnmeldung für die geringe Anzahl von Punkten in der obigen Antwort. Wenn Sie Tempolimits für die nächstgelegenen Straßenabschnitte an beliebigen Punkten anfordern, müssen Sie stattdessen speedLimits mit Orts-IDs aufrufen, die vom Endpunkt nearestRoads abgerufen wurden.

Beispielanfrage mit Orts-IDs

Anstelle von Breiten-/Längengradpaaren können Sie die Place IDs der Straßenabschnitte übergeben. Wir empfehlen, Orts-IDs für Straßenabschnitte mit snapToRoads- oder nearestRoads-Anfragen abzurufen. Wenn Sie Orts-IDs übergeben, gibt die API die zulässige Höchstgeschwindigkeit für den Straßenabschnitt zurück, der durch jede Orts-ID dargestellt wird. Die API wendet kein Road-Snapping auf die angegebenen Orts-IDs an.

Im folgenden Beispiel werden die Geschwindigkeitsbegrenzungen für einige der Straßenabschnitte angefordert, die die Vasco-da-Gama-Brücke in Lissabon, Portugal, überqueren.

Anfrage

https://roads.googleapis.com/v1/speedLimits?placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU&placeId=ChIJJ4vQRudkJA0RpednU70A-5M&key=YOUR_API_KEY

Antwort

{
  "speedLimits": [
    {
      placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE",
      speedLimit: 105,
      units: "KPH"
    },
    {
      placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU",
      speedLimit: 70,
      units: "KPH"
    },
    {
      placeId: "ChIJJ4vQRudkJA0RpednU70A-5M",
      speedLimit: 55,
      units: "KPH"
    }
  ]
}

Nutzungsempfehlungen

Wenn Sie die Anzahl der Aufrufe an den Speed Limit-Dienst reduzieren möchten, sollten Sie die Standorte Ihrer Assets im Intervall von 5 bis 15 Minuten abfragen. Der genaue Wert hängt von der Geschwindigkeit ab, mit der ein Asset bewegt wird. Wenn ein Asset nicht in Bewegung ist, reicht ein einzelnes Standortbeispiel aus. Es sind also keine mehreren Aufrufe erforderlich.

Zur Minimierung der Gesamtlatenz wird empfohlen, den Speed Limit-Dienst für die Geschwindigkeitsbegrenzung aufzurufen, sobald du einige Daten erfasst hast, und nicht jedes Mal, wenn der Standort eines mobilen Assets empfangen wird.

Warum fehlen einige oder alle Tempolimits?

Die häufigste Ursache für fehlende speedLimits ist, dass die zulässige Höchstgeschwindigkeit für einen Ort angefordert wird, der kein Straßenabschnitt ist.

Im obigen Beispiel wird die Vasco-da-Gama-Brücke verwendet, um Konzepte zu veranschaulichen. Die Brücke trägt die Straße E90, die den Rio Tejo überquert. Die Brücke selbst hat die Orts-ID ChIJUzt97ZEwGQ0RM1JzQfqoDtU. Der erste Straßenabschnitt in der obigen Antwort ist Teil der E90 und hat die Orts-ID ChIJX12duJAwGQ0Ra0d4Oi4jOGE. Wenn Sie in der Beispielanfrage die Orts-ID der Straße durch die Orts-ID der Brücke ersetzen, enthält die Antwort nur zwei Geschwindigkeitsbegrenzungen im Array speedLimits, da sich die Orts-ID der Brücke nicht auf ein einzelnes Straßenstück bezieht. Wenn keine der Orts-IDs für Straßenabschnitte gilt, enthält die Antwort keine Geschwindigkeitsbegrenzungen.

Wenn Sie Tempolimitanfragen mit Orts-IDs stellen, muss jede Orts-ID auf einen Straßenabschnitt und nicht auf einen anderen Ortstyp verweisen. Orts-IDs für einzelne Straßenabschnitte lassen sich am besten mit snapToRoads- oder nearestRoads-Anfragen abrufen. Bei beiden kann mit einem einzigen Aufruf eine Liste von Orts-IDs zurückgegeben werden.