Geschwindigkeitsbegrenzungen

Roads API gibt die zulässige Höchstgeschwindigkeit für einen Straßenabschnitt zurück. Bei Straßensegmenten mit variablen Geschwindigkeitsbegrenzungen wird die Standardgeschwindigkeitsbegrenzung für das Segment zurückgegeben.

Die Genauigkeit der von Roads API zurückgegebenen Geschwindigkeitsbegrenzungen kann nicht garantiert werden. Die Daten zur Geschwindigkeitsbegrenzung werden nicht in Echtzeit angegeben und können geschätzt, ungenau, unvollständig und/oder veraltet sein. Weitere Informationen zu den Regionen, in denen Daten zu Geschwindigkeitsbegrenzungen verfügbar sind, finden Sie unter Abdeckungsdetails.

Anfragen

Eine Anfrage für Geschwindigkeitsbegrenzungen muss über HTTPS gesendet werden und hat das folgende Format:

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

Parameterverwendung

Erforderliche Parameter

  • Entweder ein path- oder ein placeId-Parameter.
    • path: Eine Liste mit bis zu 100 Paaren für Breiten- und Längengrad, die einen Pfad darstellen. Breiten- und Längengradwerte müssen durch Kommas getrennt werden. Breiten- und Längengradangaben müssen durch einen senkrechten Strich (|) getrennt werden. Wenn Sie den Parameter path angeben, wird über die API zuerst der Pfad zur wahrscheinlichsten Strecke für ein Fahrzeug aufgenommen (wie bei der Anfrage snapToRoads) und dann die Geschwindigkeitsbegrenzung für das entsprechende Straßensegment. Wenn der API-Pfad den Pfad nicht erfassen soll, müssen Sie einen placeId-Parameter übergeben, wie unten erläutert. Das folgende Beispiel zeigt den Parameter path mit drei Paaren aus Breiten- und Längengrad: path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.
    • placeId: Die Orts-ID(s), die ein oder mehrere Straßensegmente darstellen Jede Orts-ID muss sich auf einen Straßenabschnitt beziehen und nicht auf eine andere Art von Ort. Sie können bei jeder Anfrage bis zu 100 Orts-IDs übergeben. Die API führt kein Andocken 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 finden und diese dann als Eingabe für die speedLimits-Anfrage bereitzustellen. Das folgende Beispiel zeigt den Parameter placeId mit zwei Orts-IDs: placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU
  • key: Der API-Schlüssel Ihrer Anwendung. Die Anwendung muss sich selbst jedes Mal identifizieren, wenn sie eine Anfrage an Roads API sendet. Dazu muss in jede Anfrage ein API-Schlüssel eingefügt werden. Schlüssel anfordern

Optionale Parameter

  • units: gibt an, ob Geschwindigkeitsbegrenzungen in Kilometern oder Meilen pro Stunde zurückgegeben werden sollen. Das kann entweder KPH oder MPH sein. Die Standardeinstellung ist KPH.

Antworten

Eine speedLimits-Antwort kann folgende Elemente enthalten:

  • speedLimits: Ein 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: Die Höchstgeschwindigkeit für diesen Straßenabschnitt.
    • units: gibt entweder KPH oder MPH zurück.
  • snappedPoints: ein Array von Andockpunkten. Dieses Array ist nur vorhanden, wenn die Anfrage einen path-Parameter enthielt. Jeder Punkt besteht aus den folgenden Feldern:
    • location: Enthält die Werte latitude und longitude.
    • originalIndex: Eine Ganzzahl, die den entsprechenden Wert in der ursprünglichen Anfrage angibt. Jeder Wert in der Anfrage sollte einem Andockwert in der Antwort zugeordnet sein. Diese Werte werden aus 0 indexiert. Ein Punkt mit einem originalIndex von 4 ist also der angepinnte Wert des fünften Breiten-/Längengrads, 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. placeId kann in einer Anfrage für Geschwindigkeitsbegrenzungen übergeben werden, um die Geschwindigkeitsbegrenzung für diesen Straßenabschnitt zu ermitteln.
  • warning_message: Ein String mit einer für den Nutzer sichtbaren Warnung.

Beispielanfrage mit einem Pfad

Mit dieser Anfrage wird die Geschwindigkeitsbegrenzung für jedes Straßensegment abgerufen, das den angegebenen Breiten- und Längengraden in einem Pfad über die Vasco da Gama-Brücke in Lissabon (Portugal) am nächsten ist.

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

Beispielanfrage mit Orts-IDs

Statt Breitengrad/Längengrad-Paare können Sie die Orts-IDs der Straßensegmente übergeben. Wir empfehlen, Orts-IDs für Straßensegmente mit Anfragen vom Typ snapToRoads oder nearestRoads abzurufen. Wenn Sie Orts-IDs übergeben, gibt die API die Geschwindigkeitsbegrenzung für das Straßensegment zurück, das durch die einzelnen Orts-IDs dargestellt wird. Die API wendet keinen Straßenverlauf auf die angegebenen Orts-IDs an.

Im folgenden Beispiel werden die Geschwindigkeitsbegrenzungen für einige Straßensegmente angefordert, die die Brücke Vasco da Gama in Lissabon (Portugal) überschreiten.

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

Um das Volumen der Aufrufe des Speed Limit-Dienstes zu minimieren, empfehlen wir, die Orte Ihrer Assets in Intervallen von 5 bis 15 Minuten zu abfragen. Der genaue Wert hängt von der Geschwindigkeit ab, mit der ein Asset bewegt wird. Wenn es sich um ein stationäres Asset handelt, reicht ein einzelnes Standortbeispiel aus. Es sind nicht mehrere 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 Geschwindigkeitsbegrenzungen?

Die häufigste Ursache dafür, dass speedLimits fehlt, ist die Geschwindigkeitsbegrenzung für einen Ort, der kein Straßensegment ist.

Im Beispiel oben wird die Vasco da Gama-Brücke zur Veranschaulichung von Konzepten verwendet. Die Brücke unterstützt die E90-Brücke über den Rio Tejo. Die Brücke selbst hat die Orts-ID ChIJUzt97ZEwGQ0RM1JzQfqoDtU. Das erste Straßensegment in der obigen Antwort ist Teil der E90-Straße und hat die Orts-ID ChIJX12duJAwGQ0Ra0d4Oi4jOGE. Wenn Sie in der Beispielanfrage die Straßen-ID durch die Orts-ID der Brücke ersetzen, gibt es in der Antwort nur zwei Geschwindigkeitsbegrenzungen im Array speedLimits, da die Orts-ID der Brücke nicht auf ein einzelnes Straßensegment verweist. Wenn keine der Orts-IDs für Straßensegmente bestimmt ist, enthält die Antwort keine Geschwindigkeitsbegrenzungen.

Wenn Sie Geschwindigkeitsbegrenzungsanfragen mit Orts-IDs stellen, achten Sie darauf, dass jede Orts-ID auf einen Straßenabschnitt und nicht auf eine andere Art von Ort verweist. Orts-IDs für einzelne Straßensegmente lassen sich am besten mit Anfragen vom Typ snapToRoads oder nearestRoads abrufen. Mit beiden können mehrere Orts-IDs von einem einzigen Aufruf zurückgegeben werden.