pro ppt

43
FUZZY - LOGIC BASED OBSTACLE AVOIDANCE AND TARGET REACHING ALGORITHM ON NI’S EMBEDDED FPGA ROBOT Prepared by: Guided By: Irish Asmi. I - 411711106033 Mrs.Sudhalakshmi. S i!edi"a. # - 411711106061 DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

description

project final review ppt

Transcript of pro ppt

PowerPoint Presentation

FUZZY - LOGIC BASED OBSTACLE AVOIDANCE AND TARGET REACHING ALGORITHM ON NIS EMBEDDED FPGA ROBOT Prepared by: Guided By: Irish Asmi. I - 411711106033 Mrs.Sudhalakshmi. S Nivedita. K - 411711106061 Asso.Prof.,ECE DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Objectives of the projectTo design two fuzzy logic based algorithms and implement them in LabVIEW as given below

First algorithm has an aim of obstacle avoidance in an unknown environment.

Second algorithm has a combined objective of both avoiding of obstacles and also reaching a predefined target point in an environment

To implement the above algorithms using NIs embedded FPGA robotic platformDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Literature SurveyDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.Paper referredYearAuthorComparison with proposed systemDesign and Implementation of Fuzzy-Logic based Obstacle-Avoidance and Target-Reaching Algorithms on NIs embedded robot.2013Muhammad MysorewalaNew algorithm for obstacle avoidance using fuzzy logic implemented with the help of ultrasonic sensorsObstacle avoidance with ultrasonic sensors1998Borenstein. JAlgorithm implemented using ultrasonic sensorsThe vector field histogram - Fast obstacle avoidance for mobile robots1991Koren. YAll the previously designed algorithms and there drawbacks were featured in this paper

Existing system and its LimitationsThe popular existing systems are edge-detection, potential fields, certainty-grids, Vector-Field Histogram (VFH)Limitations of the existing systemsCurrent systems are computationally heavy.In presence of complex tasks, it becomes practically impossible to implement on hardware platforms and perform all these operations in parallel.Robot can avoid the obstacle but time constrain will be high.Robot positioning will be inaccurate

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Proposed SystemProposed system uses fuzzy logic based navigation approaches.Fuzzy logic Fuzzy logicis a form ofmany-valued logicwhich deals withreasoningthat is approximate rather than fixed and exact.IR Sensors are used in this system instead of ultrasonic sensors.Apart from IR Sensor, a temperature sensor is also used in this system to measure the ambient temperature of the surroundings.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Proposed SystemDecision about the movement of the robot is taken in an adaptive manner.The hardware used in this project is NIs embedded robotic platform which has SBRIO with a controller and a FPGA.The software is implemented using high-level LabVIEW modules for real-time programming.This system uses a combined objective of obstacle avoidance and target reaching in a single algorithm.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Processes in fuzzy logic controller DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

FUZZIFICATION

APPLICATION OF FUZZY LOGIC RULES

DEFUZZIFICATION

Input stageProcessing stageOutput stage

Fuzzification Fuzzification which can be defined as Fuzzification is the process of decomposing a system input and/or output into one or more fuzzy sets. Inputs are decomposed into membership functions.The membership functions can be modified by "hedges". Some examples include,AboutClose toDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Application of fuzzy logic rulesMatches all the inputs with a fuzzy set of rules and generates a result based on those rules. A set of fuzzy logic rules which are used in a particular controller is known as fuzzy set.A common example of fuzzy setIF temperature IS very cold THEN stop fanIF temperature IS cold THEN turn down fanIF temperature IS normal THEN maintain levelIF temperature IS hot THEN speed up fan

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Defuzzification Defuzzification can be defined as Defuzzification is the process of converting one or more fuzzy sets into a system input and/or output.Outputs are obtained by using membership functions.Result is defined by min - max method

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Algorithm 1 : Obstacle avoidanceFuzzification

Application of fuzzy logic rulesDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.RangeMembership functions0 0.2 mClose0.2- 0.5 mMediumAbove 0.5 mFar

IF 'Left' IS 'Far' AND 'Middle' IS 'Medium' AND 'Right' IS 'Medium' THEN 'Right' IS 'Forward' ALSO 'Left' IS 'Zero'IF 'Left' IS 'Far' AND 'Middle' IS 'Medium' AND 'Right' IS 'Close' THEN 'Right' IS 'Forward' ALSO 'Left' IS 'Backward'IF 'Left' IS 'Far' AND 'Middle' IS 'Close' AND 'Right' IS 'Far' THEN 'Right' IS 'Backward' ALSO 'Left' IS 'Backward'

Algorithm 1 : Obstacle avoidanceDefuzzification

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.RangeMembership functions-0.8 m/sec to 0Backwards-0.16 m/sec to +0.16 m/secZero0 to +0.8 m/secForwards

