User Tools

Site Tools


How to make servoing system using ROS

Author: <Brandon Seo> Email:
Date: Last modified on <08/19/19>
Keywords: <Ros, Tutorial, CMakeLists, step-by-step>

The photo above depicts ball tracking system which allows you to understand ROS program and make autonomous cotrol system. The big picture problem is normally moving gantry or detecting ball is easy, but combining these two things is difficult. Solving this partially or completely is important because every robot is getting autonomically move. This tutorial shows you how to combine gantry system and opencv using ROS and lots of potential of future farming or factory. It takes approximately 10 hours to complete.

Motivation and Audience

This tutorial's motivation is to practice basic autonomous system using ROS. Readers of this tutorial assumes the reader has the following background and interests:

* Know how to move gantry system .
* know how to detect a red ball by opencv.
* background of c++, linux manual, CMakeLists.
* This tutorial may also attract readers who want to study indoor farming.

The rest of this tutorial is presented as follows:

Parts List and Sources

To complete this tutorial, you'll need the following items

* For dynamixel motor control, the following article should be downloaded - - - - - - - - - - - - -Dynamixel_sdk
* For Robot Operating System installation, use the following link. ROS-kinetic kame is used
* ROS has opencv 3.0 version, so you have to upgrade opencv 3.0.1 to opencv 4.0.1. Be careful when you delete the existing files.

Software Construction

To run this tutorial. The following should be completed
*Gantry tutorial- - - - - - - - - - - - - how_to_move_gantry
*Color Detecting using OpenCV color_detecting
*ROS Tutorial - - - - - - - - - - - - ROS Tutorial
This section gives step-by-step instructions.

Step 1
Make a package sending x_position to Dynamixel.
Message could be only one.
The subscriber node receives it as Dynamixel speed.
Then, it shows like this.

Now, you can make gantry with camera.

Step 2
Attach the camera to the bottom of the gantry.
Make package, Publisher node and Subscriber node.
Publisher_node : publisher_node.docx
Subscriber_node : subscriber_node.docx
You should make your own Message file

Step 3
I've set goal position as (320,240)

Step 4
Build the package

Final Words

This tutorial's objective was to make visual servoing system with ganry. Once the concepts were conveyed the reader could advance knowledge about ROS.

For questions, clarifications, etc, Email:

tracking_ball_using_ros.txt · Last modified: 2019/08/19 12:14 by bradseo