Difference between revisions of "S20: Bucephalus"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Schedule)
(Schedule)
Line 124: Line 124:
 
| 03/14/2020
 
| 03/14/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Assemble car chassis and plan general layout
* Distribute modules to each team member.
+
* Design car block diagram
 +
* Delegate tasks for each 2 person teams
 +
* Setup code to support motor and sensor nodes and add motor and sensor messages to DBC file
 +
* Order GPS antenna
 +
* Solve GitLab branches vs folders issue (1 branch per node, or 1 folder per node)
  
 
|
 
|
Line 134: Line 138:
 
| 03/21/2020
 
| 03/21/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Discuss PCB layout design
* Distribute modules to each team member.
+
* Decide what to include on PCB board
 +
* Order sensor mounts
 +
* Start learning Android app development
 +
* Decide on PCB software
  
 
|
 
|
Line 144: Line 151:
 
| 03/28/2020
 
| 03/28/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Finalize PCB layout and order PCB
* Distribute modules to each team member.
+
* Finish basic Android app without Google maps API
 +
* Design car state machine
 +
* Finish unit testing motors with LPC4078
 +
* Learn how to integrate Google maps API into Android app
 +
* Discuss obstacle avoidance algorithm
 +
* Discuss checkpoint algorithm
  
 
|
 
|
Line 154: Line 166:
 
| 04/04/2020
 
| 04/04/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Finish unit testing sensors with LPC4078
* Distribute modules to each team member.
+
* Test PCB with LPC4078
 +
* Work on GPS module integration
 +
* Integrate motors with LPC4078
 +
* Finish unit testing sensors
 +
* Finalize car block diagram
 +
* Finalize car state machine
  
 
|
 
|
Line 164: Line 181:
 
| 04/11/2020
 
| 04/11/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Transmit GPS coordinates to LPC4078
* Distribute modules to each team member.
+
* Test GPS module integration with LPC4078
 +
* Complete rough draft of DBC file messages and signals
 +
* Integrate PCB with LPC4078
 +
* Integrate sensors with LPC4078
 +
* Integrate PCB board onto chassis
  
 
|
 
|
Line 174: Line 195:
 
| 04/18/2020
 
| 04/18/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Test obstacle avoidance algorithm (indoor)
* Distribute modules to each team member.
+
* Test checkpoint algorithm (indoor)
 +
* Establish and test CAN communication between all boards
 +
* Finalize Displaying sensor and compass data on Android app
 +
* Finish GPS module integration with LPC4078
  
 
|
 
|
Line 184: Line 208:
 
| 04/25/2020
 
| 04/25/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Finish all unit testing code for each controller
* Distribute modules to each team member.
+
* Test obstacle avoidance algorithm (outdoor)
 +
* Test checkpoint algorithm (outdoor)
 +
* Transmit destination coordinates from Android app
  
 
|
 
|
Line 194: Line 220:
 
| 05/02/2020
 
| 05/02/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Finalize destination coordinate transmission from Android app
* Distribute modules to each team member.
+
* Finalize obstacle avoidance algorithm
 +
* Finalize checkpoint algorithm
 +
* Test drive from start to destination (indoor)
  
 
|
 
|
Line 204: Line 232:
 
| 05/09/2020
 
| 05/09/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Test drive from start to destination (outdoor)
* Distribute modules to each team member.
+
* Finalize DBC file
 +
* Complete Wiki report
  
 
|
 
|
Line 214: Line 243:
 
| 05/16/2020
 
| 05/16/2020
 
|
 
|
* Read previous projects, gather information and discuss among the group members.
+
* Demo
* Distribute modules to each team member.
+
* Push final code to GitLab
  
 
|
 
|

Revision as of 04:29, 11 March 2020

Project Title

<Team Name>



Abstract

<2-3 sentence abstract>

Introduction

The project was divided into N modules:

  • Sensor ...
  • Motor..
  • ...
  • Android

Team Members & Responsibilities

<Team Picture>

Gitlab Project Link - [1]

<Provide ECU names and members responsible> <One member may participate in more than one ECU>

  • Sensor
    • Link to Gitlab user1
    • Link to Gitlab user2
  • Motor
    • Link to Gitlab user1
    • Link to Gitlab user2
  • Geographical
    • Link to Gitlab user1
    • Link to Gitlab user2
  • Communication Bridge Controller & LCD
    • Link to Gitlab user1
    • Link to Gitlab user2
  • Android Application
    • Link to Gitlab user1
    • Link to Gitlab user2
  • Testing Team
    • Link to Gitlab user1
    • Link to Gitlab user2


