Difference between revisions of "S21: UTAH"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Parts List & Cost)
(Schedule)
Line 80: Line 80:
 
*Conduct meeting: Discuss GitLab layout and expectation of each assigned role
 
*Conduct meeting: Discuss GitLab layout and expectation of each assigned role
 
|
 
|
 +
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
|-
 
|-
Line 112: Line 113:
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
* <span style="color:orange">Completed</span>
+
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
 
* <span style="color:green">Completed</span>
Line 119: Line 120:
 
! scope="row"| 4
 
! scope="row"| 4
 
|
 
|
*03/08/2021
 
 
*<span style="color:blue">03/08/2021</span>
 
*<span style="color:blue">03/08/2021</span>
 
*<span style="color:red">03/08/2021</span>
 
*<span style="color:red">03/08/2021</span>
 
*<span style="color:magenta">03/08/2021</span>
 
*<span style="color:magenta">03/08/2021</span>
 
|
 
|
*03/14/2021
 
 
*<span style="color:blue">03/14/2021</span>
 
*<span style="color:blue">03/14/2021</span>
 
*<span style="color:red">03/14/2021</span>
 
*<span style="color:red">03/14/2021</span>
Line 135: Line 134:
 
* <span style="color:red">incomplete</span>
 
* <span style="color:red">incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
* <span style="color:green">In Progress</span>
+
* <span style="color:green">Complete</span>
 
|-
 
|-
 
! scope="row"| 5
 
! scope="row"| 5
Line 144: Line 143:
 
*<span style="color:red">03/15/2021</span>
 
*<span style="color:red">03/15/2021</span>
 
*<span style="color:red">03/15/2021</span>
 
*<span style="color:red">03/15/2021</span>
*<span style="color:magenta">03/15/2021</span>
 
*<span style="color:magenta">03/15/2021</span>
 
 
|
 
|
 
*<span style="color:black">03/21/2021</span>
 
*<span style="color:black">03/21/2021</span>
Line 152: Line 149:
 
*<span style="color:red">03/21/2021</span>
 
*<span style="color:red">03/21/2021</span>
 
*<span style="color:red">03/21/2021</span>
 
*<span style="color:red">03/21/2021</span>
*<span style="color:magenta">03/21/2021</span>
 
*<span style="color:magenta">03/21/2021</span>
 
 
|
 
|
 
*<span style="color:black">Begin laying out hardware requirements for PCB on excel document</span>
 
*<span style="color:black">Begin laying out hardware requirements for PCB on excel document</span>
Line 160: Line 155:
 
*<span style="color:red">Unit Test Direction Math Module </span>
 
*<span style="color:red">Unit Test Direction Math Module </span>
 
*<span style="color:red">Begin coding and digesting adafruit Compass data</span>
 
*<span style="color:red">Begin coding and digesting adafruit Compass data</span>
*<span style="color:magenta">Write motor controller modules and tests</span>
 
*<span style="color:magenta">Probe RC car to determine expected behavior of signals</span>
 
 
|
 
|
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
Line 173: Line 164:
 
! scope="row"| 6
 
! scope="row"| 6
 
|
 
|
*03/22/2021
 
 
*<span style="color:cyan">03/22/2021</span>
 
*<span style="color:cyan">03/22/2021</span>
 
*<span style="color:blue">03/22/2021</span>
 
*<span style="color:blue">03/22/2021</span>
 
*<span style="color:red">03/22/2021</span>
 
*<span style="color:red">03/22/2021</span>
 +
*<span style="color:orange">03/22/2021</span>
 +
*<span style="color:orange">03/22/2021</span>
 +
*<span style="color:magenta">03/22/2021</span>
 
*<span style="color:magenta">03/22/2021</span>
 
*<span style="color:magenta">03/22/2021</span>
*<span style="color:orange">03/28/2021</span>
 
*<span style="color:orange">03/28/2021</span>
 
 
|
 
|
*03/28/2021
 
 
*<span style="color:cyan">03/28/2021</span>
 
*<span style="color:cyan">03/28/2021</span>
 
*<span style="color:blue">03/28/2021</span>
 
*<span style="color:blue">03/28/2021</span>
 
*<span style="color:red">03/28/2021</span>
 
*<span style="color:red">03/28/2021</span>
*<span style="color:magenta">03/28/2021</span>
 
 
*<span style="color:orange">03/28/2021</span>
 
*<span style="color:orange">03/28/2021</span>
 
*<span style="color:orange">03/28/2021</span>
 
*<span style="color:orange">03/28/2021</span>
 +
*<span style="color:magenta">03/28/2021</span>
 +
*<span style="color:magenta">03/28/2021</span>
 
|
 
|
 
*<span style="color:cyan">Acquire sensor and interface sensors to SJ2 Board and receive raw data</span>
 
*<span style="color:cyan">Acquire sensor and interface sensors to SJ2 Board and receive raw data</span>
 
*<span style="color:blue">Implement basic communication between board and app</span>
 
*<span style="color:blue">Implement basic communication between board and app</span>
 
*<span style="color:red">Update Wiki with proper software diagrams</span>
 
