Академический Документы
Профессиональный Документы
Культура Документы
CHAPTER 1
INTRODUCTION
1.1 Background
Electronic toll collection (ETC) is a technology enabling the electronic collection of toll
payments. It has been applied over many highways and expressways for faster toll
collection and reduced traffic congestion. This ETC system is capable of determining if
the car is registered or not, and then informing the authorities of toll payment violations,
debits, and participating accounts [2]. The most significant advantage of this technology
is that it eliminates congestion near toll booths. It is also a method by which we can track
vehicles at tollbooths. Other than this obvious advantage, implementation of the ETC
could also benefit the toll operators. The benefits or advantages for the users include:
1) Minimized queues at toll plazas by increasing toll booth service turn-around rates.
2) Faster and more efficient service.
3) The ability to make payments anytime anywhere on the card itself or by loading a
registered credit card.
4) The well timed notification to users via the push notification that informs them about
their current account status.
1.2 Objective
An ETC system extensively utilizes radio frequency identification (RFID) technology.
RFID is a generic term used to identify technologies utilizing radio waves to identify
people or objects [3]. RFID technology was first introduced in 1948 when Harry
Stockman wrote a paper exploring RFID technology entitled, “Communication by Means
of Reflected Power” [4]. RFID technology has evolved since then, and has been
implemented in various fields, such as in, library system warehouse management, theft
prevention attendance system, and so on. Generally, RFID is used for, tracing, tracking,
and identifying objects. The whole RFID system consists of a transponder (tag),
reader/writer, antenna, and computer host. The transponders/tags are a microchip
amalgamated with an antenna system in a compact Toolkit. The system contains a
microchip which contains memory and logic circuits to receive and send data back to the
reader [5]. These tags are classified as either active or passive tags. The batteries in the
Active tags provides a longer read range, on the other hand the passive tags are powered
by the signal of the reader and hence have shorter read range [6].
The reader contains two components a decoder along with the RF module and an antenna
to send and receive data from the tag. It can be mounted or built as a mobile portable
device. The desktop host acts as the interface for IT platform for transferring information
from RFID system to the end-user. This host then transforms the information received
from the RFID tag into usable resource for the end-user as shown in Fig 1.1.
CHAPTER 2
LITERATURE SURVEY AND TECHNOLOGY
The electronic toll collection (ETC) system operating by radio frequency identification
(RFID) equipment supplied by Mitsubishi Heavy Industries, Ltd. (MHI) began
commercial operation on an expressway in India’s Gujarat state[12]. The country's first
interoperable RIFD-based electronic toll system was today rolled out on the Ahmadabad-
Mumbai National Highway and the system would allow vehicles fitted with electronic
tags to sail through six toll plazas [13]. The ETC system is managed by 3 road
developers’ namely-Larsen and Toubro (L&T), IRB Infrastructures and National
Highway Authority of India (NHAI).The Toll collection project is equipped with RF
Scanners that detect the passive tags operating at frequency of 850MHz-950 MHz at a
distance up to 90 feet with a response time of 10 milliseconds. Although the system is
cost efficient (with tags available at Rs 150), but it’s not a gateless tax system hence the
motorist have to wait for the receipt. Also no external module can acknowledge the
motorist about the successful transaction and pending balance via cellular mode(push
notification).
The ETC system in use in Poland has been proposed by the Motor Transport Institute and
the University of Technology, Warsaw. The system has been named as Automatic Toll
collection System (NATCS) and consists of National automatic Toll Collection Centre.
The NATCS uses a combination of GSM with satellite based Global Positioning System
(GPS).The GPS system tracks the distance covered by the vehicle and calculates the fees
and rates which then transmits this information to NATCS centre. The NATCS is highly
equipped with sensors and camera that capture and recognize license plates. Though the
system is well equipped the cost of equipping the car with a transponder as well as a GPS
seeks a upward spiral. Hence this expense is recovered from motorists.
2.2 Technology
2.2.1 RFID
Radio-frequency identification (RFID) is an automatic identification method, relying on
storing and remotely retrieving data using devices called RFID tags or transponders. The
technology requires some extent of cooperation of an RFID reader and an RFID tag.
An RFID tag is an object that can be applied to or incorporated into a product, animal, or
person for the purpose of identification and tracking using radio waves. Some tags can be
read from several meters away and beyond the line of sight of the reader.
An RFID tag is an object that can be applied to or incorporated into a product, animal, or
person for the purpose of identification and tracking using radio waves. Some tags can be
read from several meters away and beyond the line of sight of the reader.
1) An antenna or coil
2.2.1.1 Antenna
The antenna emits radio signals to activate the tag and read and write data to it. Antennas
are the conduits between the tag and the transceiver, which controls the system's data
acquisition and communication. Antennas are available in a variety of shapes and sizes;
they can be built into a door frame to receive tag data from persons or things passing
through the door, or mounted on an interstate tollbooth to monitor traffic passing by on a
freeway. The electromagnetic field produced by an antenna can be constantly present
when multiple tags are expected continually. If constant interrogation is not required, a
sensor device can activate the field. Often the antenna is packaged with the transceiver
and decoder to become a reader (a.k.a. interrogator), which can be configured either as a
handheld or a fixed-mount device. The reader emits radio waves in ranges of anywhere
from one inch to 100 feet or more, depending upon its power output and the radio
frequency used. When an RFID tag passes through the electromagnetic zone, it detects
the reader's activation signal. The reader decodes the data encoded in the tag's integrated
circuit (silicon chip) and the data is passed to the host computer for processing.
of measure. For example, a pallet may have an RFID tag fitted only to an area of
protected placement on the pallet itself. On the other hand, cartons on the pallet have
RFID tags inside bar code labels that also provide operators human-readable information
and a back-up should the tag fail or pass through non RFID-capable supply chain links.
2.2.1.2.6 Frequencies
Like all wireless communications, there are a variety of frequencies or spectra through
which RFID tags can communicate with readers. Again, there are trade-offs among cost,
performance and application requirements. For instance, low-frequency tags are cheaper
than ultra high-frequency (UHF) tags, use less power and are better able to penetrate
non-metallic substances. They are ideal for scanning objects with high water content,
such as fruit, at close range. UHF frequencies typically offer better range and can transfer
data faster. But they use more power and are less likely to pass through some materials.
UHF tags are typically best suited for use with or near wood, paper, cardboard or clothing
products. Compared to low-frequency tags, UHF tags might be better for scanning boxes
of goods as they pass through a bay door into a warehouse. While the tag requirements
for compliance mandates may be narrowly defined, it is likely that a variety of tag types
will be required to solve specific operational issues. You will want to work with a
company that is very knowledgeable in tag and reader technology to appropriately
identify the right mix of RFID technology for your environment and applications.
2.2.1.3 RF Transceiver:
The RF transceiver is the source of the RF energy used to activate and power the passive
RFID tags. The RF transceiver may be enclosed in the same cabinet as the reader or it
may be a separate piece of equipment. When provided as a separate piece of equipment,
the transceiver is commonly referred to as an RF module. The RF transceiver controls
and modulates the radio frequencies that the antenna transmits and receives. The
transceiver filters and amplifies the backscatter signal from a passive RFID tag.
4) Patient Monitoring: Patient’s health status, diagnosis and many other attributes can be
stored in a database which can be read using a RFID based tag.
CHAPTER 3
ANALYSIS AND SYSTEM DESIGN
work to n on
internal Microsoft
guide and Power
teachers Point
5 Coding Designing Writing the 60-70 20-12- 28-2-14
front end and code for hrs. 13
back end of implementa
the system tion
6 Testing Perform Identify 20-30 1-3-14 27-3-14
various tests and correct hrs.
to identify the various
the bugs errors
7 Documentation Completely Preparing 14-15 28-3-14 25-4-14
analyzing the the hrs.
work done documents
till date
Table No. 3.1 Plan of Action
The following will be flow of steps to achieve the working Prototype Model of the above
proposed system.
1) Defining the Task,
2) Understanding the Need & Usability in industry and market(Market Analysis),
3) Prepare a Block Diagram,
4) Deducing a Flowchart for the whole process,
5) Writing the Software Program,
6) Compilation & Burning,
7) Testing and Debugging,
8) Developing Data Flow Diagram,
9) Actual Implementation.
10) Finally Running the system and,
11) Documentation.
In Fig 3.2, the Flowchart of the working scheme of RFID System is shown. The user first
enters the Toll Booth and then the RFID reader will read the tag attached to the car. It
will look up in the database about the distance to be covered by the car to cross the bridge
and deduct amount from the existing balance. If the users account has insufficient balance
then there is a facility to recharge the account. Hence these cars will be side-lined where
they can recharge their account and continue their journey. On recharging the account or
when the balance is deducted the user is notified via a push notification.
Fig 3.4 shows the basic RFID module. Here the vehicle owner enters the specific Radio
frequency region i.e. the RF transmitter range (up to 80ft).The RF Receiver transmits
demodulated signal from the newly activated passive tag on the vehicle. The vehicle is
then recognized in the database system and the appropriate amount is deduced. If the
vehicle owner is categorized as ’defaulter’ then either the owner can recharge his balance
via an external module or pay that specific amount at the exit toll. An Acknowledgement
notification is sent to the user via a push notification service.
The .NET Framework (pronounced dot net) is a software framework that runs primarily
on Microsoft Windows. It includes a large library and supports several programming
languages which allow language interoperability (each language can use code written in
other languages). Programs written for the .NET Framework execute in
a software environment (as contrasted to hardware environment), known as the Common
Language Runtime (CLR), an application virtual machine that provides important
services such as security, memory management, and exception handling. The class library
and the CLR together constitute the .NET Framework.
The .NET Framework's Base Class Library provides user interface, data access, database
connectivity, cryptography, web application development, numeric algorithms,
and network communications. Programmers produce software by combining their
own source code with the .NET Framework and other libraries. The .NET Framework is
intended to be used by most new applications created for the Windows platform.
Microsoft also produces a popular integrated development environment largely for .NET
software called Visual Studio.
3.4.2.1.1 Interoperability
Because computer systems commonly require interaction between new and older
applications, the .NET Framework provides means to access functionality that is
3.4.2.1.6 Security
The design is meant to address some of the vulnerabilities, such as buffer overflows, that
have been exploited by malicious software. Additionally, .NET provides a common
security model for all applications.
3.4.2.1.7 Portability
While Microsoft has never implemented the full framework on any system except
Microsoft Windows, the framework is engineered to be platform agnostic, and cross-
platform implementations are available for other operating systems (see Silver light and
the Alternative implementations section below). Microsoft submitted the specifications
for the Common Language Infrastructure (which includes the core class
libraries, Common Type System, and the Common Intermediate
Language), the C# language, and the C++/CLI language to both ECMA and the ISO,
making them available as open standards. This makes it possible for third parties to create
compatible implementations of the framework and its languages on other platforms.
We have used VB.NET language in our project. VB.NET is easy to understand. VB.NET
is a type safe language; code can only access memory locations it is allowed to access.
VB.NET contains full support for inheritance. Inheritance allows developers to extend an
existing code base to add new functionality.
VB.NET is a type safe language: code can only access memory locations it is allowed to
access. Benefits of type-safe code include:
VB.NET object constructors can have multiple parameters passed in allowing for greater
flexibility when creating objects.
Attributes are descriptive tags that can be added into VB.NET code to provide additional
information (metadata) about what the code does.
VB.NET developers can now create true multi-threaded applications. Threading allows
different processes to run separately without tying up the user interface or program.
will considerably reduce your search for a class or functionality. A class in .Net
Framework cannot belong to multiple Namespaces. One class should belong to only one
Namespace. All the classes in .Net Framework are connected to System Namespace.
Apart from the default Namespaces, .Net Framework allows to create your own
Namespaces that will hold certain classes. Namespaces are defined by binding the
Class…End Class definition in a Namespace…End Namespace definition. By default,
classes created in Visual Basic.NET (VB.NET) are automatically assigned to a root
Namespace. If you are developing web application using Visual Studio.NET, then it
automatically names this root Namespace based on the project name. Namespaces are
used both as an "internal" organization system for a program, and as an "external"
organization system - a way of presenting program elements that are exposed to other
programs.
System: Includes essential classes and base classes for commonly used data types,
events, exceptions and so on.
System.Data: Includes classes which let us handle data from data sources.
System.Diagnostics: Includes classes that allow to debug our application and to step
through our code.
1) Technological and System Feasibility: The project will be developed using php,
html, css and JavaScript. Windows is the default operating system for almost all
computers nowadays. The web browsers like Google Chrome and Mozilla Firefox are
also free. Thus no additional cost for acquiring required software will be incurred.
2) Operational Feasibility: With cyber-attacks on the rise, text based passwords are not
secure enough. A graphical password authentication system is very relevant in
today’s scenario as it can overcome the shortcomings of text based passwords. The
only cost involved in this scheme would be that the customer should have a working
internet plan and a smart phone.
4) Schedule Feasibility: This project can be developed in six to eight months. Thus the
project timetable is reasonable.
5) Legal Feasibility: This project doesn’t conflict with any legal requirements.
3.4 Detailed Life Cycle of the Project - ERD, DFD, class diagram
In the Fig 3.5,we explain the data flow of the proposed system in which at Level 0
vehicle with RFID tag installed enters the toll plaza. The Reader recognizes the tag and
deducts appropriate amount and then notifies the user via a SMS. While at the Level 1 of
the DFD we elaborate on the process beginning with the reading of the tag at the
entrance. This information is sent to the admin who verifies the vehicle details and
deducts the appropriate balance. After a successful transaction a SMS is sent to the user
acknowledging it.
In the Fig 3.7 the sequence diagram of the whole process from the beginning i.e. the
reading of the tag to the acknowledgement is explained where Vehicle, RFID reader and
Tolltax Software are the classes.
The Fig 3.8 describes a basic registration method in the Use Case representational format.
The admin as an actor logins and has the rights to add a new vehicle based on the
categorization or delete the record. The admin also has privileges to add credit to an
account.
In Fig 3.10, the home window of the GUI is shown. The GUI contains a basic animation
of the working model alongside four tabs. The first tab is the ‘New Registration’ tab
wherein new vehicle registration are made and updated in the database. The second tab is
the ‘Generate Receipt’ wherein a receipt is generated of the transaction. The third one is
the details tab which displays the details of any particular vehicle. Lastly the ‘Recharge’
tab which is used to recharge the balance of that vehicle owner.
In Fig 3.11 the Login window of the GUI is shown. The login screen contains two input
boxes to input username and password respectively, this is used authenticate the user.
After successful login the user will be able to view and operate the account (for e.g. View
Receipt, Recharge, etc).
Fig 3.12 shows the Receipt window. The screen shows a Select COM Port input box
which is used to select the COM port that is going to be used to connect the
desktop/laptop with the RFID Toolkit. After selecting the port and clicking on Proceed
button, the connected RFID reader will be configured and the RFID tag will be read and
the information will automatically be fed in the Receipt portion of the screen. And the
Tag ID will be visible in the second input box i.e. Please Show your Tag box.
In Fig 4.5 the Recharge window is shown. The screen shows a COM port input box
which is used to select the COM port that is going to be used to connect the
desktop/laptop with the RFID Toolkit. After selecting the COM port the tag can be read.
And the account can be recharged with the amount paid by the owner of the tag.
CHAPTER 4
IMPLEMENTATION
As microcontrollers form the core of these days digital circuit design in industry, this
system uses it for the digital processing and centralized operations. The system makes use
of embedded technology which is the future of today’s modern electronics. The
followings are the various Programming Languages & Technologies that are going to be
used in the proposed system.
For PC System:
1) VB.net 2010 Based Application Software,
2) Serial Communication Protocol,
3) SQL Based Database.
4.1 Hardware
Minimum Hardware Requirements:
1) Processor: Intel(R) Core(TM) i3-2100 CPU @ 3.10 GHz
2) Installed Memory (RAM): 4.00 GB
3) System Type: 32/64 bit Operating System
4) Peripherals:
a) Mouse: HID compliant mouse
b) Keyboard: Standard PS/2 keyboard
c) Tags: RFID tag used to uniquely identify users
d) Readers: RFID reader which collects and stores data on the server-side system.
4.2 Software
Minimum Software Requirements:
1) Platform: Windows XP/7/8 Ultimate Service Pack 1(Copyright @ 2009 Microsoft
Corporation. All rights reserved.)
2) Device: Any cellular phone with an active SMS service. (DND service deactivated).
CHAPTER 5
TESTING
5.1 Methodology for testing
Static testing:
There are many approaches to software testing. Reviews, walkthroughs, or inspections
are referred to as static testing. Static testing is often implicit, as proofreading. Static
testing involves verification. In this project we have performed static testing by reviewing
the previous papers on multifactor authentication for better understanding of the
methodology that we are implementing. It also helped us understand the existing
multifactor authentication techniques.
Dynamic testing:
Actually executing programmed code with a given set of test cases is referred to as
dynamic testing. Dynamic testing takes place when the program itself is run. Dynamic
testing involves validation. In our project dynamic testing was performed to check
various scenarios:
1) Wrong username and password
2) To check the working of unlink function
3) Wrong selection of image category
4) To check working of login attempts limiting function.
White-Box testing:
White-box testing (also known as clear box testing, glass box testing, transparent box
testing and structural testing) tests internal structures or workings of a program, as
opposed to the functionality exposed to the end-user. Techniques that we used were:
API testing (application programming interface) – testing of the application using public
and private APIs
Code coverage – creating tests to satisfy some criteria of code coverage (e.g., the test
designer can create tests to cause all statements in the program to be executed at least
once)
Fault injection methods – intentionally introducing faults to gauge the efficacy of testing
strategies
5.2.1 Home.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Toll_Collection
{
public partial class Home : Form
{
public Home()
{
InitializeComponent();
}
}
}
}
5.2.2 Login.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Toll_Collection
{
public partial class Login : Form
{
public Login()
{
InitializeComponent();
}
}
}
}
5.2.3 Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace Toll_Collection
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Login());
}
}
}
5.2.4 Reciept.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;
using MySql.Data.MySqlClient;
using System.IO;
using System.Net;
namespace Toll_Collection
{
public partial class Receipt : Form
{
String data;
int bal;
int newbal;
String card;
MySqlDataReader rdr;
public Receipt()
{
InitializeComponent();
}
MySqlConnection con = new MySqlConnection("Server=localhost;User
Id=root;Password=;Database=tolltax");
MySqlCommand cmd;
serialPort1.DtrEnable = true;
}
}
}
}
if (cmd.ExecuteNonQuery() != 0)
{
}
else
{
MessageBox.Show("Error");
}
con.Close();
}
con.Open();
MySqlCommand cmd = new MySqlCommand("update registration set Credits
= '" + textBox8.Text + "' where U_ID = '" + textBox1.Text + "'", con);
cmd.ExecuteNonQuery();
con.Close();
}
}
con.Open();
}
}
con.Open();
MySqlCommand cmd = new MySqlCommand("update registration set Credits
= '" + textBox8.Text + "' where U_ID = '" + textBox1.Text + "'", con);
cmd.ExecuteNonQuery();
con.Close();
}
}
con.Open();
}
}
con.Open();
cmd = new MySqlCommand("Select * from registration where U_ID = '" +
textBox1.Text + "'", con);
rdr = cmd.ExecuteReader();
if (rdr.HasRows)
{
rdr.Read();
card = rdr["U_ID"].ToString();
if (textBox1.Text == card)
{
mobile = rdr["Mobile"].ToString();
try
{
con.Open();
MySqlDataAdapter da = new MySqlDataAdapter("select * from receipt where
U_ID='" + textBox1.Text + "'", con);
DataSet ds = new DataSet();
da.Fill(ds);
con.Close();
if (ds.Tables[0].Rows.Count > 0)
{
textBox2.Text = ds.Tables[0].Rows[0]["Name"].ToString();
textBox3.Text = ds.Tables[0].Rows[0]["Vehicle_Type"].ToString();
textBox4.Text = ds.Tables[0].Rows[0]["Vehicle_No"].ToString();
if (ds.Tables[0].Rows.Count % 2 == 1)
{
// compare time
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
date = ds.Tables[0].Rows[i]["Time"].ToString();
}
string prevdate = date;
string nowdate = DateTime.Now.ToShortTimeString();
DateTime prev = DateTime.Parse(prevdate);
DateTime now = DateTime.Parse(nowdate);
TimeSpan diff = now.Subtract(prev);
int value = diff.Minutes;
// MessageBox.Show(value.ToString());
if (value < 2)
{
con.Open();
MySqlDataAdapter da2 = new MySqlDataAdapter("select * from
registration where U_ID='" + textBox1.Text + "'", con);
DataSet ds2 = new DataSet();
da2.Fill(ds2);
con.Close();
bal = Convert.ToInt16(ds2.Tables[0].Rows[0]["Credits"]);
if (textBox3.Text == "heavy")
{
heavybalret();
if (textBox7.Text == "" && textBox8.Text == "")
{
//do nothing
}
else
{
textBox5.Text = DateTime.Now.ToShortDateString();
textBox6.Text = DateTime.Now.ToShortTimeString();
savereceipt();
sendsms();
// clear();
MessageBox.Show("return midway");
}
}
else if (textBox3.Text == "light")
{
lightbalret();
if (textBox7.Text == "" && textBox8.Text == "")
{
}
else
{
textBox5.Text = DateTime.Now.ToShortDateString();
textBox6.Text = DateTime.Now.ToShortTimeString();
savereceipt();
sendsms();
MessageBox.Show("return midway");
}
}
}
else
{
con.Open();
MySqlDataAdapter da3 = new MySqlDataAdapter("select * from
registration where U_ID='" + textBox1.Text + "'", con);
DataSet ds3 = new DataSet();
da3.Fill(ds3);
con.Close();
bal = Convert.ToInt16(ds3.Tables[0].Rows[0]["Credits"]);
if (textBox3.Text == "heavy")
{
heavybal();
if (textBox7.Text == "" && textBox8.Text == "")
{
//do nothing
}
else
{
textBox5.Text = DateTime.Now.ToShortDateString();
textBox6.Text = DateTime.Now.ToShortTimeString();
savereceipt();
sendsms();
// clear();
MessageBox.Show("full stretch");
}
}
else if (textBox3.Text == "light")
{
lightbal();
if (textBox7.Text == "" && textBox8.Text == "")
{
//do nothing
}
else
{
textBox5.Text = DateTime.Now.ToShortDateString();
textBox6.Text = DateTime.Now.ToShortTimeString();
savereceipt();
sendsms();
// clear();
MessageBox.Show("full stretch");
}
}
}
}
else
{
// insert data, send sms
con.Open();
MySqlDataAdapter da4 = new MySqlDataAdapter("select * from
registration where U_ID='" + textBox1.Text + "'", con);
DataSet ds4 = new DataSet();
da4.Fill(ds4);
con.Close();
if (ds4.Tables[0].Rows.Count > 0)
{
textBox2.Text = ds4.Tables[0].Rows[0]["Name"].ToString();
textBox3.Text = ds4.Tables[0].Rows[0]["Vehicle_Type"].ToString();
textBox4.Text = ds4.Tables[0].Rows[0]["Vehicle_No"].ToString();
textBox7.Text = "0";
textBox8.Text = ds4.Tables[0].Rows[0]["Credits"].ToString();
textBox5.Text = DateTime.Now.ToShortDateString();
textBox6.Text = DateTime.Now.ToShortTimeString();
savereceipt();
sendsms();
// clear();
}
}
}
else
{
// insert data, send sms
con.Open();
MySqlDataAdapter da1 = new MySqlDataAdapter("select * from
registration where U_ID='" + textBox1.Text + "'", con);
DataSet ds1 = new DataSet();
da1.Fill(ds1);
con.Close();
if (ds1.Tables[0].Rows.Count > 0)
{
textBox2.Text = ds1.Tables[0].Rows[0]["Name"].ToString();
textBox3.Text = ds1.Tables[0].Rows[0]["Vehicle_Type"].ToString();
textBox4.Text = ds1.Tables[0].Rows[0]["Vehicle_No"].ToString();
textBox7.Text = "0";
textBox8.Text = ds1.Tables[0].Rows[0]["Credits"].ToString();
textBox5.Text = DateTime.Now.ToShortDateString();
textBox6.Text = DateTime.Now.ToShortTimeString();
savereceipt();
sendsms();
// clear();
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
5.2.5 ReceiptDetail.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace Toll_Collection
{
public partial class ReceiptDetails : Form
{
public ReceiptDetails()
{
InitializeComponent();
}
}
MySqlConnection con = new MySqlConnection("Server=localhost;User
Id=root;Password=;Database=tolltax");
dataGridView1.DataSource = dt;
con.Close();
}
}
}
5.2.6 Recharge.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.IO.Ports;
using System.Windows.Forms;
using System.Data.OleDb;
using MySql.Data.MySqlClient;
namespace Toll_Collection
{
public partial class Recharge : Form
{
string data;
// OleDbConnection con;
MySqlCommand cmd;
MySqlDataReader rdr;
MySqlConnection con = new MySqlConnection("Server=localhost;User
Id=root;Password=;Database=tolltax");
public Recharge()
{
InitializeComponent();
}
serialPort1.ReceivedBytesThreshold = 1;
serialPort1.DtrEnable = true;
serialPort1.Open();
this.serialPort1.DataReceived += new
System.IO.Ports.SerialDataReceivedEventHandler(this.serialPort1_DataReceived);
String connection = comboBox1.SelectedItem.ToString();
}
catch (Exception ex)
{
MessageBox.Show("Failed because: " + ex.Message);
}
}
data = "";
serialPort1.DtrEnable = true;
}
}
con.Open();
cmd = new MySqlCommand("Select * from registration where U_ID = '" +
textBox1.Text + "'", con);
rdr = cmd.ExecuteReader();
if (rdr.HasRows)
{
rdr.Read();
card = rdr["U_ID"].ToString();
if (textBox1.Text == card)
{
textBox2.Text = rdr["Credits"].ToString();
}
}
con.Close();
}
}
}
5.2.7 RegDetails.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace Toll_Collection
{
public partial class RegDetails : Form
{
public RegDetails()
{
InitializeComponent();
}
MySqlConnection con = new MySqlConnection("Server=localhost;User
Id=root;Password=;Database=tolltax");
dataGridView1.DataSource = dt;
con.Close();
}
}
}
}
5.2.8 Registration.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;
using MySql.Data.MySqlClient;
namespace Toll_Collection
{
public partial class Registration : Form
{
String data;
public Registration()
{
InitializeComponent();
}
}
catch (Exception ex)
{
MessageBox.Show("Failed because: " + ex.Message);
}
}
}
else
{
MessageBox.Show ("Error");
}
con.Close();
}
}
The Fig. 5.1 shows the output of the system as an SMS to the user which gives the
transaction details of the current transaction. This SMS shows a toll collection of a light
vehicle deducted with 50rs. The first SMS received just records the timestamp of when
the vehicle enters the Toll Plaza. The second SMS is generated when the vehicle exits the
Toll Plaza, and the toll amount is deducted from the balance according to the type of
vehicle. (In this case light vehicle)
The Fig. 5.2 shows the output of the system as an SMS to the user which gives the
transaction details of the current transaction. This SMS shows a toll collection of a heavy
vehicle deducted with 100rs. The first SMS received just records the timestamp of when
the vehicle enters the Toll Plaza. The second SMS is generated when the vehicle exits the
Toll Plaza, and the toll amount is deducted from the balance according to the type of
vehicle. (In this case heavy vehicle)
1) If the user is not registered then he must register himself by providing his details.
Here he will set his id and password.
2) When the user registers for the first time he gets a RFID tag which is attached on the
car, the tag must not be tampered with or will be banned.
3) While registering the user must choose the kind of vehicle he will be using a Light or
Heavy Vehicle.
4) If the user is already registered then he can directly pass the toll booth and the toll
amount will be automatically deducted from the users account.
5) In case the user has insufficient balance he will be informed so via an SMS and can
recharge his account accordingly.
6) If the transaction has been successful the transaction receipt will be sent to the user
via an SMS.
7) While travelling if the user comes back before a limited time period then only half the
amount will be deducted from the account.
CHAPTER 6
RESULTS AND DISCUSSION
Our project uses the power of the RFID Technology to make an easy and quick toll
collection, completely eliminating the need to stop at toll booths as in traditional toll
collection approaches. The project not only reduces time of the users but also gives them
a proper feedback of their account from time to time informing them of the current
balance and warning them when they are on low balance to prompt them to recharge their
account before they use the toll booth again.
The RFID Technology is under constant progress since it’s a solution to a variety of
problems. Powerful RFID readers are now available with a reading range of 100fts and
which can transfer data at much faster rate. This can be combined with a high resolution
camera to capture images of car owner and license plate, and provide much more
advanced services to the users.
CHAPTER 7
CONCLUSION AND FUTURE WORK
7.1 Conclusion
By the implementation of the proposed system not only would we ease the vehicle user’s
accessibility of Toll Ways, but also minimize the time wastage at Toll Booths. As the
vehicles will not have not stop or pause at Toll Booths for payment. This in turn leads to
several other benefits for the motorist such as fuel savings and reduced mobile emissions.
This technology can be extended to provide many other facilities such as traffic
monitoring for surveillance purposes, traffic handling by informing user about which
roads have more congestion and it can also be used to track blacklisted cars. The other
benefits for the toll operators include:
1) The overall toll collection cost will be reduced as the toll collection is now automated
and there is no need of manual collection.
2) Reduces wastage of resources such as paper which is used for printing tickets and toll
passes.
3) Expanded capacity without building more infrastructures.
REFERENCES:
[1] Don, “Electronic Toll Collection: An Introduction and Brief Look at Potential
Vulnerabilities,” in Sans Institute InfoSec Reading Room, 1.4b ed. 2004.
[2] S.Lauren, B. Mariko (2007, June 20).Electronic Toll Collection [Online]. Available:
http://www.atm.com
[3] C.M. Roberts, “Radio Frequency Identification (RFID),” Computers & Security,
Elsevier, 2006.
[4] L. Jerry, C. Barbara “Shrouds of Time: The History of RFID”, AIM Publication,
ver. 1.0, 2001.
[5] M. Ayoub Khan, S. Manoj and R. B. Prahbu “A Survey of RFID Tags”,
International Journal of Recents Trends in Engineering, vol 1, no 4, May 2009
[6] The Basics of RFID, Veri-Logic, LLC, 2003.
[7] MykePredko, Programming and Customizing the 8051 Microcontroller, Edition
1999, Tata McGraw-Hill, Page: 157-167.
[8] Muhammad Ali Mazidi, Janice GillispieMazidi, 8051 Microcontroller and
Embedded Systems, Prentice-Hall, Page: 183-193, 236, and 243.
[9] Dogan Ibrahim, Microcontroller Projects in C for the 8051, Newnes, Page: 29-161.
[10] Kenneth J. Ayala, the 8051 Microcontroller ARCHITECTURE, PROGRAMMING
and APPLICATIONS, WEST PUBLISHING COMPANY, Page: 131-197.
[11] James R. Groff, Paul N. Weinberg, SQL: The Complete Reference, First Edition,
Osborne/McGraw-Hill, ISBN 0-07-211845-8.
[12] “India's first electronic toll collection system launched on Ahmedabad-Mumbai
Highway” April 12, 2013, The Economic Times.
[13] “Radio frequency identification sticker could replace Smart Tag”, September 9
2013, CBT Team.