SENSORSOBSTACLE

Algorithm 2 : Obstacle avoidance and Target reachingFuzzification

For :

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.RangeMembership functions0 0.2 mClose0.2 - 0.4 mMedium0.4 - 0.6mFar

RangeMembership functions-30 to 30Zero-60 to 0Negative0 to 60Positive

Algorithm 2 : Obstacle avoidance and Target reachingApplication of fuzzy logic rulesDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.INPUTOUTPUTDISTANCETARGET DIRECTIONROBOT TURNING ANGLELEFTMIDDLERIGHTMMMZPMMMCZPLM...C...F...Z...NL...

Algorithm 2 : Obstacle avoidance and target reachingDefuzzificationDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.RangeMembership functions-40 to -60Negative large-20 to -60Negative medium-40 to 0Negative small-20 to 20Zero0 to 40Positive small20 to 60Positive medium40 to 60Positive large

ROBOTDirection of robotic movement

TARGET

Algorithm 1 : Obstacle avoidanceThe input contains three membership functions namelyCloseMediumFarThe output has three membership functions such asBackwardsZeroForwardsDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.Proposed systemSENSORSOBSTACLE

Algorithm 2 : Obstacle avoidance and Target ReachingThere are four inputs in this algorithmLeftMiddleRightDeviation from desired output()The output is the Robot Turning Angle() which has the following membership functionsNS, NM, NLZPS, PM, PL

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.TARGETROBOTDirection of robotic movement

OBSTACLE

Block diagram

RF Transceiver

Signal ConditioningObstacle SensorInput buffersConfig MemoryFPGA

FPGA BoardObstacle SensorObstacle SensorH bridge Motor Drive

MotorsDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Receiver - DiagramRF TransceiverPC with LabVIEW software installedDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

SensorsTwo types of sensors are used in this systemTemperature sensorIC used - LM35Operating voltage - 4V.This is a 3 pin IC.IR sensorsIC used - GP2Y0A21YKCoverage distance - 10 to 95 cm.Operating voltage - 3.3V.It is a 3 pin IC.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

FPGAIC used : EP2C8T144C8It is a 144 pin IC package.89 pins are used as general input/output pins.Working voltage - 1.2V.Has three speed gradesSpeed grade we use - 8DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Motor drivesIC used - L293Known as H bridge motor drive.Uses NPN transistors to form H bridge.Equal to two H bridge drives.Mainly used to control the speed of motors.Used as bidirectional switch.Used to run two motors.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

RF TransceiversIC used - RF 434.

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.PropertiesTransmitterReceiverNo of pins48Frequency used433.92 MHz433.92 MHzOperating voltage2-12 V4.5 - 5.5 VData rate4800 bps2400 bpsDistance500 ft500 ft

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.Operations inside FPGA

Advantages and applications of proposed systemAdvantages of the proposed systemAccurate, Simple and Quick reaction to sudden changes.Using Fuzzy Logic Robot can able to avoid obstacle in time efficient manner.Using RF transceiver, Robot activity can be monitored easily.Applications of the proposed systemMilitary applications.Vacuum cleaners.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Hardware DetailsAltera FPGAObstacle SensorRF TransceiverH Bridge Motor DriveMotors

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Software ToolsQuartus II for FPGA programmingNios EDS for processor programmingOrcad for circuit designEagle for PCB designLabVIEW for path control

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Working Principle of IR SensorsDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Controlling motor speedPWM signals are used to control the speed with which the motors operateDone by using the width of the PWM signal sent to the motor drive from FPGA..

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Controlling direction of rotation of motorDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Simulation ProgramDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.clearclc; Goal position of vehiclexgoal=[25; 25]; Initial vehicle positionx=[5; 5]; xmin=[0; 0]; xmax=[30;30]; Nsteps=500;

