Skip to main content

Posts

Netsimulyzer - a 3D visualizer for Network Simulator 3

Netsimulyzer - 3D visualizer Netsimulyzer is a third-party software that can show the visuals of the ns3 output in a 3D virtual world. we can make the nodes look either like land drones, drones, smartphones, etc. We can construct buildings, towers, antennas, etc within the visualizer and the movement of the nodes can be simulated as well.  Here is the screenshot of a simulation generated using ns3 and shown in the Netsimulyzer.  This post will help you to understand and install Netsimulyzer in Ubuntu 22.04 and add a module to support ns3 in generating the Netsimulyzer JSON file. Netsimulyzer Installing Netsimulyzer in Ubuntu and NS3 Prerequisites Ubuntu 22.04 OS ns-3.38 Netsimulyzer version 1.0.7  There are older versions also available for other distributions of ubuntu., but we will focus on these versions Steps for installation: ns-3.38 along with Netsimulyzer module to be installed. Netsimulyzer software to be installed on Ubuntu 22.04 (the software can be installed ...

Installation of ns3 in Ubuntu 22.04 | NS-3.38

Installation of ns3 in Ubuntu 22.04 In this post, we are going to install ns3.38 in Ubuntu 22.04 OS After the fresh installation of Ubuntu, perform the following command to run the updates  Prerequisites: Download ns-3.38 from the following link ( https://www.nsnam.org/releases/ns-allinone-3.38.tar.bz2 ) Fresh installation of Ubuntu 22.04  For complete instructions, follow the video Step 1:  Install the basic requirements Open a terminal and just copy and paste the following two lines into a terminal and install it. It will take some time to complete the full process. $ sudo apt update $ sudo apt install g++ python3 cmake ninja-build git gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 tcpdump wireshark sqlite sqlite3 libsqlite3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools openmpi-bin openmpi-common openmpi-doc libopenmpi-dev doxygen graphviz imagemagick python3-sphinx dia imagemagick texlive dvipng latexmk texlive-extra...

SUMO Emission of Vehicles | VANETs

Emission of Gases by Vehicles using SUMO In this post, we will be discussing how floating cars can emit gases namely  Carbon Monoxide (CO) Carbon Dioxide (CO2) Hydro Carbons (HC) Particle Matter (PMx) Nitrous Oxide (NOx) SUMO generates this emission of gases based on the EU4 norms. How to capture these gases in our simulation?  The following video contains complete information Prerequisites 1. SUMO to be installed in Ubuntu  ( SUMO installation ) 2. Python3 to be installed 3. Knowledge of XML files The following is the image of the road design I have created,  there are a totally of 6 junctions ( 0 to 5) and two edges from one junction to another intersection (each edge has two lanes). All the junctions are priority junctions except 2 and 5. These junctions are traffic light junctions. Custom road design in SUMO We are going to design a custom road.  In our machine, I will store all the files in a folder called  /home/pradeepkumar/customroad Step 1: Creat...

How to write Publisher Subscriber in ROS Noetic | Step by Step instructions

ROS1 Noetic -Publisher and Subscriber Example This post tells about the implementation of a publisher and a subscriber in ROS Noetic.   In this example, we have considered the following: Example 1:  One publisher (pub.py) and one Subscriber (Sub.py) Topic: first_lecture Message: String Message  Example 2: Two publishers (pub.py and pub1.py) and Two subscribers (sub.py and sub1.py) Topic: first_lecture   See the following video for step by step instructions for running this example: The following picture shows the nodes (The picture is taken by running the rqt_graph command) Publisher Subscriber in ROS Noetic How to run in ROS Noetic Prerequsities  1. Ubuntu Basic commands 2. PATH Setting in Ubuntu 3. Basic knowledge of Linux  4. Programming fundamentals To Install ROS1 Noetic in Ubuntu 20.04, you can refer the following video in my channel. ROS is enabled with a catkin make system which perform the easier build operation and cross compilation enablemen...

Telnet and FTP in Wired networks using NS2 (Network Simulator 2)

Telnet and FTP for a Wired Networks This post tells about the use of Telnet and FTP in Network Simulator 2 for a wired network. This can be extended to a wireless network as well. The following is the source code for implementing Telnet and FTP application in a Wired network scenario.  The network looks like this: Telnet in NS2 Node 0 to Node 2 is enabled with Telnet Application and Node 1 to Node 3 is enabled with FTP Application.  Save the following file as wired.tcl #=================================== # Simulation parameters setup #=================================== set val(stop) 10.0 ;# time of simulation end #=================================== # Initialization #=================================== #Create a ns simulator set ns [new Simulator] #Open the NS trace file set tracefile [open out.tr w] $ns trace-all $tracefile #Open the NAM trace file set namfile [open out.nam w] $ns namtrace-all $namfile #=================================== # ...

ROS Installation | Robotic Operating System Installation | Noetic

ROS Noetic Installation Today we are going to see the installation of  Robotic Operating System 1 (ROS) Step 1: What We need: This will mainly work on Ubuntu 20.04 OS  Support till 2025 May. Name of the ROS: Noetic  For the complete installation step by step, you can watch the video given below Step 2: Commands Here are the commands to be used one after the other.  $ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' $ sudo apt install curl # if you haven't already installed curl $ curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add - The above commands add the ROS to the aptitude manager and we can now install ROS1 with simple commands $ sudo apt update $ sudo apt install build-essential autoconf automake libxmu-dev $ sudo apt install ros-noetic-desktop-full The above command need 370MB of softwares to be downloaded. So the complete package of ROS in...

Constrained Application Protocol (CoAP) using Node JS

Constrained Application Protocol using Node JS Constrained application protocol is shortly called as CoAP and its based on Request Response Model where a browser or application will be requesting for a resource from the server. The resource would be a sensor reading like temperature, humidity, heartbeat, etc.  For complete explanation of the source code and the demo please go through the video: CoAP can be developed with many programming or scripting languages like: Python Node JS Contiki OS In this article, I will be writing or explaining the source code of CoAP using Node JS and this can be demonstrated with a plugin name called Cu Plugin for Chrome Browser. There are many CoAP client available like coap, libcoap, etc in Linux OS and Cu Plugin being a easier and common approach for a client.  You can refer the complete This program first starts the CoAP Server and accept only the JSON format headers, else it will throw the error number '4.06'.  Based on the requ...