Schedule

Week# Start Date End Date Task Status
1 02/16/2020 02/22/2020
  • Setup a team Google Docs folder
  • Brainstorm RC car design options
  • Research past semester RC car projects for ideas and parts needed
  • Put together a rough draft parts list
  • Setup a team GitLab repository
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
2 02/23/2020 02/29/2020
  • Decide on and order chassis
  • Discuss possible GPS modules
  • Discuss schedule for meeting dates and work days (Tuesdays are for code review and syncing, Saturdays are work days)
  • Discuss bluetooth communication approach (1 phone on car, 1 phone in controller's hands)
  • Discuss vehicle's driving checkpoints (checkpoints calculated after point B is specified)
  • Discuss wiring on RC car (1 battery to power motors and 1 power bank for everything else)
  • Discuss GitLab workflow (mirror our repo with Preet's, 3 approvals to merge to "working master" branch, resolve conflicts on "working master" branch, then can merge to master branch)
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
3 03/01/2020 03/07/2020
  • Decide on sensors (4 ultrasonic sensors: 3 in front, 1 in back)
  • Decide on a GPS module (Adafruit ADA746)
  • Decide on a GPS antenna
  • Decide on CAN transceivers (SN65HVD230 IC's)
  • Request CAN transceiver samples from ti.com
  • Decide on 4 board nodes (geographical, master/bluetooth, motors, sensors)
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
  • Completed
4 03/08/2020 03/14/2020
  • Assemble car chassis and plan general layout
  • Design car block diagram
  • Delegate tasks for each 2 person teams
  • Setup code to support motor and sensor nodes and add motor and sensor messages to DBC file
  • Order GPS antenna
  • Solve GitLab branches vs folders issue (1 branch per node, or 1 folder per node)
5 03/15/2020 03/21/2020
  • Discuss PCB layout design
  • Decide what to include on PCB board
  • Order sensor mounts
  • Start learning Android app development
  • Decide on PCB software
6 03/22/2020 03/28/2020
  • Finalize PCB layout and order PCB
  • Finish basic Android app without Google maps API
  • Design car state machine
  • Finish unit testing motors with LPC4078
  • Learn how to integrate Google maps API into Android app
  • Discuss obstacle avoidance algorithm
  • Discuss checkpoint algorithm
7 03/29/2020 04/04/2020
  • Finish unit testing sensors with LPC4078
  • Test PCB with LPC4078
  • Work on GPS module integration
  • Integrate motors with LPC4078
  • Finish unit testing sensors
  • Finalize car block diagram
  • Finalize car state machine
8 04/05/2020 04/11/2020
  • Transmit GPS coordinates to LPC4078
  • Test GPS module integration with LPC4078
  • Complete rough draft of DBC file messages and signals
  • Integrate PCB with LPC4078
  • Integrate sensors with LPC4078
  • Integrate PCB board onto chassis
9 04/12/2020 04/18/2020
  • Test obstacle avoidance algorithm (indoor)
  • Test checkpoint algorithm (indoor)
  • Establish and test CAN communication between all boards
  • Finalize Displaying sensor and compass data on Android app
  • Finish GPS module integration with LPC4078
10 04/19/2020 04/25/2020
  • Finish all unit testing code for each controller
  • Test obstacle avoidance algorithm (outdoor)
  • Test checkpoint algorithm (outdoor)
  • Transmit destination coordinates from Android app
11 04/26/2020 05/02/2020
  • Finalize destination coordinate transmission from Android app
  • Finalize obstacle avoidance algorithm
  • Finalize checkpoint algorithm
  • Test drive from start to destination (indoor)
12 05/03/2020 05/09/2020
  • Test drive from start to destination (outdoor)
  • Finalize DBC file
  • Complete Wiki report
13 05/10/2020 05/16/2020
  • Demo
  • Push final code to GitLab


Parts List & Cost

Item# Part Desciption Vendor Qty Cost
1 RC Car Traxxas 1 $250.00
2 CAN Transceivers MCP2551-I/P Microchip [2] 8 Free Samples


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