Difference between revisions of "F14: Team3-Self Driving Car"
From Embedded Systems Learning Academy
Proj user14 (talk | contribs) (→Design & Implementation) |
Proj user14 (talk | contribs) (→Controller Communication Table) |
||
Line 564: | Line 564: | ||
== Design & Implementation == | == Design & Implementation == | ||
=== Controller Communication Table === | === Controller Communication Table === | ||
+ | |||
+ | |+ Common Communication Table | ||
+ | |- | ||
+ | | Message Number | ||
+ | | Purpose / Data layout | ||
+ | |- | ||
+ | | TBD | ||
+ | | Get version and boot info | ||
+ | |- | ||
+ | | TBD | ||
+ | | Get general info | ||
+ | |- | ||
+ | | TBD | ||
+ | | Synchronize (set) time: | ||
+ | byte [0-3] : System time | ||
+ | |- | ||
+ | | TBD | ||
+ | | | ||
+ | byte [0-3] : Version Info | ||
+ | byte [4-7] : boot timestamp | ||
+ | |- | ||
+ | | TBD | ||
+ | | | ||
+ | byte [0-3] : Current time | ||
+ | byte [4] : CPU usage % | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+ Subscription Rate Info | ||
+ | |- | ||
+ | | Byte 0 | ||
+ | | Effect | ||
+ | |- | ||
+ | | 0 | ||
+ | | Off | ||
+ | |- | ||
+ | | 1 | ||
+ | | 1Hz | ||
+ | |- | ||
+ | | 5 | ||
+ | | 5Hz | ||
+ | |- | ||
+ | | 10 | ||
+ | | 10Hz | ||
+ | |- | ||
+ | | 20 | ||
+ | | 20Hz | ||
+ | |- | ||
+ | | 50 | ||
+ | | 50Hz | ||
+ | |- | ||
+ | | Any other value | ||
+ | | Invalid date rate | ||
+ | |} | ||
+ | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ Sensor Controller Communication Table | |+ Sensor Controller Communication Table | ||
Line 612: | Line 667: | ||
byte [0] : Battery status value | byte [0] : Battery status value | ||
|} | |} | ||
+ | |||
=== Hardware Design === | === Hardware Design === | ||
Revision as of 02:04, 21 October 2014
Contents
Grading Criteria
- How well is Software & Hardware Design described?
- How well can this report be used to reproduce this project?
- Code Quality
- Overall Report Quality:
- Software Block Diagrams
- Hardware Block Diagrams
- Schematic Quality
- Quality of technical challenges and solutions adopted.
Self Driving Car
Abstract
Objectives & Introduction
Team Members & Responsibilities
- Sensor Controller
- Team 1: Deepak Yadav & Vinod Pangul
- Motor Controller
- Team 2: Naghma Anwar & Shiva Moballegh
- I/O Unit
- Team 3: Shreeram Gopalakrishnan & Sreeharsha Paturu Gangadhara
- Communication Bridge & Android
- Team 4: Johnny Yam, Kevin Beadle & Chia Pin Tseng
- Geographical Controller
- Team 5: Bhushan Gopala Reddy, Ryan Marlin & Rishikesh Nagare
- Master Controller
- Team 6: Shashank Tupkar, Bhargava Leepeng Chandra & Preeti Benake
Schedule
Team Schedule
Sl.No | Start Date | End Date | Task | Status | Actual Completion Date |
---|---|---|---|---|---|
1 | Order RC Car | Completed on time | |||
2 | Order Other parts(Sensor/LCD/Motor Controller...) | Ongoing | |||
3 | 10/06/2014 | 11/15/2014 | Sensor Team task | Ongoing | |
4 | Motor Controller Team task | Ongoing | |||
5 | I/O Team task | Ongoing | |||
6 | Communication Bridge + Android Team task | Ongoing | |||
7 | Geographical Controller Team task | Ongoing | |||
8 | Master Controller Team task | Ongoing | |||
9 | Complete project integration | ??? | |||
10 | Testing-1 | ??? | |||
11 | Testing-2 | ??? |
Sensor Team Schedule
Sl.No | Start Date | End Date | Task | Status | Actual Completion Date |
---|---|---|---|---|---|
1 | 10/6/2014 | 10/18/2014 | Order Ultra Sonic Sensors | Got two sensors (front and back), 2 more (front right & left) to order ->Completed. | 10/19/2014 |
2 | 10/9/2014 | 10/9/2014 | Sensor Data Sheet review with the team | Completed | 10/9/2014 |
3 | 10/9/2014 | 10/16/2104 | Sensor code development | Ongoing (Implementing filter (HW/SW) to get more accurate data ->(Done). Add logic to get the rest of the three sensor(front right/left and back data) | |
4 | 10/17/2014 | 10/18/2014 | Sensor software testing | ||
5 | 10/19/2014 | 10/24/2014 | Sensor real time testing | ||
6 | 10/13/2014 | 10/18/2014 | Light sensor code Development | Completed | 10/16/2014 |
7 | 10/13/2014 | 10/18/2014 | Accelerometer sensor code Development to detect tilt | Completed | 10/16/2014 |
8 | 10/19/2014 | 10/20/2014 | Light Sensor and Accelerometer Testing | ||
9 | 10/25/2014 | 10/31/2014 | Battery status controller circuit Design | ||
10 | 11/01/2014 | 11/02/2014 | Battery status-circuit Testing | ||
11 | 11/03/2014 | 11/09/2014 | Complete Hardware testing-1 | ||
12 | 11/10/2014 | 11/15/2014 | Complete Hardware testing-2 |
Geographical Team Schedule
Sl.No | Start Date | End Date | Task | Status | Actual Completion Date |
---|---|---|---|---|---|
1 | 10/4/2014 | 10/13/2014 | Research and Order GPS module | Received GPS module | 10/7/2014 |
2 | 10/7/2014 | 10/18/2014 | Interface GPS module with LPC1758 | Ongoing | |
3 | 10/18/2014 | 10/25/2014 | Parse GPS data and setup constructs to send appropriate data | ||
4 | 10/14/2014 | 10/18/2014 | Receive Compass module from Preet and interface | Received Compass from Preet and tested code to get compass heading information | 10/16/2014 |
5 | 10/25/2014 | 11/9/2014 | Testing and Mapping of GPS coordinates | ||
6 | 11/9/2014 | 11/18/2014 | Integrating and finish testing | ||
7 | 11/18/2014 | 11/25/2014 | Testing |
IO Team Schedule
Sl.No | Start Date | End Date | Task | Status | Actual Completion Date |
---|---|---|---|---|---|
1 | 10/7/2014 | 10/13/2014 | Research and Order LCD Display | Ordered LCD Display | 10/13/2014 |
2 | 10/14/2014 | 10/21/2014 | Interfacing LCD Display with LPC1758 | Ongoing | |
3 | 10/28/2014 | 11/04/2014 | Set-Up dedicated buttons for Start, Stop etc... | ||
4 | 10/21/2014 | 10/28/2014 | Communication with other controllers and displaying appropriate messages | ||
5 | 11/04/2014 | 11/11/2014 | Testing | ||
6 | 11/11/2014 | 11/18/2014 | Testing | ||
7 | 11/18/2014 | 11/25/2014 | Testing |
Motor Team Schedule
Week No. | Start Date | Planned End Date | Task | Status | Actual End Date |
---|---|---|---|---|---|
1 | 9/30/2014 | 10/7/2014 | Study the motor controller concepts | Done | 10/7/2014 |
2 | 10/7/2014 | 10/14/2014 | Set up the CAN transceiver | Done | 10/14/2014 |
3 | 10/14/2014 | 10/21/2014 | Interface the SJOne-board PWM with SERVO motor | On going | TBD |
4 | 10/21/2014 | 10/28/2014 | Set up communication with other controllers | On going | TBD |
5 | 10/28/2014 | 11/4/2014 | Testing | Scheduled | TBD |
6 | 11/4/2014 | 11/11/2014 | Testing | Scheduled | TBD |
Master Controller Team Schedule
Week No. | Start Date | Planned End Date | Task | Status | Actual End Date |
---|---|---|---|---|---|
1 | 9/30/2014 | 10/7/2014 | Implement the basic CAN Hardware | Done | 10/7/2014 |
2 | 10/7/2014 | 10/14/2014 | Implement the CAN Hardware Filter among different boards | Done | 10/11/2014 |
3 | 10/14/2014 | 10/21/2014 | Implement the CAN Subscriber Task | Scheduled | TBD |
4 | 10/21/2014 | 10/28/2014 | Implement Subscription Msg Task and test basic functionality with other controllers | Scheduled | TBD |
5 | 10/28/2014 | 11/04/2014 | Testing and Integration of basic functionality | Scheduled | TBD |
Communication Bridge & Android Team Schedule
Sl.No | Start Date | Planned End Date | Task | Status | Actual End Date |
---|---|---|---|---|---|
1 | 9/30/2014 | 9/30/2014 | Obtain Bluetooth Module (already had one) | Done | 9/30/2014 |
2 | 9/30/2014 | 10/14/2014 | Develop Basic Android App with Bluetooth Sensor Communication | Done | 10/7/2014 |
3 | 10/11/2014 | 10/14/2014 | Interface Bluetooth Module with SJSU Dev Board | Done | 10/11/2014 |
4 | 10/12/2014 | 10/19/2014 | Be able to send bi-directional arbitrary messages between Android App and Dev Board via Bluetooth | Done | 10/14/2014 |
5 | 10/14/2014 | 11/21/2014 | Subscribe to all CAN messages and dump all of them via Bluetooth to Android App or web interface | On going | TBD |
6 | 10/14/2014 | 11/21/2014 | Be able to input GPS coordinates through either (or both) Android App and web interface and send through Bluetooth then CAN bus | On going | TBD |
7 | 10/21/2014 | 11/24/2014 | Android App and webpage GUI enhancements (Google Maps) | Scheduled | TBD |
Parts List & Cost
Item# | Part Desciption | Vendor | Part Number | Qty | Cost |
---|---|---|---|---|---|
1 | RC Car | Amazon.com | Traxxas 37076 Rustler VXL | 1 | $$$.$$ |
2 | CAN Transceiver | MSC | ---- | 15 | $$.$$ |
3 | Sonar sensor | Given by Preet | LV-MaxSonar-EZ1 MB1010 | 1 | Free |
4 | LCD Display | New Haven | NHD-0216B3Z-FL-GBW-V3-ND | 1 | $$$.$$ |
5 | IR sensor | Given by Preet | Sharp-GP2Y0A21YK | 1 | Free |
6 | Sonar sensor | Maxbotix | LV-MaxSonar-EZ1 MB1010 | 2 | $66.55 |
Total Cost | $$$.$$ |
Design & Implementation
Controller Communication Table
|+ Common Communication Table |- | Message Number | Purpose / Data layout |- | TBD | Get version and boot info |- | TBD | Get general info |- | TBD | Synchronize (set) time:
byte [0-3] : System time
|- | TBD |
byte [0-3] : Version Info byte [4-7] : boot timestamp
|- | TBD |
byte [0-3] : Current time byte [4] : CPU usage %
|}
Byte 0 | Effect |
0 | Off |
1 | 1Hz |
5 | 5Hz |
10 | 10Hz |
20 | 20Hz |
50 | 50Hz |
Any other value | Invalid date rate |
Message Number | Purpose | Data layout |
0x00 | Subscribe to sensor data | Subscription Rate (TBD) |
0x01 | Subscribe to Car Tilt Axis data | Subscription Rate (TBD) |
0x02 | Subscribe to Light Sensor data | Subscription Rate (TBD) |
0x03 | Subscribe to Battery status data | Subscription Rate (TBD) |
0x04 | Subscribed data of 0x00 |
byte [0] : Front sensor value in inches byte [1] : Left sensor value in inches byte [2] : Right sensor value in inches byte [3] : Back sensor value in inches |
0x05 | Subscribed data of 0x01 |
byte [0] : X axis Value byte [1] : Y axis Value byte [2] : Z axis Value |
0x06 | Subscribed data of 0x02 |
byte [0] : Light sensor value |
0x07 | Subscribed data of 0x03 |
byte [0] : Battery status value |
Hardware Design
Hardware Interface
Software Design
Implementation
Testing & Technical Challenges
Conclusion
Project Video
Project Source Code
References
Acknowledgement
References Used
http://www.socialledge.com/sjsu/index.php?title=Self-driving_Car
http://www.nxp.com/documents/user_manual/UM10360.pdf
http://www.socialledge.com/sjsu/images/d/de/2012SJOneBoardSchematic.pdf
http://www.maxbotix.com/documents/MB1010_Datasheet.pdf
http://www.sharpsma.com/webfm_send/1208
https://www.sparkfun.com/datasheets/Components/HMC6352.pdf