Tệp Định nghĩa Mạng Lộ trình (RNDF) cho Xe tự lái là gì

May 10 2022
Một trong 4 phần cốt lõi của ngăn xếp Phần mềm tự lái ô tô là Lập kế hoạch. Và RNDF hoặc Tệp Định nghĩa Mạng Định tuyến là thứ đầu tiên PLANNING sử dụng.

Một trong 4 phần cốt lõi của ngăn xếp Phần mềm tự lái ô tô là Lập kế hoạch. Và RNDF hoặc Tệp Định nghĩa Mạng Định tuyến là thứ đầu tiên PLANNING sử dụng.

RNDF là một tệp ASCII được phân tách bằng tab. Về cơ bản, nó xác định các Đoạn đường và Khu vực.

Định dạng điển hình của tệp RNDF trông giống như sau.

Tên tệp RNDF_name (chuỗi)

num_searies number_of_searies (số nguyên> 0)

num_zones number_of_zones (integer≥ 0)

format_version format_version (chuỗi)

create_date create_date (string)

<phân đoạn 1>

.

.

<đoạn M>

<vùng M + 1>

.

.

<vùng M + N>

end_file

Chỉ cần nhìn vào định dạng, chúng ta có thể thấy rõ ràng rằng tệp RNDF chứa thông tin chi tiết về các phân đoạn và vùng. Đây là một ví dụ về đoạn đường

Hình 1: Một đoạn đường (Đoạn M) bao gồm hai làn xe. Các làn đường không nhất thiết phải có cùng một số điểm tham chiếu. (https://www.grandchallenge.org/grandchallenge/docs/RNDF_MDF_Formats_031407.pdf)

Bây giờ chúng ta hãy xem xét định dạng của mỗi phân đoạn. Nó sẽ bắt đầu có ý nghĩa ngay bây giờ

phân đoạn_id (số nguyên> 0)

num_lanes number_of_lanes (số nguyên> 0)

segment_name segment_name (string)

<ngõ 1>

.

.

<ngõ n>

end_segment

Nhưng nó không hoàn chỉnh Chỉ nhìn vào Hình 1, chúng ta thấy rằng cần phải xác định thêm nhiều thông tin. Giống như lane_width cung cấp chiều rộng của làn đường tính bằng feet . Chúng ta cũng cần xác định số lượng điểm tham chiếu và vị trí của chúng. Chúng ta cần điểm kiểm tra chỉ ra rằng điểm tham chiếu là một điểm kiểm tra được đặt tên. Từ khóa dừng cho biết một điểm tham chiếu được liên kết với một dấu hiệu dừng. Theo sau từ khóa exit là tên của exit_waypoint và entry_waypoint liên quan hoặc entry_perimeterpoint được liên kết với làn đường. Một làn đường có thể có nhiều trạm kiểm soát, biển báo dừng, điểm vào lối vào, điểm chu vi lối vào hoặc điểm lối ra. Của bạn đây:

lane lane_id (xy; x, y∈ integer> 0)

num_waypoints number_of_waypoints (số nguyên> 0)

lane_width lane_width (số nguyên≥ 0)

left_boundary left_boundary (string ∈ {double_yellow, solid_yellow, solid_white, break_white})

right_boundary right_boundary (string∈ {double_yellow, solid_yellow, solid_white, break_white})

điểm kiểm tra điểm tham chiếu (xyz; x, y, z∈ số nguyên> 0) điểm kiểm tra (số nguyên> 0) điểm dừng điểm tham chiếu (xyz; x, y, z∈ số nguyên> 0)

thoát exit_waypoint (waypoint_id) entry_waypoint (waypoint_id)

thoát exit_waypoint (waypoint_id)

entry_perimeterpoint (perimeterpoint_id)

<điểm 1>

.

.

<điểm tham chiếu n>

end_lane

Trong tab <waypoint> , điểm tham chiếu được xác định như sau. Các trường kinh độ và vĩ độ là các điểm cố định với sáu chữ số thập phân và thể hiện các vị trí điểm tham chiếu theo độ thập phân,

waypoint_id (xyz; x, y, z∈ số nguyên> 0) vĩ độ (cố định) kinh độ (cố định)

Bây giờ bạn có thể biết tại sao có quá nhiều mục nhập, thoát và dừng điểm tham chiếu. Bởi vì một đoạn có thể nhập với một đoạn đường khác hoặc một làn đường trong một đoạn đường có thể có đường cụt. Chúng ta cần biết điều đó để lập kế hoạch quay đầu xe và các thao tác đặc biệt khác

Đây là một ví dụ về một phân đoạn hoàn chỉnh

Hình 2: Điểm giao nhau của biển báo dừng của Đoạn 2 và Đoạn 1. Chấm đỏ là điểm thoát, chấm xanh là điểm vào và chấm xanh là các điểm khác. (https://www.grandchallenge.org/grandchallenge/docs/RNDF_MDF_Formats_031407.pdf)

Một lần nữa quay trở lại tệp gốc, chúng ta có thể thấy rằng có một phân đoạn khác cho Zone.

Nhưng khu là gì. Đây là một ví dụ về Zone.

Hình 3: Vùng M chứa các chướng ngại vật có thể đang di chuyển hoặc đứng yên nhưng không xác định được vị trí của chúng. Các chấm màu vàng, xanh lam và đỏ tạo ra vùng đa giác là các điểm theo chu vi, một số cũng là điểm vào và ra của các phân đoạn liền kề. Đường chấm chấm hiển thị một trong nhiều đường đi có thể có. (Https://www.grandchallenge.org/grandchallenge/docs/RNDF_MDF_Formats_031407.pdf)

Một khu vực có thể đỗ xe hoặc khu vực xây dựng hoặc thậm chí là một món tráng miệng. Chúng ta hãy xem xét Khu vực điểm đỗ xe và cách các phân đoạn khác nhau có thể được kết nối với khu vực đó.

Hình 5: Điểm đỗ xe dưới dạng khu vực. (https://www.grandchallenge.org/grandchallenge/docs/RNDF_MDF_Formats_031407.pdf)

vùng zone_id (số nguyên> 0)

num_spots number_of_parking spot (integer≥0)

zone_name zone_name (string)

<máy đo>

<vị trí tùy chọn 1>

.

.

<vị trí tùy chọn N>

end_zone

Bây giờ có thể bạn đang hiểu cách toàn bộ tệp RNDF được định dạng. Vì vậy, chúng ta hãy phân tích phần cuối cùng.

chu vi chu vi chu vi (x.0; x∈ integer> 0)

num_perimeterpoints number_of_perimeterpoints (số nguyên> 0)

thoát exit_perimeterpoint (perimeterpoint_id) entry_waypoint (waypoint_id)

<perimeterpoint>

perimeterpoint_id (x.0.z; x, z∈ integer> 0) vĩ độ (cố định) kinh độ (cố định)

Và cả phần tại chỗ

spot_id spot (xy; x, y∈ integer> 0)

spot_width spot_width (số nguyên> 0)

checkpoint waypoint_id (xyz; x, y, z∈ integer> 0) checkpoint_id (số nguyên> 0)

end_spot

Hy vọng rằng bây giờ đã rõ ràng làm thế nào chúng ta có thể viết tệp RNDF của riêng mình và đặt nó vào ô tô của chúng tôi để điều hướng thành công.

© Copyright 2021 - 2022 | vngogo.com | All Rights Reserved