*<span style="color:red">Update Wiki with proper software diagrams</span>
*<span style="color:magenta">Integration testing of motor logic and API</span>
 
 
*<span style="color:orange">Begin Mapping out pins used on all board</span>
 
*<span style="color:orange">Begin Mapping out pins used on all board</span>
 
*<span style="color:orange">Complete a block diagram and a control scheme</span>
 
*<span style="color:orange">Complete a block diagram and a control scheme</span>
 +
*<span style="color:magenta">Write motor controller modules and tests</span>
 +
*<span style="color:magenta">Probe RC car to determine expected behavior of signals</span>
 
|
 
|
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
Line 201: Line 193:
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
* <span style="color:red">Incomplete</span>
+
* <span style="color:green">Complete</span>
 +
* <span style="color:green">Complete</span>
 
|-
 
|-
 
! scope="row"| 7
 
! scope="row"| 7
Line 208: Line 201:
 
*<span style="color:cyan">03/29/2021</span>
 
*<span style="color:cyan">03/29/2021</span>
 
*<span style="color:blue">03/29/2021</span>
 
*<span style="color:blue">03/29/2021</span>
 +
*<span style="color:magenta">03/29/2021</span>
 
|
 
|
 
*<span style="color:black">04/04/2021</span>
 
*<span style="color:black">04/04/2021</span>
 
*<span style="color:cyan">04/04/2021</span>
 
*<span style="color:cyan">04/04/2021</span>
 
*<span style="color:blue">04/04/2021</span>
 
*<span style="color:blue">04/04/2021</span>
 +
*<span style="color:magenta">04/04/2021</span>
 
|
 
|
 
*<span style="color:black">Discuss and construct DBC file</span>
 
*<span style="color:black">Discuss and construct DBC file</span>
 
*<span style="color:cyan">Create sensor API to parse raw data and send useful data</span>
 
*<span style="color:cyan">Create sensor API to parse raw data and send useful data</span>
 
*<span style="color:blue">Integrate google map features into app</span>
 
*<span style="color:blue">Integrate google map features into app</span>
 +
*<span style="color:magenta">Integration testing of motor logic and API</span>
 
|
 
|
 +
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>
 
* <span style="color:red">Incomplete</span>

Revision as of 04:44, 29 March 2021

UTAH: Unit Tested to Avoid Hazards

Abstract

UTAH abstract

Objectives & Introduction

Show list of your objectives. This section includes the high level details of your project. You can write about the various sensors or peripherals you used to get your project completed.

Team Members & Responsibilities

Akash Vachhani profilepic.jpg

Jbeardphoto.jpg

  • Ameer Ali
    • Master Controller

Jonathan tran self pic.jpeg

  • Jonathan Tran Gitlab
    • Sensors Controller
  • Amritpal Sidhu
    • Motor Controller

Download.jpeg

  • Shreevats Gadhikar Gitlab'
    • Motor Controller

Schedule

Legend
Description Color
Administrative Black
Sensor Cyan
Bluetooth & App Blue
GPS Red
Motor Magenta
Main Orange
Week# Start Date End Date Task Status
1
  • 02/15/2021
  • 02/21/2021
  • Read previous projects to understand what is expected and have some meaningful knowledge by first meeting. Assign roles.
  • Completed
2
  • 02/22/2021
  • 02/28/2021
  • Acquire parts: Canbus modules, GPS module, Ultrasonic module, Bluetooth module, Car frame, and LCD display
  • Conduct meeting: Discuss GitLab layout and expectation of each assigned role
  • Completed
  • Completed
