Wyznacz trasę przyjazną dla środowiska

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Domyślnie interfejs Routes API zwraca domyślną trasę, czyli trasę, która nie uwzględnia efektywności paliwowej ani energetycznej. Gdy włączysz ekologiczne wyznaczanie trasy, w odpowiedzi nadal otrzymasz domyślną trasę. Otrzymasz też trasę przyjazną dla środowiska, która będzie najbardziej oszczędną pod względem zużycia paliwa lub energii w zależności od typu silnika Twojego pojazdu.

Trasa przyjazna dla środowiska zwracana przez interfejs Routes API jest zoptymalizowana pod kątem niższego zużycia paliwa na całej trasie. API używa rodzaju silnika pojazdu oraz innych czynników, takich jak natężenie ruchu w czasie rzeczywistym i warunki drogowe, aby wybrać trasę przyjazną dla środowiska. Im większa oszczędność paliwa lub energii na trasie, tym niższe zużycie paliwa lub energii i emisja CO2.

Na przykład względne zużycie paliwa w silnikach Diesla jest zwykle największe podczas jazdy po autostradzie. Pojazdy z napędem hybrydowym i elektrycznym zapewniają większe oszczędności podczas jazdy po mieście w ruchu ulicznym oraz w terenie górzystym, gdzie mogą skutecznie wykorzystywać zalety hamowania rekuperacyjnego.

Możesz też poprosić interfejs API o zwrócenie szacowanego zużycia paliwa na całej trasie. Szacunki zużycia paliwa traktuj jako sposób na porównanie różnych tras, a nie jako dokładne szacunki zużycia paliwa w Twoim konkretnym pojeździe.

Jak Mapy Google szacują efektywność paliwową

Interfejs Routes API szacuje efektywność paliwową na podstawie danych podawanych przez instytut National Renewable Energy Laboratory Departamentu Energii Stanów Zjednoczonych oraz Europejską Agencję Środowiska. W obliczeniach uwzględnia się czynniki, które mają wpływ na zużycie paliwa i energii oraz emisję CO2, takie jak:

  • średnie zużycie paliwa i energii w pojazdach w Twoim regionie,
  • nachylenie drogi na trasie,
  • wzorce natężenia ruchu,
  • rodzaje dróg (np. lokalne lub autostrady).

Interfejs Routes API zwraca trasę o największej paliwo- i energooszczędności, gdy zapewnia ona czas przejazdu zbliżony do trasy domyślnej. Jeśli oszczędność paliwa lub energii jest zbyt mała lub powoduje znaczne wydłużenie czasu jazdy, interfejs API pokazuje względne oszczędności energii lub paliwa między trasami. Ułatwia to porównanie wyników.

Więcej informacji o technologii wyznaczania tras przyjaznych dla środowiska (PDF)

Wymagania wstępne

Aby korzystać z wyznaczania tras przyjaznych dla środowiska lub szacować zużycie paliwa:

  • Jako preferencję routingu musisz podać TRAFFIC_AWARE_OPTIMAL. W tym trybie serwer przeprowadza dokładniejsze wyszukiwanie w sieci dróg, aby znaleźć optymalną trasę. Więcej informacji znajdziesz w artykule Konfigurowanie jakości w porównaniu z opóźnieniem.

  • Musisz ustawić wartość travelMode na DRIVE lub TWO_WHEELER. Żądania dotyczące innych środków transportu zwracają błąd. Trasy przyjazne dla środowiska w przypadku TWO_WHEELER są obsługiwane tylko w kilku krajach.

  • Musisz ustawić lokalizację punktu początkowego w obsługiwanym regionie. W przeciwnym razie API zwraca błąd.

  • W przypadku TWO_WHEELER musisz ustawić lokalizację punktu początkowego w regionie obsługującym pojazdy dwukołowe. W przeciwnym razie API zwraca błąd.

  • Trasa nie może zawierać pośredniego punktu trasy.

Płatności

Zazwyczaj Google Maps Platform nie pobiera opłat za korzystanie z funkcji w wersji podglądowej. Jednak ponieważ wyznaczanie tras przyjaznych dla środowiska i szacowanie zużycia paliwa wymaga określenia TRAFFIC_AWARE_OPTIMAL jako preferencji dotyczącej wyznaczania tras, opłaty są naliczane na podstawie SKU: Compute Routes Pro.

