knmcguire / ros_gz_crazyflie

MIT License
10 stars 2 forks source link

Run script wall_following #1

Open matheeusper opened 1 month ago

matheeusper commented 1 month ago

how can I run the wall_following script for the gazebo and also for the real drone image

knmcguire commented 1 month ago

First make the crazyflie take off with the telelop (t and then k to make it stop)

  ros2 run teleop_twist_keyboard teleop_twist_keyboard

Then

ros2 run crazyflie_wall_following wall_follower --ros-args -p use_sim_time:=True

For the real crazyflie, make sure to have gone through the ROS2 tutorials up until the simple mapper: https://imrclab.github.io/crazyswarm2/tutorials.html#mapping-with-simple-mapper

Then same thing, take off with teleop, and wall following with

ros2 run crazyflie_wall_following wall_follower --ros-args -p robot_prefix:='/crazyflie_real

You can check with ROS2 topics if the names and prefixes correspond with eachother.

matheeusper commented 1 month ago

Firstly I started with launch: ros2 launch ros_gz_crazyflie_bringup crazyflie_simulation.launch.py

For takeoff, I used another command, since it doesn't work without the arguments: ros2 run teleop_twist_keyboard teleop_twist_keyboard --ros-args --remap cmd_vel:=crazyflie/cmd_vel

So when running the mapping command, I realized that the command you gave me does not have the same names as the packages and scripts in the repo, so i run: ros2 run ros_gz_crazyflie_wall_following wall_following_multiranger --ros-args -p use_sim_time:=True

But it didn't work and nothing happens to the drone; image

knmcguire commented 1 month ago

Seems like the wall following is not receiving the scans, so you'll need to digging and make sure that the right topic connects.

The code is not exactly the same as the one shown in the rosject so there is some debugging and hacking required. so make sure to use rqt or the topic list to make sure that happens.