| 
				   | 
				
| Line 134: | 
Line 134: | 
|   | *<font color="brown">'''Add a TextView for displaying the Bluetooth connection status in mobile App.(Naeem)'''</font>  |   | *<font color="brown">'''Add a TextView for displaying the Bluetooth connection status in mobile App.(Naeem)'''</font>  | 
|   | *<font color="fire">'''Explore UI designing of LCD. (Francesco)'''</font>  |   | *<font color="fire">'''Explore UI designing of LCD. (Francesco)'''</font>  | 
|   | + | *<font color="red">'''4/01/2020 -> Updated Overall DBC file. '''</font>   | 
|   | + | *<font color="red">'''4/01/2020 -> Update the wiki schedule. '''</font>   | 
|   | *<font color="red">'''4/04/2020 -> Completed the Circuit designs for the PCB. '''</font>    |   | *<font color="red">'''4/04/2020 -> Completed the Circuit designs for the PCB. '''</font>    | 
|   | *<font color="red">'''4/04/2020 -> Finalized the components for PCB. '''</font>    |   | *<font color="red">'''4/04/2020 -> Finalized the components for PCB. '''</font>    | 
| − | ||  In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br> In Progress <br>  | + | ||    | 
|   | + | *<font color="green">'''Complete '''</font>   | 
|   | + | *<font color="orange">'''In Progress '''</font>   | 
|   | + | *<font color="orange">'''In Progress '''</font>   | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | + | *<font color="orange">'''In Progress '''</font>   | 
|   | + | *<font color="orange">'''In Progress '''</font>   | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | + | *<font color="orange">'''In Progress '''</font>   | 
|   | + | *<font color="green">'''Complete '''</font>    | 
|   | + | *<font color="green">'''Complete '''</font>   | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | + | *<font color="orange">'''In Progress '''</font>    | 
|   | |-  |   | |-  | 
|   | | '''6''' || '''10 April 2020'''|| '''16 April 2020'''||    |   | | '''6''' || '''10 April 2020'''|| '''16 April 2020'''||    | 
		Revision as of 20:40, 31 March 2020
Project Title
<Nimble>
Abstract
<2-3 sentence abstract>
Introduction
The project was divided into N modules:
-  Sensor ...
 
-  Motor..
 
-  ...
 
-  Android
 
Team Members & Responsibilities
<Team Picture>
-  [ Yuming Cheng]
 
-  GPS Module
 
-  Master Module
 
-  Motor Module
 
 
-  [ Ellis Makwana]
 
-  Sensor Module
 
-  Master Module
 
 
-  [ Naeem Mannan]
 
-  Master Module
 
-  Mobile Application
 
-  LCD display
 
 
-  [ Francesco Vescio]
 
-  Sensor Module
 
-  Master Module
 
 
-  [ Lawrence Wan]
 
-  Master Module
 
-  GPS Module
 
-  Motor Controller
 
 
-  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
 
 
Team Deliverables Schedule
|   WEEK
 | 
 
 START DATE  
 | 
 
 END DATE  
 | 
 
 TASK DETAILS  
 | 
 
 STATUS  
 | 
|  1  | 
  Feb 2020  | 
 4 March 2020  | 
- Create and establish GitLab repository
 
- Establish slack channel and invite Preet
 
- Look through previous years projects and study it
 
- Distribute major roles among team members
  
 | 
 Completed   Completed   Completed  Completed  
 | 
|  2  | 
 05 March 2020  | 
 12 March 2020  | 
- Create a Bill of Materials.
 
- Select and order an RC car.
 
- Make Repo on Gitlab for all modules - Follow Naming Convention.
 
-  Making the Wiki schedule.
  
 | 
 In Progress   Completed   In Progress    In Progress  
 | 
|  3  | 
 13 March 2020 | 
 19 March 2020  | 
- Select Part Number for Sensors (Tanmay, Ellis)
 
- Designing and deciding PCB tool(Lawrence)
 
- Finalizing GPS module by doing some research (Yuming)
 
- Finalize and order LCD ()
 
