esmini là gì
esmini là OpenSCENARIO player mã nguồn mở, ra đời từ dự án nghiên cứu chung “Simulation Scenarios” của Thụy Điển (khởi động năm 2018). Được sử dụng rộng rãi như một reference implementation nhẹ cho OpenSCENARIO 1.x — dễ đọc code, dễ tích hợp, hành vi dự đoán được. License MPL-2.0, hỗ trợ Windows / macOS / Linux / Android.
Chức năng
Phần tiêu đề “Chức năng”Nói ngắn gọn, esmini làm những việc sau:
- Đọc file
.xosctheo OpenSCENARIO 1.x. - Đọc file
.xodrtheo OpenDRIVE được tham chiếu từ đó. - Thực thi Storyboard, di chuyển entity theo trajectory và controller, xuất trạng thái kết quả.
Đây không phải full simulator vật lý như CARLA hay LGSVL. Đây là player nhẹ để “phát lại kịch bản OpenSCENARIO đúng như định nghĩa” — đó chính là giá trị cốt lõi.
Tại sao esmini quan trọng
Phần tiêu đề “Tại sao esmini quan trọng”esmini thực tế là đại diện tiêu biểu nhất trong mã nguồn mở có thể phát lại OpenSCENARIO 1.x một cách trực tiếp. Do đó, với các công cụ xuất OpenSCENARIO, “có phát được trên esmini không” là cách kiểm tra nhanh liệu đầu ra có đúng không.
Nhiều công cụ xuất file ASAM thường kiểm tra với esmini trước khi phát hành — ví dụ tài liệu RoadRunner có ghi “tương thích với CARLA, esmini, IPG CarMaker và bất kỳ simulator tuân thủ OpenSCENARIO nào khác”.
Những gì cần cung cấp cho esmini
Phần tiêu đề “Những gì cần cung cấp cho esmini”Tối thiểu cần:
.xosc(file OpenSCENARIO chính).xodr(mạng đường OpenDRIVE được tham chiếu bởi.xosc)- Tùy chọn:
.osgb(cho 3D viewer) hoặc thư mụcModels/chứa model phương tiện tùy chỉnh
Đóng gói chúng thành zip để có thể phát lại cùng kịch bản trên máy khác hoặc trong CI. Cấu trúc này thường được gọi là “esmini bundle”.
Quan hệ với drawtonomy
Phần tiêu đề “Quan hệ với drawtonomy”drawtonomy có thể xuất file zip gồm .xosc + .xodr + run.sh. Với cài đặt esmini tiêu chuẩn, giải nén là phát ngay:
unzip <name>.zipesmini --osc <name>/<name>.xosc --window 60 60 1024 768Tuy nhiên cần lưu ý:
- Exporter của drawtonomy chỉ bao phủ một phần OpenSCENARIO 1.3 và OpenDRIVE 1.8. Trigger có điều kiện, quét tham số, Storyboard phức tạp, junction OpenDRIVE — hiện chưa được xuất.
- Model phương tiện dùng model tích hợp sẵn của esmini, không cần chuẩn bị
.osgbriêng. - Nên coi đầu ra là “để xem nhanh và cảm nhận” chứ không phải kịch bản hoàn chỉnh. Kịch bản quy mô lớn hoặc kiểm tra có tham số cần viết XML tay hoặc dùng thư viện Python.