Wyznacz trasę przyjazną dla środowiska

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Domyślnie interfejs Routes API zwraca trasę domyślną, czyli trasę bez uwzględniania efektywności paliwowej lub energetycznej. Gdy włączysz wyznaczanie tras przyjaznych dla środowiska, w odpowiedzi nadal otrzymasz trasę domyślną. Otrzymasz też trasę przyjazną dla środowiska, która jest najbardziej paliwo- lub energooszczędna w zależności od typu silnika Twojego pojazdu.

Trasa przyjazna dla środowiska zwracana przez interfejs Routes API jest zoptymalizowana pod kątem mniejszego zużycia paliwa na całej trasie. Interfejs API uwzględnia rodzaj silnika pojazdu oraz inne czynniki, takie 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 pojazdy elektryczne 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. Szacunkowe zużycie paliwa służy do porównywania różnych tras, a nie do określania dokładnego zużycia paliwa przez Twój pojazd.

Jak Mapy Google szacują spalanie

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ę z najniższym zużyciem paliwa lub energii, gdy zapewnia ona podobny czas przyjazdu co trasa domyślna. 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 bardziej wyczerpujące wyszukiwanie w sieci dróg, aby znaleźć optymalną trasę. Więcej informacji znajdziesz w artykule o konfigurowaniu jakości i opóźnienia.

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

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

  • W przypadku TWO_WHEELER musisz ustawić lokalizację punktu początkowego w regionie, w którym obsługiwane są motocykle. W przeciwnym razie interfejs API zwraca błąd.

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

Płatności

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

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

Prośba o trasę przyjazną dla środowiska

Aby wysłać żądanie obliczenia trasy przyjaznej dla środowiska, ustaw w żądaniu te właściwości:

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

  • Ustaw 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ą przyjazną dla środowiska:

    • routes.routeLabels: Identyfikuje 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ć trasę niestandardową.

Przykładowa prośba o ekologiczne rozwiązanie

Poniższy kod pokazuje żą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.distanceMeters i routes.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ź dotycząca ekologii

Wywołanie computeRoutes powyżej 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 parametr 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 jazdy i inne czynniki trasa domyślna i trasa przyjazna dla środowiska mogą być takie same. W tym przypadku routeLabels zawiera obie etykiety: DEFAULT_ROUTE i FUEL_EFFICIENT:

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

oszacować zużycie paliwa na trasie,

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

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

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

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

    Jeśli 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 ze zużyciem paliwa: routes.travelAdvisory.fuelConsumptionMicroliters.

W tym przykładzie żądanie szacowanego zużycia paliwa jest częścią żądania, które zawiera też trasę przyjazną dla środowiska:

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 stale pracuje nad zwiększeniem zasięgu naszych usług interfejsu API na całym świecie. Poniżej znajdziesz najnowsze informacje o dostępności tras przyjaznych dla środowiska 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 (SA)
  • 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 (US)

Regiony, w których obsługiwane są motocykle

Poniższa lista zawiera najnowsze informacje o dostępności tras przyjaznych dla środowiska dla pojazdów dwukołowych w poszczególnych krajach:

  • Indie (IN)
  • Indonezja (ID)