You are on page 1of 8

ME218cSpring2017Project:HerdingHoveringFerrets

GradingSessiononMay30,2017inSPDLstartingat6:00PM.
ProjectPresentationsonMay31,2017intheAtriumstartingat6:00PM.

Goal:
Thegoalofthisprojectistoprovideaframeworkinwhichyoucanapplyyourknowledgeofmicrocontrollersand
multi-processorcommunicationstoataskthatwillprovideanenjoyableexperiencefortheusersandthe
observers.
Purpose:
Theunderlyingpurposeofthisprojectistoprovideyouwithanopportunitytogainexperienceinintegratingall
thatyouhavelearnedintheME218coursesequence,withanemphasisonthenewmaterialinME218c.
Background:
Withthemassivewinterrains,LakeLaghasbecomehosttoalargepopulationofsalamanders.Unfortunately,the
largepopulationhasattractedagaggleofFrenzied,Erratic,Random,RuckusExcitingTormentors(FERRETs)who
arefeastingonthesalamanders.WeneedawaytosavethesalamandersfromtheseFERRETs.
TheTask:
DesignandbuildateleoperatedDeviceOfGuidance(DOG)vehicleandacompanionFloatingAnimalRescue
Mechano-ElectricalRemote(FARMER).PacksofDOGswilloperateintheWetlandsattheendoftheAtriumin
Building550.Duringroundsofthegame,apackofthreeDOGS,throughtheirFARMERs,willattempttoherdthe
FERRETsintotheSafeCaptureAndRecoveryZone(SCARZ).

Specifications

General:
EachteamwillconstructaDOGandaFARMER.

TheDOGsaredevicescapableofnavigatinginwetlandterrainwhileherdingtheFERRETsintothe
SCARZ.
TheFARMERsarethewirelessremotecontrollersfortheDOGs.

SPDLwillsupplythefleetofhoveringFERRETstobeherded.

BasicGamePlay:
AgameroundwillbeacooperationamongthreeFARMERsandapackofthreeDOGs.

ThegoalofthegameistoherdthehoveringFERRETsintotheSCARZ.

Thegamewillcontinueuntil218secondshavepassedorallFERRETshavebeenherdedintothe
currentSCARZ.

TheWetlands:
TheWetlandiscomprisedofaregionattheWestendofthebuilding550Atrium,measuring
approximately16ft.by24ft(seeFigure1).
TheboundariesoftheWetlandareformedbyaplasticwall4"high.

AtthebeginningofeachgametheparticipatingDOGswillbeplacedinoneofthefourcornersofthe
WetlandasshowninFigure1.
OneendoftheWetlandwillbedesignatedastheSCARZ.


ME218cSpring2017Project:HerdingHoveringFerrets

Figure 1: The Wetland


TheDOGs:
EachDOGmustbecapableofmovingunderitsownpowerwithintheWetland.

TheDOGmusthoverabovethesurfaceoftheWetland,andtheonlysourceofliftallowedistheliftfan
providedbytheSPDL.
DOGsmustbebatterypoweredandoperatewithoutaleash.NiCdorNiMHbatteriesaretheonly
approvedpowersources.
TheliftfanmustonlybepoweredthroughtheseriesconnectedpairofSPDLsupplieddiodes.DoNot
connecttheliftfandirectlytobatteriesorthepowersupply.Theliftfanisnotratedforthebattery
voltageofapairofseriesconnected7.2VNiMhorNiCdbatteries.
Designandfunctionofthepropulsionandsteeringsystemsareunconstrainedwiththecaveatthat
theymaynotdirectlyapplyforcetotheWetlandfloor.Anexceptiontothisruleallowsfordraggingan
elementagainsttheWetlandtobrakeorsteer.Thiswillbeacceptableaslongasthecontact
mechanismwould,ifdeployedwhiletheDOGwasnotmoving,createapproximatelyequaldraginall
directionsandisnotcapableofsupportingthevehicle.
ControlofDOGfunctionsmustbeachievedviaaFARMERusingtheprovidedRFhardware(XBee24
modules).
TheDOGmustcontainanelectromechanicaldisplayindicatingthatcommunicationwithaFARMERis
currentlyactive.
EachDOGmustcarryandcommunicatewithanSPDLsupplied6-DOFInertialMeasurementUnit.
InformationfromtheIMUwillbereportedtotheFARMERtoaidincontrollingtheDOG.
DOGsmustincorporateaneasilyaccessibleswitchthatdisablesallmovingsystems.

