march 7, 2016 school of engineering sciencewhitmore/courses/ensc305/projects/2016/... ·...
TRANSCRIPT
March7,2016Dr.AndrewRawiczSchoolofEngineeringScienceSimonFraserUniversityBurnaby,BCV5A1S6Re:ENSC-305W/440WDesignSpecificationforNav-BsystemDearDr.Rawicz,PleaseacceptthefollowingdocumentasaDesignspecificationforourHeadsUpDisplayproject(Nav-Bsystem).Ourmaingoalistodesignandimplementacyclingnavigationsystemthatmakesbikingasaferandmoreenjoyableexperienceforcyclists.Theimplementationofourdesignprovidesuserswithrealtimenavigationalinformation,distancecovered,currentspeedandtimeoftheday.Thepurposeofthisdocumentistoprovideadetaileddescriptionofthedesignspecificationsofourproposedproduct.Thekeyitemscoveredincludethesmartphoneapplication,mechanicalholdingarm,hardwarechoicesandadisplaymodule.Additionallythedocumentprovidesatestplan,whichwillbeadoptedtoreachafinalworkingmodelstage.EVRTechconsistsoffivetalentedandhardworkingseniorengineeringstudents:SaumyaSangal,AakritiArora,TokySaleh,AlanZuoandLiangshuoGuo.Ifyouhaveanyquestionspertainingtoourproduct,pleasefeelfreetocontactourCOObyphoneat604-780-0467orbyemailataakritia@sfu.ca.Weareveryeagertohearyourfeedbackofourproduct.
KindestRegards,
SaumyaSangalChiefExecutiveOfficerEVRTechEnclosure:DesignSpecificationofNav-Bsystem
DesignSpecificationforNAV-B
systemAsmartandsafebicyclesystem
ProjectTeam: SaumyaSangal
AakritiArora TokySaleh AlanZuo LiangshuoGuo
ContactPerson: [email protected] Submittedto:
Dr.AndrewRawicz-ENSC440W SteveWhitmore-ENSC305W SchoolofEngineeringScience SimonFraserUniversity
IssuedDate: March7,2016 Revision: 1.1
Copyright©EVRTech.AllRightsReserved.II
Abstract
ThisdocumentcontainsadetaileddesignspecificationfortheNav-B.Asystemoverviewisprovidedtogivethereaderasenseoftheoveralldesign.Thedesigndetailslistedinthisdocumentcorrespondtothecomponentrequirementsinthefunctionalspecificationdocument.TheoverallsystemhasbeensegmentedintoeachseparatecomponenttoallowparalleldevelopmentoftheNav-Bsystem.
Thehardwaresectionconsistsoftheselectedmicrocontroller,bluetoothmodule,toggleswitchandthechosendisplayscreenmodule.Thesystemisactivatedwiththehelpofasmartphoneapplicationthatrequeststheusertoinputtheirdestinationaddressinordertobeginthecommunicationrelaywiththemicrocontroller.Thesystemiscontainedwithinamechanicalholdingarm,whichprovidesanaddedflexibilityfunctionthatallowstheuserstomovetheentiresystemverticallyandhorizontally.
Thedisplaymoduleallowstheuserstotogglethroughmultipledatascreensviapushingthetogglingswitchontheholdingarm.Thescreenwilldisplaythecurrenttimeofthedayandrouteinformationmetricsasitsdefaultoutput.Usersmaythenaccesstheremainingdistance,speed,andcallandtextinformationviatheaforementionedswitch.
Adetailedtestplanhasbeenincludedinthisdocumentthatwillensurethatallrequirementsaremetduringdevelopmentandtestingphases.Atthemoment,weareaheadofscheduleandarehopingtobegintestingsoon.
Copyright©EVRTech.AllRightsReserved.III
TableofContentsAbstract.......................................................................................................................................................II
ListofFigures..............................................................................................................................................IV
ListofTables................................................................................................................................................V
Glossary.......................................................................................................................................................V
1.Introduction.............................................................................................................................................1
1.1Scope.................................................................................................................................................1
1.2IntendedAudience............................................................................................................................1
2.SystemRequirements..............................................................................................................................2
3.OverallSystemDesign.............................................................................................................................3
4.SoftwareDesign.......................................................................................................................................4
4.1GoogleAPIWebService....................................................................................................................5
4.2ConnectsmartphonetoArduino.......................................................................................................7
5.HardwareSpecifications..........................................................................................................................8
5.1MicrocontrollerUnit..........................................................................................................................8
5.2BluetoothModule..............................................................................................................................9
5.3WritingBluetoothcommunicationCode.........................................................................................10
5.4EmbedBluetoothcommunicationCodeintoGoogleMaps............................................................10
5.5CommunicationbetweenArduinoUnoandBluetoothModule......................................................11
5.6OLEDDisplayUnit............................................................................................................................13
5.7CommunicationofOLEDDisplaywithArduinoUno........................................................................14
5.8PowerSupply...................................................................................................................................15
5.9ToggleSwitch...................................................................................................................................16
5.10MechanicalHoldingArmUnit........................................................................................................16
Physical..............................................................................................................................................16
Material.............................................................................................................................................17
6.SystemTestPlan....................................................................................................................................18
6.1UnitTesting......................................................................................................................................18
SmartphoneApplicationUnitTestPlan.............................................................................................18
MicrocontrollerUnitTestPlan..........................................................................................................18
Copyright©EVRTech.AllRightsReserved.IV
DisplayUnitTestPlan........................................................................................................................18
MechanicalHoldingArmUnitTestPlan............................................................................................19
6.2IntegrationTesting...........................................................................................................................19
6.3RegressionTesting...........................................................................................................................19
6.4AcceptanceTesting..........................................................................................................................20
7.Safety.....................................................................................................................................................20
8.Conclusion.............................................................................................................................................20
References.................................................................................................................................................21
Appendix....................................................................................................................................................23
ListofFiguresFigure1-TopLevelSystemDesign------------------------------------------------------------------------------------------2Figure2-SolidworksexamplemodelofNav-Bsystem-----------------------------------------------------------------3Figure3-SolidWorksconceptmodeloftheproductionversionoftheNav-B-----------------------------------4Figure4-Mainscreen-----------------------------------------------------------------------------------------------------------5Figure5-Genymotionscreen-------------------------------------------------------------------------------------------------6Figure6-Enterdestinationaddress----------------------------------------------------------------------------------------6Figure7-Settingsscreen-------------------------------------------------------------------------------------------------------7Figure8-Bluetoothconnectionscreen------------------------------------------------------------------------------------7Figure9-ArduinoUno---------------------------------------------------------------------------------------------------------8Figure10-BluetoothModuleHC-06---------------------------------------------------------------------------------------9Figure11-PinDescriptionofHC-06BluetoothModule--------------------------------------------------------------9Figure12-AndroidStudioIDE-----------------------------------------------------------------------------------------------10Figure13-Terminalscreen---------------------------------------------------------------------------------------------------11Figure14-ArduinoIDEscreen-----------------------------------------------------------------------------------------------11Figure15-ArduinoIDEconnectedtoBluetoothmodule------------------------------------------------------------12Figure16-ArduinoIDEconnectedwithDupontline------------------------------------------------------------------12Figure17-AdafruitOLEDDisplay------------------------------------------------------------------------------------------13Figure18-ConnectedOLEDDisplayandArduinoUno----------------------------------------------------------------14Figure19-ConnectedOLEDDisplayandArduinoUno---------------------------------------------------------------14Figure20-ConnectedOLEDDisplayandArduinoUno---------------------------------------------------------------15Figure21-ToggleSwitch-----------------------------------------------------------------------------------------------------16Figure22-3-Dmodelofmechanicalholdingarm---------------------------------------------------------------------17
Copyright©EVRTech.AllRightsReserved.V
ListofTablesTable1-BasicSpecificationofOLEDDisplay---------------------------------------------------------------------------13Table2-HoldingArmSpecifications--------------------------------------------------------------------------------------17 Glossary ABS-Acrylonitrile-Butadiene-Styrene,isalowcostengineeringplasticthatiseasytomachineandfabricate[1]
Android-AnoperatingsystemusedformobiledevicesbyGoogleAPI-Itisanapplicationprograminterface,asetofroutines,protocolsandtoolsforbuildingsoftwareapplicationsArduino-Open-sourceelectronicsprototypingplatformforhardwareandsoftwareusageDC-PinconnectionofOLEDscreentoArduinoD1-PinconnectionofOLEDscreentoArduinoD0-PinconnectionofOLEDscreentoArduinoGND-GroundHTTP–HyperTextTransferProtocoliOS-AnoperatingsystemusedformobiledevicesbyAppleInc.OLED-OrganicLight-emittingdiodetechnologyPlaPlastic-(PolyLacticAcid),Itisabio-degradabletypeofplasticthatismanufacturedoutofplant-basedresourcessuchascornstarchorsugarcane.[5]
PlexiGlas-Atrademarkforalight,transparent,weatherresistantthermoplasticRES-PinconnectionofOLEDscreentoArduinoRXD-HC-06bluetoothpinconnectionTXD-HC-06bluetoothpinconnectionVCC–voltagesupplypinWi-Fi-wirelessnetworkingtechnology
Copyright©EVRTech.AllRightsReserved.1
1.Introduction
TheNav-B,aproductofEVRTech,isawearableHUDdevicethatimplementsthelatestadvancementsinOLEDtechnologywithagoaltomaketherideforcyclistssaferandmoreconvenient.Withourproduct,cyclistsarebetterpreparedontheirtravelsastheynolongerneedtorisktheirsafetybyusingtheirsmartphonesorpullingoverfordirectionsinunsafeandinconvenientlocations.Inordertouseourproducttheusermustsimplydownloadourappandentertheirdestination.OncethedestinationhasbeenconfirmedtheusercanattachtheNav-Bontotheirhelmetandenjoythebenefitsofhandsfreenavigationandarangeofmetricsbasedontheuser’sperformance.ThisdesignspecificationdocumentprovidestherequirementsandprocessdetailsforthedevelopmentofaworkingmodelfortheNav-B.
1.1 Scope
ThisdocumentprovidesindetailthedesignspecificationsthatwerechosenfortheproofofaconceptualmodelfortheNav-Bsystem.Theorderofthecontentsofthisreportcorrespondtotheconcerneddevelopmentphasesthathavebeendetailedinthefunctionalspecification.Thedesignofeachcomponentisaidedbyimagesandsketchestoprovideavisualrepresentationofthefinalsystemdesign.Furthermore,atestplanhasbeenattachedtoevaluatethefunctionalaspectofeachdevelopmentphaseaswellasthefinalintegratedmodel.
1.2IntendedAudienceThisdocumentisintendedtobeusedbyallmembersofEVRtech,andwillactasthebasisforthedevelopmentoftheNav-Bmodel.Engineersworkinginthetestingandevaluationfieldshallrefertothetestplanandensurethatrequirementsaremetforeachstageandcomponent.DevelopmentEngineersmustensurecomplianceofeachcomponentwithengineeringandsafetystandardsdetailedinthefunctionalspecification.
Copyright©EVRTech.AllRightsReserved.2
2.SystemRequirements
Nav-Bcontainsanembeddedsystem,ArduinoUno,anOLEDscreenandabluetoothmodule.Thesethreemajorhardwarecomponents,whencombinedwiththesmartphoneapplication,arewhatcreateourEVRTechproduct.Byallowinguserstoentertheirdestinationfromthemobileapplicationontotheembeddedsystem,wehelpthembyprovidingdetailedinstructionsoftheirroutes,whichincludesturnsignals,speed,timeandremainingdistance.Combiningallthesefeaturestogether,EVRTechwillcreateasmartandsafebicyclesystem.ThebasicconceptofourentiresystemisfurtherillustratedinFigure1below.
Figure1-TopLevelSystemDesign
Copyright©EVRTech.AllRightsReserved.3
3.OverallSystemDesign
Figure2belowisa3-dimensionalSolidWorksmodeloftheoverallNav-Bsystem.ItdisplayshowtheArduinoUnoandOLEDscreenwillbeconnectedtogetherviaamechanicalholdingarm.
Figure2-SolidworksexamplemodelofNav-Bsystem
Copyright©EVRTech.AllRightsReserved.4
Figure3-SolidWorksconceptmodeloftheproductionversionoftheNav-B
4.SoftwareDesignAsstatedinthe[R-51-A]softwarerequirementsofthefunctionalspecification,thesmartphoneapplicationwillallowuserswithiPhonedevicestoentertheirdestination.Theapplicationwillusethedevice’scurrentlocationanddisplayturn-by-turndirectionandsmartnotificationwithrespecttothedestinationenteredbytheuser.TheapplicationwillrelaythedirectionsandothernotificationstothemicrocontrollertodisplayontheOLEDscreen.
Copyright©EVRTech.AllRightsReserved.5
Figure4-Mainscreen
TheFigure4abovedisplaytheNav-BiPhoneapplication.
Allpreviouslyenteredplaceswillbesavedin“RecentDestinations”tabandcanbemarkedasfavouritesforlaterretrieval.Oncetheuserentersthedestinationandclickon‘Startnavigation’,theapplicationwillminimizeandcontinuetoruninthebackground.Whilerunninginthebackground,theapplicationwillsendturn-by-turninstructionstothemicrocontroller,whichwilldisplaytheinformationontheOLEDscreen.
4.1GoogleAPIWebServiceThesmartphoneapplicationiscomprisedofGooglemapsAPIwebservices.Forcodeverification,theapplicationcomprisesof:(1)ApkTool(2)SmaliTool.smali(3)Qihoo360ApkSigner(4)DDMS(5)Genymotion(6)Pythonenvironment(7)playback-gpx(8) Android SDK
Copyright©EVRTech.AllRightsReserved.6
Google Maps API allowed access to HTTP interfaces, providing geographic data such as geocoding, directions, elevation, place and time zone information [1]. GenymotiondetectedtheGPSpositionchangesandtheaccuracyofthenavigation,andwereabletosetthelocationonthebasisonlongitudeandlatitudeasshowninFigure5below.
Figure5-Genymotionscreen
InGoogleMaps,settheendpointforthenavigationasWuhanRailwayStation,andusethedefaultroutetostartthenavigation.Afterthenavigationhasstarted,turnonDDMStoreceivelogs,asshowninFigure6below.
Figure6-Enterdestinationaddress
Copyright©EVRTech.AllRightsReserved.7
4.2ConnectsmartphonetoArduino
(1)GotoSettingsaBluetoothonasmartphonedevice,turnonBluetooth,andchoosetopairwithHC-06,ourBluetoothmodule(discussedinsection5.2).
Figure7-Settingsscreen
(2)Insert1234astherequiredpairingpassword,andclick“OK”.
Figure8-Bluetoothconnectionscreen
Copyright©EVRTech.AllRightsReserved.8
5.HardwareSpecifications TheNav-Bsystemconsistsofthefollowinghardwarecomponents:
• Microcontroller• BluetoothModule• OLEDDisplay• PowerSupply• ToggleSwitch
5.1MicrocontrollerUnit
Figure9-ArduinoUno[2]
TheNav-BsystemwillincorporateanArduinoUnoR3withanATmega16U2microcontrollerasshowninFigure9above.EVRTechchoseArduinoUnoasourprimaryprocessingplatformforitsbetterportabilityandbeinglightweightas25grams.Italsoallowsfastertransferrateandmorememory.Theboardwastheidealchoiceforawearabledevice.Furthermore,Arduinoisopen-sourcephysicalcomputingplatformwhichmadeitappealingtoourengineersatEVRTech[2].Theboardwillbepoweredwith5Vbattery,whichisinarangeofoperatingvoltageforArduinoUno.
Copyright©EVRTech.AllRightsReserved.9
5.2BluetoothModule
Figure10-BluetoothModuleHC-06[3]
InordertoconnectsmartphonewithArduino,totransferrouteinformation,BluetoothmoduleisusedoverWi-Fi.ThisisbecauseWi-FiconsumemorebatterythanBluetooth.WechosetopurchasetheHC-06BluetoothModuleseeninFigure10above,duetoitssmallsize(27mmby13mmby2mm),lowpowerconsumption,high-performancewirelesstransceiversystemandlowcost[4].Below,isthespecifiedPINdescriptionofbluetoothmodule.TherearefourcomponentsthatshouldbeconnectedtoArduinoUno:RXD,GND,TXDandVCCwhichareexplainedinthenextsectionbelow.
Figure11-PinDescriptionofHC-06BluetoothModule[4]
Copyright©EVRTech.AllRightsReserved.10
5.3WritingBluetoothcommunicationCode
EVRTechusedAndroidStudioIDEtoenableBluetoothconnectionfromsmartphonedevicetoArduinoUno.AndroidStudioprovideswizardsandtemplatesthatverifythesystemrequirementsandallowsconfiguringdefaultsettings.GoogleSDKwasimportedalongwithBluetoothTool.javaandBlueToothThread.java.TheAndroidStudioIDEalsoallowedtheuseofTranslationsEditortoviewallthetranslatedresources,modifytranslations,andaddnewlocales [5].
Figure12-AndroidStudioIDE
5.4EmbedBluetoothcommunicationCodeintoGoogleMaps
AfterwritingBluetoothcommunicationcodeonAndroidStudioIDE,furthermoduleslistedbelowwereaddedtoconnectGoogleMapsAPIwebservicewiththeHC-06Bluetoothmodule.
(1) ApkTool(2) UltraEdit(3) Qihoo360APKSigner(4) App-debug.apk
TheApkToolwasrunonterminalusingAndroidStudioIDEtoinsertpermissionforthenavigationsystem.ThescreenshotofterminalisprovidedbelowinFigure13.Qihoo360APKSignerwasusedtoapplysignaturestothenewAPKAtthispoint,thedevelopmentoftheappintheAndroidStudioIDEwassuccessfullycompleted.
Copyright©EVRTech.AllRightsReserved.11
Figure13-Terminalscreen
5.5CommunicationbetweenArduinoUnoandBluetoothModule
EVRTechchoseArduinoUnomicrocontrollerasitiscompatiblewiththeopen-sourceArduinoSoftware(IDE),whichmakesiteasytowritecodeanduploadittotheboard.TheenvironmentiswritteninJavaandbasedonprocessingandotheropen-sourcesoftware[6].
Figure14-ArduinoIDEscreen
AsshowninFigure15below,theBluetoothmoduleisconnectedtoArduinoUnowithdupontline.TheconnectionsbetweeneachpinintheHC-06andtheArduinodevelopmentboardisasfollows:-VCC:connectto5VontheArduino-GND:connecttoGNDontheArduino-TXD:connecttoRXontheArduino-RXD:connecttoTXontheArduino
Copyright©EVRTech.AllRightsReserved.12
Figure15-ArduinoIDEconnectedtoBluetoothmodule[7]
Figure16-ArduinoIDEconnectedwithDupontline
Copyright©EVRTech.AllRightsReserved.13
5.6OLEDDisplayUnit
Figure17-AdafruitOLEDDisplay[8]
EVRTechchoseOLEDdisplaysforbeingsmall,onlyabout1"diameter,(approximately0.96”)asshowninFigure17above,butveryreadableduetothehighcontrastofanOLEDdisplay.Thisdisplayismadeof128x64individualwhiteOLEDpixels,eachoneisturnedonoroffbythecontrollerchip.Becausethedisplaymakesitsownlight,nobacklightisrequired.ThisreducesthepowerrequiredtoruntheOLEDandiswhythedisplayhassuchhighcontrast[8].TheDisplayiscompatiblewiththemicrocontroller,ArduinoUnoandconsumespowerapproximately3.5V.Thedisplayspecificationsarelistedbelow.
Table1-BasicSpecificationofOLEDDisplay[8]
Copyright©EVRTech.AllRightsReserved.14
5.7CommunicationofOLEDDisplaywithArduinoUno
TheOLEDDisplaywasconnectedtoArduinoUnoviadupontlineasshowninFigure18andFigure19below.TheconnectionsbetweeneachpinontheOLEDdisplayandtheArduinoUnoboardisasfollows:
-DC:Connectwith11terminalontheArduinodevelopmentboard-RES:Connectwith13terminalontheArduinodevelopmentboard-D1:Connectwith9terminalontheArduinodevelopmentboard-D0:Connectwith10terminalontheArduinodevelopmentboard
Figure18-ConnectedOLEDDisplayandArduinoUno
Figure19-ConnectedOLEDDisplayandArduinoUno
Copyright©EVRTech.AllRightsReserved.15
5.8PowerSupply
Figure20-ConnectedOLEDDisplayandArduinoUno
TheOLEDdisplayandArduinoUnowillrequireapproximately3.3Vpowersupplyand3.3Vlogiclevelsofcommunication.Thepowerrequirementsdependalittleonhowmuchofthedisplayislit,butonaveragethedisplayusesabout20mAfromthe3.3Vsupply.BuiltintotheOLEDdriverisasimpleswitch-capchargepumpthatturns3.3V-5VintoahighvoltagedrivefortheOLEDs.
Copyright©EVRTech.AllRightsReserved.16
5.9ToggleSwitch
Figure21-ToggleSwitch[9]
TheNav-Bsystemwillcompriseofatoggleswitch,whichwillallowuserstoswitchtheOLEDdisplayscreen.Ifauserreceivesanincomingcallontheirmobiledevice,theuserwillgetnotificationontheNav-Bsystem.Whenthecallisended,theusercanswitchthescreen,whichwillresumeagaintoprovidedirectionsfortheirdestination.TheOLEDdisplayallowstheuserstotogglethroughmultipledatascreensviapushingthetogglingswitchontheholdingarm.Thescreenwilldisplaythecurrenttimeofthedayandrouteinformationmetricsasitsdefaultoutput.Usersmaythenaccesstheremainingdistance,speed,andcallandtextinformationviathetoggleswitch.
5.10MechanicalHoldingArmUnit
Physical
Themechanicalarmwillbeattachedtothehelmettogivethecyclistsasaferandmoreconvenientride.Theavailabilityoftheperformancemetricsrightateyelevelwhilecyclingallowstheusertoevaluatetheirperformanceonthego.Itholdsthedisplayintheusers’preferredposition.TheNav-BsystemisstoredinalightweightLexanpolycarbonatebox,thatis10xstrongerthanglass,toprotectthesystem.TheOLEDdisplay,ontheotherhand,willbecoveredwithtwopiecesofplexiglasinbothsideandstoredin3Dprintedframe[10].ThefollowingpartswillbestoredinNav-Bsystembox:
Copyright©EVRTech.AllRightsReserved.17
Table2-HoldingArmSpecifications[11][12][13][14]
Parts Dimensions (cm x cm x cm) Weight (grams)
Nav-B Lexan box 17 x 12 x 5 ( subject to change) 136.5 grams
Arduino Uno 6.865 x 5.3 x 1.508 27.95 grams
Oled Display 2.798 x 2.914 x 0.126 2.5 grams
Bluetooth Module 3.69 x 1.605 x 0.2 5 grams
Breadboard 4.7 x 3.5 x 1.0 15 grams
Figure22-3-Dmodelofmechanicalholdingarm[15][16]
Themechanicalarmcanmovehorizontallyorverticallyusinghingejointsforverticalmovement.ApieceofplexiglassisplacedinbothsideoftheOLEDscreentoprotectitfromanyphysicaldamage.
Material
WewilluseABSmaterialforthemechanicalarm.Itisanopaquethermoplasticpolymerplastic,itisstronganddurableevenatlowtemperature.Itisalsogoodresistancetoheatandchemicalsandiseasytoprocess[17].
Copyright©EVRTech.AllRightsReserved.18
6.SystemTestPlanTestingisdonetoensurethatthesystemissafefromerrorsasitiscrucialforoursystembecausetheusersdependontheaccuratefunctionalityofoursystem.TomaintainhighqualityoftheEVRTechproducts,thesystemundergoesathoroughtestingprocesstoensurethesystemisworkinginthemannerinwhichitwasintended.Therearefourmainstagesoftestingthatneedtobecompletedbeforeasystemcanbeclearedforuse:unittesting,integrationtesting,regressiontesting,andacceptancetesting[18].
6.1UnitTesting
Unittestingwillbeconductedonindividualcomponentsofthesystemtodetermineeachcomponentisfunctionalasfollows:
SmartphoneApplicationUnitTestPlan
Totestthesmartphone,needtoensure,• ItiscompatiblewithiOSversion8.0andhigherandAndroidversions• ThedeviceiscapabletoconnecttoBluetooth• Thesmartphonehasaccesstotheinternettoruntheapplication• TheapplicationconnectstotheGoogleAPIwebservice
MicrocontrollerUnitTestPlan
Totestthemicrocontroller,needtoensure,• Thesampleprojectswillbeabletorunfirsttogetusedtotheprogrammingstyle• Testtheconnectionsoftheunit• ThedecodingisdonecorrectlyafterBluetoothisintegratedtothemicrocontrollerunit
DisplayUnitTestPlan
Totestthedisplay,needtoensure,• Nophysicaldefect/damage• WiringwithArduinoisdoneproperly• ReceivesdatafromArduino• Abletoshowexpectedoutput
Copyright©EVRTech.AllRightsReserved.19
MechanicalHoldingArmUnitTestPlan
Totestthemechanicalholdingarm,needtoensure,• Itiseasilyadjustablebyuser• Itislightweightandcomfortablywearabletotheuser
6.2IntegrationTestingIntegrationtestingallowstheopportunitytocombinealloftheunitswithinasystemandtestthemasagroup[18].Wewillintegrateunitstoensurecorrectdatatransferbetweenthemandensurethefunctionalityoftheproductisasexpected.Todebugourproduct,wewillstartbytestingeachindividualunit.Oncetheunitsareapproved,wewillthenintegratethemonebyoneandwilltestateachleveltoensureproperfunctionality. Firstly,wewillmakesurethattheapplicationisretrievingdatafromtheGoogleAPIsandrequiredinformationissavedforlateruse.Secondly,wewillconnectthesmartphonewithBluetooth,whichisfurtherconnectedtotheArduino,keepinginmindthatbotharetestedandreadytobeused.Then,wewillconnectthedisplayunitwithArduinotooutputthedesiredinformation.Attheend,alloftheunitswillbeplacedinamechanicalholdingarmandgivingallpossiblecombinationsofinputsthroughsmartphoneapplicationandcheckingtheresultedoutputonthedisplayunitwilltestthewholesystem.Inthispartoftesting,thepowerunitisbeingtestedtopoweralldifferentunits.
6.3RegressionTesting
Regressiontestingisthefirstlevelinwhichthecompletesystemistestedasawhole.Thegoalatthislevelistoevaluatewhetherthesystemhascompliedwithalloftheoutlinedrequirementsandtoseethatitmeetsengineeringandqualitystandards.Independenttesterswhohaven’tplayedaroleindevelopingthesystemundertakesystemtesting.Thistestingisperformedinanenvironmentthatcloselymirrorsproduction[18].RegressionTestingisveryimportantbecauseitverifiesthatthesystemmeetsthetechnical,functionalrequirementsthatwereproposedbyEVRTechfortheusers.
Copyright©EVRTech.AllRightsReserved.20
6.4AcceptanceTestingThefinallevel,Acceptancetesting(orUserAcceptanceTesting),isconductedtodeterminewhetherthesystemisreadyforrelease[19].Thisisthelastphaseoftestingwheretheuserswilltestoursysteminreal-worldscenariosaccordingtospecifications.
7.Safety
AtEVRTech,weseektodesignproductsthatenhancethequalityoflifeofourcustomers.Todoso,wevaluetheidealsofsustainabilityandthesafetyofourcustomersasourhighestpriority.Itisforthisreasonthatwehaveapproachedeachstageofdevelopmentwithcaution.
EachcomponentoftheNav-Bsystemhasbeendesignedkeepinginmindthesafetyofitsusers.ThedisplayhasbeenlimitedtousingOLEDscreenstohaveasignificantlybrighterdisplay[23].Furthermore,inordertoensurethatthescreenremainsshatterproof,thescreenwillbecoveredbyathinfilmofPlexiglastopreventanyglassparticlesfromcausingharmtotheuser.Theholdingarmplaysthemostvitalroleinensuringthesafetyofourcustomers.ThemajorityofthearmwillbedesignedusingABSplastic,whichisbothlightandsturdy[26].Rubbercoatingwillbeprovidedaroundthemicrocontrollerhousingunittopreventanyelectricaldischarge.Thearmitselfisdesignedsuchthatithasanumberofventsonthelowerendthatprovidearouteforheatdissipation.However,themostsignificantattributeoftheholdingarmisitsflexibility,whichallowsausertomovethescreenverticallyinfrontoftheireyesaswellasmovethescreencloserandfurtherawayfromtheireyes.
8.ConclusionThedesignspecificationslistedinthisdocumentwillserveasaroadmapforEVRTechintheproductionandimplementationoftheNav-Bsystem.Thedesignspecificationsprovidedincludespecificinformationaboutindividualcomponents,theircompatibilityandajustificationoftheiruse.
Basedonthefunctionalspecificationdocument,thisdocumentwillserveasaguidelinewhenimplementingallfunctionrequirements.Thetestplanwillhelptoensurethatthedesignspecificationsaremetandthatthemodelisinworkingorder.AtEVRTech,ourteamisfullycommittedtotransformcyclingintoasmarterandsaferexperience.
Copyright©EVRTech.AllRightsReserved.21
References
[1]2016.[Online].Available:https://developers.google.com/maps/web-services/].[Accessed:11-Mar-2016].
[2]"A000073|ArduinoUnoR3SMD",Rpelectronics.com,2016.[Online].Available:http://www.rpelectronics.com/a000073-arduino-uno-r3-smd.html.[Accessed:11-Mar-2016].
[3]"HC-05FC-114andHC-06FC-114.Part2–BasicATcommands|MartynCurrey",Martyncurrey.com,2015.[Online].Available:http://www.martyncurrey.com/hc-05-fc-114-and-hc-06-fc-114-part-2-basic-at-commands/.[Accessed:11-Mar-2016].[4]2016.[Online].Available:https://www.olimex.com/Products/Components/RF/BLUETOOTH-SERIAL-HC-06/resources/hc06.pdf.[Accessed:11-Mar-2016].[5]"Configuration|AndroidDevelopers",Developer.android.com,2016.[Online].Available:http://developer.android.com/tools/studio/studio-config.html.[Accessed:11-Mar-2016].
[6]"Arduino-Software",Arduino.cc,2016.[Online].Available:https://www.arduino.cc/en/Main/Software.[Accessed:11-Mar-2016].[7]"BluetoothModuleHC-05orHC-06(Master/Slave)",Bitstoc.com,2016.[Online].Available:http://www.bitstoc.com/index.php?route=product/product&product_id=62.[Accessed:11-Mar-2016].[8]A.Industries,"Monochrome0.96128x64OLEDgraphicdisplayID:326-$19.50:AdafruitIndustries,Unique&funDIYelectronicsandkits",Adafruit.com,2016.[Online].Available:https://www.adafruit.com/product/326.[Accessed:11-Mar-2016].[9]L.Summers,"Arduino:GettingStartedwithButtons!–FileArchiveHaven",Filearchivehaven.com,2014.[Online].Available:http://www.filearchivehaven.com/2014/06/16/arduino-getting-started-with-buttons/.[Accessed:11-Mar-2016].[10]"LexanPolycarbonateSheet-.093Inchx18Inchx24Inch|TheHomeDepotCanada",Homedepot.ca,2016.[Online].Available:https://www.homedepot.ca/en/home/p.polycarbonate-sheet---093-inch-x-18-inch-x-24-inch.1000171918.html.[Accessed:11-Mar-2016].
Copyright©EVRTech.AllRightsReserved.22
[11]A.Industries,"ArduinoUnoR3(Atmega328-assembled)ID:50-$24.95:AdafruitIndustries,Unique&funDIYelectronicsandkits",Adafruit.com,2016.[Online].Available:https://www.adafruit.com/products/50.[Accessed:11-Mar-2016].[12]B.(White),B.(White),B.(Clear),S.Kit,S.Mini,J.10andJ.10,"Breadboard-MiniModular(White)-PRT-12043-SparkFunElectronics",Sparkfun.com,2016.[Online].Available:https://www.sparkfun.com/products/12043.[Accessed:11-Mar-2016].[13]2016.[Online].Available:http://www.tinyosshop.com/datasheet/Tinysine%20Serial%20Bluetooth4%20user%20manual.pdf.[Accessed:11-Mar-2016].[14]"SerialBluetooth4.0BLEModule-iBeacon",Tinyosshop.com,2016.[Online].Available:http://www.tinyosshop.com/index.php?route=product/product&product_id=705.[Accessed:11-Mar-2016].[15]"Tinkercad|Create3DdigitaldesignswithonlineCAD",Tinkercad,2016.[Online].Available:https://www.tinkercad.com/.[Accessed:11-Mar-2016].[16]"Oops404notfound",Ock1.dromikf.top,2016.[Online].Available:http://ock1.dromikf.top/a/mechanical-hinge-joint/).[Accessed:11-Mar-2016].[17]"PlasticsEurope-Acrylonitrile-Butadiene-Styrene(ABS)-PlasticsEurope",Plasticseurope.org,2016.[Online].Available:http://www.plasticseurope.org/what-is-plastic/types-of-plastics-11148/engineering-plastics/abs.aspx.[Accessed:11-Mar-2016].[18]"Blog",SegueTechnologies,2016.[Online].Available:http://www.seguetech.com/blog/2013/07/31/four-levels-software-testing].[Accessed:11-Mar-2016].[19]"Blog",SegueTechnologies,2016.[Online].Available:http://www.seguetech.com/blog/2013/07/31/four-levels-software-testing].[Accessed:11-Mar-2016].
Copyright©EVRTech.AllRightsReserved.23
Appendix
TechnicalDataSheetofOLEDDisplay