Höchstgeschwindigkeit

Der 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 Richtigkeit der vom Roads API zurückgegebenen Daten zu Geschwindigkeitsbeschränkungen kann nicht garantiert werden. Die angegebenen Geschwindigkeitsbeschränkungen sind keine Echtzeitdaten und können geschätzt, ungenau, unvollständig und/oder veraltet sein. In den Abdeckungsdetails sehen Sie, in welchen Regionen Daten zu Geschwindigkeitsbegrenzungen verfügbar sind.

Anfragen

Eine Anforderung für Geschwindigkeitsbegrenzungen muss über HTTPS gesendet werden und weist das folgende Format auf:

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

Parameter verwenden

Erforderliche Parameter

  • Entweder ein path- oder ein placeId-Parameter.
    • path: Eine Liste mit bis zu 100 Breiten- und Längengraden, die einen Pfad darstellen. Die Werte für Längen- und Breitengrad müssen durch Kommas getrennt werden. Breiten-/Längengradpaare müssen durch das Pipe-Zeichen „|“ getrennt werden. Wenn Sie den Parameter path angeben, ordnet die API den Pfad zuerst der Straße zu, die ein Fahrzeug am wahrscheinlichsten befährt (wie bei der Anfrage snapToRoads), und ermittelt dann das Tempolimit für das entsprechende Straßensegment. Wenn Sie nicht möchten, dass die API den Pfad an Objekte anlegt, müssen Sie einen placeId-Parameter übergeben, wie unten erläutert. Im folgenden Beispiel wird der Parameter path mit drei Breiten-/Längengrad-Paaren gezeigt:path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.
    • placeId: Die Orts-IDs, die ein oder mehrere Straßenabschnitte darstellen. Achten Sie darauf, dass jede Orts-ID auf ein Straßensegment und nicht auf einen anderen Ortstyp verweist. Sie können mit jeder Anfrage bis zu 100 Orts-IDs übergeben. Die API führt kein Snapping an Straßen anhand der angegebenen Orts-IDs 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 diese 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 bei jeder Anfrage einen API-Schlüssel angeben. Weitere 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 KPH oder MPH sein. Die Standardeinstellung ist KPH.

Antworten

Eine speedLimits-Antwort kann die folgenden Elemente enthalten:

  • speedLimits: Array mit Straßenmetadaten. Jedes Element besteht aus den folgenden Feldern:
    • placeId: Eine eindeutige Kennung für einen Ort. Alle von Roads API zurückgegebenen Orts-IDs entsprechen Straßensegmenten.
    • speedLimit: Das Tempolimit für diesen Straßenabschnitt.
    • units – Gibt entweder KPH oder MPH zurück.
  • snappedPoints – ein Array von angepinnten 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 dem entsprechenden Wert in der ursprünglichen Anfrage entspricht. Jeder Wert in der Anfrage sollte einem gesnapten Wert in der Antwort zugeordnet werden. Diese Werte werden ab 0 indexiert. Ein Punkt mit dem Wert originalIndex von 4 ist also der angepasste Wert der fünften gepassten Breiten-/Längengrade, der an den Parameter path übergeben wird.
    • placeId: Eine eindeutige Kennung für einen Ort. Alle von Roads API zurückgegebenen Orts-IDs entsprechen Straßensegmenten. Der placeId kann in einer Anfrage für Geschwindigkeitslimits übergeben werden, um das Tempolimit für diesen Straßenabschnitt zu ermitteln.
  • warning_message: Ein String, der eine für Nutzer sichtbare Warnung enthält.

Beispielanfrage mit einem Pfad

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

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 in der obigen Antwort die Warnung wegen zu wenigen Punkten. Wenn Sie an beliebigen Punkten die Geschwindigkeitsbegrenzungen für die nächstgelegenen Straßenabschnitte anfordern möchten, müssen Sie stattdessen speedLimits mit Orts-IDs aufrufen, die vom Endpunkt nearestRoads abgerufen wurden.

Beispielanfrage mit Orts-IDs

Anstatt Breiten-/Längengrad-Paare zu verwenden, können Sie die Place IDs der Straßensegmente übergeben. Wir empfehlen, Orts-IDs für Straßensegmente mithilfe von snapToRoads- oder nearestRoads-Anfragen abzurufen. Wenn Sie Orts-IDs übergeben, gibt die API die zulässige Höchstgeschwindigkeit für das Straßensegment zurück, das durch die jeweilige Orts-ID dargestellt wird. Die API wendet kein Anpassen an Straßen auf die angegebenen Orts-IDs an.

Im folgenden Beispiel werden die Geschwindigkeitsbeschränkungen 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 sich ein Asset bewegt. Wenn ein Asset nicht in Bewegung ist, reicht ein einzelnes Standortbeispiel aus. Es sind keine weiteren 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 Geschwindigkeitsbeschränkungen?

Die häufigste Ursache für fehlende speedLimits-Werte ist die Anfrage der zulässigen Höchstgeschwindigkeit für einen Ort, 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. Das erste Straßensegment 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 Geschwindigkeitslimits im speedLimits-Array, da sich die Orts-ID der Brücke nicht auf ein einzelnes Straßensegment bezieht. Wenn keine der Orts-IDs für Straßensegmente ist, enthält die Antwort keine Geschwindigkeitsbeschränkungen.

Achten Sie bei Anfragen zu Geschwindigkeitsbeschränkungen mit Orts-IDs darauf, dass sich jede Orts-ID auf ein Straßensegment und nicht auf einen anderen Ortstyp bezieht. Orts-IDs für einzelne Straßenabschnitte lassen sich am besten mit snapToRoads- oder nearestRoads-Anfragen abrufen. Bei beiden Anfragen können mehrere Orts-IDs mit einem einzigen Aufruf zurückgegeben werden.