Difference between revisions of "S23: Meh-sla Automotive"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Schedule)
(Schedule)
Line 150: Line 150:
 
*<span>Finish PCB designs for each subsystem</span>
 
*<span>Finish PCB designs for each subsystem</span>
 
*<span>Start Mobile Application development</span>
 
*<span>Start Mobile Application development</span>
*<span>Configure GPS to run at 10Hz, 115200 baud and only parse $GPGGA strings on startup</span>
 
 
*<span>Integrate compass</span>
 
*<span>Integrate compass</span>
*<span>Linearly map pseudo Driver speed/turn commands to the ESC/Servo</span>
 
 
*<span>First outdoor tests commence</span>
 
*<span>First outdoor tests commence</span>
 
|  
 
|  
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
Line 168: Line 164:
 
|
 
|
 
*<span>Finish 1st vehicle prototype</span>
 
*<span>Finish 1st vehicle prototype</span>
*<span>Start populating BUSMASTER with more general debug messages</span>
 
 
*<span>Complete basic mobile application</span>
 
*<span>Complete basic mobile application</span>
*<span>Write various motor test routines to define in mobile application</span>
+
*<span>Write motor test routines to define in mobile application</span>
*<span>Verify timing and correctness of GEO controller messages</span>
 
*<span>Produce debug messages for Geo controller</span>
 
*<span>Interface with real Driver commands</span>
 
 
*<span>Install RPM Sensor</span>
 
*<span>Install RPM Sensor</span>
*<span>Finalize sensor choice and complete integration of all three sensors</span>
 
 
*<span>Continue outdoor test</span>
 
*<span>Continue outdoor test</span>
 
|  
 
|  
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
Line 194: Line 180:
 
|
 
|
 
*<span>Populate PCB and prepare for installation</span>
 
*<span>Populate PCB and prepare for installation</span>
*<span>Test message timing and propagation with Bus Master</span>
 
*<span>Integration testing Driver controller with Mobile App</span>
 
*<span>Improve existing navigation algorithm with state estimation and localization</span>
 
*<span>Fix and validate RPM sensor output</span>
 
*<span>Add ESC calibration feature, activated by SW0</span>
 
 
*<span>Continue outdoor tests</span>
 
*<span>Continue outdoor tests</span>
 
|  
 
|  
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
Line 214: Line 190:
 
|
 
|
 
*<span>Finish mobile application</span>
 
*<span>Finish mobile application</span>
*<span>Interface RPM sensor with Interrupt Service Routine</span>
 
*<span>Add functionality to SJ2-C LEDs</span>
 
 
*<span>First North Garage tests commence</span>
 
*<span>First North Garage tests commence</span>
 
|  
 
|  
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
Line 228: Line 200:
 
|  
 
|  
 
*<span>Implement PID Controller</span>
 
*<span>Implement PID Controller</span>
*<span>Add debug messages to CAN related to PID</span>
 
 
*<span>More North Garage tests</span>
 
*<span>More North Garage tests</span>
 
|  
 
|  
*<font color = "red">Incomplete
 
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
Line 239: Line 209:
 
| 5/19/2023
 
| 5/19/2023
 
|
 
|
*<span>Rewrite conditional logic into state machine</span>
 
 
*<span>Final code cleanup</span>
 
*<span>Final code cleanup</span>
 
*<span>Final North Garage tests</span>
 
*<span>Final North Garage tests</span>
 
|  
 
|  
*<font color = "red">Incomplete
 
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete
 
*<font color = "red">Incomplete

Revision as of 22:01, 14 March 2023

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 2/12/2023 2/18/2023
  • Read previous projects, gather information and discuss among group members
  • Completed
2 2/19/2023 2/25/2023
  • Brainstorm on the requirements for the project
  • Create a high-level block diagram of the project
  • Completed
  • Completed
3 26/2/2023 3/4/2023
  • Order the RC Car
  • Order all the sensors
  • Completed
  • Completed
4 3/5/2023 3/11/2023
  • Learning to use CAN BUSMASTER
  • Test all the parts received and order any missing or damaged parts
  • In Progress
  • In Progress
5 3/12/2023 3/18/2023
  • DBC file discussed and implemented
  • Incomplete
6 3/19/2023 3/25/2023
  • Discuss modules needed for PCB, any feature requests
  • Incomplete
7 3/26/2023 4/1/2023
  • Finalize preparations and research
  • Incomplete
8 4/2/2023 4/8/2023
  • Begin testing with single vs dual power supplies
  • Interface Bluetooth for bridge controller
  • Complete the Driver sensor using analog readings
  • Integrate the GEO sensor with the GEO controller
  • Interface with RC car and hack steering and motor
  • Establish CAN transmit and receive functionality, start formatting DBC messages
  • Write a basic implementation of the sensor controller
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
9 4/9/2023 4/15/2023
  • Finalize power supply choice
  • Finish PCB designs for each subsystem
  • Start Mobile Application development
  • Integrate compass
  • First outdoor tests commence
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
10 4/16/2023 4/22/2023
  • Finish 1st vehicle prototype
  • Complete basic mobile application
  • Write motor test routines to define in mobile application
  • Install RPM Sensor
  • Continue outdoor test
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
  • Incomplete
11 4/23/2023 4/29/2023
  • Populate PCB and prepare for installation
  • Continue outdoor tests
  • Incomplete
  • Incomplete
12 4/30/2023 5/6/2023
  • Finish mobile application
  • First North Garage tests commence
  • Incomplete
  • Incomplete
13 5/7/2023 5/13/2023
  • Implement PID Controller
  • More North Garage tests
  • Incomplete
  • Incomplete
14 5/14/2023 5/19/2023
  • Final code cleanup
  • Final North Garage tests
  • Incomplete
  • Incomplete


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 ===