TheperimeterofthelargestnormalprojectionoftheDOGintotheplaneoftheWetlandmustnot
exceed72.Theentirevehicle,projectedverticallyontothefield,mustliewithintheperimeter.Height

2
ME218cSpring2017Project:HerdingHoveringFerrets

isnotrestricted.
DOGsmustincorporateaclassstandardfoambumperaroundtheirperimeter,andmustbetolerantof
moderatebumpingfromotherDOGsandFERRETs.Thebottomedgeofthefoambumpermustbeata
heightbetween0(theWetlandsurface)and1.25abovetheWetlandsurfacewhilehovering.The
bumpermustfollowthesameperimeterthatismeasuredtofitthe72requirement.
EveryDOGmustbecontrollablethroughanyoftheFARMERsviatheclass-wideprotocol(SeeRadio
Communicationsinalatersection).
TheDOGmayissuemessagestotheFARMERataratenogreaterthan5Hz.

IftheDOGfailstoreceiveamessagefromitscontrollerfor1second,itwillassumethatthereisa
problemandreverttothecontrollersearchprocessdescribedunderGameDetails.
Duringagame,eachDOGwillcarryanSPDLsuppliedDogTagindicatingwhichoftheDOGs(1-3)it
currentlyrepresents.TheDogTagwillincludea2-pinelectricalconnector(MolexKK256)toaresistor
(1-3k)thatcanbeusedbytheDOGtodeterminewhichDogTagitiscurrentlycarrying.
EachDOGmustprovideastandard-20screwtoattachanSPDLsuppliedsmartphonemount.This
screwshouldbepositionedtoprovidethebestlocationforthesmartphonecameratoprovidea
DOGs-eyeviewtotheFARMERforuseincontrollingtheDOG.Intheeventthatyourteamdoesnot
haveasmartphonethatcanbeusedfortesting,SPDLwillhaveasmallnumberofphonesavailableto
checkout.Theywillalsobeavailableforuseontheeveningofthepublicshow.

TheFARMERs:
EachteamwilldesignandconstructaFARMERthatwillrelaycommandsfromahumanoperatortoa
DOG,andreceiveanddisplayconnectionstatuswiththeDOGandattitudereportsfromtheIMU
mountedontheDOG.
TheFARMERmustbecapableofdisplayingtotheoperatoranindicationofactivecommunicationwith
itsassociatedDOG.
TheFARMERmustprovideamethodfortheoperatortousetoindicatewhichDOG(1-3)theoperator
wouldliketocontrol.
FARMERsmustbebatterypowered,andshallhavesufficientbatterycapacityforatleast8hoursof
continuousoperation.Thereportshouldshowdocumentationandcalculationstosupportmeetingthis
requirement.
FARMERsmustbeun-tetheredandportablebyoneperson.

InputtotheFARMERshouldinvolveatleast3sensingmodalities(e.g.position,force,audio,
acceleration,etc.).UseofunusualinterfacemethodsisencouragedastheDOGsareusedtoresponding
touniquesignals.
TheactionsrequiredbytheuseroftheFARMERtoissuecommandstotheDOGshouldbeinventive
andinterestingfortheaudiencetowatch.Useofactionsthatmaketheoperatorlookandfeelfoolishis
encouraged.
TheFARMERmayissuecommandstoaDOGataratenogreaterthan5Hz.

FARMERsshouldbeintuitivetooperate,and/orhavesufficientvisualinstructionsthatatypical
spectator(evenanon-engineer)wouldbeabletolearnitscontrolswithinthetimespanofasingle
gameround.

TheFanControllingTREAT:
EachDOGmusthaveaTenaciousRewardandEncouragementforAccurateTracking(TREAT).

