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:

Các 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 thuộc tính

Để hỗ trợ các tính năng mới này, danh sách thuộc tính sẽ được thêm vào Android 14. Các tùy chọn đó đượ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

Giao diện thiết kế

Các giao diện thiết kế sau đây được áp dụng cho các tài sản mới 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.
TÌNH TRẠNG
  • Các thuộc tính để thông báo trạng thái 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 thuộc tính.
  • Loại vùng Mirror (Phản chiếu) hoặc Global (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 bắt buộc phải có hoạt động đầ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 biệt.
  • Các thuộc tính khác cần hỗ trợ:
    • Các biến thể tính năng (nếu có).
    • Điều chỉnh chế độ cài đặt của 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 tập hợp con các tính năng ADAS được hỗ trợ để minh hoạ cách các thuộc tính đi kèm hoạt động cùng nhau. Chúng tôi đã cung cấp ví dụ về các tính năng sau.

  • Phanh tự động trong trường hợp khẩn cấp (AEB)
  • Hỗ trợ căn giữa làn đường (LCA)
  • Phát hiện khi cầm thiết bị (HOD)

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

Có 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 cung cấp ví dụ về AEB khi trạng thái USER_OVERRIDE không được hỗ trợ. Bạn phải chỉ định các trạng thái được hỗ trợ thông qua API getSupportedEnumValues() trong AreaIdConfig.java.

    AEB khi người dùng ghi đè trạng thái 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ạ ở Hình 4, lỗi khiến AEB không sử dụng được được làm nổi bật. Điều này minh hoạ cách sử dụng các giá trị được xác định trong ErrorState.aidl. Các lỗi này không dẫn đến trường hợp ngoại lệ do CarPropertyManager gửi mà thay vào đó, các lỗi này đượ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ỗ trợ căn giữa làn đường

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

    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 được hỗ trợ. Các đường màu xanh lục có thể là một lệnh được khởi tạo 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 sự thay đổi về 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 lanCenteringAssistState.aidl.

    Ví dụ về LCA này nêu bật một lỗi khiến LCA không hoạt động. Đ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 khiến CarPropertyManager gửi lỗi mà thay vào đó được chia sẻ với các ứng dụng theo cách tương tự như các 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 thực tế

    Ba thuộc tính liên kết này được xác định để phát hiện trong thực tế (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ụ về HOD, trong đó tất cả các trạng thái đã xác định trong HandsOnDetectionDriverState.aidl đều được hỗ trợ.

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

    Hình 7. HOD khi tất 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, 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ợ.