Thuộc tính xe ADAS

Chúng tôi đã thêm các thuộc tính ADAS mới sau đây vào Android 14:

Những chức năng mới này được minh hoạ trong hình sau.

Các tính năng ADAS được hỗ trợ

Hình 1. Các tính năng ADAS được hỗ trợ.

Danh sách các cơ sở lưu trú

Để hỗ trợ những tính năng mới này, một danh sách các thuộc tính sẽ được thêm vào Android 14. Các yêu cầu này được liệt kê bên dưới.

Thuộc tính
ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP
ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_DISTANCE

AUTOMATIC_EMERGENCY_BRAKING_ENABLED
AUTOMATIC_EMERGENCY_BRAKING_STATE

BLIND_SPOT_WARNING_ENABLED
BLIND_SPOT_WARNING_STATE

CRUISE_CONTROL_ENABLED
CRUISE_CONTROL_TYPE
CRUISE_CONTROL_STATE
CRUISE_CONTROL_COMMAND
CRUISE_CONTROL_TARGET_SPEED

EMERGENCY_LANE_KEEP_ASSIST_ENABLED
EMERGENCY_LANE_KEEP_ASSIST_STATE
FORWARD_COLLISION_WARNING_ENABLED
FORWARD_COLLISION_WARNING_STATE

HANDS_ON_DETECTION_ENABLED
HANDS_ON_DETECTION_DRIVER_STATE
HANDS_ON_DETECTION_WARNING

LANE_DEPARTURE_WARNING_ENABLED
LANE_DEPARTURE_WARNING_STATE

LANE_KEEP_ASSIST_ENABLED
LANE_KEEP_ASSIST_STATE

LANE_CENTERING_ASSIST_ENABLED
LANE_CENTERING_ASSIST_COMMAND
LANE_CENTERING_ASSIST_STATE

Thiết kế giao diện

Các chủ đề thiết kế sau đây được áp dụng cho những tài sản mới được thêm.

Thuộc tính Mô tả
ĐANG BẬT
  • Các thuộc tính cho biết liệu một tính năng có được bật hay tắt.
  • Các thuộc tính Boolean trong đó true được bật và false bị tắt.
  • Các thuộc tính ReadWrite có thể được triển khai dưới dạng Read-only.
STATE
  • Các thuộc tính để truyền đạt trạng thái của tính năng thông qua danh sách các trạng thái được xác định trước.
  • Thuộc tính Int32 có enum được xác định.
  • Trường OTHER để hỗ trợ khả năng tương thích ngược.
  • Read-only cơ sở lưu trú.
  • Loại vùng phản chiếu hoặc toàn cầu.
  • Sử dụng các giá trị được xác định trong ErrorStates.aidl.
  • Sử dụng API getSupportedEnumValues() trong AreaIdConfig.java.
Khác
  • Thuộc tính COMMAND cho các tính năng khi cần có thông tin đầu vào của người dùng.
  • Thuộc tính WARNING cho trường hợp trạng thái có thể được biểu thị riêng.
  • Các thuộc tính khác cần hỗ trợ:
    • Các biến thể của tính năng (nếu có).
    • Điều chỉnh chế độ cài đặt tính năng (nếu có).

Ví dụ về sơ đồ trạng thái

Phần này cung cấp sơ đồ trạng thái cho một nhóm nhỏ các tính năng ADAS được hỗ trợ để minh hoạ cách các thuộc tính được đưa vào hoạt động cùng nhau. Chúng tôi đã cung cấp ví dụ về các tính năng sau.

  • Hệ thống phanh khẩn cấp tự động (AEB)
  • Hệ thống hỗ trợ giữ làn đường (LCA)
  • Phát hiện có người cầm (HOD)

Phanh khẩn cấp tự động

Hai thuộc tính được xác định cho AEB như mô tả trong bảng này.

Thuộc tính Giá trị
AUTOMATIC_EMERGENCY_BRAKING_ENABLED VehiclePropertyType:BOOLEAN

AUTOMATIC_EMERGENCY_BRAKING_STATE

Được xác định trong AutomaticEmergencyBrakingState.aidl.