TheTREATwillconsistofaPIC12F752programmedinassemblylanguagethatreceivesinstructions
fromthemainprocessoroftheDOGtocontrolthelevelofliftcreatedbytheliftfan.
CommunicationbetweentheTREATandthemainprocessoroftheDOGwilltakeplaceoveran
asynchronousserialcommunicationschannel.

3
ME218cSpring2017Project:HerdingHoveringFerrets

GameDetails:
ThreeFARMERstationswillbearrayedalongthewestwalloftheAtrium.Thesestationswillconsistof
anSPDL-suppliedworkstationandmonitor,connectedtotheinternetandcapableofrunningSkype.
TheFARMERstationswillbepositionedwiththeirmonitorsfacingthewetlands.TheFARMERswillbe
positionedinfrontofthestations,facingthemonitorsandthereforefacingawayfromthewetlands.A
SkypeconnectionbetweentheDOG-mountedsmartphoneandtheFARMERstationwillprovidethe
DOGs-eyeviewoftheworldforusebythepersonoperatingtheFARMER.Thepersonoperatingthe
FARMERshouldbediscouragedfromturningtofacetheWetlands.
Uponpower-uporintheeventofalossofcommunicationwithitscurrentFARMER,theDOGwill
activateitselectromechanicalindicationthatitissearchingforacontrollinginterest,deactivateitslift
fanandwaitforarequestforcontrolfromaFARMER.
TheoperatorofaFARMERthatwishestocontrolaparticularDOGmustselectthatDOG(1-3)using
theFARMERandmakeauniquecontrolactiontoinitiatetakingcontroloftheDOG.Thisactionwill
resultintheFARMERsendingamessagetotheDOGrequestingcontroloftheDOG.Thedetailsofthe
requestprocesswillbedefinedintheclass-widecommunicationsprotocol.
TheDOGwillrespondtorequestsforcontrolfromitsassignedFARMERbysendingamessagebackto
therequestingFARMERconfirmingreceipt.Atthistime,theDOGwillalsode-activateits
electromechanicalindicationofsearchingforacontroller.Aftercompletingthisprocess,theDOG
remainsloyaltothatFARMERuntilallFERRETsarecontainedor218secondshavepassed.
IfaDOGreceivesarequestforcontrolwhileitisalreadyundercontrol,itwillsilentlyignorethe
request.
Within100msoflosingcommunication,theDOGmustactivateitselectromechanicalindicationthatit
issearchingforacontrollingFARMERanddeactivateitsliftfan.

RadioCommunications:
CommunicationsbetweentheDOGs,andFARMERswilltakeplaceoveranSPDL-supplied802.15.4
radio(Xbee24)usingtheNon-BeaconAPImodeofoperation.
TopreventeavesdroppingontheconversationsbetweentheFARMERsandtheirDOGscommand
communicationsbetweenthemwillbeencryptedusingthealgorithmdescribedinAppendixAofthis
document.
AnyFARMERshouldbecapableofcontrollinganyDOG.

Onceagamebegins,communicationwilltaketheformofbi-directionalcommunicationsbetweena
DOGanditsboundFARMER.
EachDOGandFARMERwillbeassignedauniqueIDintheformofthesourceaddressofeach
SPDL-suppliedradio.
ThedetailsofthecommunicationsprotocolwillbedefinedandspecifiedbyaCommunications
Committee,whichwillconsistofonememberfromeachprojectteam.Thespecificationmustbeina
writtenformandwithsufficientdetailthatsomeonesufficientlyskilledinME218materialcould
implementit.
Inordertobetterbalancetheworkloadandlearningamongteammembers,eachofthefollowingtasks
mustbecompletedbyadifferentmemberoftheteam:serveonthecommunicationscommittee,
implementcommunicationsontheDOG,andimplementcommunicationsontheFARMER.
Theclasscommunicationsprotocolmustincludeaprocedureforvalidationofcommunicationbetween
theDOGandFARMER.TheDOGsmustprovideanelectro-mechanicalindicationofwhenafunctioning
communicationslinkbetweentheDOGandFARMERexists.

