march 7, 2016 school of engineering sciencewhitmore/courses/ensc305/projects/2016/... ·...

29
March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser University Burnaby, BC V5A 1S6 Re: ENSC- 305W/440W Design Specification for Nav-B system Dear Dr. Rawicz, Please accept the following document as a Design specification for our Heads Up Display project (Nav-B system). Our main goal is to design and implement a cycling navigation system that makes biking a safer and more enjoyable experience for cyclists. The implementation of our design provides users with real time navigational information, distance covered, current speed and time of the day. The purpose of this document is to provide a detailed description of the design specifications of our proposed product. The key items covered include the smartphone application, mechanical holding arm, hardware choices and a display module. Additionally the document provides a test plan, which will be adopted to reach a final working model stage. EVR Tech consists of five talented and hardworking senior engineering students:Saumya Sangal, Aakriti Arora, Toky Saleh, Alan Zuo and Liangshuo Guo. If you have any questions pertaining to our product, please feel free to contact our COO by phone at 604-780-0467 or by email at [email protected]. We are very eager to hear your feedback of our product. Kindest Regards, Saumya Sangal Chief Executive Officer EVR Tech Enclosure: Design Specification of Nav-B system

Upload: others

Post on 29-Feb-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 2: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 3: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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.

Page 4: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 5: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 6: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 7: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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.

Page 8: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.2

2.SystemRequirements

Nav-Bcontainsanembeddedsystem,ArduinoUno,anOLEDscreenandabluetoothmodule.Thesethreemajorhardwarecomponents,whencombinedwiththesmartphoneapplication,arewhatcreateourEVRTechproduct.Byallowinguserstoentertheirdestinationfromthemobileapplicationontotheembeddedsystem,wehelpthembyprovidingdetailedinstructionsoftheirroutes,whichincludesturnsignals,speed,timeandremainingdistance.Combiningallthesefeaturestogether,EVRTechwillcreateasmartandsafebicyclesystem.ThebasicconceptofourentiresystemisfurtherillustratedinFigure1below.

Figure1-TopLevelSystemDesign

Page 9: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.3

3.OverallSystemDesign

Figure2belowisa3-dimensionalSolidWorksmodeloftheoverallNav-Bsystem.ItdisplayshowtheArduinoUnoandOLEDscreenwillbeconnectedtogetherviaamechanicalholdingarm.

Figure2-SolidworksexamplemodelofNav-Bsystem

Page 10: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.4

Figure3-SolidWorksconceptmodeloftheproductionversionoftheNav-B

4.SoftwareDesignAsstatedinthe[R-51-A]softwarerequirementsofthefunctionalspecification,thesmartphoneapplicationwillallowuserswithiPhonedevicestoentertheirdestination.Theapplicationwillusethedevice’scurrentlocationanddisplayturn-by-turndirectionandsmartnotificationwithrespecttothedestinationenteredbytheuser.TheapplicationwillrelaythedirectionsandothernotificationstothemicrocontrollertodisplayontheOLEDscreen.

Page 11: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 12: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 13: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.7

4.2ConnectsmartphonetoArduino

(1)GotoSettingsaBluetoothonasmartphonedevice,turnonBluetooth,andchoosetopairwithHC-06,ourBluetoothmodule(discussedinsection5.2).

Figure7-Settingsscreen

(2)Insert1234astherequiredpairingpassword,andclick“OK”.

Figure8-Bluetoothconnectionscreen

Page 14: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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.

Page 15: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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]

Page 16: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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.

Page 17: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 18: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.12

Figure15-ArduinoIDEconnectedtoBluetoothmodule[7]

Figure16-ArduinoIDEconnectedwithDupontline

Page 19: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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]

Page 20: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.14

5.7CommunicationofOLEDDisplaywithArduinoUno

TheOLEDDisplaywasconnectedtoArduinoUnoviadupontlineasshowninFigure18andFigure19below.TheconnectionsbetweeneachpinontheOLEDdisplayandtheArduinoUnoboardisasfollows:

-DC:Connectwith11terminalontheArduinodevelopmentboard-RES:Connectwith13terminalontheArduinodevelopmentboard-D1:Connectwith9terminalontheArduinodevelopmentboard-D0:Connectwith10terminalontheArduinodevelopmentboard

Figure18-ConnectedOLEDDisplayandArduinoUno

Figure19-ConnectedOLEDDisplayandArduinoUno

Page 21: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.15

5.8PowerSupply

Figure20-ConnectedOLEDDisplayandArduinoUno

TheOLEDdisplayandArduinoUnowillrequireapproximately3.3Vpowersupplyand3.3Vlogiclevelsofcommunication.Thepowerrequirementsdependalittleonhowmuchofthedisplayislit,butonaveragethedisplayusesabout20mAfromthe3.3Vsupply.BuiltintotheOLEDdriverisasimpleswitch-capchargepumpthatturns3.3V-5VintoahighvoltagedrivefortheOLEDs.

Page 22: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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:

Page 23: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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].

Page 24: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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

Page 25: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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.

Page 26: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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.

Page 27: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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].

Page 28: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

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].

Page 29: March 7, 2016 School of Engineering Sciencewhitmore/courses/ensc305/projects/2016/... · 2016-03-12 · March 7, 2016 Dr. Andrew Rawicz School of Engineering Science Simon Fraser

Copyright©EVRTech.AllRightsReserved.23

Appendix

TechnicalDataSheetofOLEDDisplay