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)
- Research GPS antennas
- Decide on CAN transceivers (SN65HVD230 IC's)
- Request 15 CAN transceiver samples from ti.com
- Discuss tasks of all 4 board nodes (geographical, driver, motors, bridge controller/sensors)
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
4
|
03/08/2020
|
03/14/2020
|
- Assemble car chassis and plan general layout
- Delegate tasks for each 2 person teams
- Create branches for all nodes and add motor and sensor messages to DBC file
- Discuss and research possible GPS antennas
- Design block diagrams for motor node, bridge controller/sensor node, and full car
- Solve GitLab branches vs folders issue (1 branch per node, or 1 folder per node)
- Order 4 + 1 extra ultrasonic sensors (MaxBotix MB1003-000 HRLV-MaxSonar-EZ0)
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
5
|
03/15/2020
|
03/21/2020
|
- 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
- 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
- Research ultrasonic sensor mounts
- Transmit CAN messages from sensor to driver node, and from driver to motor node
- 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
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
6
|
03/22/2020
|
03/28/2020
|
- Draw block diagrams with pin information for each board and begin PCB design based on these diagrams
- Start implementing a basic Android app without Google maps API and create a separate GitLab repo for app
- 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
- Decide on ultrasonic sensor mounts and order extra if needed
- Order a new compass module (CMPS14)
- Finish designing team logo and upload to Wiki page
- Continue research on PID controller design and begin basic implementation
- Finalize parts list and place orders for remaining unordered items
- Decide on tap plastic acrylic sheet dimensions and PCB dimensions
- Integrate driver board diagnostic testing with LEDs and ultrasonic sensors (car goes left, left LEDs light up, etc.)
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
7
|
03/29/2020
|
04/04/2020
|
- Finish a basic implementation of filtering ultrasonic sensor's ADC data
- Geological node is able to compute the destination heading (0-360 degrees) and send to driver node
- Add PWM functionality to motor board code and test on DC and servo motors
- Complete a basic implementation of encoder code on motor board
- Bluetooth Module driver is finished, can connect to Android phone, and can receive "Hello World" data from phone
- 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
- Design a block diagram for optimal ultrasonic sensor placement
- Purchase tap plastic acrylic sheet
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
8
|
04/05/2020
|
04/11/2020
|
- Finish ultrasonic filtering algorithm for ultrasonic sensor's ADC data
- Google maps API is fully integrated into Android App
- Bluetooth Module is able to receive data from Android app
- Test obstacle avoidance algorithm (indoor)
- Design ultrasonic sensor shields to minimize sensor interference with each other
- Complete motor board code controlling RC car's DC motor and servo motor
- Begin car chassis wiring on a breadboard
- Finalize and review PCB schematic
- Complete a rough draft car chassis block diagram for the placement of all boards and modules
- Complete "push button" motor test (servo turns wheels left and right, and DC motor spins wheel forwards and backwards)
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
9
|
04/12/2020
|
04/18/2020
|
- Test obstacle avoidance algorithm (indoor)
- Complete car chassis wiring on a breadboard
- Establish and test CAN communication between all boards
- Display sensor and motor data on Android app
- Finish GPS module integration with geographical controller
- Design and solder a prototype PCB board in case PCB isn't delivered in time
- Test existing motor board code on RC car's motors
- Mount sensors, motors, LCD, and all four sjtwo boards onto car chassis
- Bluetooth module is able to receive "dummy" destination latitude and longitude coordinates from Android app
- Discuss checkpoint algorithm
- Begin wheel encoder implementation and unit testing
- Finish routing PCB and review to verify the circuitry
|
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
- Completed
|
10
|
04/19/2020
|
04/25/2020
|
- Complete motor control code with optimal speed and PWM values without PID control
- Test drive outdoors to check obstacle avoidance algorithm
- Test checkpoint algorithm on car (outdoor)
- Begin unit testing the PID control algorithm
- Design car state machine
- Finish wheel encoder implementation and unit testing
- Make final changes to PCB and place order
- Complete basic implementation and unit testing of checkpoint algorithm
- Android app is able to send start and stop commands to the car
- Bluetooth module is able to receive actual destination latitude and longitude coordinates from Android app
- Mount a pipe on car chassis for GPS and compass modules to reduce interference
- Test drive the soldered PCB board to ensure everything is working properly
|
- Completed
- Completed
-
-
-
-
-
-
- Completed
-
-
- Completed
|
11
|
04/26/2020
|
05/02/2020
|
- Mount GPS and compass modules onto car chassis
- Finalize obstacle avoidance algorithm
- Finalize checkpoint algorithm
- Test drive from start to destination (indoor)
- LCD display is able to display car's speed, destination coordinates, and current heading data
- Fully integrate wheel encoder onto car chassis
- Finish basic implementation of PID control and test on RC car
- GEO controller can compute the heading from Android app's actual destination coordinates, and send to driver board
|
|
12
|
05/03/2020
|
05/09/2020
|
- Test drive from start to destination (outdoor)
- 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)
- Finalize PID control implementation and test on car (indoor)
- Integrate PCB onto RC car chassis
|
|
13
|
05/10/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)
|
|
14
|
05/17/2020
|
05/23/2020
|
- Demo
- Push final code to GitLab
- Submit individual contributions feedback for all team members
- Make final updates to Wiki report
|
|