Difference between revisions of "S21: UTAH"
Proj user13 (talk | contribs) (→Schedule) |
Proj user1 (talk | contribs) (→Schedule) |
||
Line 104: | Line 104: | ||
*<span style="color:cyan">Research and finalize which ultrasonic sensor the project will use.</span> | *<span style="color:cyan">Research and finalize which ultrasonic sensor the project will use.</span> | ||
*<span style="color:blue">Purchased Bluetooth connector</span> | *<span style="color:blue">Purchased Bluetooth connector</span> | ||
− | *<span style="color:red">Research math to determine distance between navigation points.</span> | + | *<span style="color:red">Research math needed to determine distance between navigation points. Decide on distance algorithm</span> |
− | *<span style="color:red"> | + | *<span style="color:red">Research multiple navigation point algorithm(Djikstra's) to determine shortest path.</span> |
− | *<span style="color:magenta"> | + | *<span style="color:magenta">Create branch for motor controller driver. Create draft template API for motor controller.</span> |
− | *<span style="color:orange">Using previous projects, determine what works needs to be completed for main board</span> | + | *<span style="color:orange">Using previous projects, determine what works needs to be completed for main board. Bring findings to weekly meeting</span> |
| | | | ||
* <span style="color:green">Completed</span> | * <span style="color:green">Completed</span> | ||
Line 128: | Line 128: | ||
*<span style="color:magenta">03/14/2021</span> | *<span style="color:magenta">03/14/2021</span> | ||
| | | | ||
− | *<span style="color:blue">Research connection with Bluetooth from board to application</span> | + | *<span style="color:blue">Research connection with Bluetooth from board to application. Decide between bluetooth connection or wifi connection by this day</span> |
*<span style="color:red">Work on implementation of multiple navigation point algorithm to determine shortest path </span> | *<span style="color:red">Work on implementation of multiple navigation point algorithm to determine shortest path </span> | ||
*<span style="color:magenta">Plan motor controller API and create basic software flow of API</span> | *<span style="color:magenta">Plan motor controller API and create basic software flow of API</span> | ||
Line 150: | Line 150: | ||
*<span style="color:red">03/21/2021</span> | *<span style="color:red">03/21/2021</span> | ||
| | | | ||
− | *<span style="color:black">Begin laying out hardware requirements for PCB on excel document</span> | + | *<span style="color:black">Begin laying out hardware requirements for PCB on excel document. Include voltage and pinout requirements in excel document</span> |
− | *<span style="color:blue">Finish research on application building with android studio</span> | + | *<span style="color:blue">Finish research on application building with android studio. Install android studio and necessary dependencies</span> |
*<span style="color:blue">Implement a simple application with a button and text</span> | *<span style="color:blue">Implement a simple application with a button and text</span> | ||
− | *<span style="color:red">Unit Test Direction | + | *<span style="color:red">Unit Test Direction Distance Calculation Module. Manual calculation of data should match module output</span> |
− | *<span style="color:red">Begin coding and digesting adafruit Compass data</span> | + | *<span style="color:red">Begin coding and digesting adafruit Compass data. Print Compass data.</span> |
| | | | ||
* <span style="color:red">Incomplete</span> | * <span style="color:red">Incomplete</span> | ||
Line 188: | Line 188: | ||
*<span style="color:cyan">Acquire sensor and interface sensors to SJ2 Board and receive raw data</span> | *<span style="color:cyan">Acquire sensor and interface sensors to SJ2 Board and receive raw data</span> | ||
*<span style="color:blue">Implement basic communication between board and app</span> | *<span style="color:blue">Implement basic communication between board and app</span> | ||
− | *<span style="color:red">Update Wiki with proper software diagrams</span> | + | *<span style="color:red">Update Wiki with proper software diagrams for GPS and Compass data flow</span> |
*<span style="color:orange">Begin Mapping out pins used on all board</span> | *<span style="color:orange">Begin Mapping out pins used on all board</span> | ||
*<span style="color:orange">Complete a block diagram and a control scheme</span> | *<span style="color:orange">Complete a block diagram and a control scheme</span> | ||
Line 248: | Line 248: | ||
*<span style="color:black">Finish implementation of canbus between controllers and begin real world testing</span> | *<span style="color:black">Finish implementation of canbus between controllers and begin real world testing</span> | ||
*<span style="color:cyan">3D print sensor mounts, sensor guards, and draft sensor offset timing to deter sensor cross talk</span> | *<span style="color:cyan">3D print sensor mounts, sensor guards, and draft sensor offset timing to deter sensor cross talk</span> | ||
− | *<span style="color:magenta">Finish integrating wheel encoder and display speed on | + | *<span style="color:magenta">Finish integrating wheel encoder and display speed on SJTwo Telemetry</span> |
| | | | ||
* <span style="color:orange">In progress</span> | * <span style="color:orange">In progress</span> | ||
Line 266: | Line 266: | ||
*<span style="color:magenta">04/18/2021</span> | *<span style="color:magenta">04/18/2021</span> | ||
| | | | ||
− | *<span style="color:black">Integrate Driver, Geo, Bridge sensor, and Motor nodes.</span> | + | *<span style="color:black">Integrate Driver, Geo, Bridge sensor, and Motor nodes. Successful communication between all boards.</span> |
*<span style="color:cyan">Analyze noise in sensor values and design a filter to mitigate the noise</span> | *<span style="color:cyan">Analyze noise in sensor values and design a filter to mitigate the noise</span> | ||
*<span style="color:magenta">Complete "Self Test" for motor test(DC motor moves forward and backwards and servo moves right - left)</span> | *<span style="color:magenta">Complete "Self Test" for motor test(DC motor moves forward and backwards and servo moves right - left)</span> | ||
− | *<span style="color:magenta">Start working on PID control algorithm</span> | + | *<span style="color:magenta">Start working on PID control algorithm. Design bare skeleton for workflow</span> |
| | | | ||
* <span style="color:orange">In progress</span> | * <span style="color:orange">In progress</span> | ||
Line 287: | Line 287: | ||
| | | | ||
*<span style="color:black">Begin to analysis real world tests from previous weeks implementation and perform fixes for issues faced</span> | *<span style="color:black">Begin to analysis real world tests from previous weeks implementation and perform fixes for issues faced</span> | ||
− | *<span style="color:black">Ensure Canbus nodes are communicating correctly by verifying PCON data</span> | + | *<span style="color:black">Ensure Canbus nodes are communicating correctly by verifying PCON data. Verify that timing for data is correct</span> |
*<span style="color:cyan">Integration testing with obstacle avoidance. Analyze possible blind spots and make adjustments to sensor placements. Analyze sensor response time and data while rc car is moving and make adjustments if needed.</span> | *<span style="color:cyan">Integration testing with obstacle avoidance. Analyze possible blind spots and make adjustments to sensor placements. Analyze sensor response time and data while rc car is moving and make adjustments if needed.</span> | ||
| | | | ||
Line 302: | Line 302: | ||
*<span style="color:black">05/02/2021</span> | *<span style="color:black">05/02/2021</span> | ||
| | | | ||
− | *<span style="color:black">Perform more real world tests and isolate bugs</span> | + | *<span style="color:black">Perform more real world tests and isolate bugs. Update issues for bugs find during real world test</span> |
− | *<span style="color:black">Perform final bug fixes for all Canbus nodes</span> | + | *<span style="color:black">Perform final bug fixes, as listed under issues, for all Canbus nodes. </span> |
| | | | ||
* <span style="color:red">Incomplete</span> | * <span style="color:red">Incomplete</span> |
Revision as of 22:51, 13 April 2021
Contents
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
- Akash Vachhani Gitlab
- Leader
- Geographical Controller
- Jonathan Beard Gitlab
- Android Application Developer
- Communication Bridge Controller
- Ameer Ali
- Master Controller
- Jonathan Tran Gitlab
- Sensors Controller
- Amritpal Sidhu
- Motor Controller
- Shreevats Gadhikar Gitlab'
- Motor Controller
Schedule
Description | Color |
---|---|
Administrative | Black |
Sensor | Cyan |
Bluetooth & App | Blue |
GPS | Red |
Motor | Magenta |
Main | Orange |
Week# | Start Date | End Date | Task | Status |
---|---|---|---|---|
1 |
|
|
|
|
2 |
|
|
|
|
3 |
|
|
|
|
4 |
|
|
|
|
5 |
|
|
|
|
6 |
|
|
|
|
7 |
|
|
|
|
8 |
|
|
|
|
9 |
|
|
|
|
10 |
|
|
|
|
11 |
|
|
|
|
12 |
|
|
|
|
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
VERSION "" NS_ : BA_ BA_DEF_ BA_DEF_DEF_ BA_DEF_DEF_REL_ BA_DEF_REL_ BA_DEF_SGTYPE_ BA_REL_ BA_SGTYPE_ BO_TX_BU_ BU_BO_REL_ BU_EV_REL_ BU_SG_REL_ CAT_ CAT_DEF_ CM_ ENVVAR_DATA_ EV_DATA_ FILTER NS_DESC_ SGTYPE_ SGTYPE_VAL_ SG_MUL_VAL_ SIGTYPE_VALTYPE_ SIG_GROUP_ SIG_TYPE_REF_ SIG_VALTYPE_ VAL_ VAL_TABLE_ BS_: BU_: DBG DRIVER IO MOTOR SENSOR GEO BO_ 100 BRIDGE_APP_COMMANDS: 1 SENSOR SG_ APP_COMMAND : 0|2@1+ (1,0) [0|0] "" GEO,DRIVER BO_ 101 MOTOR_CHANGE_SPEED_AND_ANGLE_MSG: 2 DRIVER SG_ DC_MOTOR_DRIVE_SPEED_sig : 0|5@1+ (1,-5) [-5|15] "levels" MOTOR SG_ SERVO_STEER_ANGLE_sig : 5|8@1+ (1,-45) [-45|45] "degrees" MOTOR BO_ 102 SENSOR_SONARS_ROUTINE: 5 SENSOR SG_ SENSOR_SONARS_left : 0|10@1+ (1,0) [0|0] "inch" DRIVER SG_ SENSOR_SONARS_right : 10|10@1+ (1,0) [0|0] "inch" DRIVER SG_ SENSOR_SONARS_middle : 20|10@1+ (1,0) [0|0] "inch" DRIVER SG_ SENSOR_SONARS_rear : 30|10@1+ (1,0) [0|0] "inch" DRIVER BO_ 300 GPS_DESTINATION_LOCATION: 8 SENSOR SG_ DEST_LATITUDE : 0|32@1+ (0.000001,-90.000000) [-90|90] "Degrees" GEO SG_ DEST_LONGITUDE : 32|32@1+ (0.000001,-180.000000) [-180|180] "Degrees" GEO BO_ 301 COMPASS_HEADING_DISTANCE: 8 GEO SG_ CURRENT_HEADING : 0|12@1+ (0.1,0) [0|359.9] "Degrees" DRIVER,SENSOR SG_ DESTINATION_HEADING: 12|12@1+ (0.1,0) [0|359.9] "Degrees" DRIVER,SENSOR SG_ DISTANCE : 24|17@1+ (0.01,0) [0|0] "Meters" DRIVER,SENSOR BO_ 501 GPS_CURRENT_INFO: 8 GEO SG_ GPS_CURRENT_LAT : 0|32@1+ (0.000001,-90.000000) [-90|90] "degrees" DRIVER,SENSOR,MOTOR SG_ GPS_CURRENT_LONG : 32|32@1+ (0.000001,-180.000000) [-180|180] "degrees" DRIVER,SENSOR,MOTOR BO_ 502 GPS_CURRENT_DESTINATIONS_DATA: 8 GEO SG_ CURRENT_DEST_LATITUDE : 0|32@1+ (0.000001,-90.000000) [-90|90] "Degrees" DRIVER SG_ CURRENT_DEST_LONGITUDE : 32|32@1+ (0.000001,-180.000000) [-180|180] "Degrees" DRIVER BO_ 504 RC_CAR_SPEED_READ_MSG: 2 MOTOR SG_ RC_CAR_SPEED_sig : 0|12@1+ (0.01,-2.5) [-2.5|10] "m/s" DRIVER,SENSOR BO_ 001 DRIVER_HEARTBEAT: 1 DRIVER SG_ DRIVER_HEARTBEAT_cmd : 0|8@1+ (1,0) [0|0] "" SENSOR,MOTOR BO_ 002 SENSOR_HEARTBEAT: 1 SENSOR SG_ DRIVER_HEARTBEAT_cmd : 0|8@1+ (1,0) [0|0] "" SENSOR,MOTOR BO_ 003 GEO_HEARTBEAT: 1 GEO SG_ DRIVER_HEARTBEAT_cmd : 0|8@1+ (1,0) [0|0] "" SENSOR,MOTOR BO_ 004 MOTOR_HEARTBEAT_MSG: 1 MOTOR SG_ MOTOR_HEARTBEAT_sig : 0|8@1+ (1,0) [0|255] "pulse" DRIVER CM_ BU_ DRIVER "The driver controller driving the car"; CM_ BU_ MOTOR "The motor controller of the car"; CM_ BU_ SENSOR "The sensor controller of the car"; CM_ BO_ 100 "Sync message used to synchronize the controllers"; CM_ SG_ 100 DRIVER_HEARTBEAT_cmd "Heartbeat command from the driver"; BA_DEF_ "BusType" STRING ; BA_DEF_ BO_ "GenMsgCycleTime" INT 0 0; BA_DEF_ SG_ "FieldType" STRING ; BA_DEF_DEF_ "BusType" "CAN"; BA_DEF_DEF_ "FieldType" ""; BA_DEF_DEF_ "GenMsgCycleTime" 0; BA_ "GenMsgCycleTime" BO_ 100 1000; BA_ "GenMsgCycleTime" BO_ 200 50; BA_ "FieldType" SG_ 100 DRIVER_HEARTBEAT_cmd "DRIVER_HEARTBEAT_cmd"; VAL_ 100 DRIVER_HEARTBEAT_cmd 2 "DRIVER_HEARTBEAT_cmd_REBOOT" 1 "DRIVER_HEARTBEAT_cmd_SYNC" 0 "DRIVER_HEARTBEAT_cmd_NOOP" ;
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>