3
  • 03/01/2021
  • 03/01/2021
  • 03/01/2021
  • 03/01/2021
  • 03/01/2021
  • 03/01/2021
  • 03/01/2021
  • 03/07/2021
  • 03/07/2021
  • 03/07/2021
  • 03/07/2021
  • 03/07/2021
  • 03/07/2021
  • 03/07/2021
  • Purchased RC car and batteries.
  • Research and finalize which ultrasonic sensor the project will use.
  • Purchased Bluetooth connector
  • Research math to determine distance between navigation points.
  • Researchmultiple navigation point algorithm(Djikstra's) to determine shortest path.
  • Created branch for motor controller driver. Created draft template API for motor controller.
  • Using previous projects, determine what works needs to be completed for main board
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
4
  • 03/08/2021
  • 03/08/2021
  • 03/08/2021
  • 03/14/2021
  • 03/14/2021
  • 03/14/2021
  • Research connection with Bluetooth from board to application
  • Work on implementation of multiple navigation point algorithm to determine shortest path
  • Plan motor controller API and create basic software flow of API
  • incomplete
  • Incomplete
  • Complete
5
  • 03/15/2021
  • 03/15/2021
  • 03/15/2021
  • 03/15/2021
  • 03/15/2021
  • 03/21/2021
  • 03/21/2021
  • 03/21/2021
  • 03/21/2021
  • 03/21/2021
  • Begin laying out hardware requirements for PCB on excel document
  • Finish research on application building with android studio
  • Implement a simple application with a button and text
  • Unit Test Direction Math Module
  • Begin coding and digesting adafruit Compass data
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
6
  • 03/22/2021
  • 03/22/2021
  • 03/22/2021
  • 03/22/2021
  • 03/22/2021
  • 03/22/2021
  • 03/22/2021
  • 03/28/2021
  • 03/28/2021
  • 03/28/2021
  • 03/28/2021
  • 03/28/2021
  • 03/28/2021
  • 03/28/2021
  • Acquire sensor and interface sensors to SJ2 Board and receive raw data
  • Implement basic communication between board and app
  • Update Wiki with proper software diagrams
  • Begin Mapping out pins used on all board
  • Complete a block diagram and a control scheme
  • Write motor controller modules and tests
  • Probe RC car to determine expected behavior of signals
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Complete
  • Complete
7
  • 03/29/2021
  • 03/29/2021
  • 03/29/2021
  • 03/29/2021
  • 04/04/2021
  • 04/04/2021
  • 04/04/2021
  • 04/04/2021
  • Discuss and construct DBC file
  • Create sensor API to parse raw data and send useful data
  • Integrate google map features into app
  • Integration testing of motor logic and API
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
8
  • 04/05/2021
  • 04/05/2021
  • 04/11/2021
  • 04/11/2021
  • Finish implementation of canbus between controllers and begin real world testing
  • 3D print sensor mounts, sensor guards, and draft sensor offset timing to deter sensor cross talk
  • Incomplete
  • Incomplete
9
  • 04/12/2021
  • 04/12/2021
  • 04/18/2021
  • 04/18/2021
  • Integrate Driver, Geo, Bridge sensor, and Motor nodes.
  • Analysis for jitters in sensor value
  • Incomplete
  • Incomplete
10
  • 04/19/2021
  • 04/19/2021
  • 04/19/2021
  • 05/26/2021
  • 05/26/2021
  • 04/26/2021
  • Begin to analysis real world tests from previous weeks implementation and perform fixes for issues faced
  • Ensure Canbus nodes are communicating correctly by verifying PCON data
  • Integration testing with obstacle avoidance
  • Incomplete
  • Incomplete
  • Incomplete
11
  • 04/26/2021
  • 04/26/2021
  • 05/02/2021
  • 05/02/2021
  • Perform more real world tests and isolate bugs
  • Perform final bug fixes for all Canbus nodes
  • Incomplete
  • Incomplete
12
  • 05/09/2021
  • 05/09/2021
  • 05/09/2021
  • 05/09/2021
  • 05/09/2021
  • 05/09/2021
  • Update Wiki Report to reflect all changes and include final testing video
  • Perform final code changes and commit to master branch
  • Complete Final Demo with Preetpal Kang
  • Incomplete
  • Incomplete
  • Incomplete


Parts List & Cost

Item# Part Description Vendor Qty Cost
1 Traxxas 1/10 Scale RC Short Truck Traxxas [1] 1 $239.99 + Tax
2 RPM Sensor & Mount Traxxas [2] 1 $19.00 + Tax
3 2S 7.4V 5000mAh LiPo Battery Pack Amazon [3] 2 $40.69 + Tax
4 Bluetooth Adapter Amazon [4] 1? $8.99 + Tax
5 Adafruit Ultimate GPS Breakout Adafruit[5] 1 $39.95
6 Adafruit Triple-axis Accelerometer+Magnetometer Adafruit[6] 1 $14.95
7 Deans Connector Amazon[7] 1 $8.99 + Tax


Printed Circuit Board

<Picture and information, including links to your PCB>



CAN Communication

<Talk about your message IDs or communication strategy, such as periodic transmission, MIA management etc.>

Hardware Design

<Show your CAN bus hardware design>

DBC File

<Gitlab link to your DBC file> <You can optionally use an inline image>




Sensor ECU

<Picture and link to Gitlab>

Hardware Design

Software Design

<List the code modules that are being called periodically.>

Technical Challenges

< List of problems and their detailed resolutions>



Motor ECU

<Picture and link to Gitlab>

Hardware Design

Software Design

<List the code modules that are being called periodically.>

Technical Challenges

< List of problems and their detailed resolutions>



Geographical Controller

<Picture and link to Gitlab>

Hardware Design

Software Design

<List the code modules that are being called periodically.>

Technical Challenges

< List of problems and their detailed resolutions>





Communication Bridge Controller & LCD

<Picture and link to Gitlab>

Hardware Design

Software Design

<List the code modules that are being called periodically.>

Technical Challenges

< List of problems and their detailed resolutions>



Master Module

<Picture and link to Gitlab>

Hardware Design

Software Design

<List the code modules that are being called periodically.>

Technical Challenges

< List of problems and their detailed resolutions>



Mobile Application

<Picture and link to Gitlab>

Hardware Design

Software Design

<List the code modules that are being called periodically.>

Technical Challenges

< List of problems and their detailed resolutions>






Conclusion

<Organized summary of the project>

<What did you learn?>

Project Video

Project Source Code

Advise for Future Students

<Bullet points and discussion>

Acknowledgement

References