Theo mặc định, Routes API sẽ trả về tuyến đường mặc định, tức là tuyến đường không tính đến mức tiết kiệm nhiên liệu hoặc năng lượng. Khi bật tính năng chọn tuyến đường thân thiện với môi trường, bạn vẫn nhận được tuyến đường mặc định trong phản hồi. Ngoài ra, bạn cũng nhận được một tuyến đường thân thiện với môi trường, cho biết 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á để giảm mức tiêu thụ nhiên liệu trên toàn bộ tuyến đường. API này sử dụng loại động cơ xe của bạn cùng với các yếu tố khác như tình hình giao thông theo thời gian thực và tình trạng đường để 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, mức sử dụng nhiên liệu/năng lượng và lượng khí thải CO2 của xe càng thấp.
Ví dụ: ưu điểm tiết kiệm nhiên liệu tương đối của xe chạy bằng dầu diesel thường đạt mức lớn nhất khi bạn lái xe trên đường cao tốc. Xe lai điện và xe điện có xu hướng tiết kiệm hơn trong thành phố khi bạn không thể di chuyển với tốc độ ổn định và khi lái xe trên đồi dốc cần thường xuyên sử dụng phanh tái sinh.
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. Hãy sử dụng thông tin ước tính về mức tiêu thụ nhiên liệu để so sánh các tuyến đường, chứ không phải để ước tính mức tiêu thụ nhiên liệu chính xác cho xe của bạn.
Cách Google Maps ước tính hiệu suất nhiên liệu
Routes API ước tính hiệu suất nhiên liệu dựa trên thông tin chi tiết của Phòng thí nghiệm quốc gia về năng lượng tái tạo của Bộ Năng lượng Hoa Kỳ và dữ liệu của Cơ quan Môi trường Châu Âu. Cách tính này xét tới những 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 tuyến đường đó có thời gian đến gần như cùng lúc với tuyến đường mặc định. Trong trường hợp mức tiết kiệm nhiên liệu hoặc năng lượng quá nhỏ hoặc khiến thời gian lái xe tăng lên đáng kể, API sẽ hiển thị mức tiết kiệm năng lượng hoặc nhiên liệu 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 ước tính mức tiêu thụ nhiên liệu:
Bạn phải chỉ định
TRAFFIC_AWARE_OPTIMALlàm lựa chọn ưu tiên về định tuyến. Ở chế độ này, máy chủ sẽ thực hiện tìm kiếm kỹ lưỡng hơn trên mạng lưới đường để tìm ra tuyến đường tối ưu. Để biết thêm thông tin, hãy xem phần Định cấu hình chất lượng so với độ trễ.Bạn phải đặt
travelModethànhDRIVEhoặcTWO_WHEELER. Yêu cầu về bất kỳ phương thức di chuyển nào khác đều trả về lỗi. Tính năng chọn tuyến đường thân thiện với môi trường choTWO_WHEELERchỉ được hỗ trợ ở một số quốc gia.Bạn phải đặt vị trí cho điểm tham chiếu xuất phát ở một khu vực được hỗ trợ. Nếu không, API sẽ trả về lỗi.
Đối với
TWO_WHEELER, bạn phải đặt vị trí cho điểm tham chiếu xuất phát ở một khu vực được hỗ trợ xe hai bánh. Nếu không, API sẽ trả về lỗi.Tuyến đường không được chứa điểm tham chiếu trung gian.
Thanh toán
Thông thường, Google Maps Platform không tính phí khi bạn sử dụng tính năng Xem trước. Tuy nhiên, vì tính năng chọn tuyến đường thân thiện với môi trường và ướ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 lựa chọn ưu tiên về tuyến đường, nên bạn sẽ bị tính phí dựa trên SKU: Compute Routes Pro.
Tìm hiểu thêm về thông tin thanh toán cho Routes API.
Yêu cầu tuyến đường thân thiện với môi trường
Để gửi 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
emissionTypecho xe bằng cách sử dụng các giá trị được xác định trong VehicleEmissionType:DIESEL,GASOLINE,ELECTRIChoặcHYBRID. Giá trị mặc định làGASOLINE.Đặt
requestedReferenceRoutesthànhFUEL_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 đường làDEFAULT_ROUTE,FUEL_EFFICIENThoặcDEFAULT_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 một tuyến đường tuỳ 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 các thuộc tính routes.distanceMeters và
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ề câu trả lời thân thiện với môi trường
Lệnh gọi computeRoutes ở trên tạo ra một phản hồi JSON chứa hai tuyến đường: tuyến đường mặc định và tuyến đường tiết kiệm nhiên liệu. Trong phản hồi:
Đối với tuyến mặc định, thuộc tính mảng
routeLabelschứaDEFAULT_ROUTE.Đối với tuyến đường thân thiện với môi trường, thuộc tính mảng
routeLabelschứaFUEL_EFFICIENT.Nếu bạn đặt
computeAlternativeRoutestrong yêu cầu thànhtrueđể tính toán tuyến đường thay thế, thì thuộc tính mảngrouteLabelssẽ chứaDEFAULT_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ó thể giống nhau. Trong trường hợp này, routeLabels chứa cả hai nhãn: DEFAULT_ROUTE và FUEL_EFFICIENT:
{ "routes": [ { "distanceMeters": 45875, "duration": "2655s", "routeToken": "CvcDCos…6I40", "routeLabels": [ "DEFAULT_ROUTE", "FUEL_EFFICIENT" ] } ] }
Ước tính mức tiêu thụ 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ộ tuyến đường, tính bằng microlit. Cách thêm mức sử dụng nhiên liệu ước tính cho một tuyến đường vào phản hồi:
Đặt trường mảng
extraComputationsthànhFUEL_CONSUMPTIONđể bật tính năng tính toán mức tiêu thụ nhiên liệu.Chỉ định
emissionTypecho xe bằng cách sử dụng các giá trị được xác định trong VehicleEmissionType:DIESEL,GASOLINE,ELECTRIChoặcHYBRID. Giá trị mặc định làGASOLINE.Nếu
emissionTypelàHYBRID, API sẽ chuyển đổi mức tiêu thụ điện và nhiên liệu thành microlit nhiên liệu.Nếu
emissionTypelàELECTRIC, API sẽ chuyển đổi mức tiêu thụ điện thành microlit nhiên liệu.Đặt mặt nạ trường phản hồi chỉ định việc 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 tiêu thụ 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 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 Google Maps Platform không ngừng nỗ lực để cải thiện phạm vi cung cấp dịch vụ API trên toàn cầu. Danh sách sau đây cho biết thông tin mới nhất về phạm vi cung cấp tính năng chọn tuyến đường thân thiện với môi trường theo từng quốc gia:
- Albania (AL)
- Úc (AU)
- Áo (AT)
- Bỉ (BE)
- Bosnia và Herzegovina (BA)
- Bulgaria (BG)
- Canada (CA)
- Croatia (HR)
- Síp (CY)
- Czechia (CZ)
- Đan Mạch (DK)
- Ai Cập (EG)
- Estonia (EE)
- Phần Lan (FI)
- Pháp (FR)
- Đức (DE)
- Hy Lạp (GR)
- Hungary (HU)
- Iceland (IS)
- Ấn Độ (IN)
- Indonesia (ID)
- Ireland (IE)
- Ý (IT)
- Kosovo (XK)
- Latvia (LV)
- Liechtenstein (LI)
- Lithuania (LT)
- Luxembourg (LU)
- Malta (MT)
- Mexico (MX)
- Montenegro (ME)
- Hà Lan (NL)
- Bắc Macedonia (MK)
- Na Uy (NO)
- Ba Lan (PL)
- Bồ Đào Nha (PT)
- Romania (RO)
- Ả Rập Xê Út (SA)
- Serbia (RS)
- Slovakia (SK)
- Slovenia (SI)
- Tây Ban Nha (ES)
- Thuỵ Điển (SE)
- Thuỵ Sĩ (CH)
- Thổ Nhĩ Kỳ (TR)
- Các Tiểu vương quốc Ả Rập Thống nhất (AE)
- Vương Quốc Anh (GB)
- Hoa Kỳ (US)
Khu vực được hỗ trợ xe hai bánh
Danh sách sau đây cho thấy thông tin mới nhất về phạm vi cung cấp tính năng chọn tuyến đường thân thiện với môi trường cho xe hai bánh theo từng quốc gia:
- Ấn Độ (IN)
- Indonesia (ID)