Following are the concepts used for this project:
- ROSlaunch API
- To import the image using path
- To import the image using camera
- To set thresholds for Canny edge detection
- ROS tf
- To set the values of threshold parameters
- To fetch the values of threshold parameters
- Following is the directory structure of the package
. ├── CMakeLists.txt ├── docs # README dependencies │ ├── tf.png │ └── tree.txt ├── include │ └── TurtleSim-tf ├── launch # Launch files │ ├── dynamic.launch # Launch - Multiple instance of same node using launch file │ └── spawn.launch # Launch - Multiple turtles in a turtlesim using launch file | ├── nodes # ROS Nodes │ ├── add_frame.py # Blueprint of a node - spawn random turtles and broadcast transform │ ├── pylaunch.py # Launch multiple instances using ROSlaunch API │ └── Turtle.py # Turtle class to control turtle activities ├── package.xml ├── README.md └── src
ROS-tf2
packageturtlesim
package
To run the project on your local system, follow the procedure:
-
Download the packages -
turtlesim-tf
-
Copy these packages to your ROS workspace i.e.
~/ROS_ws/src/
-
Build the work-space
$ cd ~/ROS_ws/
$ catkin_make
File associated - dynamic.launch
and blueprint_node_launch.py
File associated - pylauncher.py
and blueprint_node.py
-
Open new terminal and source the ROS workspace -
source ~/ROS_ws/devel/setup.bash
-
Run the command -
$ roslaunch turtlesim-tf xxxxxx.launch 5
-
where 5 = number of turtle in a turtlesim
You can configure this number
-
-
In a new terminal, run the command -
$ rqt_tf_tree
to display thetf-tree
- This is an architecture for Gazebo
- There are two main nodes - server and a client
- Server handles all the physics, sensors and calculation part
- Client's job is to render all this data in the simulator
- Gazebo's server and client keeps communicating continuously
- After reading the data from this communication channel, we can read sensor data, simulation data and the physics data
- This data once augmented with ROS arguments can be sent over ROS topics to be accessed by the ROS nodes