Difference between revisions of "S20: Bucephalus"
| Proj user2 (talk | contribs)  (→Team Members & Responsibilities) |  (→Schedule) | ||
| Line 160: | Line 160: | ||
| | | | | ||
| * Decide what to include on PCB board | * Decide what to include on PCB board | ||
| − | *  | + | * Begin researching filtering algorithms for ultrasonic sensors | 
| − | *  | + | * Read previous student's reports to decide on a compass module (CMPS14) | 
| * Start learning Android app development | * Start learning Android app development | ||
| * Order GPS antenna | * Order GPS antenna | ||
| − | *  | + | * Driver node is able to respond correctly based on sensor obstacle detection scenarios (correct LED's light up) | 
| * Ultrasonic sensor values are converted to centimeters and transmit to driver node | * Ultrasonic sensor values are converted to centimeters and transmit to driver node | ||
| * Research ultrasonic sensor mounts | * Research ultrasonic sensor mounts | ||
| * Transmit CAN messages from sensor to driver node, and from driver to motor node | * Transmit CAN messages from sensor to driver node, and from driver to motor node | ||
| − | * Decide movement and steering directions based on all possible sensor  | + | * Decide movement and steering directions based on all possible sensor obstacle detection scenarios | 
| + | * Begin research on PID implementation to control speed of RC car | ||
| * Add GPS node messages (longitude, latitude, heading) and bridge sensor node messages (destination latitude and longitude) to DBC file   | * Add GPS node messages (longitude, latitude, heading) and bridge sensor node messages (destination latitude and longitude) to DBC file   | ||
| − | |||
| − | |||
| | | | | ||
| * Completed | * Completed | ||
| − | |||
| − | |||
| − | |||
| − | |||
| * Completed | * Completed | ||
| * Completed | * Completed | ||
| − | |||
| * Completed | * Completed | ||
| * Completed | * Completed | ||
| * Completed | * Completed | ||
| * Completed | * Completed | ||
| − | *   | + | * Completed | 
| + | * Completed | ||
| + | * Completed | ||
| + | * Completed | ||
| + | * Completed | ||
| |- | |- | ||
| |- | |- | ||
| Line 194: | Line 192: | ||
| | | | | ||
| * Finalize PCB layout and order PCB | * Finalize PCB layout and order PCB | ||
| − | *  | + | * Start implementing a  basic Android app without Google maps API | 
| − | + | * Geological node is able to transmit a heading message to the driver node | |
| − | + | * Bridge sensor node is able to transmit a destination latitude and longitude coordinates message to geological node | |
| − | |||
| − | |||
| − | |||
| − | * Geological node is able to transmit  | ||
| − | |||
| − | * Bridge sensor node is able to transmit a  | ||
| * Order ultrasonic sensor mounts | * Order ultrasonic sensor mounts | ||
| − | * Order compass module | + | * Order a new compass module (CMPS14) | 
| − | *  | + | * Add PWM functionality to motor board code and test on DC and servo motors | 
| + | * Continue research on PID controller design and begin basic implementation | ||
| + | * Finalize parts list and place orders for remaining unordered items | ||
| + | * Design a block diagram for optimal ultrasonic sensor placement | ||
| | | | | ||
| *   | *   | ||
| *   | *   | ||
| − | *   | + | * Completed | 
| − | *   | + | * Completed | 
| − | |||
| − | |||
| − | |||
| *   | *   | ||
| *   | *   | ||
| Line 227: | Line 219: | ||
| | 04/04/2020 | | 04/04/2020 | ||
| | | | | ||
| − | * Finish  | + | * Finish a basic implementation of filtering ultrasonic sensor's ADC data | 
| − | * Test  | + | * Geological node is able to compute the destination heading (0-360 degrees) and send to driver node | 
| − | *  | + | * Test existing motor board code on RC car's motors | 
| − | *  | + | * Bluetooth Module is able to receive data from Android app | 
| − | *  | + | * Complete rough draft of schedule and upload to Wiki page | 
| − | *  | + | * Learn how to integrate Google maps API into Android app | 
| − | *  | + | * Geological node is able to parse the GPS NMEA string to extract latitude and longitude coordinates | 
| + | * Complete rough draft of DBC file messages and signals | ||
| + | * Geological node is able to receive a current heading (0-360 degrees) from the compass module | ||
| + | * Geological node is able to receive an NMEA string from the GPS | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| |- | |- | ||
| |- | |- | ||
| Line 242: | Line 247: | ||
| | 04/11/2020 | | 04/11/2020 | ||
| | | | | ||
| − | *  | + | * Finish ultrasonic filtering algorithm for ultrasonic sensor's ADC data | 
| − | *  | + | * Google maps API is full integrated into Android App | 
| − | *  | + | * Bluetooth module is able to receive desitnation latitude and longitude coordinates from Android app | 
| − | * Integrate PCB with  | + | * Integrate PCB onto RC car chassis | 
| − | *  | + | * Design ultrasonic sensor shields to minimize sensor interferance with each other | 
| − | *  | + | * Discuss checkpoint algorithm | 
| + | * Design car state machine | ||
| + | * Complete motor board code controlling RC car's DC motor and servo motor | ||
| + | * Finish wheel encoder implementation and integration | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| |- | |- | ||
| |- | |- | ||
| Line 260: | Line 277: | ||
| * Establish and test CAN communication between all boards | * Establish and test CAN communication between all boards | ||
| * Finalize Displaying sensor and compass data on Android app | * Finalize Displaying sensor and compass data on Android app | ||
| − | * Finish GPS module integration with  | + | * Finish GPS module integration with geographical controller | 
| + | * Finalize car block diagram | ||
| + | * Finalize car state machine | ||
| + | * Finish basic implementation of PID control and test on RC car | ||
| + | * Complete basic implementation and unit testing of checkpoint algorithm | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| |- | |- | ||
| |- | |- | ||
| Line 269: | Line 299: | ||
| | 04/25/2020 | | 04/25/2020 | ||
| | | | | ||
| − | *  | + | * Finalize PID control implementation and test on car (indoor) | 
| − | * Test obstacle avoidance algorithm ( | + | * Test obstacle avoidance algorithm on car (indoor) | 
| − | * Test checkpoint algorithm ( | + | * Test checkpoint algorithm on car (indoor) | 
| − | *  | + | * LCD display is able to display car's speed, destination coordinates, and current heading data | 
| + | * Complete unit testing code for all modules | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| |- | |- | ||
| |- | |- | ||
| Line 285: | Line 321: | ||
| * Finalize checkpoint algorithm | * Finalize checkpoint algorithm | ||
| * Test drive from start to destination (indoor) | * Test drive from start to destination (indoor) | ||
| + | * LCD display is fully integrated onto car chassis | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| |- | |- | ||
| |- | |- | ||
| Line 295: | Line 337: | ||
| * Test drive from start to destination (outdoor) | * Test drive from start to destination (outdoor) | ||
| * Finalize DBC file | * Finalize DBC file | ||
| − | *  | + | * Upload rough draft version of report to Wiki page | 
| + | * Test PID control implementation (outdoor) | ||
| + | * Test obstacle avoidance algorithm on car (outdoor) | ||
| + | * Test checkpoint algorithm on car (outdoor) | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| |- | |- | ||
| |- | |- | ||
| Line 303: | Line 354: | ||
| | 05/10/2020 | | 05/10/2020 | ||
| | 05/16/2020 | | 05/16/2020 | ||
| + | | | ||
| + | * Upload final version of report to Wiki page | ||
| + | * Push final code to GitLab | ||
| + | * Test drive from start to destination (outdoor) | ||
| + | * Finalize PID control implementaion based on feedback from last week's test drives | ||
| + | * Finalize obstacle avoidance algorithm based on feedback from last week's test drives | ||
| + | * Finalize checkpoint algorithm based on feedback from last week's test drives | ||
| + | * Test PID control implementation (outoor) | ||
| + | * Test obstacle avoidance algorithm on car (outdoor) | ||
| + | * Test checkpoint algorithm on car (outdoor) | ||
| + | |||
| + | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | |- | ||
| + | |- | ||
| + | ! scope="row"| 14 | ||
| + | | 05/17/2020 | ||
| + | | 05/23/2020 | ||
| | | | | ||
| * Demo | * Demo | ||
| * Push final code to GitLab | * Push final code to GitLab | ||
| + | * Submit individual contributions feedback for all team members | ||
| + | * Make final updates to Wiki report | ||
| | | | | ||
| + | *  | ||
| + | *  | ||
| + | *  | ||
| + | *   | ||
| |- | |- | ||
| |} | |} | ||
Revision as of 04:00, 26 March 2020
Contents
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>
Bucephalous GitLab - [1]
Schedule
| Week# | Start Date | End Date | Task | Status | 
|---|---|---|---|---|
| 1 | 02/16/2020 | 02/22/2020 | 
 | 
 | 
| 2 | 02/23/2020 | 02/29/2020 | 
 | 
 | 
| 3 | 03/01/2020 | 03/07/2020 | 
 | 
 | 
| 4 | 03/08/2020 | 03/14/2020 | 
 | 
 | 
| 5 | 03/15/2020 | 03/21/2020 | 
 | 
 | 
| 6 | 03/22/2020 | 03/28/2020 | 
 | 
 | 
| 7 | 03/29/2020 | 04/04/2020 | 
 |  | 
| 8 | 04/05/2020 | 04/11/2020 | 
 |  | 
| 9 | 04/12/2020 | 04/18/2020 | 
 |  | 
| 10 | 04/19/2020 | 04/25/2020 | 
 |  | 
| 11 | 04/26/2020 | 05/02/2020 | 
 |  | 
| 12 | 05/03/2020 | 05/09/2020 | 
 |  | 
| 13 | 05/10/2020 | 05/16/2020 | 
 |  | 
| 14 | 05/17/2020 | 05/23/2020 | 
 |  | 
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 ===
 
							