Merciless BSF Node Mcu Report
Merciless BSF Node Mcu Report
CONTENTS
Introduction
Literature survey
Feasibility Study
Methodology/Planning of Work
Software/Hardware Requirements
Bibliography
Abstract –
Most of the military organization now takes the help of robots to carry out many risky jobs that
cannot be done by the soldier. These robots used in military are usually employed with the
integrated system, including video screens, sensors, gripper and cameras. The military robots
also have different shapes according to the purposes of each robot. Here the new system is
proposed with the help of low power IOT wireless sensor network to trace out the intruders
(unknown persons) and the robot will take the necessary action automatically. Thus the
proposed system, an Intelligent Unmanned Robot (IUR) using IOT saves human live and
reduces manual error in defense side. This is specially designed robotic system to save human
life and protect the country from enemies.
Robots are specially design for human to make our life easier. Robots are design for various
purposes like military purpose, industry, for home based application. At border different tanks,
missile, guns etc are used by enemy. This cause problem and harm our force or soldiers. For this
a robot is design and developed for military purpose application to protect our army. robots used
to detect its obstacle which is found in its path. If it found any obstacle in its path then using gun
mechanism it will able to shoot that obstacle. For making it multifunctional robot all the actions
perform by user same actions perform by robot using stretch sensor. All these mechanisms are
embedded on the propeller
Keywords – Military robot, IOT Wireless network, Intelligent Unmanned Robot (IUR).
INTRODUCTION
The Kargil war also known as the Kargil conflict, was an armed conflict between India and Pakistan that
took place between May and July 1999 in the Kargil district of Kashmir and elsewhere along the Line of
Control (LOC). The conflict is also referred to as Operation Vijay (Victory in Hindi) which was the name
of the Indian operation to clear the Kargil sector.
The cause of the war was the infiltration of Pakistani soldiers and Kashmiri militants into positions on the
Indian side of the LOC, which serves as the de-facto border between the two states. During the initial
stages of the war, Pakistan blamed the fighting entirely on independent Kashmiri insurgents, but
documents left behind by casualties and later statements by Pakistan's Prime Minister and Chief of Army
Staff showed involvement of Pakistani paramilitary forces, led by General Ashraf Rashid. The Indian
Army, later on supported by the Indian Air Force, recaptured a majority of the positions on the Indian
side of the LOC infiltrated by the Pakistani troops and militants. With international diplomatic
opposition, the Pakistani forces withdrew from the remaining Indian positions along the LOC.
The war is one of the most recent examples of high altitude warfare in mountainous terrain, which posed
significant logistical problems for the combating sides. INDIAN government had to face huge loss
because of the war. Human loss, machine loss, aircrafts, tankers. Indian economy decreased by 38%, cost
of all commodities increased, taxes increased all together country had to face tremendous loss. The
proposed system is based on IOT. The system uses an IR and camera based security system for protected
areas and borders, which senses intruders, trespassers and transfer video to other end.
WORKING PRINCIPLE
Internet of things (IoT) is the network of physical devices, vehicles, home appliances and other items
embedded with electronics, software, sensors, actuators, and network connectivity which enables these
objects to connect and exchange data. Each thing is uniquely identifiable through its embedded
computing system but is able to inter-operate within the existing Internet infrastructure.
This Project is a IR & camera based security system for protected areas & borders,
which senses the Intruders, trespassers and transfer video to other end. For
confirmation
In this Project, we are going to have an IR Sensor which senses any intruders /
trespassers and will activate the alarm as well as switch on the guns in that
particular place.
In this project we will shoot the intruder when he cross the border, the bullet is
equipped with a gps facility if the intruder escapes the we can track him with the
help of ARM 11 devices or smartphone
It will also activate the Camera, which will start capture the live video and
transmit the same to the receiver end, the smart phone
In the same time it will start gives alarm and the data will transferred through the
RF Transmitter & Receiver to the mobile device
WIRELESS COMMUNICATION
The process using the Radio - Frequency spectrum for Transmitting and Receiving
Voice, Data and Video signals by which information(s) are shared is known as
Wireless Communication
SPECIAL FEATURES
WIRELESS MOVEMENTS – FORWARD, REVERSE, RIGHT & LEFT
360 DEGREE ROTATION – ANY ANGLE FREE MOVEMENTS FOR ALL AXES
SENSORS – PIR, PIR MOTION SENSOR WHICH SENSES A TRESPASSERS
SENSORS – ULTRASONIC, OBSTACLE DETECTION & DIRECTION CHANGING
WIRELESS SOLUTIONS – RF
OBSTACLE SENSING AND COLLISION AVOIDANCE
DIRECTION SENSING
MECHANICAL MODEL FOR REAL TIME OPERATIONS
STEPPER MOTOR / STEPPER POWER SUPPLY BOARD
OPTOCOUPLER WITH STEPPER DRIVER BOARD
AUTO DIALER
RS 232 CONVERTERS / POWER SOURCE
RF RECEIVER / TRANSMITTER MODULE - 433.92 MHZ (FT-COM-RX2), BANDWIDTH
– 4MHz
WHAT IS A ROBOT?
The Webster defines a Robot as - An automatic apparatus or device that performs functions ordinarily ascribed to
humans or operates with what appears to be almost human intelligence, which means Robot, is defined as a
mechanical design that is capable of performing human tasks or behaving in a human-like manner
ANATOMY OF A ROBOT
The Basic Components of a Robot System are
The Mechanical linkage
Actuators and Transmissions
Sensors
Controllers
Stepper Motors
User interface
Power conversion unit
Applications:
Heavy power grids.
Industrial application.
Crane handling.
By doing little modifications, this same project can be used for any other power control.
LITERATURE SURVEY
Robots are specially design for human to make our life easier. Robots are design for
various purposes like military purpose, industry, for home based application. At border
different types of tanks, missiles and guns are used by the enemy. This causes problems
and will harm our force or soldiers. To address the above problem a robot is designed and
developed for military purpose application to protect our army. The method involves a
biped walking robot using parallel leg mechanism i.e. PLM which includes different
functions like capturing real world data using digital image processing used to detect its
obstacle which is found in its path. The limitations in the system is that it can move only
on plain surfaces, but coming to the sytem fails to perfom the operation effectively.
The robot system can be built with the existing economic conditions that can be used for
different sophisticated robotic applications. The control system consists of Touch screen
and ZigBee modules, a microcontroller that controls the robot. The system provides
continuous visual monitoring through the wireless camera attached to the robot and sends
continuous data to the control unit. A multifunctional Robot is been designed according to
the specifications made above which uses ZigBee Technology.
Zigbee cannot be used to cover very long distance, it can only deal with low complexities
and is very slow. Due to their low range coverage the current project uses GSM, which is
used in concentrators to transmit data to the main station, or in high end multi-function
meters.
The project is presenting an IOT Based Wireless multifunctional robot for military
application with Raspberry pi 3 using MQTT protocol and it is done by integrating
various sensors, Cameras, Grippers and actuators into web application using MQTT and
HTTP protocol. The system uses ARDUINO controller.
ARDUINO controller has only 10 bits of resolution which is the disadvantage of it.
RASPBERRY PI 3 consumes more power when compared to any other PC using INTEL
Pentium 2 processor and also have got limited memory. MQTT protocol also has many
disadvantages like SYN attacks, sequence manipulation, amorphous identification, DNS
flaws.
The system presents a modern approach for surveillance at remote and border areas using
multifunctional robot based on current 3G technology used in defence and military
applications. The robotic vehicle has ability to substitute the solider at border areas to
provide surveillance. The robotic vehicle works both as autonomous and manually
controlled vehicle using internet as communication medium. This multisensory robot
used to detect human, bombs, harmful gases and fire at remote and war field areas.
The robot functionality is been controlled by PIC18F452 controller. The PIC18F452
controller uses RISC computation, which makes the program lengthy. In the PIC
controller program memory is not accessible and only a single accumulator is present for
computations.
ADVANTAGES
ROBUST
A micro controller AT89C52 is used in the proposed system which has many advantages
when compared to ARDUINO. Microcontroller AT89C52 has fast clock speeds and a
wonderful variety of peripherals, making it more robust. On the other end of the
spectrum, there are minuscule devices that can provide long battery life.
EFFICIENT
RASPBERRY PI has a limited amount of memory to save any data in it. The proposed
system uses Microcontroller AT89C52 which has memory space 10 times more than
RASPBERRY PI and is much more efficient.
COST EFFECTIVE
GSM technology has been matured since long and hence are widely used. GSM provides
a very cost effective solution and is easy to maintain due to availability of large number
of network engineers at an affordable cost.
SOCIAL IMPACT
INDIAN government had to face huge loss because of wars and the Indian economy decreased by
38% due to it. The proposed system replaces soldiers in order to save lives. The robot strikes fear
in intruders mind and decreases the amount of trespassing on the border.
METHODOLOGY/PLANNING OF WORK
Fig1: Block Diagram of the Robot
The robot would also consists of a Gas sensor, and would immediately intimate the respected
guards about the attacks. The system would also consist of a mine sensor, with which it can detect
any hidden activated bombs and with the help of GPS facility it would send the exact location of
the hidden bomb.
HARWARE/SOFTWARE REQUIREMENTS
HARDWARE
Power Supply 12v DC
Micro controller - NODE MCU
IR SENSOR
METAL DETECTOR SENSORS
PIR SENSOR
MQ135 GAS SENSOR
STEPPER MOTOR
ULN
L298 H BRIDGE
DC MOTORS
CLAMPS & WHEELS
LASER GUN ETC
SOFTWARE
ANDROID SDK 1.5 OR ABOVE.
ECLIPSE IDE
JAVA
EMBEDDED C
EMBEDDED JAVA
KEIL-C COMPILER
FLASH MAGIC BURNER SOFTWARE
DESIGN:
The word system is possibly the most overused and abused term in the technical
lexicon. System can be defined as the “a set of fact, principles, rules etc., classified and
arranged in an orderly form so as to show a logical plan linking the various parts” here
the system design defines the computer based information system. The primary
objective is to identify user requirements and to build a system that satisfies these
requirements.
Design is much more creative process than analysis. Design is the first step in the
development of any system or product. Design can be defined as “the process of
applying various techniques and principles for the purpose of defining a device, a
process or a system in sufficient detail to permit its physical realization”.
It involves four major steps they are
1. Understanding how the system is working now;
2. Finding out what the system does now;
3. Understanding what the new system will do; and
4. Understanding how the new system will work.
So as to avoid these difficulties, a new system was designed to keep these requirements
in mind. Therefore the manual process operation has been changed into GUI based
environment, such that the user can retrieve the records in a user-friendly manner and it
is very easy to navigate to the corresponding information.
INPUT DESIGN
Input design is the bridge between users and information system.
It specifies the manner in which data enters the system for processing it can ensure the
reliability of the system and produce reports from accurate data or it may results in
output of error information.
OUTPUT DESIGN
Outputs from the computer system are rewired primary to communicate the results of
processing to the uses. They also used to provide a permanent copy of these results for
later consultation / verification. The main points on designing an output are deciding the
media, designing layout and report to be printed. The outputs are designed from the
system, are simple to read and interpre
DATA FLOW DIAGRAM
A DFD is a logical model of the system. The model does not
depend on the hardware, software and data structures of file organization. It tends to be
easy for even non-technical users to understand and thus serves as an excellent
communication tool.
DFD can be used to suggest automatic boundaries for proposed system at
pa very high level; the entire system is shown as a single logical process clearly
identifying the sources and destination of data. This is often referred to as zero level
DFD.
Then the processing is exploded into major processes and the same is
depicted as level one DFD.
Methodology diagram
Data request
Activate controller
Initialize sensor
Robot
START
If Wi-Fi
NO connect
ed
yes
Weight &
NO vibrationTh
ershold
YES
Send values
Compare
Sensor Server
Application
DATA FLOW DIAGRAM LEVEL 0
0.0
Application
Connect
Connect with server
Send
Travel path
Connect
Initialize Microcontroller
Initialize sensor
Alert message
Activity diagram
POSSIBLE IDENTIFICATION OF SOFTWARE DEVELOPMENT ACTIVITIES
SOFTWARE DEVELOPMENT AS APPLICATION DOMAIN: A USE CASE
MODEL
Software development
<<include>> <<include>>
<<include>>
Requirements
Process
Design
Process
Implementation
Process
Verification
& Validation
Process
Installation
Process
Operation &
Support Process
Requirements
document
Requirements
specification
Design activities
Software Data
System Interface Component Algorithm
specification structure
architecture specification specification specification
specification
Design products
Unit
testing
Module
testing
Sub-system
testing
System
testing
Acceptance
testing
PROTOTYPING
INCREMENTAL DEVELOPMENT
Define outline Assign requirements Design system
requirements to increments architecture
Determine objectives
Evaluate alternatives
alternatives and identify, resolve risks
constraints Risk
analysis
Risk
analysis
Risk
analysis Opera-
Prototype 3 tional
Prototype 2 protoype
Risk
REVIEW analysis Proto-
type 1
Requirements plan Simulations, models, benchmarks
Life-cycle plan Concept of
Operation S/W
requirements Product
design Detailed
Requirement design
Development
plan validation Code
Design Unit test
Integration
and test plan V&V Integr ation
Plan next phase test
Acceptance
Service test Develop, verify
next-level product
FEASIBILITY STUDY
Introduction
A feasibility analysis involves a detailed assessment of the need, value and practicality of
a p systems development... Feasibility analysis n forms the transparent decisions at
crucial points during the developmental process as we determine whether it is
operationally, economically and technically realistic to proceed with a particular course of
action.
Feasibility analysis can be used in each of the steps to assess the financial, technical and
operational capacity to proceed with particular activities.
Types of feasibility
A feasibility analysis usually involves a thorough assessment of the financial (value),
technical (practicality), and operational (need) aspects of a proposal. In systems
development projects, business managers are primarily responsible for assessing the
operational feasibility of the system, and information technology (IT) analysts are
responsible for assessing technical feasibility. Both then work together to prepare a cost–
benefit analysis of the proposed system to determine its economic feasibility.
Operational feasibility
A systems development project is likely to be operationally feasible if it meets the 'needs'
and expectations of the organisation. User acceptance is an important determinant of
operational feasibility. It requires careful consideration of:
corporate culture;
staff resistance or receptivity to change;
management support for the new system;
the nature and level of user involvement in the development and implementation of the
system; direct and indirect impacts of the new system on work practices;
anticipated performance and outcomes of the new system compared with the existing
system;
training requirements and other change management strategies; and
‘pay back’ periods (ie trade-off between long-term organisational benefits and short-term
inefficiencies during system development and implementation).
Technical feasibility
A systems development project may be regarded as technically feasible or practical if the
organization has the necessary expertise and infrastructure to develop, install, operate and
maintain the proposed system. Organizations will need to make this assessment based on:
Knowledge of current and emerging technological solutions;
Availability of technically qualified staff in-house for the duration of the project and
subsequent maintenance phase;
Availability of infrastructure in-house to support the development and maintenance of the
proposed system;
Where necessary, the financial and/or technical capacity to procure appropriate
infrastructure and expertise from outside;
Capacity of the proposed system to accommodate increasing levels of use over the
medium term;
The capacity of the proposed system to meet initial performance expectations and
accommodate new functionality over the medium term.
Economic feasibility
A systems development project may be regarded as economically feasible or good value
to the organization if its anticipated benefits outweigh its estimated costs. Many
development costs are easier to identify. These costs may include the time, budget and
staff resources invested during the design and implementation phase, as well as
infrastructure, support, training and maintenance costs incurred after implementation.
Nonetheless, it can also be difficult to accurately quantify project costs when new
technologies and complex systems are involved. In these high-risk situations it may be
appropriate to use sophisticated cost-benefit analysis tools to make appropriate
assessments of financial feasibility.
Days-180
Gantt chart
40 45 50 20 25
Analysis
Design
Implementation
Testing
Maintenance
Completed
Total Number of days to complete: 180 Days
Implementation
Create/ Delete
Admin Module
User
2 4 5 Testing
20 4 25
All operation
40
Analysis
Assuming the organization average productivity for system of this type is 1620 LOC/pm
Based on the burden labor rate of Rs. 7000 per month, the cost per line of code is
approximately Rs. 4.00
SOFTWARE REQUIREMENTS
ARDUINO IDE
Arduino first and foremost is an open-source computer hardware and software company.
The Arduino Community refers to the project and user community that designs and
utilizes microcontroller-based development boards. These development boards are known
as Arduino Modules, which are open-source prototyping platforms. The simplified
microcontroller board comes in a variety of development board packages.
The most common programming approach is to use the Arduino IDE, which utilizes the C
programming language. This gives you access to an enormous Arduino Library that is
constantly growing thanks to open-source community.
Arduino IDE is not: AVR Studio (Yes, we know you loved EE 346, but unfortunately
you won’t be utilizing Assembly Language)
Arduino Uno dev. board (Fritzing part graphic)
Find out all the information you ever wanted to know about Arduino here:
https://learn.sparkfun.com/tutorials/what-is-an-arduino Also, checkout sparkfun’s
Arduino Buying Guide for further information on available dev. boards:
https://www.sparkfun.com/arduino_guide
Download Arduino Integrated Design Environment (IDE) here (Most recent version:
1.6.5): https://www.arduino.cc/en/Main/Software This is the Arduino IDE once it’s been
opened. It opens into a blank sketch where you can start programming immediately. First,
we should configure the board and port settings to allow us to upload code. Connect your
Arduino board to the PC via the USB cable.
Board Setup
You have to tell the Arduino IDE what board you are uploading to. Select the
Toolspulldown menu and go to Board.This list is populated by default with the currently
available Arduino Boards that are developed by Arduino. If you are using an Uno or an
Uno-Compatible Clone (ex. Funduino, SainSmart, IEIK, etc.), select Arduino Uno. If you
are using another board/clone, select that board.
BLYNK
Blynkwas designed for the Internet of Things. It can control hardware remotely, it can
display sensor data, it can store data, vizualize it and do many other cool things.
There are three major components in the platform:
Blynk App - allows to you create amazing interfaces for your projects using various
widgets we provide.
Blynk Server - responsible for all the communications between the smartphone and
hardware. You can use our Blynk Cloud or run your private Blynk server locally. It’s
open-source, could easily handle thousands of devices and can even be launched on a
Raspberry Pi.
Blynk Libraries - for all the popular hardware platforms - enable communication with
the server and process all the incoming and outcoming commands.
Now imagine: every time you press a Button in the Blynk app, the message travels
to space the Blynk Cloud, where it magically finds its way to your hardware. It works the
same in the opposite direction and everything happens in a blynk of an eye.
Features
Similar API & UI for all supported hardware & devices
Connection to the cloud using:
o WiFi
o Bluetooth and BLE
o Ethernet
o USB (Serial)
o GSM
Set of easy-to-use Widgets
Direct pin manipulation with no code writing
Easy to integrate and add new functionality using virtual pins
History data monitoring via SuperChart widget
Device-to-Device communication using Bridge Widget
Sending emails, tweets, push notifications, etc.
new features are constantly added!
You can find example sketches covering basic Blynk Features. They are included in the
library. All the sketches are designed to be easily combined with each other.
At this point you might be thinking: “Ok, I want it. What do I need to get started?” –
Just a couple of things, really:
1. Hardware.
An Arduino, Raspberry Pi, or a similar development kit.
Blynk works over the Internet. This means that the hardware you choose should be able
to connect to the internet. Some of the boards, like Arduino Uno will need an Ethernet or
Wi-Fi Shield to communicate, others are already Internet-enabled: like the ESP8266,
Raspberri Pi with WiFi dongle, Particle Photon or SparkFunBlynk Board. But even if you
don’t have a shield, you can connect it over USB to your laptop or desktop (it’s a bit more
complicated for newbies, but we got you covered). What’s cool, is that the list of
hardware that works with Blynk is huge and will keep on growing.
2. A Smartphone.
The Blynk App is a well-designed interface builder. It works on both iOS and Android.
Getting Started
Let’s get you started in 5 minutes (reading doesn’t count!). We will switch on an LED
connected to your Arduino using the Blynk App on your smartphone.
Connect an LED as shown here:
Getting Started With TheBlynk App
1. Create a Blynk Account
After you download the Blynk App, you’ll need to create a New Blynk account. This
account is separate from the accounts used for the Blynk Forums, in case you already
have one.
We recommend using a real email address because it will simplify things later.
Auth Token
Auth Token is a unique identifier which is needed to connect your hardware to your
smartphone. Every new project you create will have its own Auth Token. You’ll get Auth
Token automatically on your email after project creation. You can also copy it manually.
Click on devices section and selected required device :
NOTE: Don’t share your Auth Token with anyone, unless you want someone to have
access to your hardware.
It’s very convenient to send it over e-mail. Press the e-mail button and the token will be
sent to the e-mail address you used for registration. You can also tap on the Token line
and it will be copied to the clipboard.
Now press the “Create” button.
Add a Widget
Your project canvas is empty, let’s add a button to control our LED.
Tap anywhere on the canvas to open the widget box. All the available widgets are located
here. Now pick a button.
Widget Box
Drag-n-Drop - Tap and hold the Widget to drag it to the new position.
Widget Settings - Each Widget has it’s own settings. Tap on the widget to get to them.
Run The Project
When you are done with the Settings - press the PLAY button. This will switch you from
EDIT mode to PLAY mode where you can interact with the hardware. While in PLAY
mode, you won’t be able to drag or set up new widgets, press STOP and get back to
EDIT mode.
You will get a message saying “Arduino UNO is offline”. We’ll deal with that in the next
section.
Blynking
Go back to the Blynk App, push the button and turn the LED on and off! It should be
Blynking
Web requirements
Languages
HTML
HTML is a hypertext markup language which is in reality a backbone of any
website. Every website can’t be structured without the knowledge of html. If we make our
web page only with the help of html, than we can’t add many of the effective features in a
web page, for making a web page more effective we use various platforms such as CSS.
So here we are using this language to make our web pages more effective as well as
efficient. And to make
CSS
CSS stands for "Cascading Style Sheet" Cascading style sheets are used to format
the layout of Web pages. They can be used to define text styles, table sizes, and other
aspects of Web pages that previously could only be defined in a page's HTML. The basic
purpose of CSS is to separate the content of a web document (written in any markup
language) from its presentation (that is written using Cascading Style Sheets). There are
lots of benefits that one can extract through CSS like improved content accessibility,
better flexibility and moreover, CSS gives a level of control over various presentation
characteristics of the document. It also helps in reducing the complexity and helps in
saving overall presentation time. CSS gives the option of selecting various style schemes
and rules according to the requirements and it also allows the same HTML document to
be presented in more than one varying style.
JAVASCRIPT
JavaScript is considered to be one of the most famous scripting languages of all
time. JavaScript, by definition, is a Scripting Language of the World Wide Web. The
main usage of JavaScript is to add various Web functionalities, Web form validations,
browser detections, creation of cookies and so on. JavaScript is one of the most popular
scripting languages and that is why it is supported by almost all web browsers available
today like Firefox, We used the browser Opera or Internet Explorer. JavaScript is
considered to be one of the most powerful scripting languages in use today. It is often
used for the development of client-side web development. JavaScript is used to make web
pages more interactive and dynamic. JavaScript is a light weight programming language
and it is embedded directly into the HTML code. JavaScript, as the name suggests, was
influenced by many languages, especially Java.
PHP
Precisely, PHP is a very powerful server-side scripting language for developing
dynamic web applications. Using PHP, one can build interactive and dynamic websites
with ease. PHP script can be embedded straight into the heart of html code. PHP is
compatible with various web servers like Apache and the Microsoft’s IIS as well. All the
PHP scripts are executed on the server and it supports various databases like MySQL,
Oracle, Solid, Generic ODBC etc.; however, it is mostly used with MySQL.
MySQL
SQL stands for Structured Query Language. MySQL lets us access and
manipulate databases. MySQL is an ANSI (American National Standards Institute)
standard. MySQL can execute queries against a database ,retrieve data from a database,
insert records in a database, update records in a database, delete records from a database,
create new databases , create new tables in a database , create stored procedures in a
database, create views in a database, set permissions on tables, procedures, and views.
Software Configuration:
Web based application
Operating system : Windows XP/7/10
IDE : Sublime text
Front-end : Bootstrap framework
Server side programming : PHP
Client side scripting : Ajax, Javascript
Database : MySQLi
Server : Apache server
Tool Kit : Google Chrome developer tools
Other libraries : JQuery
● System Design
The System design is the phase where the system functionality is outlined using
the specifications provided in the previous chapters. This system design elaborates the
proposed system with the flow diagrams and the block diagrams of the technique used.
By using the system design the quality of the software can be predicted. Thus it is one
among the critical phases to be carried during the implementation of any project.
The modules and their specifications are also discussed in this chapter. This phase
builds the communication between the requirement and the implementation phase.
DESIGN REQUIREMENTS
The Requirements are determined in light of the craved objectives, the outline
objectives are utilized to distinguish the nature of the framework created or executed. The
majority of the objectives that are really planned falls under non-functional prerequisites
and even the application area take after the same arrangement of criteria. The System
outline is the most basic component influencing the nature of the product and has real
effect on the later stage, particularly on the testing and upkeep. This is used to identify the
modules of the system, specifications and detailed development of these modules that
specifies the interaction with each other to produce the desired output. Once the system
has been designed all major types, modules and expected output, the specifications for
implementing are decided.
This deals with data flow diagram, detailed flow graph, requirement analysis, and
the design process of the front end and back end design of the student information
management system.
Database Design
It is fair to say that database play a critical role in almost all areas where computers are
used, including Business, electronic commerce, engineering, medicine, law, education,
and library science. A database is collection of a related data. A database has the
following implicit properties:
● Design Notations
Sequence Diagram:
NODEMCU
The ESP8266 is the name of a micro controller designed by Espressif Systems. The
ESP8266 itself is a self-contained WiFi networking solution offering as a bridge from
existing micro controller to WiFi and is also capable of running self-contained
applications. This module comes with a built in USB connector and a rich assortment of
pin-outs. With a micro USB cable, you can connect NodeMCUdevkit to your laptop and
flash it without any trouble, just like Arduino. It is also immediately breadboard friendly.
Specification:
1. • Voltage:3.3V.
2. • Wi-Fi Direct (P2P), soft-AP.
3. • Current consumption: 10uA~170mA.
4. • Flash memory attachable: 16MB max (512K normal).
5. • Integrated TCP/IP protocol stack.
6. • Processor: Tensilica L106 32-bit.
7. • Processor speed: 80~160MHz.
8. • RAM: 32K + 80K.
9. • GPIOs: 17 (multiplexed with other functions).
10. • Analog to Digital: 1 input with 1024 step resolution.
11. • +19.5dBm output power in 802.11b mode
12. • 802.11 support: b/g/n.
13. • Maximum concurrent TCP connections: 5.
Scroll down to ‘esp8266 by ESP8266 Community ’ and click “Install” button to install
the ESP8266 library package. Once installation completed, close and re-open Arduino
IDE for ESP8266 library to take effect.
Setup ESP8266 Support When you've restarted Arduino IDE, select ‘Generic ESP8266
Module’ from the ‘Tools’ -> ‘Board:’ dropdown menu.
Select ‘115200’ baud upload speed is a good place to start - later on you can try higher
speeds but 115200 is a good safe place to start.
Go to your Windows ‘Device Manager’ to find out which Com Port ‘USB-Serial CH340’
is assigned to. Select the matching COM/serial port for your CH340 USB-Serial interface.
Blink Test
We'll begin with the simple blink test.
Enter this into the sketch window (and save since you'll have to).
Connect a LED as shown in
void setup()
{
pinMode(5, OUTPUT); // GPIO05, Digital Pin D1
}
void loop()
{
digitalWrite(5, HIGH);
delay(900);
digitalWrite(5, LOW);
delay(500);
}
Now you'll need to put the board into bootload mode. You'll have to do this before each
upload. There is no timeout for bootload mode, so you don't have to rush!
• Hold down the ‘Flash’ button.
• While holding down ‘ Flash’, press the ‘RST’ button.
• Release ‘RST’, then release ‘Flash
• When you release the ‘RST’ button, the blue indication will blink once, this means its
ready to bootload.
GRAPHIC LCD DISPLAY WITH I2C
A liquid crystal display is a thin, flat electronic visual display that uses the
light modulating properties of liquid crystals (LCs). LCs does not emit light
directly.
The primary factor was size, an LCD consisting of primarily with some
liquid crystal material between them of two glass plates. There is no bulk
amount picture tube. This gives LCDs practical for applications where size
(as well as weight) is necessary.
In general, LCDs uses very low power than the cathode-ray tube (CRT)
counterparts. Many LCDs are ruminative, means that they use only
atmosphere light to illuminate the display. Even displays that do consume
much less power than CRT devices require an external light source (i.e.
computer displays).
10K VR 1
3 1 +5V
U1
2
VSS
VD D
V0
ALC D _R S RS
R /W
ALC D _E E
D B0 D B0
D B1 D B1
D B2 D B2
D B3 D B3
D B4 D B4
D B5 D B5
D B6 D B6
D B7 D B7
LED A
LED K
16x 2 ALPH A LC D
Make sure that 5V and GND lines are properly connected otherwise you may
end up in damaging parallel port.
If you want backlight than connect pin 15 of LCD to 5V and pin 16 of LCD
to GND. By adjusting 10k resistor make pin 3 of LCD at 0V. If connections
are proper you will see this after power on.
The Graphic LCD display used in this project is 128x64 pixels, where it has 128
columns and 64 rows. Supply voltage is 5V matching the voltage for most
microcontrollers. The LCD controller is Samsung KS0108B. JHD12864J module uses 8-
bit data bus (DB0 – DB7). Nevertheless, it is a straight forward module comparing to
other LCD series like T6963C. JHD12864J is split logically in half with controller #1
(CS1) driving the left half of the display, and controller #2 (CS2) driving the right half.
These two portions map directly to the physical display area.
RS is equivalent to PIN D/I as stated on JHD12864J data sheet. It controls data or
command action (D/I=LOW _ command; D/I=HIGH _ data). Horizontal pixel addressed
by Y address counter (0-63). The nomenclature is not the same as our convention of
Cartesian coordinate system (x-y) learned in secondary school. The Y address indicates
the column position in the horizontal direction. Why only 64 pixels but not 128 pixels?
Because the LCD is spitted logically in half with controller #1 (CS1) driving the left half
of the display, and
controller #2 (CS2) driving the right half. We need to handle each half individually.
The term Page refers to 8-pixel vertically. There are 8 pages ranging from 0 to 7,
thus matching a vertical matrix size of 64 pixels. Refer to Figure 8.1.2 for
illustration.
R/W controls data READ/WRITE (R/W=LOW _ write; R/W=HIGH _ read). The
reason of writing bytes to the LCD is obvious: we need to display something on the LCD.
However, being capable of reading from the module is also important because it is only
possible to write to a whole Page in 8-bit format. As an example, we want to display a
single pixel at the 10th column on 3rd pixel down the top Page where there is an existing
byte 0xAB. If we simply output 0x40 (0b0000 0100), the byte pattern 0xAB would be
erased. One possible way is to perform a data read first, store the byte in background to a
temporary variable, and do a bitwise OR operation with 0x40. This makes a new byte
value of 0xAF.
Besides D/I, and R/W pins, there are other control pins to take care including CS1,
CS2, E, and RST pins. Direct low-level access and signal timing requirement will be
taken care by hardware dependent functions. The application interface function (API) is
hardware-independent. This idea is to allow easy porting to other microcontrollers since
we only have to re-write the hardware interface for other microcontrollers or compliers.
History
When connecting multiple devices to a microcontroller, the address and data lines of each
devices were conventionally connected individually. This would take up precious pins on
the microcontroller, result in a lot of traces on the PCB, and require more components to
connect everything together. This made these systems expensive to produce and
susceptible to interference and noise.
To solve this problem, Philips developed Inter-IC bus, or I2C, in the 1980s. I2C is a low-
bandwidth, short distance protocol for on board communications. All devices are
connected through two wires: serial data (SDA) and serial clock (SCL).
Because all communication takes place on only two wires, all devices must have a unique
address to identify it on the bus. Slave devices have a predefinied address, but the lower
bits of the address can be assigned to allow for multiples of the same devices on the bus.
Top
Theory of Operation
I2C has a master/slave protocol. The master initiates the communication. The sequence of
events are:
1. The Master device issues a start condition. This condition informs all the slave
devices to listen on the serial data line for instructions.
2. The Master device sends the address of the target slave device and a read/write
flag.
3. The Slave device with the matching address responds with an acknowledgement
signal.
4. Communcation proceeds between the Master and the Slave on the data bus.
Both the master and slave can receive or transmit data depending on whether the
communcation is a read or write. The transmitter sends 8-bits of data to the
receiver which replies with a 1-bit acknowledgement.
5. When the communication is complete, the master issues a stop condition
indicating that everything is done.
Top
Features
I2C has many features other important features worth mentioning. It supports multiple
data speeds: standard (100 kbps), fast (400 kbps) and high speed (3.4 Mbps)
communications.
For more information about other features, take a look at the references at the end of this
article.
HARDWARE REQUIREMENTS
2.7 H-Bridge
How do we make a motor turn?
You take a battery; hook the positive side to one side of your DC motor. Then you
connect the negative side of the battery to the other motor lead. The motor spins forward.
If you swap the battery leads the motor spins in reverse.
Ok, that's basic. Now lets say you want a Micro Controller Unit (MCU) to control the
motor, how would you do it?
Figure 2.11 Connections for clockwise rotation of motor
If you connect this circuit to a small hobby motor you can control the motor with a
processor (MCU, etc.) Applying a logical one, (+12 Volts in our example) to point A
causes the motor to turn forward. Applying a logical zero, (ground) causes the motor to
stop turning (to coast and stop).
Hook the motor up in this fashion and the circuit turns the motor in reverse when
you apply a logical one (+12Volts) to point B. Apply a logical zero, which is usually a
ground, causes the motor to stop spinning.
If you hook up these circuits you can only get the motor to stop or turn in one
direction, forward for the first circuit or reverse for the second circuit.
NOTE: If you connect up these relay circuits, remember to put a diode across the coil of
the relay. This will keep the spike voltage (back EMF), coming out of the coil of the relay,
from getting into the MCU and damaging it. The anode, which is the arrow side of the
diode, should connect to ground. The bar, which is the Cathode side of the diode, should
connect to the coil where the MCU connects to the relay.
You can also pulse the motor control line, (A or B) on and off. This powers the
motor in short burst and gets varying degrees of torque, which usually translates into
variable motor speed.
But if you want to be able to control the motor in both forward and reverse with a
processor, you will need more circuitry. You will need an H-Bridge.
Let's start with the name, H-bridge. Sometimes called a "full bridge" the H-bridge
is so named because it has four switching elements at the "corners" of the H and the
motor forms the cross bar. The basic bridge is shown in the figure to the right.
The "high side drivers" are the relays that control the positive voltage to the
motor. This is called sourcing current. he "low side drivers" are the relays that control the
negative voltage to sink current to the motor. "Sinking current" is the term for connecting
the circuit to the negative side of the power supply, which is usually ground.
The switches are turned on in pairs, either high left and lower right, or lower left and high
right, but never both switches on the same "side" of the bridge. If both switches on one
side of a bridge are turned on it creates a short circuit between the battery plus and battery
minus terminals. This phenomena is called shoot through in the Switch-Mode Power
Supply (SMPS) literature. If the bridge is sufficiently powerful it will absorb that
To power the motor, you turn on two switches that are diagonally opposed. In the
picture to the right, imagine that the high side left and low side right switches are turned
on.
If you turn on the two upper circuits, the motor resists turning, so you effectively
have a breaking mechanism. The same is true if you turn on both of the lower circuits.
This is because the motor is a generator and when it turns it generates a voltage. If the
terminals of the motor are connected (shorted), then the voltage generated counteracts the
motors freedom to turn. It is as if you are applying a similar but opposite voltage to the
one generated by the motor being turned. Vis-ã-vis, it acts like a brake.
To be nice to your transistors, you should add diodes to catch the back voltage that
is generated by the motor's coil when the power is switched on and off. This flyback
voltage can be many times higher than the supply voltage! If you don't use diodes, you
could burn out your transistors.
Figure 2.17 Semiconductor H-Bridge using diodes
Mosfets are much more efficient, they can provide much more current and not get
as hot. They usually have the flyback diodes built in so you don't need the diodes
anymore. This helps guard against flyback voltage frying your MCU.
To use Mosfets in an H-Bridge, you need P-Channel Mosfets on top because they
can "source" power, and N-Channel Mosfets on the bottom because then can "sink"
power. N-Channel Mosfets are much cheaper than P-Channel Mosfets, but N-Channel
Mosfets used to source power require about 7 volts more than the supply voltage, to turn
on. As a result, some people manage to use N-Channel Mosfets, on top of the H-Bridge,
by using cleaver circuits to overcome the breakdown voltage.
It is important that the four quadrants of the H-Bridge circuits be turned on and
off properly. When there is a path between the positive and ground side of the H-Bridge,
other than through the motor, a condition exists called "shoot through". This is basically a
direct short of the power supply and can cause semiconductors to become ballistic, in
circuits with large currents flowing.
There are H-bridge chips available that are much easier, and safer, to use than
designing your own H-Bridge circuit.
The L298 has 2 h-bridges on board, can handle 1amp and peak current draws to
about 3amps. You often see motors between the size a of 35 mm film plastic canister and
a coke can, driven by this type H-Bridge. The LMD18200 has one h-bridge on board, can
handle about 2 or 3 amps and can handle a peak of about 6 amps. This H-Bridge chip can
usually handle an average motor about the size of a coke. There are several more
commercially designed H-Bridge chips as well.
2.8 DC Motors
In the above diagram, you can see two magnets in the motor: The armature (or
rotor) is an electromagnet, while the field magnet is a permanent magnet (the field
magnet could be an electromagnet as well, but in most small motors it isn't in order to
save power).
To understand how an electric motor works, the key is to understand how the
electromagnet works. (See How Electromagnets Work for complete details.)
An electromagnet is the basis of an electric motor. You can understand how things
work in the motor by imagining the following scenario. Say that you created a simple
electromagnet by wrapping 100 loops of wire around a nail and connecting it to a battery.
The nail would become a magnet and have a north and south pole while the battery is
connected.
You can see that this half-turn of motion is simply due to the way magnets
naturally attract and repel one another. The key to an electric motor is to then go one step
further so that, at the moment that this half-turn of motion completes, the field of the
electromagnet flips. The flip causes the electromagnet to complete another half-turn of
motion. You flip the magnetic field just by changing the direction of the electrons flowing
in the wire (you do that by flipping the battery over). If the field of the electromagnet
were flipped at precisely the right moment at the end of each half-turn of motion, the
electric motor would spin freely.
The armature has an axle, and the commutator is attached to the axle. In the
diagram to the right, you can see three different views of the same armature: front, side
and end-on. In the end-on view, the winding is eliminated to make the commutator more
obvious. You can see that the commutator is simply a pair of plates attached to the axle.
These plates provide the two connections for the coil of the electromagnet.
The "flipping the electric field" part of an electric motor is accomplished by two
parts: the commutator and the brushes.
When you put all of these parts together, what you have is a complete electric
motor:
In this figure, the armature winding has been left out so that it is easier to see the
commutator in action. The key thing to notice is that as the armature passes through the
horizontal position, the poles of the electromagnet flip. Because of the flip, the north pole
of the electromagnet is always above the axle so it can repel the field magnet's north pole
and attract the field magnet's south pole.
If you ever have the chance to take apart a small electric motor, you will find that
it contains the same pieces described above: two small permanent magnets, a
commutator, two brushes, and an electromagnet made by winding wire around a piece of
It is possible to have any number of poles, depending on the size of the motor and
the specific application it is being used in.
The motor being dissected here is a simple electric motor that you would typically
find in a toy:
You can see that this is a small motor, about as big around as a dime. From the
outside you can see the steel can that forms the body of the motor, an axle, a nylon end
cap and two battery leads. If you hook the battery leads of the motor up to a flashlight
battery, the axle will spin. If you reverse the leads, it will spin in the opposite direction.
Here are two other views of the same motor. (Note the two slots in the side of the steel
can in the second shot -- their purpose will become more evident in a moment.)
The nylon end cap is held in place by two tabs that are part of the steel can. By
bending the tabs back, you can free the end cap and remove it. Inside the end cap are the
motor's brushes. These brushes transfer power from the battery to the commutator as the
motor spins.
The axle holds the armature and the commutator. The armature is a set of
electromagnets, in this case three. The armature in this motor is a set of thin metal plates
stacked together, with thin copper wire coiled around each of the three poles of the
armature. The two ends of each wire (one wire for each pole) are soldered onto a
terminal, and then each of the three terminals is wired to one plate of the commutator.
The figures below make it easy to see the armature, terminals and commutator.
Figure 2.26 Other motor parts
The final piece of any DC electric motor is the field magnet. The field magnet in this
motor is formed by the can itself plus two curved permanent magnets.
One end of each magnet rests against a slot cut into the can, and then the retaining clip
presses against the other ends of both magnets.
CHAPTER 4
Gear ratio of 50:1 provides a good torque for easy effortless elevator motion.
• Torque:2.7 KgF-cm
Two enable inputs are provided to enable or disable the device independently of
the input signals.
Thermal Shutdown
In order to activate L298, enable pin must be set to high. When C=H; D=L, the motor
rotates in clockwise direction (upward movement of elevator).When C=L; D=H, the motor
rotates in Clockwise direction (Downward movement of elevator). When C=D, motor stops
rotating (Elevator stops moving).
A Servo is a small device that has an output shaft. This shaft can be positioned to
specific angular positions by sending the servo a coded signal. As long as the coded signal
exists on the input line, the servo will maintain the angular position of the shaft. As the coded
signal changes, the angular position of the shaft changes.
• Position-sensing mechanism(pot)
• DC Motor Driver
• Error Amplifier
• Speed : 60 RPM
• Torque : 5Kgf-cm
Servo Motor has 3 wires. Each wire has unique color and represents following:
The circuit is tuned to produce a useful voltage over a 1ms to 2ms period. The output
voltage is buffered and so does not decay significantly between control pulses so the
length of time between pulses is not critical.
The current rotational position of the servo motor output shaft is read by a sensor.
This is normally a potentiometer (variable resistor) which produces a voltage that is
related to the absolute angle of the output shaft.
The position sensor then feeds its current value into the Error Amplifier which compares the
current position with the commanded position from the pulse width to voltage converter
The error amplifier is an operational amplifier with negative feedback. It will always
try to minimize the difference between the inverting (negative) and non-inverting
(positive) inputs by driving its output is the correct direction.
The output of the error amplifier is either a negative or positive voltage representing
the difference between its inputs. The greater the difference the greater the voltage.
The error amplifier output is used to drive the motor; If it is positive the motor will
turn in one direction, if negative the other. This allows the error amplifier to reduce
the difference between its inputs (thus closing the negative feedback loop) and so
make the servo go to the commanded position.
The servo normally contains a single integrated circuit and a hand full of discreet
components to implement the entire control system.
The control wire (Orange) is used to communicate the angle. The angle is determined
by the duration of a pulse that is applied to the control wire. This is called Pulse Coded
Modulation. The servo expects to see a pulse every 20 milliseconds (.02 seconds). The
length of the pulse will determine how far the motor turns. A 1.5 millisecond pulse, for
example, will make the motor turn to the 90 degree position (often called the neutral
position). If the pulse is shorter than 1.5 ms, then the motor will turn the shaft to closer
to 0 degrees. If the pulse is longer than 1.5ms, the shaft turns closer to 180 degrees.
CHAPTER 5
Relays are amazingly simple devices. There are four parts in every relay:
Electromagnet
Spring
Relays allow one circuit to switch a second circuit which can be completely separate
from the first.
For example a low voltage battery circuit can use a relay to switch a 230V AC mains
circuit. There is no electrical connection inside the relay between the two circuits; the link is
magnetic and mechanical.
The coil of a relay passes a relatively large current, typically 30mA for a 12V relay, but
it can be as much as 100mA for relays designed to operate from lower voltages. Most ICs
(chips) cannot provide this current and a transistor is usually used to amplify the small IC
current to the larger value required for the relay coil.
Relays are usually SPDT or DPDT but they can have many more sets of switch
contacts, for example relays with 4 sets of changeover contacts are readily available. Most
relays are designed for PCB mounting but you can solder wires directly to the pins providing
you take care to avoid melting the plastic case of the relay.
The supplier's catalogue should show you the relay's connections. The coil will be
obvious and it may be connected either way round. Relay coils produce brief high voltage
'spikes' when they are switched off and this can destroy transistors and ICs in the circuit. To
prevent damage you must connect a protection diode across the relay coil.
The animated picture shows a working relay with its coil and switch contacts. You can
see a lever on the left being attracted by magnetism when the coil is switched on. This lever
moves the switch contacts. There is one set of contacts (SPDT) in the foreground and another
behind them, making the relay DPDT.
The relay's switch connections are usually labeled COM, NC and NO:
COM = Common, always connect to this; it is the moving part of the switch.
NC = Normally Closed, COM is connected to this when the relay coil is off.
NO = Normally Open, COM is connected to this when the relay coil is on.
This is similar to SPDT switch but it has pair of Normally Open (NO) and Normally
Closed (NC) contacts. When the relay is energized both side contacts will operate at a time.
Thus it is more use full at many applications
As shown above initially the motor is connected to 12V supply. A DPDT relay
requires 12V DC and 35mA of Current to operate. An amplifier stage is required to drive
DPDT relay, since microcontroller I/O provides only 25mA of current. ULN2803 IC is used
for this purpose. It accepts signal from the microcontroller and amplifies it operate DPDT
relay. When microcontroller output becomes high, ULN 2803 turn on the DPDT relay. Hence
Motor gets connected to Supply and starts rotating.
A light-emitting diode (LED) is a semiconductor device that emits visible light when an
electric current passes through it. In this project Light Emitting Diode is used as a Visual
indicator to represent the condition of the elevator.
The IR transmitters are connected to supply, so that they will transmit high signal all
the time. The IR receivers are connected to the comparator circuit, to get digital signals. A
low power operational amplifier LM324 IC has been used to develop a comparator circuit.
Two set of LM324 IC has been used in this project. The circuit diagram of the comparator is
shown below.
+5V +5V
1
1
R3 R3 R3 R3
1K 10K 10K 1K
2
2
U 23 LM324
1
1
R x 1_1 1 14 R x 2_2
U 20 IR 1 OUT A OUT D IR 2 U 17
1
Tx 1 _ 1 R x 1_1 R x 2_2 Tx 2 _ 2
VR 2 2 A D
10K
-
2
2
2 13
+5V IN A - IN D -
3
3 12
4 IN A + IN D + 11 +5V
+5V 5 V+ V- 10
IN B + IN C +
6 9
IN B - IN C -
1
1
-
R3 R3
R3 R3 B C 10K 1K
1K 10K
2
R x 1_2 7 8 R x 2_1
OUT B OUT C
2
1
1
IR 2 U 17
U 17 IR 2 R x 2_1 Tx 2 _ 1
Tx 1 _ 2 R x 1_2
2
2
MAX 232
POWER SUPPLY
An AC to DC adaptor as been used to get DC input for the mother board. In mother
board, we have developed a 5V regulator circuit, which is needed for microcontroller as
supply voltage. IR transmitters are also connected to 5V supply, so that they always transmit
high signal. LM7805 is used for 5V regulated supply.
+12V
LED 1
1 R1 2 1 2
1K
1 LED
GN D
3 VIN VOU T
1
3 PIN D C SO C KET
1
BR ID G E 2 C4 +C2
2
C3+ 10uF /63V
470uF /35V 0.1uF
3
2
2
The LM78XX series of three terminal positive regulators are available in the TO-220
package and with several fixed output voltages, making them useful in a wide range of
applications. Each type employs internal current limiting, thermal shut down and safe
operating area protection, making it essentially indestructible. If adequate heat sinking is
provided, they can deliver over 1A output current. Although designed primarily as fixed
voltage regulators, these devices can be used with external components to obtain
adjustable voltages and currents.
Features
Output current in excess of 0.5A
No external components
Internal thermal overload protection
Internal short circuit current-limiting
Output transistor safe-area compensation
Available in TO-220, TO-39, and TO-252 D-PAK packages
Output voltages of 5V, 12V, and 15V
TESTING
The testing is to discover errors. Testing is the process of trying to discover every
conceivable fault or weakness in a work product. It provides a way to check the functionality
of components, sub-assemblies, assemblies and/or a finished product It is the process of
exercising software with the intent of ensuring that the Software system meets its
requirements and user expectations and does not fail in an unacceptable manner. There are
various types of test. Each test type addresses a specific testing requirement.
● Functional testing
Functional tests provide systematic demonstrations that functions tested are available as
specified by the business and technical requirements, system documentation, and user
manuals.
Functional testing is centered on the following items:
Valid Input : identified classes of valid input must be accepted.
Invalid Input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
● Structural testing
Structural testing ensures that the entire integrated software structure meets requirements. It
tests a configuration to ensure known and predictable results. An example of system testing is
the configuration-oriented system integration test. Structural testing is based on process
descriptions and flows, emphasizing pre-driven process links and integration points.
● Levels of testing
Performance Testing
The Performance test ensures that the output be produced within the time limits, and
the time taken by the system for compiling, giving response to the users and request
being send to the system for to retrieve the results.
Software integration testing is the incremental integration testing of two or more integrated
software components on a single platform to produce failures caused by interface defects.
The task of the integration test is to check that components or software applications, e.g.
components in a software system or – one step up – software applications at the company
level – interact without error.
System Testing
System testing ensures that the entire integrated software system meets requirements. It tests
a configuration to ensure known and predictable results. An example of system testing is the
configuration oriented system integration test. System testing is based on process descriptions
and flows, emphasizing pre-driven process links and integration points.
● Testing the project
Testing was done flowing each testing method mentioned and at last Unit testing was done.
Unit testing involves the design of test cases that validate that the internal program logic is
functioning properly, and that program input produces valid outputs. All decision branches
and internal code flow should be validated. It is the testing of individual software units of the
application .it is done after the completion of an individual unit before integration. This is a
structural testing, that relies on knowledge of its construction and is invasive. Unit tests
perform basic tests at component level and test a specific business process, application,
and/or system configuration. Unit tests ensure that each unique path of a business process
performs accurately to the documented specifications and contains clearly defined inputs and
expected results
IMPLEMENTATION
Once the system has been designed, the next step is to convert the
designed one in to actual code, so as to satisfy the user requirements as excepted. If the
system is approved to be error free it can be implemented.
When the initial design was done for the system, the department was
consulted for acceptance of the design so that further proceedings of the system
development can be carried on. After the development of the system a demonstration was
given to them about working of the system. The aim of the system illustration was to
identify any malfunctioning of the system.
Implementation includes proper training to end-users. The implemented
software should be maintained for prolonged running of the software.
Initially the system was run parallel with manual system. The system
has been tested with data and has proved to be error-free and user-friendly. Training was
given to end -user about the software and its features.
MAINTENANCE
The term “software maintenance” is used to describe the software
engineering activities that occur following delivery of a software product to the customer.
The maintenance phase of the software life cycle is the time period in which a software
product performs useful work.Maintenance activities involve making enhancement to
software products, adapting products to new environments and correcting problems.
Software product enhancement may involve providing new functional capabilities,
improving user display and modes of interaction, and upgrading external documents.
Adaptation of software to a new environment may involve moving the software to a
different machine. Problem correction involves modification and revalidation of software to
correct errors. The enhancement of this project can be accomplished easily. That is, any
new functional capabilities can be added to the project by simply including the new module
in the homepage and giving a hyperlink to that module. Adaptation of this project to a new
environment is also performed easily.
Corrective Maintenance
Even with the best quality assurance activities, it is likely that they
customer will uncover defects in the software. Corrective maintenance changes the software
to correct defects.
Adaptive Maintenance
An activity that modifies the software to properly interface with a
changing environment. The system has been modified so that various change include to the
new system.
In case of Fund Transfer, adoptive maintenance has been
performed, that is in earlier system (character based UNIX system) changes are fixed and if
any new changes are to be included, was a difficult task. Now provisions are given so that
the user can define various changes. Such as it designed to accommodate the new change in
further.
Enhancement Maintenance
As software is used, the customer/user will recognize additional
functions that will provide benefit. Perceptive maintenance extends the software beyond its
original functional requirements.
In the case of visual cryptography ,system can be added new
functions such that the user can able to retrieve the information in a user friendly and it will
be very helpful for future development.
TESTING METHODOLOGIES:
3. Unit Testing
Unit Testing is the first level of dynamic testing and is first the responsibility of the
developers and then of the testers. Unit testing is performed after the expected test
results are met or differences are explainable /acceptable.
4. Parallel/Audit Testing
Testing where the user reconciles the output of the new system to the output of the
current system to verify the new system performs the operations correctly.
5. Functional Testing
Black-box type of testing geared to functional requirements of an application. Testers
should perform this type of testing.
6. Usability Testing
Testing for 'user-friendliness'. Clearly this is subjective and will depend on the
targeted end user or customer. User interviews, surveys, video recording of user
sessions, and other techniques can be used. Programmers and testers are usually not
appropriate as usability testers.
8. Integration Testing
Upon completion of unit testing, integration testing, which is, black box testing, will
begin. The purpose is to ensure distinct components of the application still work in
accordance to customer requirements. Test sets will be developed with the express
purpose of exercising the interfaces between the components. This activity is to be
carried out by the Test Team. Integration test will be termed complete when actual
results and expected results are either in line or differences are explainable/acceptable
based on user/management input.
9. System Testing
Upon completion of integration testing, the Test Team will begin system testing.
During system testing, which is a black box test, the complete system is configured in
a controlled environment to validate its accuracy and completeness in performing the
functions as designed. The system test will simulate production in that it will occur in
the "production-like" test environment and test all of the functions of the system that
will be required in production. The Test Team will complete the system test.
Prior to the system test, the unit and integration test results will be reviewed by
Software Quality Assurance (SQA) to ensure all problems have been resolved. It is
important for higher level testing efforts to understand unresolved problems from the
lower testing levels. System testing is deemed complete when actual results and
expected results are either in line or differences are explainable/acceptable based on
client input.
TESTING FUNDAMENTALS
UNIT TESTING
Unit testing focuses the verification effort on the smallest
unit of S/W design i.e., the module. The unit testing is always white-box oriented
and the step can be conducted in parallel for modules.
During unit test, testers can use the same project or projects
as the developers, if functional units organize the project, or separate projects have
been created for functional units. The project or projects can also be exported, so
unit test can take place in a variety of environments and on a variety of platforms.
INTEGRATION TESTING
Integration testing is a systematic technique for constructing the
program structure while at the same time conducting test to uncover errors
associated with interfacing. The objective is to take unit-tested modules and build a
program structure that has been dictated by design.
TOP-DOWN INTEGRATION
1. This method is an incremental approach to the
construction of program structure. Modules are integrated by moving downward
through the control hierarchy, beginning with the main program module.
Importing the test project and setting up the testing environment
The process of importing a test project
and setting up a testing environment is the same as the process for importing a
project and setting up the environment for development.
Adding test scripts and test data to the project
You may need to add some items, such
as test scripts, to the project. In addition, you may need to add connection strings to
database accounts containing test data.
Remember that you can automate the running of test
scripts just as you can automate actions associated with the modules in your
application.
Modifying actions and macros to facilitate testing
If actions specifying "run with debugging" have not already been
provided, you can either modify existing actions to include a debug flag, or create new
actions.
The purpose of testing is to discover errors. Testing is the process of trying to discover every
conceivable fault or weakness in a work product. It provides a way to check the functionality
of components, sub assemblies, assemblies and/or a finished product It is the process of
exercising software with the intent of ensuring that the Software system meets its
requirements and user expectations and does not fail in an unacceptable manner. There are
various types of test. Each test type addresses a specific testing requirement.
The Acknowledgements will be received by the Sender Node after the Packets are
received by the Destination Node
The Route add operation is done only when there is a Route request in need
The Status of Nodes information is done automatically in the Cache Updation process
SNAPSHOTS
FUTURE SCOPE
We can use this system for military applications installing suitable sensors. Just by changing
the robotic unit design we can use it in hospitals for patient monitoring. Using some chemical
sensors we can detect harmful gas leakage in the chamber the time delay which occurs in the
execution of commands can be reduced and thus we can have more real time access to the
robot. With reduced time delay we can have faster operation and quick response to any illegal
activities in the monitored area. Also it can be used as a spy robot. The robot is very
economical.
Conclusion
Merciless bsf is the current area of research where lots of scope exists. Currently this
particular security technique is required by several countries .one such enhancement we are
trying to do.
The type of communication technique enhance operation, where the user can control the m
from any part of world by getting live video feedback, compared to earlier robots work like
wifi with constraints have limited, iot and s video camera makes it cost effectives combat
robot. This robotic vehicle with different widely be used as surveillance robot for se c
emergency rescue operations where human and user will be able to alert prior to intruder
The proposed system gives an exposure to design a multifunctional defence robot. This robot
has a widespread industrial, defense applications. The laser gun attached to the robot is an
excellent substitute for the weapons carried by the soldiers. The laser gun can be triggered
with the help of wireless camera. It can be used in a hostage situation to pinpoint the exact
location of terrorists with the help of wireless camera, saving many lives during rescue
mission. Another application is border security system to sense movement of intruder through
pir sensor.. The current range of operations is up to 10m and can be made more sophisticated.
Laser gun found to be very accurate in pointing to the target.
BIBLIOGRAPHY
[1] Bhawana D. Parate and Jagruti J. Shah, “Design and Development of Multifunctional
[2] Ramesh Nayak and Mithuna Shetty, “Touch Screen Controlled Defence Robot”, The
[5] Tarunpreet Kaur, Dilip Kumar, “Wireless Multifunctional Robot for Military Applications”