Tip:
Highlight text to annotate it
X
Hello, I'm Pranav. I'm Arun, Welcome to our video demonstration,
we are third year students of BITS-Pilani, Pilani Campus.
For the Texas Instruments India Analog Design Contest 2014, we have chosen to design an
autonomous 3-D mine mapping and gas detection rover.
Pranav will be explaining its details and why we decided to choose this project.
In the mining industry, unmapped mines and abandoned mines pose a major danger to employees
and miners and have often resulted in the deaths of miners because of the flammable
and poisonous gases they contain, and also because of the dangerous terrain inside them.
To help make it easier to explore potentially dangerous terrain such as abandoned mines,
we have developed a mine mapping rover, which can be sent into such an environment; that
can explore it and map it in 3 dimensions, and transmit a 3 dimensional map that can
be viewed on a computer. This rover also maps the gas concentrations
and temperature of the air at all the points that are explored inside the environment,
and represents this gas concentration and temperature in that 3-D map which it generates.
We will now proceed to see the components inside the rover.
On the exterior of the bot, we have the Microsoft Kinect, the Pandaboard, and an LPG and smoke
and methane gas sensor. The Pandaboard is a low cost single-board computer based on
the Texas Instruments OMAP 4430 System-on-Chip.
Let's see what is inside the bot.
We have a four wheeled drive over here, with four DC motors, each running at 200 rpm.
Each pair of DC motors has its own motor driver.
The motion of the motors is controlled by
an Arduino Microprocessor Board, which we are using for the low-level control for interfacing
with motors and sensors. The Arduino board, as well as the Pandaboard,
require 5 Volts of Power, for which we are using a Texas Instruments uA 7805 chip as
a voltage regulator.
There is also a temperature sensor located
inside the bot, which is the Texas Instruments LM 35, which is being used to detect the ambient
air temperature. We are also using two sets of 12 Volt battery
packs to provide voltage, directly to the Kinect, directly to the motors, and regulated
voltage using the 7805 to the Arduino and the Pandaboard.
I'll now explain the functioning of the rover and the behaviour of the programs on it.
On the Pandaboard, we are running Ubuntu 13.04 for ARM. On top of Ubuntu, we are running
the Robotics Operating System, which is a meta-operating system, and is open source,
which allows us to easily interface actuators and sensor devices to develop any robotic
platform. We have used the robotics operating system to read the data from the Kinect,
and on the Pandaboard we have written a shell script that executes instructions to continuously record
raw data from the Kinect and transmit it wirelessly over the Wi-fi to the computer.
Meanwhile the Pandaboard also receives wireless commands from the computer for motion control
(left, right, front, back, reverse, and speed increasing and decreasing) which the Pandaboard transmits to the Arduino
and the Arduino transmits this to control the motors. The Arduino also continuously reads
data from the gas sensor and the temperature sensor inside. This data is combined and time-stamped
by the Pandaboard. So at a particular time in seconds, there was a particular temperature
and gas concentration detected). This happens once every second. It is generated in a file
on the Pandaboard and is transmitted wirelessly to the computer.
To test our rover, we made it explore the Embedded Controllers Lab at BITS-Pilani, which is also where we work and
developed this rover. This is the lab in which we will be doing the 3-dimensional mapping
now. In order to communicate with the rover wirelessly using our laptop (computer) we
set up a local wireless network (which can be setup using any Wi-fi router).which need
not be connected to the internet. We then used the SSH facility to log into the Pandaboard
from the computer wirelessly and start the bash-script.sh program which we have written
which launches all the processes required to record and transmit raw data from the Kinect.
In the second tab, you can see that on our computer, we run the script which we have
written called the PC-script.sh which starts all the processes required to receive the
data from the rover (including the gas and temperature data) and start processing that.
You can see that this window of the application known as RGBDSLAM has been opened. Controlling
the rover from the ssh login shell of our PC, we made it explore a certain section of
the lab and view different parts of it from different angles to build an accurate 3-D
model. As it was exploring the lab, it was reading the data from the Kinect as well as
the gas and temperature sensors and continuously transmitting them wirelessly to the PC for
processing. Here you can see a fast-forwarded version of the track taken by the rover.We
now come to the screen of the laptop, which is receiving the data transmitted by the rover.
This window shows the RGBDSLAM package of the Robot Operating System which has been
automatically launched by the script. Our script receives
the data from the Kinect and passes it to this RGBDSLAM package, which integrates the raw data into a 3-D map of the environment being explored.
The rover ran for several minutes exploring the area that we selected and building the 3-D map on the PC.
However we have fast-forwarded this process for this video.
When we have explored the area to be mapped using the rover,
we can exit the program by pressing ctrl+c
As the program exits it automatically generates a point cloud
and displays it on the screen.
This point cloud represents the area mapped inside our lab
The objects inside the area mapped such as the desks, tables and chairs
are clear and accurate in their location.
The objects outside the area mapped are unclear but still accurate.
To simulate patches of high temperature as well as patches of gases such as carbon monoxide
we set a small piece of newspaper on fire and placed it inside a cup on the floor of the lab
We made the rover explore the lab for the second time with the flame in the middle of the lab.
While doing this the rover reported higher concentrations of
While doing this the rover reported higher concentrations of
smoke as well as higher temperatures in the area near the cup.
The software running on the PC represents this in the 3-D map
by marking those areas as red.
This project was conducted at the Embedded Controllers Application Centre at BITS Pilani-Pilani Campus.
We would like to thank our mentor Mr. R.R.Singh for allowing us to use the facilities of the lab
and also for his valuable inputs and constant guidance throughout the course of this project
We would also like to thank our Head of Department Dr. Anu Gupta for her constant support.
Hope you enjoyed the video. Thank you !!