GeneralRequirements:
Ataminimum,eithertheFARMERortheDOGmustcontaintwoactivelycommunicatingprocessors.
Thereisnoclassimposedupperlimitonthenumberofprocessorsemployed.
Youarelimitedtoanexpenditureof$200.00/teamforallmaterialsandpartsusedintheconstruction
ofyourproject.MaterialssuppliedtoeachteambySPDL,fromthelabkit,ortheCabinetOfFreedom

4
ME218cSpring2017Project:HerdingHoveringFerrets

donotcountagainstthelimit.Allotheritemscountattheirfairmarketvalue.
Aprojectlogbookmustbemaintainedforeachgroup.Anonlineblogisappropriatetomeetthis
requirementaslongasitismadeavailabletotheteachingstaffforreview.Thislogshouldreflectthe
currentstateoftheproject,planningforthefuture,resultsofmeetings,designsastheyevolveetc.The
projectlogbookwillbereviewedatirregularintervalsforevaluation.
Areportdescribingthetechnicaldetailsofthesystemwillberequired.Thereportshouldbeof
sufficientdetailthatapersonskilledatthelevelofME218ccouldunderstand,reproduce,andmodify
thedesign.Thereportmustbeinwebsiteformat,andbesuitableforpostingontheSPDLsite.
FARMERsorDOGsbasedsubstantiallyonpurchasedplatformsarenotallowed.

Allprojectsmustrespectthespiritoftherules.Ifyourteamisnotsureifsomethingwillviolatethe
spiritoftherules,youmustconsultamemberoftheteachingstaff.

Safety:
BoththeDOGsandtheFARMERsshouldbesafe,bothtotheuserandthespectators.

Propulsionfansmustbesuitablyshroudedtopreventinjuryfromthefanblades.

IntentionallydisablingordamagingotherDOGsisnotallowed.Prohibitedactionsinclude,butarenot
limitedto,thefollowing:rammingatexcessivespeed(asdeterminedsolelyatthediscretionofthe
teachingstaff).
NopartoftheDOGmaybecomeballistic.

Approvedsmallportableelectronicdevicesmaynowbeusedduringtaxi,take-off,andlanding.

Theteachingstaffreservestherighttodisqualifyanydeviceconsideredunsafe.

Checkpoints
DesignReview:
On05/09/17between9:30am&2:30pmwewillconductadesignreview,oneteamatatime.Eachteamshould
prepareafewimagesshowingyourproposeddesignsforboththeDOGandtheFARMER.Youwillhave5minutes
towalkusthroughyourideas.Thefocusshouldbeonsystemlevelconcepts,notdetailedhardwareor
software.Wewillspendthebalanceofthetime-slotgivingfeedbackandaskingquestions.Inadditiontoyour
concepts,atthistimeyoumustpresent,inprintedform(softcopy),yourplanforthedevelopment,integrationand
testingstepsthatyouwillfollowtocompletetheproject.Theplanmustidentifywhatfunctionalityyouwill
demonstrateatthetwocheck-pointsandtheprojectpreviewalongwiththetestproceduresthatyouwilluseto
provethatyourteamhasmetthecheck-point.Check-pointtestsmustfollowanincrementalintegrationstrategy
witheachsuccessivecheck-pointdemonstratingallofthefunctionalityofthepriorcheckpoint(s)aswellasthe
newfunctionality.Thisplanmustbeapprovedbytheteachingstaff.Ifwefeelthatitisflawed,wewillaskyouto
reviseandresubmit.Sampleplansareavailablein
_Samples\SampleCheckpointDeliverablesTestingPlans.Thepresentationsandreviewwilltakeplacein
550-122AKATheFishbowl)oppositetheDesignoffice).
TherewasatimeIthoughtIwasaferret.
CassandraClare
FirstDraftofCommunicationsStandard:
Dueby9:00pmon05/10/17.Edwillprovidefeedbackonthespecificationon5/12/17.Sampleprotocolsandinput
documentsareavailablein_Samples\CommProtocolSpecArchive
Slicingawarmslabofbaconisalotlikegivingaferretashave.Nomatterhowcarefulyouaresomebodysgoingto
gethurt.
AltonBrown
CommunicationsStandard:
Dueby5:00pmon05/13/17.Thisistheworkingdraftofthecommunicationsstandard.
Olddogs,likeoldshoes,arecomfortable.Theymightbeabitoutofshapealittlewornaroundtheedges,butthey
fitwell.
BonnieWilcox
5
ME218cSpring2017Project:HerdingHoveringFerrets

