GAT INTERNSHIP REPORT
GAT INTERNSHIP REPORT
COMPANY PROFILE
About the Organization
About NRET
Nano Robotics Embed Technologies has successfully performed projects under various
platforms and has delivered high quality competitively priced products and services
Customers all over India. It is a premier embedded systems services company that offers
a wide range of software products, services and solutions to the Home Automation,
Display Devices and Consumer Electronics. We offer exceptional value to our customers
through our highly competent interdisciplinary engagements and delivery teams who are
in the forefront of these technically challenging areas. While our core business practices
are built around providing industry leading solutions and services to our customers, we
strive to keep ourselves on the cutting edge of technology by fostering Research &
Development culture in the organization. Through our diverse embedded systems
expertise and service delivery experience, we provide rapid quality deliveries that reduce
project costs, & risks significantly and accelerate time-to market. The approach facilitates
significant improvement in our client’s business processes and development life cycles.
Mission
1. To provide more value per dollar to our clients by providing timely and qualitative
services/solutions and attain utmost client satisfaction through skill building,
innovation and best practicedprocesses.
2. Tooffertotal,cost-effective,nextgenerationembeddedhardwareandsoftwaresolutions
intheshortestpossibledevelopmenttimeenablingourclientstolaunchtheirproductideas early.
Vision
1. To bring best of the human assets by providing environment for grooming, nurturing,
and growing talent to foster human growth and providing services and solutions to the IT
companies globally creating value for ourcustomers.
2. To lead in embedded hardware and software solutions and be known as an electronic
product development company ofrepute.
3. To build strategic partnerships globally with all stakeholders - clients, vendors, and
investors.
4. To stay abreast with technology and build our technical competence and domain
expertise.
5. To nurture a winning team that has a passion forexcellence.
6. To be the delight of our customers by achieving perfection in our processes and quality
methods.
3
Processes
At Nano Robotics Embed Technologies we utilize our resources and expertise to ensure
that your product development project flows smoothly. We will maintain close
communication with you throughout the project to ensure that your project is proceeding
consistent with your needs.
To provide you a complete, robust and cost-effective solution we implement our projectin
the followingmanner
Stage 1: Inquiry
This is an initial discussion between you and our Business Development Manager to
share our general skills and capabilities to see if we might be a good fit for your project
needs.
Stage4:OnceithasreachedagreementontheStatementofWork,EmbeddedTechnologyLabswill
then assemble all the people andresources needed to start the project.Typical projects will
include a kick-off meeting with members of your team and members of the Nano Robotics
4
Emded Technologies Project Team.
5
Nano Robotic Embed Technologies offer our total commitment to quality at all stages of
the product development cycle. Thorough documentation, quality checks, and a tight
control are put into practice at all stages. Absolute secrecy of design and development
work is assured, and complete technology transfer can be carried out as per the client's
request. Since its inception NRE Technologies has been guided by its core values. These
values define character of our company and act as guiding star in our day-to-day
decision-makingprocess.
1. CustomerFirst-Weareacustomerfocusedcompanycommittedtocreatebestvaluefor our
customers. In every engagement with our customer we strive to make our customers
successful.
2. Integrity - Integrity is the way of life at NRE Technologies. At NRET every single
employee understands the value ofintegrity.
3. Team Spirit - We firmly believe that none of us is as smart as all of us.
4. Respect for all - We value diversity and respect each one associated withNRET.
Skill Sets
NRET uses very advanced technologies for development of electronic devices and
embedded systems. We continually study latest technologies and their applications to
product development focusing on embedded system design based on microprocessors,
microcontrollers, system-on- chip, DSPs, FPGAs and related board support packages
for embedded operating systems. We use time-to-market and cost optimized
technologies and electronics components when developing electronic products for our
customers.
6
Assembly and C language programming for 8/16/32 bit microcontrollers,DSP
Buses: ISA, PC 104, VME, PCI, PCIExpress
Peripheral Interface: CAN, USB, Ethernet, SPI, I2C, PS/2, RS232,RS485
Wireless: 802.11, GSM/GPRS, GPS, Bluetooth, IrDA, RFID,ZigBee
VHDL, Verilog forFPGAs
RTOS, BSP, DeviceDrivers
C, C++ for Windows/LinuxPlatforms
VB6.0, VC6.0, C#, .NET
Java, ASP, HTML, DHTML,XML
SchematicCapture
PCB LayoutDesign
PCB SignalIntegrity
DFT and DFMAnalysis
Hardware Platforms
DOMAIN SECURITY
Security is a fundamental aspect of our lives. We rely on good systems to help prevent
crime, warn us before danger strikes, and enable groups to communicate effectively, or
simplygetthingsrunningsafelyandsmoothly.Insecuringindustrialfacilitieseverything has
top priority: protecting employees, visitors and the valuable goods and assets of the
7
company. A building can contain a wide assortment of security equipment whichneeds
to be seamlessly integrated. Nowadays organizations use multiple systems to monitor
and controltheirbuildings,rangingfromfireandintrusionalarmtoaccesscontrol,video
surveillance and building automationsystems.
Home Automation
Things that were in the realm of science fiction just a few short years ago are today
becomingarealitythankstowirelessembeddedtechnologies.Anewrangeofaffordable
devices and applications are available to automate home life, offering greater comfort,
convenience, security, and energy savings. Low-power and low data rate wireless
embedded networks provide an affordable and flexible solution for home automation to
monitorandcontrolthingslikelightswitchesand lights;HVAC(heating,ventilating,air
conditioning) controls and thermostats; computers, TVs, and other electronic devices;
smoke detectors and other safety equipment; alarm,panels, motion sensors, and other
security devices; and electricity, water and gasmeters.
Automotive Telemetric
Automotive Telemetric combines the power of computers and computer systems with
remote communications technologies (such as GPS, wireless, cellular, etc. to obtain
information about remote automotive vehicles. Today, telemetric applications now range
from tracking rental cars to lost pets or persons. Vehicle tracking is a way of monitoring
the location, movements, status and behaviour of a vehicle or fleet of vehicles. This is
achieved through a combination of a GPS receiver and an electronic device
(usuallycomprising a GSM GPRS modem or SMS sender) installed in each vehicle,
communicating with the user (dispatching, emergency or co- coordinating unit) and PC-
or web-based software. The data are turned into information by management reporting
tools in conjunction with a visual display on computerized mapping software.
8
Services
Through our diverse embedded systems expertise and service delivery experience, we
provide rapid quality deliveries that reduce project costs, & risks significantly and
accelerate time-to-market.
1. Partnership with Clients NRE Technologies seamlessly partners with its clients
to achieve an environment of maximum collaboration that enables optimum
utilization of resources, processes andexpertise.
4. Unleash the power of technology. Enrich your products with enhanced features,
super performance and pull the market back toyou.
9
NRET strives to deliver workable and cost-effective embedded solutions in diverse
domains like Electronics, Security systems &Automation etc. We design, develop and
manufactureelectronicsystemsandprovideourclientswithcompletesubsystemsorentire
products. We assume complete responsibility for all phases of development, beginning
with requirement analysis to the transfer of technology and information to the client. Our
development engineers have expertise in requirements analysis, system architectures,
system design, software coding, and software testing for microprocessors,
microcontrollers, FPGA and DSP basedsolutions.
NRET design both hardware and software, so it has a clear understanding of how the
boundary between them may be moved in one to direction for speed, in another to
reduce
10
memory footprint, and in still another to juggle the trade-offs between one- time non
recurring development costs and per-unit costs (COGS) for new products.
In this internship software stimulator were designed. Some of them have even reverse-
engineered "closed" microprocessor architectures – and picked the locks that let us into
their JTAG debugger ports. So, we're intimately familiar with how the world looks from
the silicon's point of view. IT may use somebody else's SDK's when its writing an
application and it's convenient, but when an SDK is unavailable, we can create one from
scratch. It is understood microprocessors at the level of the state machine that is the
microcode engine, but we also know what a good C-callable function looks like. It is
knownthatneedstobepresentedthroughanAPItothehigher-levelcodethatrunsabove it and
know what's much better when it remains hidden from the calling function. Even
“assembly”, they frequently think about “object model”. If was written something
custom, NRET writes it to be as modular and reusable as possible. Or its designing it to
have at least an API that's common to other callable routines so that changes at the
embedded level don't percolate up to become major application rewriteslater.
A thorny low-level software problem – a system that must run in real time and fails, an
application that's crashing for reasons you can't understand at application level, or code
that just doesn't fit the target device – may be caused by conflicts at the embedded level.
And they're frequently impossible to find above the device driver's API. Core area of
11
expertise encompasses single-processor to multi-processor control applications and
distributed embedded software systems. The technology capabilities are well supported
by industry-specific experiences in developing embedded software solutions for test &
measurement equipment, industrial automation, security, home automation and medical
equipment industries. Company focus on delivering feature-rich, high-availability and
fault tolerant embedded software and system software solutions provide sustenance
engineering services, such as software maintenance and technical support services to
widen product life cycles.
12
CHAPTER 2
MACHINE LEARNING
Machine learning (ML) is the study of computer algorithms that can improve automatically through
experience and using data. It is seen as a part of artificial intelligence. Machine learning
algorithms build a model based on sample data, known as "training data", in order to make
predictions or decisions without being explicitly programmed to do so. Machine learning algorithms
are used in a wide variety of applications, such as in medicine, email filtering, speech recognition,
and computer vision, where it is difficult or unfeasible to develop conventional algorithms to perform the
needed tasks.
BLOCKDIAGRAM
Supervised learning
Supervised learning algorithms build a mathematical model of a set of data that contains both the inputs
and the desired outputs. The data is known as training data, and consists of a set of training examples.
Each training example has one or more inputs and the desired output, also known as a supervisory
13
signal. In the mathematical model, each training example is represented by an array or vector,
sometimes called a feature vector, and the training data is represented by a matrix. Through iterative
optimization of an objective function, supervised learning algorithms learn a function that can be used to
predict the output associated with new inputs. An optimal function will allow the algorithm to correctly
determine the output for inputs that were not a part of the training data. An algorithm that improves the
accuracy of its outputs or predictions over time is said to have learned to perform that task
Types of supervised learning algorithms include active learning, classification and regression.
Classification algorithms are used when the outputs are restricted to a limited set of values, and
regression algorithms are used when the outputs may have any numerical value within a range.
As an example, for a classification algorithm that filters emails, the input would be an incoming email,
and the output would be the name of the folder in which to file the email.
Unsupervised Learning
Unsupervised learning algorithms take a set of data that contains only inputs, and find structure in the
data, like grouping or clustering of data points. The algorithms, therefore, learn from test data that has
not been labeled, classified or categorized. Instead of responding to feedback, unsupervised learning
algorithms identify commonalities in the data and react based on the presence or absence of such
commonalities in each new piece of data. A central application of unsupervised learning is in the field
of density estimation in statistics, such as finding the probability density function. Though unsupervised
learning encompasses other domains involving summarizing and explaining data features.
APPLICATIONS
Image Recognition
Speech Recognition
Traffic prediction
Product recommendations
Self-driving cars
Email Spam and Malware Filtering
Virtual Personal Assistant
Online Fraud Detection
Stock Market trading
14
15
CHAPTER 3
ARTIFICIAL INTELLIGENCE
Artificial intelligence (AI), the ability of a digital computer or computer-controlled robot to perform
tasks commonly associated with intelligent beings. The term is frequently applied to the project of
developing systems endowed with the intellectual processes characteristic of humans, such as the ability to
reason, discover meaning, generalize, or learn from past experience. Since the development of the digital
computer in the 1940s, it has been demonstrated that computers can be programmed to carry out very
complex tasks—as, for example, discovering proofs for mathematical theorems or playing chess—with
great proficiency. Still, despite continuing advances in computer processing speed and memory capacity,
there are as yet no programs that can match human flexibility over wider domains or in tasks requiring
much everyday knowledge. On the other hand, some programs have attained the performance levels of
human experts and professionals in performing certain specific tasks, so that artificial intelligence in this
limited sense is found in applications as diverse as medical diagnosis, computer search engines, and voice
or handwriting recognition.
16
APPLICATIONS:
Manufacturing robots
Self-driving cars
Smart assistants
Proactive healthcare management
Disease mapping
Automated financial investing
Virtual travel booking agent
Social media monitoring
Inter-team chat tool
Conversational marketing bot
Natural Language Processing (NLP) tools
17
CHAPTER 4
DATA SCIENCE
Data science is an interdisciplinary field that uses scientific methods, processes, algorithms and systems to
extract knowledge and insights from noisy, structured and unstructured data,[1][2] and apply knowledge and
actionable insights from data across a broad range of application domains. Data science is related to data
mining, machine learning and big data.
18
APPLICATIONS
19
CHAPTER 5
NUMPY
It also has functions for working in domain of linear algebra, fourier transform, and matrices.
NumPy was created in 2005 by Travis Oliphant. It is an open source project and you can use it freely.
In Python we have lists that serve the purpose of arrays, but they are slow to process.
NumPy aims to provide an array object that is up to 50x faster than traditional Python lists.
The array object in NumPy is called ndarray, it provides a lot of supporting functions that make working
with ndarray very easy.
Arrays are very frequently used in data science, where speed and resources are very important.
INSTALLATION OF NUMPY
If you have Python and PIP already installed on a system, then installation of NumPy is very easy.
20
IMPORTING NUMPY
Once NumPy is installed, import it in your applications by adding the import keyword:
import numpy.
Example
import numpy
print(arr)
21
22
CHAPTER 6
PANDAS
INTRODUCTION
The name "Pandas" has a reference to both "Panel Data", and "Python Data Analysis" and was created by
Wes McKinney in 2008.
Pandas allows us to analyse big data and make conclusions based on statistical theories.
Pandas can clean messy data sets, and make them readable and relevant.
Pandas are also able to delete rows that are not relevant, or contains wrong values, like empty or NULL
values. This is called cleaning the data.
23
INSTALLATION
If you have Python and PIP already installed on a system, then installation of Pandas is
very easy.
IMPORT PANDAS
Once Pandas is installed, import it in your applications by adding the import keyword:
import pandas
EXAMPLE
import pandas
mydataset = {
'cars': ["BMW", "Volvo", "Ford"],
'passings': [3, 7, 2]
}
myvar = pandas.DataFrame(mydataset)
print(myvar)
24
CHAPTER 7
MATPLOTLIB
INTRODUCTION
Matplotlib is a low level graph plotting library in python that serves as a visualization utility.
Matplotlib is mostly written in python, a few segments are written in C, Objective-C and Javascript for
Platform compatibility.
INSTALLATION
If you have Python and PIP already installed on a system, then installation of Matplotlib is very easy.
IMPORT MATPLOTLIB
Once Matplotlib is installed, import it in your applications by adding the import module statement:
import matplotlib
EXAMPLE
plt.plot(xpoints, ypoints)
plt.show()
25
CHAPTER 8
SKLEARN
Scikit-learn (Sklearn) is the most useful and robust library for machine learning in Python. It provides a
selection of efficient tools for machine learning and statistical modeling including classification,
regression, clustering and dimensionality reduction via a consistence interface in Python. This library,
which is largely written in Python, is built upon NumPy, SciPy and Matplotlib
INSTALLATION
If you already installed NumPy and Scipy, following are the two easiest ways to install scikit-learn −
Using pip
Following command can be used to install scikit-learn via pip −
pip install -U scikit-learn
26
27
CHAPTER 9
SALARY PREDICTION
ABSTRACT
Machine learning is a technology which allows a software program to became more accurate at pretending
more accurate results without being explicitly programmed and also ML algorithms uses historic data to
predicts the new outputs. Because of this ML gets a distinguish attention. Now a day’s prediction engine
has become so popular that they are generating accurate and affordable predictions just like a human, and
being using industry to solve many of the problems. Predicting justified salary for employee is always
being a challenging job for an employer. In this paper and proposing a salary prediction model with
suitable algorithm using key features required to predict the salary of employee.
OBJECTIVES
The purpose of this project is to use data transformation and machine learning to create a model that will
predict a salary when given years of experience, job type. The purpose of this project is to use data
transformation and machine learning to create a model that will predict a salary when given years of
experience, job type.
28
BLOCK DIAGRAM
29
Step 6: Also, we predict a person on future salary position as per the graph goes. Only take a
particular person position, then the prediction answer be executed through the help of the graph.
PROGRAM
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv("Salary_Data.csv")
data.head()
x = data['YearsExperience'].values
y = data['Salary'].values
x = x.reshape(len(x),1)
y = y.reshape(len(y),1)
xtrain
xtest
ytrain
ytest
data.isnull().sum()
### Prediction
ypred = model.predict(xtest)
ypred
30
plt.plot(xtrain,model.predict(xtrain),color='purple',label='Line of
Regression')
plt.legend(loc=2)
plt.show()
my_model.predict([[25]])
import numpy as np
### Function for Salary Prediction
def salary_predict():
years = int(input("Enter the experience in years:"))
salary = my_model.predict([[years]])[0][0]
salary = np.round(salary)
return "Salary of the Employee - "+str(salary)
salary_predict()
31
RESULTS
SNAPSHOT 1.0
SNAPSHOT 1.1
32
CONCLUSIONS
This prediction is correct up to a certain percentage. More accuracy can be obtained by implementing k-
nearest regression. From there the best prediction can be chosen. It can be improved in following way:
It can give more advance software for tallying salary medium.
It will host the platform on online servers.
It can do as large database also and curve also bigger than above example.
This predictor method can be used for predicting population of a country as well as forecasting a daily
issue.
33