Table of Contents
How to make servoing system using ROS
Author: <Brandon Seo> Email: hyunduck1024@gmail.com
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:
- Programming
- Final Words
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.org
* 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. https://webnautes.tistory.com/1186
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: hyunduck1024@gmail.com