Biên dịch
Cài đặt các thành phần Qt5 Core và Network. Lệnh cài đặt thay đổi tùy theo bản phân phối Linux; ví dụ sau sử dụng Ubuntu:libzip từ trang tải xuống libzip theo hướng dẫn chính thức.
Biên dịch gói ROS từ /V2-ROS-SDK-service, nằm cùng cấp với src:
Chạy
Từhome/username/V2_ROS_SDK, nằm cùng cấp với src, chạy:
Giao diện topic ROS
Trước khi kiểm tra giao diện, hãy bật camera và chờ khoảng 30 giây để chương trình tích hợp khởi động. Sau đó khởi động node ROS SDK.Nhận pose định vị
ROS liên tục nhận các giá trịx, y và theta của camera, xuất các giá trị này cùng quaternion được chuyển đổi từ theta tới LxCamera_LocationPoseResult, đồng thời phát pose qua TF.
Nhận trạng thái định vị
ROS nhận trạng thái định vị của camera (true hoặc false) ở tần số 1 Hz và xuất trạng thái dưới dạng std_msgs::Bool trên LxCamera_LocationResult.
Nhận mức sử dụng bộ nhớ của camera
ROS nhận tỷ lệ sử dụng bộ nhớ của camera ở tần số 2 Hz và xuất dưới dạngstd_msgs::Float32 trên LxCamera_Capacity_Status.
Nhận tên mô-đun lỗi
ROS nhận tên mô-đun lỗi từ camera và xuất dưới dạngstd_msgs::String trên LxCamera_Module_Error.
Nhận trạng thái lập bản đồ
Sau khi bắt đầu lập bản đồ, ROS xuất trạng thái lập bản đồ dưới dạngstd_msgs::Bool trên LxCamera_MappingState.
Nhận tiến trình lập bản đồ
Sau khi bắt đầu lập bản đồ, ROS xuất tiến trình lập bản đồ (0–100) dưới dạng std_msgs::Int32 trên LxCamera_Mapping_Progress.
Đặt tham số
Xuất messagestd_msgs/String tới LxCamera_SetParam. Message chứa chín giá trị số thực được phân tách bằng dấu phẩy: x,y,z,yaw,pitch,roll,x,y,yaw. Sáu giá trị đầu xác định pose của camera; ba giá trị cuối xác định pose LiDAR. Sau khi cập nhật thành công, các giá trị tương ứng trong các phần [Laser1] và [Camera1] của /home/fr1511b/hontai/params/config_install_FL21500HAF.ini sẽ được cập nhật.
Chuyển đổi bản đồ
Xuất messagestd_msgs/String chứa tên của một bản đồ đã hoàn tất tới LxCamera_SwitchMap. Làm mới giao diện web của camera. Nếu tên bản đồ hiển thị thay đổi, việc chuyển đổi đã thành công.
Tải lên odometry
- Xuất dữ liệu
nav_msgs::Odometrytới/sim/odom(có thể thay đổi topic).
Tải xuống bản đồ đường bao
- Xuất message
std_msgs/StringtớiLxCamera_DownloadMap. - Message chứa đường dẫn tuyệt đối trên máy tính chủ và tên bản đồ, được phân tách bằng dấu phẩy. Tên bản đồ là tên tệp
.zipcủa một bản đồ đã hoàn tất trên camera. - Sau khi tải xuống thành công, đường dẫn máy tính chủ được chỉ định sẽ chứa tệp lưu trữ bản đồ. Giải nén tệp để lấy tệp bản đồ
PGMvà tệp cấu hìnhYAML.
Tải lên tệp ZIP bản đồ (mới)
- Xuất message
std_msgs/StringtớiLxCamera_UploadMapZip. - Message chứa đường dẫn tới tệp lưu trữ bản đồ cần tải lên, ví dụ
/home/fr1511b/map.zip. Sử dụng tệp lưu trữ đã tải xuống qua giao diện tải bản đồ. - Nếu tìm thấy bản đồ, SDK sẽ gửi bản đồ tới camera. Camera giải nén bản đồ vào
/home/fr1511b/hontai/map/.
Tái định vị
- Xuất dữ liệu
geometry_msgs::PoseWithCovarianceStampedtớiLxCamera_UploadReloc. - Pose chứa pose LiDAR:
x,yvàyaw. - Tái định vị thành công khi vị trí hiển thị trong giao diện web của camera được cập nhật thành pose đã gửi.
Quaternion bị ràng buộc và không được điền tùy ý. Sử dụng công cụ chuyển đổi Euler sang quaternion để chuyển đổi gócEuler yawthành các giá trị quaternionxyzw.
Giao diện service ROS
Lập bản đồ, chuyển đổi bản đồ, tải bản đồ xuống và tái định vị cũng có thể được thực hiện qua ROS service. Phản hồi servicetrue cho biết thành công; false cho biết thất bại. Với các thao tác cần xác nhận, hãy ưu tiên giao diện service.
Sử dụng
rosservice call cho các lệnh sau. Tên bản đồ không được bắt đầu bằng số và không được dài quá 30 ký tự.Tạo bản đồ
Tên service:/lx_localization_node/LxCamera_Mapping_srv
Định nghĩa service:
Chuyển đổi bản đồ
Tên service:/lx_localization_node/LxCamera_SwitchMap_srv
Định nghĩa service:
Tải xuống bản đồ
Tên service:/lx_localization_node/LxCamera_DownloadMap_srv
Định nghĩa service:
Tái định vị
Tên service:/lx_localization_node/LxCamera_UploadReloc_srv
Định nghĩa service:
Lấy tên bản đồ hiện tại
Tên service:/lx_localization_node/LxCamera_GetCurMapname_srv
Định nghĩa service:
Lấy danh sách bản đồ hiện tại
Tên service:/lx_localization_node/LxCamera_GetMapList_srv
Định nghĩa service:
Thoát chế độ lập bản đồ (giao diện tùy chỉnh)
Tên service:/lx_localization_node/LxCamera_ExitMapping_srv
Định nghĩa service:
Xóa bản đồ
Tên service:/lx_localization_node/LxCamera_EraseMap_srv
Định nghĩa service:
Tải xuống bản đồ nhiệt
Tên service:/lx_localization_node/LxCamera_DownloadMap_srv
Định nghĩa service:
Lập bản đồ bổ sung
Tên service:/lx_localization_node/LxCamera_IncMapping_srv
Định nghĩa service: