准备完整形态
This commit is contained in:
parent
bdcdcd05a4
commit
54e8a802c9
20
nav.sh
Normal file
20
nav.sh
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
source install/setup.bash
|
||||||
|
|
||||||
|
commands=(
|
||||||
|
"ros2 launch rm_serial_driver rm_serial_driver.launch.py"
|
||||||
|
"ros2 launch rm_decision decision.launch.py"
|
||||||
|
"ros2 launch rm_simpal_move simple_move.launch.py"
|
||||||
|
"ros2 launch rm_nav_bringup bringup_real.launch.py \
|
||||||
|
world:=C_ROOM \
|
||||||
|
mode:=nav \
|
||||||
|
lio:=fastlio \
|
||||||
|
localization:=gicp \
|
||||||
|
lio_rviz:=False \
|
||||||
|
nav_rviz:=True
|
||||||
|
"
|
||||||
|
)
|
||||||
|
|
||||||
|
for cmd in "${commands[@]}"; do
|
||||||
|
gnome-terminal -- bash -c "source install/setup.bash; $cmd; exec bash"
|
||||||
|
sleep 0.5
|
||||||
|
done
|
||||||
1
src/rm_msgs/.gitignore
vendored
1
src/rm_msgs/.gitignore
vendored
@ -11,6 +11,7 @@ msg/*ActionGoal.msg
|
|||||||
msg/*ActionResult.msg
|
msg/*ActionResult.msg
|
||||||
msg/*Feedback.msg
|
msg/*Feedback.msg
|
||||||
msg/*Goal.msg
|
msg/*Goal.msg
|
||||||
|
!msg/NavGoal.msg
|
||||||
msg/*Result.msg
|
msg/*Result.msg
|
||||||
msg/_*.py
|
msg/_*.py
|
||||||
build_isolated/
|
build_isolated/
|
||||||
|
|||||||
11
src/rm_msgs/msg/NavGoal.msg
Normal file
11
src/rm_msgs/msg/NavGoal.msg
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# 导航目标
|
||||||
|
|
||||||
|
uint8 MODE_PID=0
|
||||||
|
uint8 MODE_NAV=1
|
||||||
|
|
||||||
|
uint8 control_mode # 控制模式: 0=PID, 1=NAV
|
||||||
|
float32 x # 目标 X 坐标 (map)
|
||||||
|
float32 y # 目标 Y 坐标 (map)
|
||||||
|
float32 angle # 目标角度 (-pi ~ pi)
|
||||||
|
float32 max_speed # 最大线速度 (PID 模式使用)
|
||||||
|
float32 tolerance # 到达容差
|
||||||
BIN
src/rm_nav/rm_nav_bringup/PCD/C_ROOM.pcd
Normal file
BIN
src/rm_nav/rm_nav_bringup/PCD/C_ROOM.pcd
Normal file
Binary file not shown.
@ -7,7 +7,7 @@
|
|||||||
filter_size_map: 0.5
|
filter_size_map: 0.5
|
||||||
cube_side_length: 1000.0
|
cube_side_length: 1000.0
|
||||||
runtime_pos_log_enable: false
|
runtime_pos_log_enable: false
|
||||||
map_file_path: "src/rm_nav_bringup/PCD/YOUR_MAP_NAME.pcd"
|
map_file_path: "src/rm_nav/rm_nav_bringup/PCD/C_ROOM.pcd"
|
||||||
|
|
||||||
common:
|
common:
|
||||||
lid_topic: "/livox/lidar"
|
lid_topic: "/livox/lidar"
|
||||||
|
|||||||
BIN
src/rm_nav/rm_nav_bringup/map/C_ROOM.data
Normal file
BIN
src/rm_nav/rm_nav_bringup/map/C_ROOM.data
Normal file
Binary file not shown.
BIN
src/rm_nav/rm_nav_bringup/map/C_ROOM.pgm
Normal file
BIN
src/rm_nav/rm_nav_bringup/map/C_ROOM.pgm
Normal file
Binary file not shown.
BIN
src/rm_nav/rm_nav_bringup/map/C_ROOM.posegraph
Normal file
BIN
src/rm_nav/rm_nav_bringup/map/C_ROOM.posegraph
Normal file
Binary file not shown.
7
src/rm_nav/rm_nav_bringup/map/C_ROOM.yaml
Normal file
7
src/rm_nav/rm_nav_bringup/map/C_ROOM.yaml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
image: C_ROOM.pgm
|
||||||
|
mode: trinary
|
||||||
|
resolution: 0.05
|
||||||
|
origin: [-6.3, -8.32, 0]
|
||||||
|
negate: 0
|
||||||
|
occupied_thresh: 0.65
|
||||||
|
free_thresh: 0.25
|
||||||
@ -124,11 +124,11 @@ python3 move_test_new.py
|
|||||||
**PID 模式:**
|
**PID 模式:**
|
||||||
```bash
|
```bash
|
||||||
ros2 topic pub /nav_goal rm_msgs/msg/NavGoal "{
|
ros2 topic pub /nav_goal rm_msgs/msg/NavGoal "{
|
||||||
mode: 0,
|
control_mode: 1,
|
||||||
target_x: 1.0,
|
x: -2.0,
|
||||||
target_y: 2.0,
|
y: -1.0,
|
||||||
target_angle: 0.0,
|
angle: 180.0,
|
||||||
max_speed: 2.0,
|
max_speed: 1.0,
|
||||||
tolerance: 0.1
|
tolerance: 0.1
|
||||||
}" --once
|
}" --once
|
||||||
```
|
```
|
||||||
@ -137,8 +137,8 @@ ros2 topic pub /nav_goal rm_msgs/msg/NavGoal "{
|
|||||||
```bash
|
```bash
|
||||||
ros2 topic pub /nav_goal rm_msgs/msg/NavGoal "{
|
ros2 topic pub /nav_goal rm_msgs/msg/NavGoal "{
|
||||||
mode: 1,
|
mode: 1,
|
||||||
target_x: 1.0,
|
target_x: -2.0,
|
||||||
target_y: 2.0,
|
target_y: -1.0,
|
||||||
target_angle: 0.0,
|
target_angle: 0.0,
|
||||||
max_speed: 0.0,
|
max_speed: 0.0,
|
||||||
tolerance: 0.0
|
tolerance: 0.0
|
||||||
|
|||||||
@ -68,7 +68,7 @@ namespace rm_simpal_move
|
|||||||
pid_angular_(1.5f, 0.0f, 0.2f, 2.0f)
|
pid_angular_(1.5f, 0.0f, 0.2f, 2.0f)
|
||||||
{
|
{
|
||||||
// 声明参数
|
// 声明参数
|
||||||
this->declare_parameter("pid_linear_kp", 0.8);
|
this->declare_parameter("pid_linear_kp", 0.3);
|
||||||
this->declare_parameter("pid_linear_ki", 0.0);
|
this->declare_parameter("pid_linear_ki", 0.0);
|
||||||
this->declare_parameter("pid_linear_kd", 0.1);
|
this->declare_parameter("pid_linear_kd", 0.1);
|
||||||
this->declare_parameter("pid_angular_kp", 1.5);
|
this->declare_parameter("pid_angular_kp", 1.5);
|
||||||
@ -242,7 +242,13 @@ namespace rm_simpal_move
|
|||||||
vx *= scale;
|
vx *= scale;
|
||||||
vy *= scale;
|
vy *= scale;
|
||||||
}
|
}
|
||||||
|
// if (wz >goal_pose_.max_speed/2.0f) {
|
||||||
|
// wz = goal_pose_.max_speed;
|
||||||
|
// }
|
||||||
|
// if (wz < -goal_pose_.max_speed/2.0f) {
|
||||||
|
// wz = -goal_pose_.max_speed;
|
||||||
|
// }
|
||||||
|
wz = 0.0f;
|
||||||
// 发布标准 cmd_vel_move
|
// 发布标准 cmd_vel_move
|
||||||
auto cmd_vel_msg = geometry_msgs::msg::Twist();
|
auto cmd_vel_msg = geometry_msgs::msg::Twist();
|
||||||
cmd_vel_msg.linear.x = vx;
|
cmd_vel_msg.linear.x = vx;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user