Xem tuyến đường thân thiện với môi trường

Theo mặc định, Routes API trả về tuyến mặc định, nghĩa là một tuyến đường mà không tính đến hiệu suất tiêu thụ nhiên liệu hoặc năng lượng. Khi bật chế độ thân thiện với môi trường định tuyến, bạn vẫn nhận được tuyến mặc định trong phản hồi. Ngoài ra, bạn cũng quay lại tuyến đường thân thiện với môi trường cho thấy tuyến đường tiết kiệm nhiên liệu hoặc năng lượng nhất dựa trên loại động cơ xe của bạn.

Tuyến đường thân thiện với môi trường do Routes API trả về được tối ưu hoá cho mức tiêu thụ nhiên liệu thấp hơn trên toàn bộ tuyến đường. API này sử dụng động cơ xe của bạn cùng với các yếu tố khác như tình trạng giao thông theo thời gian thực và tình trạng đường sá hãy chọn tuyến đường thân thiện với môi trường. Tuyến đường càng tiết kiệm nhiên liệu hoặc năng lượng thì giảm mức sử dụng nhiên liệu/năng lượng và lượng khí thải CO2 của ô tô.

Ví dụ: lợi thế tiết kiệm nhiên liệu tương đối của một chiếc xe chạy bằng dầu thường là tuyệt vời nhất khi lái xe trên đường cao tốc. Xe lai và xe điện có xu hướng cung cấp hiệu quả tăng dần khi lái xe trong thành phố tắc nghẽn và lái xe trên dốc môi trường nơi họ có thể sử dụng rộng rãi và hưởng lợi từ công nghệ tái tạo phanh.

Bạn cũng có thể yêu cầu API trả về mức tiêu thụ nhiên liệu ước tính cho toàn bộ tuyến đường. Sử dụng mức tiêu thụ nhiên liệu ước tính làm cách so sánh tuyến đường khác nhau, chứ không phải là số liệu ước tính rõ ràng về mức sử dụng nhiên liệu cho chính chiếc xe của bạn.

Cách Google Maps ước tính hiệu suất nhiên liệu

API Tuyến đường ước tính hiệu suất tiêu thụ nhiên liệu bằng thông tin chi tiết tại Hoa Kỳ Cục Năng lượng Phòng thí nghiệm quốc gia về năng lượng tái tạo và dữ liệu của Cơ quan Môi trường Châu Âu. Cách tính này bao gồm các yếu tố ảnh hưởng đến mức sử dụng nhiên liệu và năng lượng cũng như lượng khí thải CO2, chẳng hạn như:

  • Mức tiêu thụ nhiên liệu hoặc năng lượng trung bình của các xe ở khu vực của bạn
  • Độ dốc của đồi trên tuyến đường
  • Tình hình giao thông di chuyển chậm chạp
  • Các loại đường (chẳng hạn như đường nội đô hoặc đường cao tốc)

Routes API trả về tuyến đường tiết kiệm nhiên liệu hoặc năng lượng nhất khi có xấp xỉ cùng thời gian đến với tuyến đường mặc định. Trong trường hợp nhiên liệu hoặc mức tiết kiệm năng lượng quá nhỏ hoặc làm tăng đáng kể thời gian lái xe, API cho biết mức tiết kiệm nhiên liệu hoặc năng lượng tương đối giữa các tuyến đường để giúp bạn so sánh.

Đọc thêm về công nghệ định tuyến theo hướng thân thiện với môi trường (PDF).

Điều kiện tiên quyết

Cách sử dụng tính năng định tuyến theo hướng thân thiện với môi trường hoặc mức tiêu thụ nhiên liệu ước tính:

  • Bạn phải chỉ định TRAFFIC_AWARE_OPTIMAL làm lựa chọn ưu tiên định tuyến. Trong phần này , máy chủ sẽ thực hiện tìm kiếm toàn diện hơn về mạng lưới đường bộ để để tìm tuyến đường tối ưu. Để biết thêm thông tin, hãy xem Định cấu hình chất lượng và độ trễ.

  • Bạn phải đặt travelMode thành DRIVE. Yêu cầu cho bất kỳ phương tiện đi lại nào khác đều trả về lỗi.

  • Bạn phải đặt vị trí cho điểm tham chiếu gốc trong một khu vực được hỗ trợ. Nếu không, API sẽ trả về lỗi.

  • Tuyến không được chứa điểm tham chiếu trung gian.

Thanh toán

Thông thường, Nền tảng Google Maps không tính phí cho việc sử dụng Bản xem trước của chúng tôi. Tuy nhiên, vì việc định tuyến theo hướng thân thiện với môi trường và việc ước tính mức tiêu thụ nhiên liệu yêu cầu bạn chỉ định TRAFFIC_AWARE_OPTIMAL làm tùy chọn định tuyến, bạn được tính phí dựa trên SKU: Tuyến đường Nâng cao.

Tìm hiểu thêm về cách thanh toán cho Routes API.

Yêu cầu một tuyến đường thân thiện với môi trường