Więcej informacji o płatnościach za interfejs Routes API

Prośba o wyznaczenie trasy przyjaznej dla środowiska

Aby wysłać prośbę o obliczenie trasy przyjaznej dla środowiska, ustaw w niej te właściwości:

  • Określ emissionType dla pojazdu, używając wartości zdefiniowanych w VehicleEmissionType: DIESEL, GASOLINE, ELECTRIC lub HYBRID. Wartością domyślną jest GASOLINE.

  • Ustaw wartość requestedReferenceRoutes na FUEL_EFFICIENT.

  • Ustaw maskę pola odpowiedzi, która określa, że mają być zwracane właściwości odpowiedzi powiązane z trasą ekologiczną:

    • routes.routeLabels: Określa każdą trasę jako DEFAULT_ROUTE, FUEL_EFFICIENT lub DEFAULT_ROUTE_ALTERNATE.

    • routes.routeToken: Token trasy, który możesz przekazać do pakietu Navigation SDK, aby pobrać niestandardową trasę.

Przykładowe żądanie dotyczące ekologii

Poniższy kod przedstawia żądanie trasy przyjaznej dla środowiska. W tym przykładzie używasz maski pola odpowiedzi, aby zwrócić właściwości odpowiedzi powiązane z trasą przyjazną dla środowiska wraz z właściwościami routes.distanceMetersroutes.duration:

curl -X POST -H 'content-type: application/json' -d '{
  "origin": {
    "location": {
      "latLng": {
        "latitude": 41.76904801292959,
        "longitude": -72.67374935684933
      }
    }
  },
  "destination": {
    "location": {
      "latLng": {
        "latitude": 41.823042361105024,
        "longitude": -71.40933143059424
      }
    }
  },
  "routeModifiers": {
    "vehicleInfo": {
      "emissionType": "GASOLINE"
    }
  },
  "travelMode":"DRIVE",
  "routingPreference": "TRAFFIC_AWARE_OPTIMAL",
  "requestedReferenceRoutes": ["FUEL_EFFICIENT"]
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Przykładowa odpowiedź z uwzględnieniem ekologii

Powyższe wywołanie computeRoutes generuje odpowiedź JSON, która zawiera 2 trasy: domyślną i z najniższym spalaniem. W odpowiedzi:

  • W przypadku trasy domyślnej właściwość tablicy routeLabels zawiera DEFAULT_ROUTE.

  • W przypadku trasy przyjaznej dla środowiska właściwość tablicy routeLabels zawiera FUEL_EFFICIENT.

  • Jeśli w żądaniu ustawisz wartość computeAlternativeRoutes na true, aby obliczyć trasy alternatywne, właściwość tablicy routeLabels będzie zawierać DEFAULT_ROUTE_ALTERNATE.

{
    "routes": [
        {
            "distanceMeters": 138939,
            "duration": "5412s",
            "routeToken": "CoYJCpoIC…0n9S1cu",
            "routeLabels": [
                "DEFAULT_ROUTE"
            ]
        },
        {
            "distanceMeters": 116887,
            "duration": "5631s",
            "routeToken": "CuEHCu0G…xqm",
            "routeLabels": [
                "FUEL_EFFICIENT"
            ]
        }
    ]
}

Ze względu na aktualne warunki drogowe i inne czynniki trasa domyślna i trasa przyjazna dla środowiska mogą być takie same. W tym przypadku routeLabels zawiera obie etykiety: DEFAULT_ROUTEFUEL_EFFICIENT:

{
  "routes": [
    {
      "distanceMeters": 45875,
      "duration": "2655s",
      "routeToken": "CvcDCos…6I40",
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ]
    }
  ]
}

oszacować zużycie paliwa na trasie,

Możesz poprosić o zwrócenie szacowanego zużycia paliwa na całej trasie w mikrolitrach. Aby dodać do odpowiedzi szacowane zużycie paliwa na trasie:

  • Ustaw pole tablicy extraComputations na FUEL_CONSUMPTION, aby włączyć obliczanie zużycia paliwa.

  • Określ emissionType dla pojazdu, używając wartości zdefiniowanych w VehicleEmissionType: DIESEL, GASOLINE, ELECTRIC lub HYBRID. Wartością domyślną jest GASOLINE.

    Jeśli wartość emissionType to HYBRID, interfejs API przelicza zużycie energii elektrycznej i paliwa na mikrolitry paliwa.

    Jeśli wartość emissionType to ELECTRIC, interfejs API przelicza zużycie energii elektrycznej na mikrolitry paliwa.

  • Ustaw maskę pola odpowiedzi, która określa, że mają być zwracane właściwości odpowiedzi związane z zużyciem paliwa:routes.travelAdvisory.fuelConsumptionMicroliters.

