Fail-Safe Module for Unmanned Autonomous Vehicle

11
Fail-Safe Module for Fail-Safe Module for Unmanned Autonomous Unmanned Autonomous Vehicle Vehicle CMPE 450/490 CMPE 450/490 Project Presentation Project Presentation Presenters: Lai Nguyen, Presenters: Lai Nguyen, Jesse Xi Chen Jesse Xi Chen

description

Overview Introduction Theory of Operation Hardware Software Complications Future Improvement Demonstration Reference

Transcript of Fail-Safe Module for Unmanned Autonomous Vehicle

Page 1: Fail-Safe Module for Unmanned Autonomous Vehicle

Fail-Safe Module for Fail-Safe Module for Unmanned Autonomous Unmanned Autonomous

VehicleVehicleCMPE 450/490 CMPE 450/490

Project PresentationProject Presentation

Presenters: Lai Nguyen, Jesse Xi Presenters: Lai Nguyen, Jesse Xi ChenChen

Page 2: Fail-Safe Module for Unmanned Autonomous Vehicle

OverviewOverview• IntroductionIntroduction• Theory of Theory of

OperationOperation• HardwareHardware• SoftwareSoftware

• ComplicationsComplications• Future Future

ImprovementImprovement• DemonstrationDemonstration• ReferenceReference

Page 3: Fail-Safe Module for Unmanned Autonomous Vehicle

IntroductionIntroduction• University of Alberta Aerial University of Alberta Aerial

Robotics Group (UAARG)Robotics Group (UAARG)• Current Fail-Safe ModuleCurrent Fail-Safe Module

– SimpleSimple– Need specialized microcontrollerNeed specialized microcontroller

• ObjectiveObjective– Improve reliabilityImprove reliability– Adding featuresAdding features– Integrate different features onto one Integrate different features onto one

chipchip

Page 4: Fail-Safe Module for Unmanned Autonomous Vehicle

Theory of OperationTheory of Operation

• Implemented in FPGAImplemented in FPGA • Pulse width Pulse width modulated modulated signalsignal

Servo Control from RC

Servo Control from autopilot

Generated Fail Safe

Mux To Servo Motors

Line from RC to monitorLine from Autopilot(for long-distance mode only)

Page 5: Fail-Safe Module for Unmanned Autonomous Vehicle

ImplementationImplementation• Hardware Hardware

– VHDL onlyVHDL only– More reliableMore reliable

• SoftwareSoftware– Synthesizing a Micro-blaze soft coreSynthesizing a Micro-blaze soft core– Custom peripheral reading in pulse widthCustom peripheral reading in pulse width– Converts into data available in memory mapped registerConverts into data available in memory mapped register– Output signal to servo motorOutput signal to servo motor

• Similar architectureSimilar architecture• Option to use Hardware or SW solutionOption to use Hardware or SW solution

PLB

Bus

Microblaze (CPU)

pwm_input

pwm_output

XPS Timer

From RC/AP

To Servos

Page 6: Fail-Safe Module for Unmanned Autonomous Vehicle

Finite State MachineFinite State Machine

• Short DistanceShort Distance • Long DistanceLong Distance

Manual RC

Auto-Pilot

Glide Forced Landing

!SW

SW

LOS

timeout

!LOS!LOS

LOS

Manual RC

Auto-Pilot

Glide Forced Landing

!SW

SW

LOS

timeout

!LOS! AP Health !LOS

Page 7: Fail-Safe Module for Unmanned Autonomous Vehicle

Loss of SignalLoss of Signal• HW:HW:

– Rising edge of each Rising edge of each pulses is usually 22.2mspulses is usually 22.2ms

– Edge difference for Edge difference for invalid signal:invalid signal:• < 22ms < 22ms • > 23ms > 23ms

– Doesn’t work wellDoesn’t work well– Majority vote of last n Majority vote of last n

decisionsdecisions

• SW:SW:– Take variance of last n Take variance of last n

signalssignals– If too high -> flag LOS If too high -> flag LOS

Page 8: Fail-Safe Module for Unmanned Autonomous Vehicle

ComplicationsComplications• Noisy inputNoisy input

– Random pulse widthRandom pulse width– Fix using average pulse widths in softwareFix using average pulse widths in software

• Complication in hardware solutionComplication in hardware solution– Need more effort to develop and no Need more effort to develop and no

debuggingdebugging• Complication in software solutionComplication in software solution

– Custom Peripheral synthesized initially too Custom Peripheral synthesized initially too slow to run at bus clock of 100mhzslow to run at bus clock of 100mhz

Page 9: Fail-Safe Module for Unmanned Autonomous Vehicle

Future ImprovementsFuture Improvements• Create schematics design and move the module Create schematics design and move the module

onto PCBonto PCB– Put the module onto Spartan boardPut the module onto Spartan board

• Make module more configurableMake module more configurable– Change mode of operation using jumperChange mode of operation using jumper– Change software/hardware implementation using Change software/hardware implementation using

jumperjumper• Change to Hardware implementation when Change to Hardware implementation when

exception encountered from Software exception encountered from Software implementationimplementation

• Improved pulse width detectionImproved pulse width detection

Page 10: Fail-Safe Module for Unmanned Autonomous Vehicle

ReferenceReference• UAARG:UAARG:

http://www.ece.ualberta.ca/~uaarg/http://www.ece.ualberta.ca/~uaarg/UAARGV3/index2.htmlUAARGV3/index2.html

• Xilinx:Xilinx:http://www.xilinx.com/http://www.xilinx.com/

• Application notes:Application notes:http://www.ece.ualberta.ca/~elliott/http://www.ece.ualberta.ca/~elliott/

cmpe490/appnotes/cmpe490/appnotes/

Page 11: Fail-Safe Module for Unmanned Autonomous Vehicle

DemonstrationDemonstration

• RC Control modeRC Control mode• Auto-Pilot ModeAuto-Pilot Mode• GlidingGliding• CrashCrash