reiniscimurs / DRL-robot-navigation

Deep Reinforcement Learning for mobile robot navigation in ROS Gazebo simulator. Using Twin Delayed Deep Deterministic Policy Gradient (TD3) neural network, a robot learns to navigate to a random goal point in a simulated environment while avoiding obstacles.
MIT License
487 stars 97 forks source link

car model #67

Closed hzxBuaa closed 11 months ago

hzxBuaa commented 1 year ago

Hi ,Reinis Cimurs,I would like to ask which model the car adopts,ackerman steering or something else?

reiniscimurs commented 1 year ago

This repo implements a differential drive robot.

hzxBuaa commented 1 year ago

Ok, thank you. Is this the topic "cmd_vel" directly posted to the car to make it move? Do you need to consider dismantling this command according to the current vehicle kinematics and converting it into the speed and angular velocity commands of each joint? Similar to the conversion of control commands into chassis commands, if this is to be applied to a real vehicle, does the simulation need this step? Or just release cmd_vel directly to let the car move? I don't know if I made it clear, thank you in advance

reiniscimurs commented 1 year ago

We publish the command to topic "cmd_vel". From the robots side there is a differential drive plugin that then takes this command and uses it for robot controller: http://wiki.ros.org/diff_drive_controller

If you want to use a different kinematic model, you would have to use a different plugin for your model in training. For instance: http://wiki.ros.org/ackermann_steering_controller?distro=noetic

For pioneer robot you can find the controller here: https://github.com/reiniscimurs/DRL-robot-navigation/blob/943186fb7f1890700ce215951e92d5cb92031d14/catkin_ws/src/multi_robot_scenario/xacro/p3dx/pioneer3dx_plugins.xacro#L16-L37

hzxBuaa commented 1 year ago

Alright, thank you very much Finally, I would like to ask. I see that our repo does not use the 'controller_manager' pkg, but I see that my Ackerman differential robot uses this package. I would like to ask why we do not use it? And if this package is not used, will it affect the final effect of transplanting to the real car? I am a novice, hope you can give an answer, thank you very much!

reiniscimurs commented 1 year ago

That is outside the scope of this repo and my experience so I cannot help you there. You would have to try it out and see for yourself.