Report Remote communication of Robotic module using lifa
-
Upload
vatsal-n-shah -
Category
Engineering
-
view
1.638 -
download
1
Transcript of Report Remote communication of Robotic module using lifa
Remote Communication of Robotic Module using LIFA
Mini Project
By
Vatsal shah
Roll No: IU1241090055
Under the Guidance of
Prof. Bhavin Gajjar
Department of Electronics & Communication Engineering
Indus Institute of Technology and Engineering
INDUS UNIVERSITY, Ahmedabad
Gujarat, India
May 2015
Department of Electronics & Communication Engineering
INDUS UNIVERSITY
CERTIFICATE
This is to certify that the Mini project Report entitled “Remote Communication of Robotic Module using
LIFA” submitted by Mr. VATSAL SHAH bearing Roll No. IU1241090055 in partial fulfilment of the
requirements for the award of Bachelor of Technology in Electronics and Communication Engineering during
session 2014-2015 at Indus University, Ahmedabad is an authentic work carried out by his under my
supervision and guidance.
To the best of my knowledge, the matter embodied in the report has not been submitted to any other University
/ Institute for the award of any Degree.
Bhavin Gajjar
Place: Associate Professor
Date: Dept. of Electronics and Comm. Engineering
Indus University
Ahmedabad-382115
3
ACKNOWLEDGEMENT
The satisfaction and euphoria on the successful completion of any task would be incomplete without
mentioning the people who made it possible whose constant guidance and encouragement crowned out effort
with success.
I would like to express my heartfelt gratitude to my esteemed supervisor, Prof. Bhavin Gajjar for his technical
guidance, valuable suggestions, and encouragement throughout the experimental and theoretical study and in
this project. It has been my honour to work under his guidance, whose expertise and discernment were keys
in the completion of this project.
I am grateful to the Dept. of Electronics & Communication Engineering, for giving me the opportunity to
execute this project, which is an integral part of the curriculum in B.Tech programme at the Indus University,
Ahmedabad.
Many thanks to my friends who are directly or indirectly helped me in my project work for their generous
contribution towards enriching the quality of the work.
This acknowledgement would not be complete without expressing my sincere gratitude to my parents and
sister for their love, patience, encouragement, and understanding which are the source of my motivation and
inspiration throughout my work.
Vatsal Shah
Date: Roll No: IU1241090055
Place: Dept. of ECE
IITE, Ahmedabad
4
ABSTRACT
LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) is the software which gives virtual
existence of hardware, reduces its cost and hence termed as Virtual Instrumentation. For years, LabVIEW has
enabled engineers and scientists to develop sophisticated autonomous systems. At its core, it is widely used
for sensor and actuator connectivity and currently offers more than 8000 drivers for measurement devices.
Furthermore, with new libraries for autonomy and an entirely new suite of robotics-specific sensor and
actuator drivers. The movement of the robot is controlled by using LabVIEW. In the LabVIEW four different
keys are assigned for the forward, backward, left and right movement of the robot.
The DC Motor is an attractive piece of equipment in many industrial applications requiring variable speed and
load characteristics due to its ease of controllability. DC Motor will be interfaced with LabVIEW using an
Arduino Uno board. Arduino Uno board plays the role of low cost data acquisition board. The speed of the
DC motor will be set by creating a Graphic User Interface (GUI) in LabVIEW. LabVIEW will in turn pass
this speed to the DC motor using a PWM pins on the Arduino Uno board. DC motor will move with the speed
set by the user in LabVIEW.
5
TABLE OF CONTENTS
Particulars Page No. Page No.
ABSTRACT ....................................................................................................................................................................................... 4
TABLE OF CONTENTS ................................................................................................................................................................. 5
LIST OF FIGURES .......................................................................................................................................................................... 6
LIST OF TABLES ............................................................................................................................................................................ 6
LIST OF ABBREVIATIONS .......................................................................................................................................................... 6
Ch-1 Introduction ............................................................................................................................................................................. 7
Ch-2 Design Methodology ................................................................................................................................................................ 8
2.1 ARDUINO UNO BOARD ................................................................................................................................................ 8
2.2 Motor Driving IC L239D .................................................................................................................................................. 9
Ch-3 Application Software ............................................................................................................................................................. 10
3.1 Front Panel Design ............................................................................................................................................................... 10
3.2 Block Diagram Configuration............................................................................................................................................... 11
Ch-4 Result and Analysis ............................................................................................................................................................... 12
Ch-5 Conclusion .............................................................................................................................................................................. 12
References ........................................................................................................................................................................................ 13
6
LIST OF FIGURES
Figure No. Figure Title Page No.
2.1 Block Diagram of system 8
2.2 A pulse width modulated waveform 8
2.1.3 Arduino Uno Front and Back 9
2.1.1(A) Pin configuration of L293D 9
2.3 Behaviours of motor for different input conditions 9
3.1 Screenshot of the Front Panel of our system 11
3.2 Screenshot of block Diagram of the system 11
4.1 Full Development System. 12
LIST OF TABLES
Figure No. Figure Title Page No.
I Observation of the Motor According to DC MOTOR 12
2.2.1(B) Behaviours of motor for different input conditions 9
LIST OF ABBREVIATIONS
LabVIEW Laboratory Virtual Instrument Engineering Workbench
PC Personal Computer
VI Virtual Instrument
NI National Instrument
I/O Input/output
USB Universal Serial Bus
PWM Pulse with Modulation
7
Ch-1 Introduction
LabVIEW (stands for Laboratory Virtual Instrumentation Engineering Workbench) is a system design
platform and development environment for a visual programming language from National Instruments, USA.
The graphical approach also allows non-programmers to build programs by dragging and dropping virtual
representations of lab equipment with which they are already familiar. The LabVIEW programming
environment, with the included examples and documentation, makes it simple to create small applications.
A sketch for the Arduino microcontroller acts as an I/O engine that interfaces with the LabVIEW Vis through
a serial connection. This helps to move information from Arduino to LabVIEW without adjusting the
communication, synchronization or even a single line of code. Using the Open, Read/Write, Close convention
in LabVIEW we can access the digital, analog and pulse width modulated signals of the Arduino
microcontroller. The Arduino microcontroller must be connected to the computer with the LabVIEW through
a USB, Serial, or Bluetooth. Movement of the robot is controlled by assigning keys in the lab view front panel.
In the LabVIEW four different keys are assigned for the forward, backward, left and right movement of the
robot. The main control has been designed using LabVIEW. There are many different ways to control the
speed of dc motors but one very simple and easy way is to use Pulse Width Modulation. The LabVIEW
software can be used to create the virtual instrument (VI) to control the speed and direction of a dc motor.
This kind of system is flexible, chip and easy to modify. So the objective of this project is to design and
develop a LabVIEW based speed and direction control of robot.
8
Ch-2 Design Methodology
A number of software and hardware implementation techniques were used to design and develop the system.
Fig. 1 shows the block diagram of our system. We used a 12V DC motor, L293D IC and Arduino to develop
our system.
Figure 2.1: Block Diagram of system
One simple and easy way to control the speed of a motor is to regulate the amount of voltage across its
terminals and this can be achieved using “Pulse Width Modulation” or PWM. The power applied to the motor
can be controlled by varying the width of these applied pulses and thereby varying the average DC voltage
applied to the motors terminals. By changing or modulating the timing of these pulses the speed of the motor
can be controlled.
Figure 2.2: A pulse width modulated waveform
Components:
2.1 ARDUINO UNO BOARD
The Arduino Uno is a microcontroller board based on the ATmega328. It has 14 digital input/output pins (of
which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz ceramic resonator, a USB connection, a
power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller;
simply connect it to a computer with a USB cable or power it with an AC-to-DC adapter or battery to get
started.
BATTERY MOTOR DIRVERING
CIRCUIT (L239D)
MOTOR
PC LABVIEW ARDUINO
9
Figure 2.1.1: Arduino Uno Front and Back
2.2 Motor Driving IC L239D
To drive dc motor we need some kinds of driving circuit. A very easy and safe is to use popular L293D chip. It is a 16-
pin chip. The pin configuration of a L293D along with the behaviours of motor for different input conditions is given in
fig. 4. The L293D is designed to provide bidirectional drive currents of up to 600-mA at voltages from 4.5 V to 36 V.
When an enable input is high, the associated drivers are enabled. Also their outputs are active and in phase with their
inputs. When the enable input is low, those drivers are disabled, and their outputs are off and in the high-impedance
state. With the proper data inputs, each pair of drivers forms a full-H (or bridge) reversible drive suitable for solenoid
or motor applications.
Figure 2.2.1: (A) Pin configuration of L293D and (B) Behaviours of motor for different input conditions
The dc motor and L293D IC has been connected according to the fig. 9. The circuit schematic as shown has
been designed using Proteus 7.
Figure 2.3: Screenshot of DC motor and L293D IC interfacing circuit
10
Ch-3 Application Software
LabVIEW (Laboratory for Virtual Instrumentation Engineering Workbench) is a system design application
platform and development environment for a visual programming language from National Instruments. The
programming language used in LabVIEW, also referred to as G, is a data flow programming language.
Execution is determined by the structure of a graphical block diagram on which the programmer connects
different function nodes by drawing wires. These wires propagate variables and any node can execute as soon
as all its input data become available. LabVIEW ties the creation of user interfaces (called front panels) into
the development cycle. LabVIEW programs/subroutines are called virtual instruments (VIs).Each VI has three
components: a block diagram, a front panel and a connector panel. The last is used to represent the VI in the
block diagrams of other, calling VIs. Controls and indicators on the front panel allow an operator to input data
into or extract data from a running virtual instrument.
3.1 Front Panel Design
The front panel is the user interface of a VI. Generally, the front panel is designed first, then design the block
diagram to perform tasks on the inputs and outputs you create on the front panel. Build the front panel with
controls and indicators, which are the interactive input and output terminals of the VI, respectively. Controls
are knobs, push buttons, dials, and other input devices. Indicators are graphs, LEDs, and other displays.
Controls simulate instrument input devices and supply data to the block diagram of the VI. Indicators simulate
instrument output devices and display data the block diagram acquires or generates. Select Window » Show
Controls Palette to display the Controls palette, then select controls and indicators from the Controls palette
and place them on the front panel. Use shortcut menus to quickly configure common control and indicator
properties. You can replace a front panel object with a different control or indicator. Use the numeric controls
and indicators located on the Numeric and Classic Numeric palettes to simulate slides, knobs, dials, and digital
displays. Use numeric controls and indicators to enter and display numeric data. The slide controls and
indicators include vertical and horizontal slides, a tank, and a thermometer. If you drag the slider to a new
position and the VI is running during the change, the control passes intermediate values to the VI, depending
on how often the VI reads the control. Slide controls or indicators can display more than one value. The rotary
controls and indicators include knobs, dials, gauges, and meters. The rotary objects operate similarly to the
slide controls and indicators. It can display more than one value. Use graphs and charts to display data in a
graphical form. Graphs and charts differ in the way they display and update data. VIs with graphs usually
collect the data in an array and then plot the data to the graph, which is similar to a spreadsheet that first stores
the data then generates a plot of it.
11
Figure 3.1: Screenshot of the Front Panel of our system
3.2 Block Diagram Configuration
After you build the front panel, you add code using graphical representations of functions to control the front
panel objects. The block diagram contains this graphical source code. Front panel objects appear as terminals
on the block diagram. Double-click a block diagram terminal to highlight the corresponding control or
indicator on the front panel. Terminals are entry and exit ports that exchange information between the front
panel and block diagram. Data you enter into the front panel controls enter the block diagram through the
control terminals. During execution, the output data flow to the indicator terminals, where they exit the block
diagram, reenter the front panel, and appear in front panel indicators. Objects on the block diagram include
terminals, nodes, and functions. You build block diagrams by connecting the objects with wires. You can
configure front panel controls or indicators to appear as icon or data type terminals on the block diagram. A
terminal is any point to which you can attach a wire, other than to another wire. You must wire all required
block diagram terminals. Otherwise, the VI is broken and will not run. Display the Context Help window to
see which terminals a block diagram node requires. The labels of required terminals appear bold in the Context
Help window.
Figure 3.2: Screenshot of block Diagram of the system
12
Ch-4 Result and Analysis
The aim of this project paper is to design and develop a LabVIEW based speed and direction control of Robot.
The following test was conducted to evaluate the success of the developed monitoring system. By increasing
or decreasing the speed of the motor on the front panel it has been found that the system worked accordingly
as shown in TABLE I. Also by selecting four options as forward, reverse, left and right button of the front
panel, it has been found that the motor responded very quickly and accurately. Our full development system
is given in fig. 4.1.
Figure 4.1: Full Development System.
TABLE I. Observation of the Motor According to DC MOTOR
ITEMS RESPONSE
Forward Fine
Backward Fine
Left Fine
Right Fine
Ch-5 Conclusion
The current research work illustrates the design and development of a LabVIEW based speed and direction
control of a Robot. PWM was programmed using LabVIEW to control the motor speed. The application of
virtual instruments makes data analysing more accurate, and decreases the measuring time significantly. The
L293D chip was used to drive the motor. The system has been tested for various input values and worked
properly. So from the analysis with experimental results we can mention that the Robot control established
with LabVIEW is able to control the speed and direction of the Robot very effectively.
13
References
1. L293D datasheet. Website (www.ti.com)
2. S.Muruganandhan, G.Jayabaskaran, P.Bharathi, “LabVIEW-NI ELVIS II based Speed Control of DC
Motor,” International Journal of Engineering Trends and Technology (IJETT) Volume 4 Issue 4, April
2013
3. Li Qianxiang, Hu Jingtao, “Simulation model of Induction motor based on LabVIEW,” Third International
Conference on Intelligent Networks and Intelligent Systems, 2010
4. M. Saranya, D. Pamela, “A Real Time IMC Tuned PID Controller for DC Motor", IJRTE ISSN: 2277-
3878, Volume 1, Issue-1, April 2012 5. www.ni.com 6. National Instruments Corporation “LabVIEW communications VI reference manual and web services
reference manual” [Nov. 2010].