Академический Документы
Профессиональный Документы
Культура Документы
AdityaBansalDhruvKaushal
UniversityofCalifornia,SanDiego
ABSTRACT
Weallknowhowbigphotographyisfortravelers,butveryfewofusunderstandthediscomfortthesepeople
havetogothroughtocapturethesemoments.Carryingaheavycamera,atripod,andnumerousother
accessoriescanbebothersome.Therefore,wedecidedtocreateareadytoflydrone,thatisfully
autonomous,andiscapableofrecordingvideosoftravelersdoingactivitiessuchashiking,skiingetc.
Wewereabletouseacheapdronetoflyautonomouslyinanonwindyenvironment,thatwaseasytoset
up,andhadfailsafefeaturestoprotectitfromcrashing.WealsodevelopedacustomPIDcontroller,which
wouldcalculatetheerrorbetweenthedronescurrentpositionandthepersontofollow,andthensuggest
thespeedthedroneshouldusetoreducetheerror.Thisway,wewereabletogetitworkingforslow
activitieslikehiking,aswellasfastpacedactivitieslikerunning/jogging.Overall,wewereabletoreducethe
costofsuchanautonomousdronefrom$1500to$300.
INTRODUCTION
Thedronepetprojectthatweworkedonforthisclassmainlyconsistedofadronethatwouldautonomously
track,followandrecordpeoplewhiletheywouldperformoutdooractivities,allowingthemtobefreeofthe
burdensofcarryingacamera,etc.Weencounteredmanydifferentrequirementsandobstaclestofulfillour
goalsfortheproject.Thecheapdronethatweusedfortheprojectrequiredmorecareduetoits
unresponsivenatureduringheavywindsduetoitsinbuiltflightcontrollerandstabilizer.
Inthisarticle,wepresenthowweimplementedthefunctionalityofautonomousnavigationandtracking,how
wewereabletoovercomethechallengeswefacedduringtheimplementationoftheproject,howourtime
wasstructuredduringthequarterthroughthemilestonesthatwehadsetandhowweevolvedour
milestonesaswewentalongtheprojectandgainedmoreexperiencebuildingthenavigationsystem.We
alsotalkaboutourfailedattemptstointegratecertaintechnologiesintoourprojectandhowweendedup
learningfromthemandfinallywetalkaboutwhatkindoffuturedevelopmentthisprojectwouldrequiretobe
commercializedandfinetuned.
Onahighlevel,ourdronefollowsaspecificworkflowsoaccomplishitsjob.Theorderingoftheitemsinthe
workflowshowthestepsrequiredbythedronetobefullyfunctionalinitsobjectiveandbeabletocomplete
thetaskwithaslittleoutsideinterferenceaspossible
Recordvideosortakeimagesdependingonthechosenpreference(Skippedforclass)
Flytothepresetflyingaltitude
Identifythepersontofollow
Navigateandkeepthepresethardcodeddistancefromtheperson
Keeptrackingpersonfortheallocatedtime
Safelylandattheendoftheallocatedtimeorwhenthebatteryislow
Thisworkflowallowedforustobeabletoaccomplishallthetasksthatwehadsetupfortheproject,asyou
willseeinthemilestonessection.Duetotimelimitationsandbeingforcedtousethedronesinbuiltflight
controller,wewereunabletocustomizebehaviorduringdifferentweatherconditions,whichalsomadeitso
thatwedidnothavecompletecontrolofthemovementsofthedroneinwindyenvironment.
TECHNICALMATERIAL
Weusedaparrotardrone2.0,andthetagsthatitcamewithtoimplementourautonomousflightcontroller.
Thiswastheonlypieceofhardwarethatwehadtouse,otherthanthebatteriesandthechargers.
WealsousedROS(RoboticsOperatingSystem)runningonavirtualUbuntumachine,thatbehavedasa
messagingsystembetweenourcodeandthedroneitself.
Toconnecttothedrone,weusedtheparrotdronesinbuiltwifimodule.
ThecalculationsfornavigationforthedronewasdoneinpythonasROSnodes,whichwouldrunona
computerandthensenttothedronethroughwifiusingROStopics.
MILESTONES
Ourobjectivefortheprojectwastofulfilltheserequirementsthatwedeemednecessaryforthesuccessof
theproject
1. Easytosetup
Oneofthebiggestproblemswithofftheshelfsolutionsthatwehadencounteredwasthattheyrequired
trainingandcalibrationafterbeforebeingabletousethem.Thusoneofourmajorgoalswastomakesure
thatourdronecouldbereadytousestraightoutofthebox.
2. Affordability
Wewantedtomakethedroneaffordable,sinceofftheshelfsolutionscostedupwardsof$1,500whichwe
consideredtobetooexpensiveforgeneraladaptationofthistechnology.
3. Recordingrecreationactivities(Skippedforthisclass)
Finally,wewantedittobeabletorecordpeoplesrecreationalactivitiessuchashiking,skiing,etc.This
requiredittohaveatrackingfeature,autonomousnavigation,etc.
Duringtheplanningphaseforthisproject,wehadsetupthefollowingmilestonesfortheproject
1. InterfacingthedronewithROS
WewantedtobeabletocontrolthedroneusingthewellknownroboticscommunicationframeworkROS.
ROSwouldhaveallowedustoeasilyintegrateourprojectuntonumerousotherdronesallowingforgreater
portability.ROSstandsforRoboticsOperatingSystem,andisanintermediarybetweenyourcode/terminal,
andyourrobot,whichinourcaseisthedrone.
2. Semiautonomousflights
Duringtheinitialtestingphase,wehadplannedtocheckourdronesresponsivenessbycoding
semiautonomousflightsfirst,suchthatwecouldlearnthelimitationsthedronehadonitsnavigability,
outsideinterferences(likewinds)andalsototestthecontrollerwhichwewroteforthedrone.
3. TagdetectionorOpenCV
Inordertokeeptrackofthepersonthedronehadtofollow,weusedtheinbuilttagdetectioncapabilityof
theParrotARdrone2.0.Thiswasprobablytheeasiestpartoftheprojectaswedidnthavetowriteany
OpenCVcodeorreinventthewheel.WeusedthegivenSDKtowritesomebasicfunctionsthatwould
recognisetheorangebluemarkersshowninthevideos.
4.
PIDController
PIDstandsforproportional,integral,derivative,andisafeedbackloopmechanismthatiscommonlyusedto
correcttheerrorbetweenthecurrentsituation,andtherecommendedsituation.Inourproject,weuseditto
calculatetheerrorbetweenthepositionofthedroneandthepositionofthetag.Thenwesentthis
informationtothenextpart.
5. Autonomousflightnavigation
Oneofourmajormilestoneswasfortheautonomousflightnavigationsystemtobesetup,wherethedrone
wouldfollowthepersondetectedbythetagautonomouslywithoutanyotherinterference.Wehadplanned
tousetheinbuiltflightcontrollerandimplementtheautonomousbehaviorinpythonanduseitusingROS.
6. Bugfixesandfinetuning
Ourlastmilestoneinitiallyhadtimeallocatedforbugfixesandfinetuningtheautonomousnavigation
algorithmswhiledoingrealworldflyingtests.
Revisionsmadeduringthemiddleofthequarter
Forthemostpartwehadsimilarmilestonesinthemiddleofthequarter,expectafewchangestothe
trackingpartofourproject.Thedronethatweused,camewithcertainTagsthatitscameracouldrecognize
whichweusedinsteadofOpenCVsobjectdetectionfortrackingpeople.Additionally,weswitchedOpenCV
toworkmoreonobstacledetectiontoimprovethesafetyandsurvivabilityofthedrone.
Attheendofthequarter,themilestoneswewereunabletoimplementwererelatedtoOpenCV.Wehad
failedtocalculatethecomputingpowerthatOpenCValgorithmstook,whichmadeitsuchthatthe
computationaldelaythatthealgorithmscausewaslongenoughforthedronetobeunabletotrackand
navigateproperly.Oneofthefixeswewereworkingonincludedonlyrunningtheobjectdetectionalgorithm
onceasecondsuchthattherewouldbelesscomputingtodoandthuslessdelay,butitcausederratic
behaviorinournavigation.Alsoitcausedthedronetostoprandomlyduetofalsepositivesandobjects
detectedfarfromthedroneforwhichitshouldnotneedtotakeanyspecialaction.
Anotherproblemweencounteredduringthecourseofthequarterwasthefactthatourdronewouldfollow
themovementcommandsperfectlyduringstillweather,butstrongwindsmadeitunstableandunableto
moveasinstructed.ThisendedupcausingalotofproblemduetothefactthatSanDiegogotreallywindy
duringourtestingphasewhichmadeitsuchthatwewereunabletocollectasmuchflyingdataaswe
wantedto.
OBSTACLES
1. Testingindoors.
Asyoucouldseeinthefinalvideo,theindoorspacesareverysmallandnotidealtotestprojects
likequadcopters.Thewaytheparrotardroneworks,ifiteventouchesanythingontheside,itstarts
tobehaveinaveryerraticmanner.
2. Smallbattery
Theflyingtimeonthequadcopterwasrathersmall,around78minutes,anditwouldtakeafull2
hourstocharge.Thissloweddownthetestingquiteabit,andwewouldspendalotoftimejust
tryingtotestthedronewithoutactuallyflyingit.
3. Windyenvironment
Thebiggestchallengewefacedwasmakingthedroneworkinwindyenvironment.Assoonasthe
windspeedwent>5mph,thedronewouldnotworking,evenmanually.Whilereadingabout,we
realizedthatthisismoreofaproblemwithquadcoptersthanourflightcontroller.Someofthehigher
enddronesalsostrugglewithmanualflightcontrolinwindyenvironment,letaloneautonomous
functionality.
4. Practicalityissues.
Whilsttagfollowingwasafunprojecttoimplement,itsnotthemostpracticalwaytodevelopan
autonomousdrone,asitneedsidealconditionsliketherightwindspeed,therightlightingforthe
camera,therightenvironmentetc.Tomakeamorerealworldfriendlydrone,weregoingtotry
incorporatingaGPSbasedfollowingmodetoourdrone.
CONCLUSION
Overall,wehadalotfunintheclass,andwereallyenjoyedbuildingourownautonomousquadcopter.With
theexceptionofmakingitworkinwindyenvironment,weareveryhappywiththeresultsofourmilestones.
Wewillcontinuetoenhanceourproject,sointhefuturewecancompetewithhigherenddronesliketheDJI
Phantomorthe3DRSolo.Next,wewanttomakeitGPScompatible,soitcanfollowpeoplearoundwithout
atag.Wehopetofinishthenextmilestonessometimewithinthenext6months,andthentakeourprojectto
market.
VideoLink:
https://www.youtube.com/watch?v=4CUk7CVd9Zs
Github:
https://github.com/maddymanu/CSE145