- Finalize Motor and Order it (Lawrence , Yuming )
 
- Environmental setup of Android ( )
 
-  3/17/2020 -> Project Lab - RC Car Infrastructure  
  
 | 
 Completed    Completed   Completed   In Progress   In Progress  In Progress   Completed  
 | 
|  4  | 
 20 March 2020 | 
 26 March 2020 | 
- Understand DBC and implement the DBC file compatible with all the controllers. (Updating the DBC files from all nodes)
 
-  Finish purchasing the Sensor (Tanmay)
 
- Establish communication across all the CAN controllers over CAN bus based on the DBC file.
 
- Verify the power-up interactions and configurations between Master and the other controllers.
 
- Establish a connection over Bluetooth and mobile app.(Naeem) 
 
-  3/24/2020 -> Project Lab - GPS & Compass Node  
 
-  3/24/2020 -> Anonymous Reviews  
  
 | 
  In Progress   Completed     In Progress   In Progress    Completed    Completed     Completed   
 | 
|  5  | 
 27 March 2019 | 
 09 April 2019 | 
- 3/24/2020 -> Finish deciding the Pins that will be used in each nodes. 
 
- 3/30/2020 -> Completed the rough draft of block digram and Flow chart for each node logics.  
 
- Establish a communication between Bluetooth devices.(Naeem)
 
- Interfacing of ultrasonic sensors to the SJTwo board and check for basic functionality. (Tanmay, Ellis)
 
- Interface of Servo & DC motor to the SJTwo board and check for basic functionality. (Yuming)
 
- Interface Compass module with SJTwo board using I2C serial bus. (Lawrence)
 
- Interface GPS module with SJTwo board. (Lawrence)
 
- Interface bluetooth module with SJtwo board using serial Communication. (Naeem)
 
- Configure bluetooth module name as Nimble using Communication Mode. (Naeem)
 
- Add a TextView for displaying the Bluetooth connection status in mobile App.(Naeem)
 
- Explore UI designing of LCD. (Francesco)
 
- 4/01/2020 -> Updated Overall DBC file.  
 
- 4/01/2020 -> Update the wiki schedule.  
 
- 4/04/2020 -> Completed the Circuit designs for the PCB.  
 
- 4/04/2020 -> Finalized the components for PCB.  
  
 | 
- Complete  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- In Progress  
 
- Complete  
 
- Complete  
 
- In Progress  
 
- In Progress  
  
 | 
|  6  | 
 10 April 2020 | 
 16 April 2020 | 
- Implement basic obstacle avoidance algorithm based on sensor data and test the same.
 
- Continue testing motor driver via commands from CAN bus.
 
- Build in speed steps to reverse motor for reverse to work correctly.
 
- Mount all the sensors and test for any dead band and modify their positions for maximum coverage.
 
- Integrate the fusion of LIDAR and Ultrasound sensor to get overall feedback from all the directions.
 
- Develop algorithm to avoid obstacles and plan the car's further navigation path.
 
- Complete final prototype of the obstacle avoidance feature.
 
- Calibrate Compass Module. Develop code for Compass module communication over CAN.
 
- 16 April 2019 DEMO: Motors driven by wheel feedback and sensors, Basic obstacle avoidance.
 
- Final Wiki Schedule.
  
 | 
                                        
 | 
|  7  | 
 17 April 2020 | 
 23 April 2020 | 
- Configure GPS device baud rate and interface it with SJOne board using UART.
 
- Send and receive current location, destination and checkpoint coordinates to and from App and Geo module via BRIDGE.
 
- Calibrate sensors readings and work on filtering algorithm with Master & Sensor
 
- Begin work on LCD to show vehicle live status(speed, fuel-status, obstacles, distance to destination etc.) in a GUI.
 
- Finish implementing speed control on motor (to make sure requested speed is met based on RPM read).
 
- Work on Car reversing using Motor Controllers.
 
- Integrate all modules with the Master to test the data flow.
 
- Validation & Verification of obstacle avoidance, steering logic with rear sensor inputs and reversing.
 