Simulation programDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.Next set the parameters of the vehicle: lambda=0.1; Ns=16; r=1; xs=0*ones(2,Ns); Jo(:,1)=0*ones(Ns,1);Jg(:,1)=0*ones(Ns,1);J(:,1)=0*ones(Ns,1);theta(:,1)=0*ones(Ns,1);for m=2:Ns theta(m,1)=theta(m-1,1)+(pi/180)*(360/Ns); end Weighting parameters for planning (sets priority for being aggresivein the direction of the goal vs. avoiding obstacles w1=1; w2=1.0000e-04;

Simulation programDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.Allocate memory x(:,2:Nsteps)=0*ones(2,Nsteps-1); The obstacles: figure(1)clfplot(5,5, 's',25,25,'x')axis([0 30 0 30])hold onxlabel('x');ylabel('y');title('Obstacles (o), initial vehicle (square) and goal (x) positions');hold on

Plot obstacle positions (sets obstaclefunction)plot(20,15,'o',8,10,'o',10,10,'o',12,10,'o',24,20,'o',18,20,'o')hold off

Simulation programDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.Plot the functions: xx=0:31/100:30; yy=xx; Compute the obstacle and goal functions for jj=1:length(xx) for ii=1:length(yy) zz(ii,jj)=obstaclefunction([xx(jj);yy(ii)],w1); endendfor jj=1:length(xx) for ii=1:length(yy) zzz(ii,jj)=goalfunction([xx(jj);yy(ii)],xgoal,w2); endend [x] = fuzzyfis(Nsteps, Ns, x, xs, xmin, xmax, r, theta, xgoal,lambda);

Simulation programDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.figure(8) clfcontour(xx,yy,zz,25)colormap(jet)xlabel('x');ylabel('y');title('Vehicle path to avoid obstacles and reach goal'); hold on plot(x(1,:),x(2,:),'r-') plot(5,5,'s',25,25,'x') hold off

Initial environmentDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Final outputDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Simulation results

The simulation of two fuzzy logic algorithms is shown.Hardware results

The hardware results will show the actual movements of the robotic platform in a path when the obstacles are placed at different locations in that path.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Final demo to be displayedCollects information from all the sensors in the robotic platform.Sends those information to pc via RF transceiver for further processing.Two fuzzy logic algorithms will be implemented on that data.The outputs got by this implementation is being sent to FPGA board via RF transceiver.These outputs will be given to motor drives which will control the movement of robot.DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Questions asked in previous reviewHow do motor drive control the speed of the motor?What is the difference between the two algorithms?How do you set the target position?How are you saying that distance is measured through IR sensor?DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Plan for project completionModule IIdentification of componentsSchematic DesignCircuit Board soldering and testingModule IIHardware TestingCodingTesting and debugging of codesModule IIICode implementation on hardwareFinal testingDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

ReferencesMuhammad Mysorewala, Khaled Alshehri, Eyad Alkhayat, Adnan Al-Ghusain, Omar Al-Yagoub Design and Implementation of Fuzzy-Logic based Obstacle-Avoidance and Target-Reaching Algorithms on NIs Embedded-FPGA Robotic Platform ,IEEE/CICA,2013.(BASE PAPER)Borenstein, J.; Koren, Y.;, "Obstacle avoidance with ultrasonic sensors", IEEE Journal of Robotics and Automation, Apr 1988.Borenstein, J.; Koren, Y.; , "The vector field histogram-fast obstacle avoidance for mobile robots", IEEE Transactions on Robotics and Automation, Jun 1991.Menon, A.; Akmeliawati, R.; Demidenko, S.; , "Towards a Simple Mobile Robot with Obstacle Avoidance and Target Seeking Capabilities using Fuzzy Logic", IMTC 2008. IEEE.,May 2008Ganapathy, V.; Soh Chin Yun; Ng, J.; , "Fuzzy and Neural controllers for acute obstacle avoidance in mobile robot navigation", IEEE/ASME, 2009.J. J. Rodriguez-Andina, M. J. Moure, and M. D. Valdes, Features, design tools, and application domains of FPGAs, IEEE Transactions on Industrial Electronics, 2007Ling K.V., Yue S.P. and Maciejowski J.M., "A FPGA Implementation of Model Predictive Control", IEEE American Control Conference,2006.NI-FPGA details: http://www.ni.com/fpga/DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

ReferencesNI-SBRIO details: www.ni.com/singleboardA project on Creating a Smart Grid Monitoring and Control System Using LabVIEW and NI-SBRIO http://sine.ni.com/cs/app/doc/p/id/cs-13487.LabVIEW VI for Simple Vector Field Histogram (VFH), http://zone.ni.com/reference/en-XX/help/372983A-01/lvrobovi/simple_vfh.PID and Fuzzy Logic Toolkit User Manual, National Instruments. 2009.Lefteri H. Tsoukalas, and Robert E. Uhrig, Fuzzy and Neural Approaches in Engineering, Wiley-Interscience. 1997.Tahboub, Khaldoun K., and Munaf SN Al-Din. "A Neuro-Fuzzy reasoning system for mobile robot navigation." JJMIE 3.1 (2009).Pi-Ying Cheng, Pin-Jyun Chen, Navigation of mobile robot by using D++ algorithm, Intelligent Service Robotics Journal, November 2012,K. Schmidt and Y. Boutalis, "Fuzzy Discrete Event Systems for Multiobjective Control: Framework and Application to Mobile Robot Navigation", IEEE Trans. on Fuzzy Systems, October 2012.Y. S. Boutalis, K. Schmidt, "Multi-objective decision making using fuzzy discrete event systems: A mobile robot example", 18th Mediterranean Conference on Control and Automation, June 23-25, 2010.

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.

Thank YouDEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGG.