All Projects → sonyccd → roboclaw_ros

sonyccd / roboclaw_ros

Licence: BSD-2-Clause license
ros for roboclaw

Programming Languages

python
139335 projects - #7 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to roboclaw ros

Cheap-FOCer
BLDC Motor Controller based on the VESC 4.12 hardware
Stars: ✭ 61 (+60.53%)
Mutual labels:  motor-controller
KRS
The Kria Robotics Stack (KRS) is a ROS 2 superset for industry, an integrated set of robot libraries and utilities to accelerate the development, maintenance and commercialization of industrial-grade robotic solutions while using adaptive computing.
Stars: ✭ 26 (-31.58%)
Mutual labels:  ros
microstrain inertial
ROS driver for all of MicroStrain's current G and C series products. To learn more visit
Stars: ✭ 44 (+15.79%)
Mutual labels:  ros
Big Easy Driver
The Big Easy Driver available from SparkFun Electronics
Stars: ✭ 21 (-44.74%)
Mutual labels:  motor-controller
the-Cooper-Mapper
An open source autonomous driving research platform for Active SLAM & Multisensor Data Fusion
Stars: ✭ 38 (+0%)
Mutual labels:  ros
isaac ros apriltag
CUDA-accelerated Apriltag detection
Stars: ✭ 42 (+10.53%)
Mutual labels:  ros
Spatio temporal voxel layer
A new voxel layer leveraging modern 3D graphics tools to modernize navigation environmental representations
Stars: ✭ 246 (+547.37%)
Mutual labels:  ros
py trees ros
ROS extensions and implementations for py_trees
Stars: ✭ 80 (+110.53%)
Mutual labels:  ros
yak
yak (yet another kinfu) is a library and ROS wrapper for Truncated Signed Distance Fields (TSDFs).
Stars: ✭ 25 (-34.21%)
Mutual labels:  ros
double laser mapping location
ros1 gazebo cartographer amcl
Stars: ✭ 41 (+7.89%)
Mutual labels:  ros
smacha
SMACHA is a meta-scripting, templating, and code generation engine for rapid prototyping of ROS SMACH state machines.
Stars: ✭ 15 (-60.53%)
Mutual labels:  ros
ros dmp
Dynamic Motion Primitives
Stars: ✭ 25 (-34.21%)
Mutual labels:  ros
dofbot-jetson nano
Yahboom DOFBOT AI Vision Robotic Arm with ROS for Jetson NANO 4GB B01
Stars: ✭ 24 (-36.84%)
Mutual labels:  ros
infinity-firmware
Firmware for Infinity brushless motor controllers
Stars: ✭ 21 (-44.74%)
Mutual labels:  motor-controller
mycobot ros
A ros package for myCobot.
Stars: ✭ 76 (+100%)
Mutual labels:  ros
Open-Inverter-WebInterface
Open Inverter - Alternative Web Interface
Stars: ✭ 29 (-23.68%)
Mutual labels:  motor-controller
lidar-sync-mimics-gps
Open-Source LiDAR Time Synchronization System by Mimicking GPS-clock
Stars: ✭ 52 (+36.84%)
Mutual labels:  ros
robomaster s1 can hack
DJI RoboMaster S1 CAN Hack
Stars: ✭ 71 (+86.84%)
Mutual labels:  ros
teraranger
Ros nodes for single TeraRanger sensors
Stars: ✭ 19 (-50%)
Mutual labels:  ros
tensorflow ros cpp
Catkin-friendly C++ bindings for tensorflow.
Stars: ✭ 60 (+57.89%)
Mutual labels:  ros

roboclaw_ros

Build Status Codacy Badge

This is the ROS driver for the Roboclaw motor controllers made by Ion Motion Control.

#HELP: I have been busy with another project that is not using robo claw. Message me if you want to become a contributer and help keep this thing alive!

Before you begin

Before you use this package you need to calibrate the velocity PID on the Roboclaw. This will requare the installation of the free software IonMotion (Windows only). You do not need to tune for position just velocity.

From the user manual:

IonMotion includes the option to autotune velocity and or position values. To use these options you should first make sure your encoder and motor are running in the correct direction and that basic PWM control of the motor works as expected. To do this go to the PWM Settings screen in IonMotion. Slide the motor slider up to start moving the motor forward. Check the encoder is increasing in value. If it is not either reverse the motor wires or the encoder wires.

If you are using autotune for Position control you must first set the motors QPPS value. Unlike Velocity autotune the QPPS value will not be automatically measured. This is because most position control systems have a limited range of movement. Once you have manually set the motors QPPS value(eg the maximum speed the motor can run at) you can continue with Position autotuning.

Then just click the autotune button for the motor you want to tune. The autotune function will try to determine the best settings for the motor. In the Velocity settings window it will autotune for velocity. In the Position Settings window you have the option to tune a simple PD position controller, a PID position controller or a cascaded Position/Velocity controller(PIV). The cascaded tune will determine both the velocity and position values for the motor but still requires the QPPS be manually set for the motor before starting. Autotune functions usually return reasonable values but in most cases you will still need to manually adjust them for optimum performance.

Usage

Just clone the repo into your catkin workspace. It contains the ROS package and the motor controller driver. Remmeber to make sure ROS has permisions to use the dev port you give it.

cd <workspace>/src
git clone https://github.com/sonyccd/roboclaw_ros.git
cd <workspace>
catkin_make
source devel/setup.bash
roslaunch roboclaw_node roboclaw.launch

Parameters

The launch file can be configure at the command line with arguments, by changing the value in the launch file or through the rosparam server.

Parameter Default Definition
dev /dev/ttyACM0 Dev that is the Roboclaw
baud 115200 Baud rate the Roboclaw is configured for
address 128 The address the Roboclaw is set to, 128 is 0x80
max_speed 2.0 Max speed allowed for motors in meters per second
ticks_per_meter 4342.2 The number of encoder ticks per meter of movement
base_width 0.315 Width from one wheel edge to another in meters

Topics

###Subscribed /cmd_vel (geometry_msgs/Twist)
Velocity commands for the mobile base. ###Published /odom (nav_msgs/Odometry)
Odometry output from the mobile base.

#IF SOMETHING IS BROEKN: Please file an issue, it makes it far easier to keep track of what needs to be fixed. It also allows others that might have solved the problem to contribute. If you are confused feel free to email me, I might have overlooked something in my readme.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].