FirstCheckpoint:
On05/16/17,youmustdemonstrateyourapproved1stcheck-pointfunctionalityaccordingtoyourdefinedtesting
procedure.
Thefinalworkingversionofthecommunicationsstandardisdue.Nofurtherchangesareallowedtothestandard.
Thisprotocolwillbeevaluatedwithrespecttoitscompletenessandsuitabilityfortheproposedsystem.Note:this
isafunctionalevaluationonly.Thefocusshouldbeondemonstratingfunctionalhardwareandsoftware.Youmay
submitforapprovalafinalrevisionofyourcheck-pointplanatthistime.
Thefarmerhastobeanoptimistorhewouldntstillbeafarmer.
WillRogers
SecondCheckpoint:
On05/22/17,youmustdemonstrateyourapproved1stcheck-pointand2ndcheck-pointfunctionalityaccordingto
yourdefinedtestingprocedure.Thefunctionalitydemonstratedatthistimemustincludefullimplementationof
thecommunicationsprotocol.
Ifaferretbitesyouitisnearlyalwaysyourownfault.
PhilDrabble
ProjectPreview:
AttheProjectPreviewon05/26/17,eachteammustdemonstrate(inadditiontothe1st&2ndcheckpoints
functionality)yourapprovedprojectpreviewfunctionality.Thefunctionalitydemonstratedatthistimemust
includeademonstrationofinteroperabilitybetweenatleast2teams'DOGsandFARMERs.
IbelievedthatIwasasalamanderanditseemsthatIamnothingbutanimpediment.
ZeldaFitzgerald
GradingSession:
DuringtheGradingSessionon05/30/17,eachteamwillberequiredtodemonstratetheabilitytosuccessfully
participateinagame.Thiswillinclude
1)EstablishingcommunicationsbetweenyourDOGandFARMERandbetweenyourDOGandtheFARMERfrom
anotherteam.
2)NavigatingaDOGfromtheinitialpositionandsuccessfullyinducingatleastoneFERRETtomoveintothe
designatedSCARZ.
3)DisplayingonboththeFARMERandtheDOGthecorrectstatusofcommunications.
Adetailedgradingcheck-offprocedurewillbepublishedatalaterdate.
Thatsnotarat,thatsmyferret.
JenniferAniston
PublicPresentation:
Thiswilltakeplaceon05/31/17startingat6:00pmintheAtriumofBuilding550.Atthisevent,membersofthe
publicwillbeencouragedtoactasoperatorsoftheFARMERs.
Nothingintheworldisfriendlierthanawetdog.
Unknown
Report:
Draftdueon06/05/17by4:00pm.Thefinalversion(withrevisionsincorporated)isdueby5:00pmon06/09/17.
Anybodywhodoesntknowwhatsoaptasteslike,neverwashedadog.
FranklinPJones
Celebration:
Acelebrationofthepast3quartersofME218willtakeplaceattheAlpineInnon06/01/17startingatnoon.Mark
yourcalendarsnowandsavethedate.
Moneycanbuyyouafinedog,butonlylovecanmakehimwaghistail.
KinkyFriedman

6
ME218cSpring2017Project:HerdingHoveringFerrets

Evaluation
PerformanceTestingProcedures:
OneormoreoftheteammemberswilldemonstratetheDOGandFARMERduringthefirst&secondcheckpoints
andprojectpreview.MembersoftheteachingteamwilloperatetheDOGviatheFARMERduringthegrading
session.
GradingCriteria:
Concept(15%)Thiswillbebasedonthetechnicalmeritofthedesignandcodingforthemachine.
Includedinthisgradewillbeevaluationoftheappropriatenessofthesolution,aswellasinnovative
hardware,softwareanduseofphysicalprinciplesinthesolution.
Implementation(15%)Thiswillbebasedontheprototypedisplayedattheevaluationsession.
Includedinthisgradewillbeevaluationofthephysicalappearanceoftheprototypeandqualityof
construction.Wewillnotpresumetojudgetrueaesthetics,butwillconcentrateoncraftsmanshipand
finishedappearance.
FirstCheckpoint(10%)Basedontheresultsoftheperformancedemonstratedon05/16/17.