W przykładzie poniżej w ramach żądania, które zawiera też trasę przyjazną dla środowiska, wysyłane jest żądanie szacowanego zużycia paliwa:

curl -X POST -H 'content-type: application/json' -d '{
  "origin": {
    "location": {
      "latLng": {
        "latitude": 41.76904801292959,
        "longitude": -72.67374935684933
      }
    }
  },
  "destination": {
    "location": {
      "latLng": {
        "latitude": 41.823042361105024,
        "longitude": -71.40933143059424
      }
    }
  },
  "routeModifiers": {
    "vehicleInfo": {
      "emissionType": "GASOLINE"
    }
  },
  "travelMode":"DRIVE",
  "routingPreference": "TRAFFIC_AWARE_OPTIMAL",
  "extraComputations": ["FUEL_CONSUMPTION"],
  "requestedReferenceRoutes": ["FUEL_EFFICIENT"]
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken,routes.travelAdvisory.fuelConsumptionMicroliters' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Odpowiedź zawiera szacowane zużycie paliwa zarówno na trasie domyślnej, jak i na trasie przyjaznej dla środowiska:

{
    "routes": [
        {
            "distanceMeters": 138939,
            "duration": "5412s",
            "travelAdvisory": {
                "fuelConsumptionMicroliters": "11019554"
            },
            "routeToken": "CoYJCpoIC…0n9S1cu",
            "routeLabels": [
                "DEFAULT_ROUTE"
            ]
        },
        {
            "distanceMeters": 116887,
            "duration": "5631s",
            "travelAdvisory": {
                "fuelConsumptionMicroliters": "9572436"
            },
            "routeToken": "CuEHCu0G…xqm",
            "routeLabels": [
                "FUEL_EFFICIENT"
            ]
        }
    ]
}

Obsługiwane regiony

Zespół Google Maps Platform nieustannie pracuje nad zwiększeniem zasięgu międzynarodowego naszych usług API. Poniżej znajdziesz najnowsze informacje o zasięgu tras ekologicznych w poszczególnych krajach:

  • Albania (AL)
  • Australia (AU)
  • Austria (AT)
  • Belgia (BE)
  • Bośnia i Hercegowina (BA)
  • Bułgaria (BG)
  • Kanada (CA)
  • Chorwacja (HR)
  • Cypr (CY)
  • Czechy (CZ)
  • Dania (DK)
  • Egipt (EG)
  • Estonia (EE)
  • Finlandia (FI)
  • Francja (FR)
  • Niemcy (DE)
  • Grecja (GR)
  • Węgry (HU)
  • Islandia (IS)
  • Indie (IN)
  • Indonezja (ID)
  • Irlandia (IE)
  • Włochy (IT)
  • Kosowo (XK)
  • Łotwa (LV)
  • Liechtenstein (LI)
  • Litwa (LT)
  • Luksemburg (LU)
  • Malta (MT)
  • Meksyk (MX)
  • Czarnogóra (ME)
  • Holandia (NL)
  • Macedonia Północna (MK)
  • Norwegia (NO)
  • Polska (PL)
  • Portugalia (PT)
  • Rumunia (RO)
  • Arabia Saudyjska (AS)
  • Serbia (RS)
  • Słowacja (SK)
  • Słowenia (SI)
  • Hiszpania (ES)
  • Szwecja (SE)
  • Szwajcaria (CH)
  • Turcja (TR)
  • Zjednoczone Emiraty Arabskie (AE)
  • Wielka Brytania (GB)
  • Stany Zjednoczone

Regiony obsługujące motocykle

Poniżej znajdziesz najnowsze informacje o zasięgu ekologicznego wyznaczania tras dla pojazdów dwukołowych w poszczególnych krajach:

  • Indie (IN)
  • Indonezja (ID)