Giter Site home page Giter Site logo

eborghi10 / my_ros_mobile_robot Goto Github PK

View Code? Open in Web Editor NEW
146.0 11.0 69.0 21.67 MB

Differential drive mobile robot using ROS.

CMake 13.65% C++ 69.44% C 5.47% Processing 11.44%
ros mobile-robots arduino raspberry-pi gazebo ros-control rviz esp8266 differential-drive

my_ros_mobile_robot's Introduction

Install build dependency

sudo apt install ros-noetic-move-base-msgs

Differential-drive mobile robot using ROS

To see the robot in rviz, read the README file inside the my_robot_description package.

To see the complete robot simulation (using rviz and Gazebo), read the README file inside the my_robot_gazebo package.

To execute ros_control in the real robot, read the README file inside the my_robot_base package.

To see the implementation of move_base and slam_gmapping, for Navigation and Simulatenous localization and mapping, read the README file inside the my_robot_navigation package.


Nonsense tip to record the screen: ffmpeg -f x11grab -s 1366x768 -r 15 -i :0.0 -s 1366x768 -r 15 -qscale 0 video.avi

my_ros_mobile_robot's People

Contributors

eborghi10 avatar rjcausarano avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

my_ros_mobile_robot's Issues

Robot not Loading the Caster Wheels

Hi, I've recently try to use your packege in the Ros Melodic, I don't know what is the problem, but when I launch the gazebo package it does not load the caster wheel image.

Also, on the Rviz there are error messages on the camera link, on the caster_wheel, on the hokuyo link, on the left and right wheel, they all say that "there is no transform from the base link to them".

Could you please help me solve it

joint angle: position and range

Hi, I have some more questions, regarding the joint angles (position):

  1. The documentation states that diff_drive_controller works with wheel joints through a velocity interface. However, in your my_robot_hw_interface.h you read a position (angle) from the continuous wheel joints.
pos[0] += ang_distance_left;

Do you know why we need to provide the angle of the joints? I am asking because the mentioned documentation for diff_drive_controller is unclear to me. It seems to use only a velocity interface and no position interface.

  1. What's the range that you put the angles in? [0, 2*pi[, [-pi, pi[ or something else? I am asking for a range because I found out that the angles get wrapped according to this github issue on ros_controllers. This means it shouldn't really matter if the angle increases but I would like to avoid an overflow, which might cause trouble?

Thanks for your time and help

wheel_vel

First of all I want to thank you for uploading your code. Its been of great help to implement ros_control for my custom robot.

I have one issue though:

Im using ps4 controller to publish /mobile_base_controller/cmd_vel. The output is between -1 and 1.

Am I right if the /my_robot/left_wheel_vel and /my_robot/right_wheel_vel output also should be between -1 and 1?

When I go straight forward or backwards /my_robot/left_wheel_vel and /my_robot/right_wheel_vel output always is -1 or 1. In other words full speed backwards or full speed forward. Even when _/mobile_base_controller/cmd_vel output is e.g. 0.5.
When turning /my_robot/left_wheel_vel and /my_robot/right_wheel_vel output is working perfectly between -1 and 1 according to ps4 cmd_vel.

Have you any idea on where to start looking?

Thanks
Andreas

How to move right and left wheel separately?

Hi! how do i move right and left wheel sparately? i have tried this command:

rostopic pub -1 /my_robot/rightWheel_effort_controller/command std_msgs/Float64 "data: 10"
but it doesnt work.

How do you build the urdf file?

I want to build a robot that similar to your model. First I drawn it on Inventor and using Freecad to convert to .dae file, and I write urdf file, but it's not the same as the description. How did you do it? Can you share me some experience? Thank for reading.

my_robot_navigation fatal error: move_base_msgs/MoveBaseAction.h

Hello Emiliano,

Amazing job, for sure I'll get for more info here. Can I give 3 starts here :))

On Ubuntu 16, kinetic full install there was a problem for my_robot_navigation, when I've done
catkin_make

This library was needed:

sudo apt-get install -y libmove-base-msgs-dev

Ciao and keep up the super job!

update for my_robot_description read me

$ roscd my_robot_description/urdf/
$ rosrun xacro xacro --inorder my_robot.xacro > my_robot.urdf

For ros noetic/melodic "--inorder" is default option
$ roscd my_robot_description/urdf/
$ rosrun xacro xacro my_robot.xacro > my_robot.urdf

also

$ urdf_to_graphviz my_robot.urdf
should be change to
$ urdf_to_graphiz my_robot.urdf

How to read odometry

Dear @eborghi10
i want to control w and v using PID. but before i control it, i should get the data from odometry.

So, here is the problem. once i read "yaw" (translated to euler), the robot doesnt rotate as the odometry said.

for example, the "yaw" = 90 degree. but the robot only rotate 30 degree.

what should i do? or should I add IMU?

Regards,

Dependency on JointStateController and JointEffortController

Hi, thank you for this great repository implementing the diff_drive_controller.

I have two questions regarding the controllers you use. In my_robot_control.yaml you specify joint_state_controller/JointStateController and two effort_controllers/JointEffortController controllers.

  1. Is joint_state_controller/JointStateController required when working with real robot hardware to publish the jointState messages?
  2. Why do you need the effort_controllers/JointEffortControllers? I thought that diff_drive_controller (configured in my_robot_common.yaml) is controlling the two wheels (reading encoder vaules and writing (velocity?) commands) and shouldn't require the two effort_controllers/JointEffortControllers.

Please let me know why these controllers are needed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.