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
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
|
|
|
- Read previous projects to understand what is expected and have some meaningful knowledge by first meeting. Assign roles.
|
|
2
|
|
|
- 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
|
|
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
- Complete
- Complete
- Complete
- Complete
|
6
|
- 03/22/2021
- 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
- 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
- Top Level Driver Logic diagram
- Periodic Callback Functions Diagram
- Create a basic Obstacle avoidance algorithm for Driver
- Probe RC car to determine expected behavior of signals and install RPM sensor
- Write motor controller modules and tests
|
- Incomplete
- In progress
- In progress
- In Progress
- In Progress
- Complete
- In Progress
- Complete
- Complete
- Complete
|
7
|
- 03/29/2021
- 03/29/2021
- 03/29/2021
- 03/29/2021
- 03/29/2021
|
- 04/04/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 controller logic to verify it works on hardware
- Create a Checkpoint Navigation algorithm for Driver
|
- Complete
- In progress
- Incomplete
- Complete
- Complete
|
8
|
- 04/05/2021
- 04/05/2021
- 04/05/2021
|
- 04/11/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
- Write and test RPM sensor code
|
- In progress
- Incomplete
- Complete
|
9
|
- 04/12/2021
- 04/12/2021
- 04/12/2021
- 04/12/2021
|
- 04/18/2021
- 04/18/2021
- 04/18/2021
- 04/18/2021
|
- Integrate Driver, Geo, Bridge sensor, and Motor nodes.
- Analysis for jitters in sensor value
- Complete "Self Test" for motor test(DC motor moves forward and backwards and servo moves right left)
- Write and test PID for drive speed control
|
- In progress
- Incomplete
- In progress
- In progress
|
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
|
|
|
- Perform more real world tests and isolate bugs
- Perform final bug fixes for all Canbus nodes
|
|
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
DBC File Link
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