Để yêu cầu tính toán tuyến đường thân thiện với môi trường, hãy đặt các thuộc tính sau trong yêu cầu:

  • Chỉ định emissionType cho xe bằng cách sử dụng các giá trị được xác định trong VehicleEmissionType: DIESEL, GASOLINE, ELECTRIC hoặc HYBRID. Giá trị mặc định là GASOLINE.

  • Đặt requestedReferenceRoutes thành FUEL_EFFICIENT.

  • Đặt mặt nạ trường phản hồi chỉ định trả về các thuộc tính phản hồi liên kết với tuyến đường thân thiện với môi trường:

    • routes.routeLabels: Xác định mỗi tuyến là DEFAULT_ROUTE, FUEL_EFFICIENT hoặc DEFAULT_ROUTE_ALTERNATE.

    • routes.routeToken: Mã thông báo tuyến đường mà bạn có thể truyền đến SDK điều hướng để truy xuất tuyến đường tùy chỉnh.

Ví dụ về yêu cầu thân thiện với môi trường

Đoạn mã sau đây cho thấy một yêu cầu về tuyến đường thân thiện với môi trường. Trong ví dụ này, bạn sử dụng mặt nạ trường phản hồi để trả về các thuộc tính phản hồi liên kết với một tuyến đường thân thiện với môi trường cùng với routes.distanceMeters và Thuộc tính 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'

Ví dụ về phản hồi thân thiện với môi trường

Lệnh gọi computeRoutes ở trên tạo ra phản hồi JSON có chứa hai tuyến: tuyến đường mặc định và tuyến đường tiết kiệm nhiên liệu. Trong câu trả lời:

  • Đối với tuyến mặc định, thuộc tính mảng routeLabels chứa DEFAULT_ROUTE

  • Đối với tuyến đường thân thiện với môi trường, thuộc tính mảng routeLabels chứa FUEL_EFFICIENT

  • Nếu bạn đặt computeAlternativeRoutes trong yêu cầu thành true để tính toán các tuyến thay thế, thuộc tính mảng routeLabels chứa DEFAULT_ROUTE_ALTERNATE.

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

Do điều kiện lái xe hiện tại và các yếu tố khác, tuyến đường mặc định và tuyến đường thân thiện với môi trường cũng có thể giống như vậy. Trong trường hợp này, routeLabels chứa cả hai nhãn: DEFAULT_ROUTEFUEL_EFFICIENT:

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

Ước tính mức sử dụng nhiên liệu cho tuyến đường

Bạn có thể yêu cầu phương thức này để trả về mức sử dụng nhiên liệu ước tính cho toàn bộ đường đi, tính bằng microlit. Để thêm mức sử dụng nhiên liệu ước tính cho một tuyến đường vào trả lời:

  • Đặt trường mảng extraComputations thành FUEL_CONSUMPTION để bật tính toán mức sử dụng nhiên liệu.

  • Chỉ định emissionType cho xe bằng cách sử dụng các giá trị được xác định trong VehicleEmissionType: DIESEL, GASOLINE, ELECTRIC hoặc HYBRID. Giá trị mặc định là GASOLINE.

    Nếu emissionTypeHYBRID, API sẽ chuyển đổi điện và nhiên liệu mức tiêu thụ tính bằng microlit nhiên liệu.

    Nếu emissionTypeELECTRIC, API sẽ chuyển đổi điện mức tiêu thụ tính bằng microlit nhiên liệu.

  • Đặt mặt nạ trường phản hồi chỉ định trả về các thuộc tính phản hồi liên quan đến mức sử dụng nhiên liệu: routes.travelAdvisory.fuelConsumptionMicroliters.

Ví dụ sau đây yêu cầu mức sử dụng nhiên liệu ước tính trong một yêu cầu cũng bao gồm tuyến đường thân thiện với môi trường:

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'

Phản hồi này chứa mức tiêu thụ nhiên liệu ước tính cho cả tuyến đường mặc định và tuyến đường thân thiện với môi trường:

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

Khu vực được hỗ trợ

Nhóm Nền tảng Google Maps đang liên tục làm việc để cải tiến quốc tế mức độ phù hợp cho các dịch vụ API của chúng tôi. Danh sách sau đây trình bày những tin tức mới nhất thông tin chi tiết theo từng quốc gia để định tuyến theo hướng thân thiện với môi trường:

  • Albani (AL)
  • Áo (AT)
  • Bỉ (BE)
  • Bosnia và Herzegovina (BA)
  • Bungari (BG)
  • Canada (CA)
  • Croatia (HR)
  • Síp (CY)
  • Cộng hoà Séc (CZ)
  • Đan Mạch (DK)
  • Estonia (EE)
  • Phần Lan (FI)
  • Pháp (FR)
  • Đức (DE)
  • Hy Lạp (GR)
  • Hungary (HU)
  • Iceland (IS)
  • Ireland (IE)
  • Ý (IT)
  • Tiếng Kosovo (XK)
  • Latvia (LV)
  • Liechtenstein (LI)
  • Lithuania (LT)
  • Luxembourg (LU)
  • Malta (MT)
  • Montenegro (ME)
  • Hà Lan (NL)
  • Bắc Macedonia (MK)
  • Na Uy (NO)
  • Ba Lan (PL)
  • Bồ Đào Nha (PT)
  • Romania (RO)
  • Tiếng Serbia (RS)
  • Slovakia (SK)
  • Slovenia (SI)
  • Tây Ban Nha (ES)
  • Thuỵ Điển (SE)
  • Thuỵ Sĩ (CH)
  • Thổ Nhĩ Kỳ (TR)
  • Vương Quốc Anh (GB)
  • Hoa Kỳ (US)