VehiclePropertyType:INT32

  • OTHER
  • ENABLED
  • ACTIVATED
  • USER_OVERRIDE
  • ErrorState
  • Sơ đồ trạng thái mẫu sau đây cho AEB bao gồm các trạng thái được hỗ trợ được xác định trong AutomaticEmergencyBrakingState.aidl.

    Các trạng thái AEB được xác định trong AutomaticEmergencyBrakingState.aidl

    Hình 2. Các trạng thái AEB được xác định trong AutomaticEmergencyBrakingState.aidl.

    Hình này minh hoạ ví dụ về AEB khi trạng thái USER_OVERRIDE không được hỗ trợ. Bạn nên chỉ định các trạng thái được hỗ trợ thông qua API getSupportedEnumValues() trong AreaIdConfig.java.

    AEB khi trạng thái ghi đè của người dùng không được hỗ trợ

    Hình 3. AEB khi trạng thái USER_OVERRIDE không được hỗ trợ.

    Trong ví dụ về AEB minh hoạ trong Hình 4, lỗi khiến AEB không hoạt động được đánh dấu. Điều này minh hoạ cách sử dụng các giá trị được xác định trong ErrorState.aidl. Những lỗi này không dẫn đến một ngoại lệ do CarPropertyManager đưa ra và thay vào đó, được chia sẻ với các ứng dụng theo cách tương tự như mọi thay đổi khác đối với CarPropertyValue.

    Lỗi khiến AEB không hoạt động

    Hình 4. Lỗi khiến AEB không hoạt động.

    Hệ thống hỗ trợ giữ làn đường

    Hệ thống hỗ trợ giữ làn đường (LCA) cung cấp 3 thuộc tính được xác định và liên kết.

    Thuộc tính Giá trị
    LANE_CENTERING_ASSIST_ENABLED VehiclePropertyType:BOOLEAN

    LANE_CENTERING_ASSIST_STATE

    Được xác định trong LaneCenteringAssistState.aidl

    VehiclePropertyType:INT32

    • OTHER
    • ENABLED
    • ACTIVATION_REQUESTED
    • ACTIVATED
    • USER_OVERRIDE
    • FORCED_DEACTIVATION_WARNING
    • ErrorState

    LANE_CENTERING_ASSIST_COMMAND

    Được xác định trong LaneCenteringAssistCommand.aidl

    VehiclePropertyType:INT32

    • ACTIVATE
    • DEACTIVATE

    Sơ đồ trạng thái sau đây minh hoạ LCA khi tất cả các trạng thái được xác định trong LaneCenteringAssistState.aidl đều được hỗ trợ. Đường màu xanh lục có thể là một lệnh được bắt đầu từ LANE_CENTERING_ASSIST_COMMAND (khi được triển khai) hoặc được bắt đầu thông qua một cơ chế khác trong xe và phản ánh một thay đổi trạng thái trên Android Automotive OS (AAOS).

    Các trạng thái LCA được xác định trong LaneCenteringAssistState.aidl

    Hình 5. Các trạng thái LCA được xác định trong LaneCenteringAssistState.aidl.

    Ví dụ về LCA này nêu bật một lỗi khiến LCA không hoạt động. Ví dụ này minh hoạ cách sử dụng các giá trị được xác định trong ErrorState.aidl. Những lỗi này không khiến CarPropertyManager gặp lỗi và thay vào đó, được chia sẻ với các ứng dụng theo cách tương tự như những thay đổi khác đối với thay đổi CarPropertyValue.

     Lỗi khiến LCA không hoạt động.

    Hình 6. Lỗi khiến LCA không hoạt động.

    Phát hiện khi cầm trên tay

    Ba thuộc tính liên kết này được xác định cho tính năng phát hiện tương tác (HOD).

    Thuộc tính Mô tả
    HANDS_ON_DETECTION_ENABLED VehiclePropertyType:BOOLEAN

    HANDS_ON_DETECTION_STATE

    Được xác định trong HandsOnDetectionDriverState.aidl

    VehiclePropertyType:INT32

    • OTHER
    • HANDS_ON
    • HANDS_OFF
    • ErrorState

    HANDS_ON_DETECTION_WARNING

    Được xác định trong HandsOnDetectionWarning.aidl

    VehiclePropertyType:INT32

    • OTHER
    • NO_WARNING
    • WARNING
    • ErrorState

    Dưới đây là ví dụ minh hoạ về HOD, trong đó tất cả các trạng thái được xác định trong HandsOnDetectionDriverState.aidl đều được hỗ trợ.

    HOD khi tất cả các trạng thái được xác định trong HandsOnDetectionDriverState.aidl đều được hỗ trợ.

    Hình 7. HOD khi tất cả các trạng thái được xác định trong HandsOnDetectionDriverState.aidl đều được hỗ trợ.

    Ngoài thuộc tính HANDS_ON_DETECTION_STATE, HOD cũng cung cấp một thuộc tính cảnh báo riêng là HANDS_ON_DETECTION_WARNING. Sơ đồ trạng thái cho các giá trị cảnh báo HOD được minh hoạ trong Hình 8.

    Giá trị cảnh báo HOD

    Hình 8. HOD khi tất cả các giá trị được xác định trong HandsOnDetectionWarning.aidl đều được hỗ trợ.