- Start incorporating GEO Controller information to Master module Steering logic.
 
- Decide, implement and test data exchange between Geo Controller and BRIDGE.
 
- Calculate and send simple bearing angle and destination status on CAN to figure out initial challenges.
 
- Add a Google Map for setting the car's destination.
 
- Send car location to app and check points received to Geo module.
 
- Verify the stringent requirement of Start-up Sync, Periodic heart-beat messages.
 
- Update Wiki Schedule with Test Reports.
  
 | 
                                                          
 | 
|  8  | 
 24 April 2020 | 
 30 April 2020 | 
- Testing & Validation of the LCD UI and display run time vehicle status and looking forward for feedback from team if any.
 
- Improve & Validate Navigation logic with multiple checkpoints, bearing angle and destination information.
 
- Identify and mitigate GPS locking, Location Accuracy and Number of Satellite-In-View coming.
 
- Validate Accuracy of Compass Calibration with iPhone Compass.
 
- Determine and add DBC Changes and finalized.
 
- Implement the steering logic with bearing angle and status provided by GEO-Module.
 
- Consistently Communicate current car location to App, get check points from App and relay them to Geo module.
 
- Send additional vehicle status information from can bus to the App for display.
 
- Send the request to Google for getting the checkpoints(use the Google Maps Directions API).
 
- Field test and check for obvious issues in obstacle avoidance, navigation, maintaining speed (up/down hill).
 
- Provide feed backs to each team on identified short comings.
 
- Update Wiki with new details and information.
 
- DEMO: GPS driving
  
 | 
                                                    
 | 
|  9  | 
 1 May 2020 | 
 7 May 2020 | 
- FIELD TESTING - CRITICAL WEEK 
 
- Implement turning indicators, break lights and head light.
 
- Check for Corner cases for steering logic under various conditions and locations.
 
- Analyse field test results for GPS and CMPS and work on it if required.
 
- Test the accuracy of check-points from the Blue-tooth controller, location data from the Geo-controller sensor and Navigation Algorithm.
 
- Check overall robustness of the complete system.
 
- Establish complete connection on PCB
 
- Update wiki with details.
  
 | 
                          
 | 
|  10  | 
 8 May 2020 | 
 21 May 2020 | 
- All hands on testing and final bug fixes.
 
- Check for tuning or calibration of modules if required.
 
- Complete end-to-end testing for various scenarios and conditions.
 
- Create the semester long project activity video and upload to YouTube.
 
- Update and finalize wiki.
  
 | 
                  
 | 
|  11  | 
 22 May 2020 | 
   | 
- DEMO: Final Project 
 
- SUBMISSION: Final Project Wiki
  
 | 
     
 | 
Parts List & Cost
|  Item#
 | 
 Part Desciption
 | 
 Vendor
 | 
 Qty
 | 
 Cost
 | 
|  1
 | 
 RC Car
 | 
 Traxxas - Amazon [1]
 | 
 1
 | 
 $168.84
 | 
|  2
 | 
 CAN Transceivers MCP2551-I/P
 | 
 Robotshop [2]
 | 
 6
 | 
 $ 6.00 per unit including shipping fee
 | 
|  3
 | 
 GPS
 | 
 Amazon []
 | 
 1
 | 
 $ .00 per unit including shipping fee
 | 
|  4
 | 
 Compass
 | 
 Amazon []
 | 
 1
 | 
 $ .00 per unit including shipping fee
 | 
|  5
 | 
 Ultrasonic sensors(LV-MaxSonar-EZ0)
 | 
 SparkFun []
 | 
 1
 | 
 $ 29.95
 | 
|  6
 | 
 Ultrasonic sensors (LV-MaxSonar-EZ1)
 | 
 SparkFun []
 | 
 2
 | 
 $ 51.90
 | 
|  7
 | 
 IR sensors (GP2Y0A21YK)
 | 
 SparkFun []
 | 
 1
 | 
 $ 34.23  including shipping fee and 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
<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
Gitlab Project Link - [3]
Advise for Future Students
<Bullet points and discussion>
Acknowledgement
References