Obtén una ruta ecológica

De forma predeterminada, la API de Routes muestra la ruta default, lo que significa que se trata de una ruta sin tener en cuenta el ahorro de combustible ni energía. Si habilitas la organización de uso ecológico enrutamiento, seguirás obteniendo la ruta predeterminada en la respuesta. Además, también Volver a una ruta ecológica que muestre la ruta con mayor ahorro de combustible o energía según el tipo de motor de tu vehículo.

La ruta ecológica que muestra la API de Routes está optimizada para menos consumo de combustible en toda la ruta. La API usa el motor de tu vehículo junto con otros factores, como el tráfico en tiempo real y las condiciones de la ruta para elegir la ruta ecológica. Cuanto mayor sea el ahorro de combustible o energía de la ruta, reducir el consumo de combustible o energía y las emisiones de CO2 de tu vehículo.

Por ejemplo, la ventaja relativa de ahorro de combustible de un vehículo diésel en la conducción de carreteras. Los vehículos híbridos y eléctricos suelen proporcionar mayor eficiencia en la conducción para la ciudad y la conducción en colinas cada vez más eficientes entornos en los que pueden usar y beneficiarse con recursos el frenado.

También puedes solicitar que la API devuelva el consumo estimado de combustible de toda la ruta. Usar las estimaciones del consumo de combustible como una manera de comparar rutas diferentes, no como estimaciones explícitas del uso de combustible para tu vehículo exacto.

Cómo estima Google Maps el ahorro de combustible

La API de Routes estima el ahorro de combustible usando estadísticas de EE.UU. Departamento de Energía Laboratorio Nacional de Energía Renovable y datos de la Agencia Europea de Medio Ambiente. Este cálculo incluye factores que afectan el consumo de combustible y energía, y las emisiones de CO2, como

  • Consumo promedio de combustible o energía para los vehículos de tu región
  • Pendientes en la ruta
  • Patrones de detención del tráfico
  • Tipos de rutas (como rutas locales o autopistas)

La API de Routes devuelve la ruta con mayor ahorro de combustible o energía cuando tiene más o menos la misma hora de llegada que la ruta predeterminada. En los casos en que el combustible o de ahorro de energía son demasiado bajos o aumentan el tiempo de conducción de manera significativa, la API muestra el ahorro relativo de combustible o energía entre rutas para ayudarte a compararlas.

Obtén más información sobre la tecnología de rutas ecológicas (PDF).

Requisitos previos

Para utilizar las rutas ecológicas o estimar el consumo de combustible, sigue estos pasos:

  • Debes especificar TRAFFIC_AWARE_OPTIMAL como la preferencia de enrutamiento. En este el servidor realiza una búsqueda más exhaustiva de la red de rutas para encontrar la ruta óptima. Para obtener más información, consulta Configura la calidad y la latencia.

  • Debes configurar travelMode como DRIVE. Solicitudes de cualquier otro medio de transporte mostrará un error.

  • Debes definir una ubicación para el punto de referencia de origen en una región compatible. De lo contrario, la API muestra un error.

  • La ruta no puede contener un punto de referencia intermedio.

Facturación

Por lo general, Google Maps Platform no cobra por el uso de una Vista previa. . Sin embargo, dado que las rutas ecológicas y la estimación del consumo de combustible requiere que especifiques TRAFFIC_AWARE_OPTIMAL como la preferencia de enrutamiento, se cobran según el SKU: Routes Opciones avanzadas.

Obtén más información sobre la facturación de la API de Routes.

Solicita una ruta ecológica

Si deseas realizar una solicitud para calcular una ruta ecológica, configura las siguientes propiedades en la solicitud:

  • Especifica emissionType para el vehículo con los valores definidos en VehicleEmissionType: DIESEL, GASOLINE, ELECTRIC o HYBRID. El valor predeterminado es GASOLINE

  • Establece requestedReferenceRoutes en FUEL_EFFICIENT.

  • Establece una máscara de campo de respuesta que especifique que se deben mostrar las propiedades de la respuesta asociada con una ruta ecológica:

    • routes.routeLabels: Identifica cada ruta como DEFAULT_ROUTE, FUEL_EFFICIENT o DEFAULT_ROUTE_ALTERNATE.

    • routes.routeToken: Un token de ruta que puedes pasar al SDK de Navigation para recuperar un ruta personalizada.

