Skip to main content

ROS Publisher and Subscribers | ROS Noetic Tutorial 2

Design a ROS code for the following Scenario: 

There are two publishers namely Pub1 and Pub2  and there are three subscribers Sub1, sub2 and Sub3.
Pub1 Publishes a topic called \CSE3102 and Sub1 subscribed to it. 
Pub2 publishes a topic called \cse2034 and, sub2, sub3 are subscribed to it. Design a python script for ROS and submit the following details. 

Method of Execution

To begin with, open a terminal and run the following command
$ roscore

Step 1:

Create a folder in the /home/lab21 directory using the command
$ mkdir -p pradeepkumar/src
$ cd pradeepkumar/
$ catkin_make

after the above command, two folders namely build/ and devel/ might have been created.
Now we need to set the PATH for this file devel/setup.bash

One method is to use, the source command when opening a new terminal every time, the
command is

$ source /home/lab21/pradeepkumar/devel/setup.bash
The second method is to include the command in the /home/lab21/.bashrc file, so that the command will
run without any issues when a new terminal is opened.

after the second step, logout and login back in to get the command working and activated else
run the command

$ source .bashrc

Step 2 :

Go to pradeepkumar/src folder and create a catkin package using the following command
$ cd pradeepkumar/src

$ catkin_create_pkg ros_tutorial1 rospy std_msgs
$ cd ..
$ catkin_make


(this time, the make will include the ros_tutorial1 also in to the devel and build libraries)

Step3 - We will be creating two files namely

1. publisher.py
2. subscriber.py
Create the above files in the folder
pradeepkumar/src/ros_tutorial1/script

And give full permission to run
$ chmod 777 *.py

Step 4 - running the publisher and subscriber, we need to open two windows one for pub and another for sub.

In Terminal 1
Go to
$ cd pradeepkumar/
$ source ./devel/setup.bash
$ rosrun ros_tutorial1 pub.py
in Terminal 2
Go to
$ cd pradeepkumar/
$ source ./devel/setup.bash
$ rosrun ros_tutorial1 subs.py

You can see the output of I took ROS Knowledge by the Subscriber and "ROS Knowledge" by the publisher.

$ rqt_graph

will open the graph of all the nodes running under the ROS.

Pub1 code

publisher
Publisher 1 

publisher
Publisher 2

rqt graph
RQT Graph

Subscriber
Subscriber 1

Subscriber
Subscriber 2

Subscriber
Subscriber 3



Comments

  1. We understand that everyone has different learning preferences and schedules. That's why we offer both classroom-based and online Linux Training Institute in Noida programs. You can choose the mode of learning that suits you best, without compromising on the quality of education.

    ReplyDelete

Post a Comment

Popular posts from this blog

How to Create Ubuntu 24.04 Bootable USB Using Rufus [Step-by-Step Guide]

How to Create Ubuntu 24.04 Bootable USB Using Rufus [Step-by-Step Guide] Are you planning to install or try Ubuntu 24.04 LTS ? The easiest and most reliable method is to create a bootable USB drive using Rufus on a Windows system. This detailed guide will help you create a Ubuntu 24.04 USB bootloader using Rufus with easy-to-follow steps and screenshots (optional). Here is the complete video of the bootloader creation and OS installation in Windows 11. 🧰 Requirements A USB flash drive (minimum 8GB recommended) A Windows PC Ubuntu 24.04 LTS ISO file Rufus USB creation tool 🧾 Steps to Create a Ubuntu 24.04 Bootable USB Using Rufus ✅ Step 1: Download Ubuntu 24.04 ISO Visit the official Ubuntu website and download the Ubuntu 24.04 LTS ISO file . ✅ Step 2: Download and Run Rufus Head to Rufus official site and download the latest version. Open the executable file (no installation required). ✅ Step 3: Insert USB Drive Plug in your USB drive. Rufus ...

Installing ns3 in Ubuntu 22.04 | Complete Instructions

In this post, we are going to see how to install ns-3.36.1 in Ubuntu 22.04. You can follow the video for complete details Tools used in this simulation: NS3 version ns-3.36.1  OS Used: Ubuntu 22.04 LTS Installation of NS3 (ns-3.36.1) There are some changes in the ns3 installation procedure and the dependencies. So open a terminal and issue the following commands Step 1:  Prerequisites $ sudo apt update In the following packages, all the required dependencies are taken care and you can install all these packages for the complete use of ns3. $ sudo apt install g++ python3 python3-dev pkg-config sqlite3 cmake python3-setuptools git qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 openmpi-bin openmpi-common openmpi-doc libopenmpi-dev autoconf cvs bzr unrar gsl-bin libgsl-dev libgslcblas0 wireshark tcpdump sqlite sqlite3 libsqlite3-dev  libxml2 libxml2-dev libc6-dev libc6-dev-i386 libc...

NS2 (NS-2.35) Installation in Ubuntu 11.10

This post will help you in installing Network Simulator 2 version NS2.35 in Ubuntu 11.10 Instructions Install Ubuntu Download NS-2.35 ( http://sourceforge.net/projects/nsnam/files/allinone/ns-allinone-2.35/ns-allinone-2.35.tar.gz/download ) Unzip or untar it to any folder (recommended is /home/ loginname) using the following commands one by one sudo apt-get update sudo apt-get install build-essential autoconf automake libxmu-dev tar zxvf ns-allinone-2.35.tar.gz cd ns-allinone-2.35 ./install Once installed the PATH information will be provided to you. Copy the PATH and LD_LIBRARY_PATH Variable to .bashrc (see a dot in the beginning) Input the path information in .bashrc file like this export PATH=$PATH:<Place your paths here> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: <place the LD_LIBRARY_PATHS> here. Once done, save the file and close execute the command source .bashrc try ns or nam to see whether your installation succeeded.