SecondCheckpoint(10%)Basedontheresultsoftheperformancedemonstratedon05/22/17.

PreliminaryPerformance(10%)Basedontheresultsoftheperformancedemonstratedduringthe
ProjectPreview.
Performance(15%)BasedontheresultsoftheperformancetestingduringtheGradingSession.

Report(10%)Thiswillbebasedonanevaluationofthereport.Itwillbejudgedonclarityof
explanations,completenessandappropriatenessofthedocumentation.
ReportReview(5%)Thesepointswillbeawardedbasedonthethoroughnessofyourreviewofyour
partnerteam'sreport.Readtheexplanations,dotheymakesense?Reviewthecircuits,dotheylooklike
theyshouldwork?
LogBook(5%)Thiswillbeevaluatedbytheevidenceofconsistentmaintenanceaswellasthequality
andrelevanceofthematerialinthelogbook.
Housekeeping(5%)BasedonthetimelyreturnofSPDLcomponents,cleanlinessofgroup
workstationsaswellastheoverallcleanlinessofthelab.Nogradeswillberecordedforteamswhohave
notreturnedallloanedmaterials.

7
ME218cSpring2017Project:HerdingHoveringFerrets

AppendixA
EncryptionAlgorithm:
AllcommandsfromtheFARMERtoaDOGwillbeencryptedusingarotatingXORCipher(describedindetail
below).Sincethecommunicationschannelisessentiallyone-way(withtheexceptionofacknowledgements),only
oneencryptionkeyisnecessary.This32byterandomlygeneratedkeywillbeprovidedbytheFARMERtotheDOG
aspartoftheprocessofpairingbetweentheFARMERandtheDOG.AllsubsequentcommandsfromtheFARMER
totheDOGthroughtheendoftheperiodofcontrolwillbeencryptedusingthiskey.
Aspartofthepairingprocess,thedetailsofwhichwillbedefinedbytheclass-widecommunicationsprotocol,the
FARMERwillprovidetotheDOGthecurrentkey(uint8_tEncryptKey[32]).Forthisapplication,allmessagesprior
topairingaswellasthekeymaybetransmittedinplaintext.
Oncethereceiptofthekeyisacknowledged,bothFARMERandDOGwillresetinternalcounters(uint8_ti)tozero.
Thiscounterwillthencountmodulo32(sothatitwillrotatethroughthebytesoftheencryptionkey)withevery
newbyteencryptedanddecrypted.
Totransmitamessage,XmitMsg=[a,b,c],theFARMERwouldconstructanencryptedversionusingtheencryption
key:Encrypt=[a^Key[++i],b^Key[++i],c^Key[++i]]where++iisunderstoodtobeanincrementby1modulo32andi
isincrementedoneveryuse.Forexample,ifi=0originally,thenEncrypt=a^Key[1],b^Key[2],c^Key[3].TheDOG
woulddecryptthisreceivedmessageusingthestoredencryptionkey:Decrypt=RecvMsg[0]^StoredKey[++i],
RecvMsg[1]^StoredKey[++i],RecvMsg[2]^StoredKey[++i]where,onceagain,++iisunderstoodtobeanincrement
by1modulo32andiisincrementedoneveryuse.
Atthispoint,theDOGwouldinterprettheDecryptedmessageaccordingtotheprotocoldefinedbytheclass-wide
communicationscommittee.
Note:becausetheencryptionkeyisrotatingitiscriticalthatthetransmitterandreceiverstayinsync.Droppedor
lostpacketsmustbere-trieduntilsuccessinordertoremaininsync.Itwillbetheresponsibilityofthe
communicationsprotocoltoprovideforthisrobustness.

You might also like