Ejemplo de solicitud ecológica

En el siguiente código, se muestra una solicitud de una ruta ecológica. En este ejemplo, utiliza la máscara de campo de respuesta para mostrar las propiedades de respuesta asociadas con un ruta ecológica junto con la routes.distanceMeters y Propiedades de 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'

Ejemplo de respuesta ecológica

La llamada computeRoutes anterior genera una respuesta JSON que contiene dos rutas: la predeterminada y la que ahorra de combustible. En la respuesta, figura lo siguiente:

  • Para la ruta predeterminada, la propiedad del array routeLabels contiene DEFAULT_ROUTE

  • Para la ruta ecológica, la propiedad del array routeLabels contiene FUEL_EFFICIENT

  • Si configuras computeAlternativeRoutes en la solicitud a true para calcular rutas alternativas, la propiedad del array routeLabels contiene DEFAULT_ROUTE_ALTERNATE.

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

Debido a las condiciones actuales del manejo y otros factores, la ruta y la ruta ecológica puede ser la misma. En este caso, routeLabels contiene ambas etiquetas: DEFAULT_ROUTE y FUEL_EFFICIENT:

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

Cómo calcular el uso de combustible de la ruta

Puedes solicitar que el método devuelva el consumo estimado de combustible de todo ruta, en microlitros. Para agregar el consumo estimado de combustible de una ruta al respuesta:

  • Establece el campo de array extraComputations en FUEL_CONSUMPTION para habilitar las cálculo del uso de combustible.

  • Especifica emissionType para el vehículo con los valores definidos en VehicleEmissionType: DIESEL, GASOLINE, ELECTRIC o HYBRID. El valor predeterminado es GASOLINE

    Si el emissionType es HYBRID, la API convierte la electricidad y el combustible consumo en microlitros de combustible.

    Si el emissionType es ELECTRIC, la API convierte electricidad consumo en microlitros de combustible.

  • Establece una máscara de campo de respuesta que especifique que se deben mostrar las propiedades de la respuesta asociadas con el consumo de combustible: routes.travelAdvisory.fuelConsumptionMicroliters

El siguiente ejemplo solicita el uso estimado de combustible como parte de una solicitud que también incluye la ruta ecológica:

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'

La respuesta contiene el consumo de combustible estimado para la ruta predeterminada y por la ruta ecológica:

{
    "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"
            ]
        }
    ]
}

Regiones admitidas

El equipo de Google Maps Platform trabaja constantemente para mejorar para nuestros servicios de APIs. En la siguiente lista, se muestra la cobertura más reciente detallados, país por país, para obtener rutas ecológicas:

  • Albania (AL)
  • Austria (AT)
  • Bélgica (BE)
  • Bosnia y Herzegovina (BA)
  • Bulgaria (BG)
  • Canadá (CA)
  • Croacia (HR)
  • Chipre (CY)
  • República Checa (CZ)
  • Dinamarca (DK)
  • Estonia (EE)
  • Finlandia (FI)
  • Francia (FR)
  • Alemania (DE)
  • Grecia (GR)
  • Hungría (HU)
  • Islandia (IS)
  • Irlanda (IE)
  • Italia (IT)
  • Kosovo (XK)
  • Letonia (LV)
  • Liechtenstein (LI)
  • Lituania (LT)
  • Luxemburgo (LU)
  • Malta (MT)
  • Montenegro (ME)
  • Países Bajos (NL)
  • Macedonia del Norte (MK)
  • Noruega (NO)
  • Polonia (PL)
  • Portugal (PT)
  • Rumania (RO)
  • Serbia (RS)
  • Eslovaquia (SK)
  • Eslovenia (SI)
  • España (ES)
  • Suecia (SE)
  • Suiza (CH)
  • Türkiye (TR)
  • Reino Unido (GB)
  • Estados Unidos (US)