ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
Task NameDurationStartFinishPredecessorsResource Names
2
High Assurance Self Balancing Robot Capstone II
237 days
12/1711/11
3
Early Research and Planning7 days12/1712/25
4
Rust Programming, Kind27 days12/1712/25Artem
5
Study general Rust syntax5 days12/1712/23Artem
6
Study embedded Rust limitations and syntax1 day12/2412/244Artem
7
Study C/Rust Implementations1 day12/2512/255Artem
8
Study Verification methods7 days12/1712/25Andrew
9
Study general formal verification methods5 days12/1712/23Andrew
10
Study verification with simulation using Octave and Kind22 days12/2412/258Andrew
11
Two-Wheel Pedulum Controls methods7 days12/1712/25Ignacio
12
Study general concepts, and parse provided references5 days12/1712/23Ignacio
13
Study non-linear control, and alternatives2 days12/2412/2511Ignacio
14
Plan Two-Wheel Pedulum Mechanical and Assembly5 days12/1712/23Yuqi
15
Inspect previous robot assembly3 days12/1712/19Yuqi
16
Inspect components purchased for new robot1 day12/2012/2014Yuqi
17
Create a plan of approach for robot assembly1 day12/2312/2315Yuqi
18
Must Requirements151 days12/267/232
19
Extend the code for the inverted pendulum robot to include Rust control library62 days12/263/20
20
Software22 days12/261/24Artem
21
Identify necessary software changes1 day12/2612/26Artem
22
Modify otis_arduino so it works with Arduino MKR WiFi 10105 days12/271/220Artem
23
Modify the PID control defined in otis_arduino to a Rust library5 days1/31/921Artem
24
Compile project with the Rust library instead of C/C++ library0 days1/91/922Artem
25
Develop test plan for controller and telemetry3 days1/101/1423Artem
26
Approve Rust PID controller test plan3 days1/151/1724Artem,Andrew,Ignacio,Yuqi
27
Verify behavior using previous robot and software5 days1/201/2425Artem,Andrew,Yuqi,Ignacio
28
Mechanical Assembly24 days1/272/2719Yuqi
29
Acquire parts and robot plans (3/19) - Andrew3 days1/271/29Artem,Yuqi
30
Build mechanical components of robot3 days1/302/328Yuqi
31
Build electrical components of robot5 days2/42/1029Yuqi
32
Integrate electrical components into mechanical body5 days2/112/1730Yuqi
33
Develop test plan for electrical and mechanical components of the robot (3/19) - Yuqi3 days2/182/2031Yuqi
34
Test components and fix if necessary5 days2/212/2732Yuqi
35
Integration16 days2/283/2027Artem
36
Transfer MKR WiFi 1010 board to new robot5 days2/283/5Artem
37
Test the new robot with new software using previous software test plan5 days3/63/1235Artem
38
Modify system according to test results3 days3/133/1736Artem
39
Document results3 days3/183/2037Artem
40
Optional Task13 days2/283/17Andrew,Artem,Ignacio,Yuqi
41
Attempt to leverage Rust quickcheck 8 to verify the properties developed in Kind2 in the source files after the control design is implemented
13 days2/283/17Andrew,Artem,Ignacio,Yuqi
42
Study general quickcheck applications2 days2/283/2Andrew,Artem,Ignacio,Yuqi
43
Study Rust quickcheck syntax1 day3/33/341Andrew,Artem,Ignacio,Yuqi
44
Identify methods of implementation in TWIP system2 days3/43/542Andrew,Artem,Ignacio,Yuqi
45
Implement quickcheck to verify properties from Kind25 days3/63/1243Andrew,Artem,Ignacio,Yuqi
46
Document results3 days3/133/1744Andrew,Artem,Ignacio,Yuqi
47
Complete PID library integration and new robot assembly0 days3/203/2038,34Artem,Yuqi
48
Modify Lustre/Kind2 Rust code generator to generate “embedded-friendly” Rust52 days3/236/218,46
49
Planning / Initialization13 days3/234/8Andrew,Artem
50
Install Lustre / Kind22 days3/233/24Andrew,Artem
51
Become familiar with Lustre syntax and Rust compilation from Lustre5 days3/253/3149Andrew,Artem
52
Identify how Lustre to Rust compilation is performed3 days4/14/350Andrew,Artem
53
Define scope of compiler modifications. (3/19) - Artem3 days4/64/851Andrew,Artem
54
Integration22 days4/95/848Andrew,Artem
55
Review planned compilier modification3 days4/94/13Andrew,Artem
56
Develop initial test plan1 day4/144/1454Andrew,Artem
57
Execute initial modifications5 days4/154/2155Andrew,Artem
58
Test compiler modifications with initial test cases3 days4/224/2456Andrew,Artem
59
Modify compiler depending on test results5 days4/275/157Andrew,Artem
60
Execute remaining integration5 days5/45/858Andrew,Artem
61
Testing / Review / Refinement17 days5/116/253Andrew,Artem
62
Develop test plan for verification3 days5/115/13Andrew,Artem
63
Review test plan1 day5/145/1461Andrew,Artem
64
Perform test plan tasks5 days5/155/2162Andrew,Artem
65
Modify compiler depending on test results5 days5/225/2863Andrew,Artem
66
Document compiler modifications3 days5/296/264Andrew,Artem
67
Submit compiler modifications for review0 days6/26/265Andrew,Artem
68
Complete Lustre/Kind2 embedded rust implementation0 days6/26/260Andrew,Artem
69
Develop and identify a model of a nominal self-balancing robot in Octave or Matlab.39 days12/262/18
70
Research / Planning17 days12/261/17Ignacio
71
Research modeling of self-balance robots5 days12/261/1Ignacio
72
Research parameters for modeling2 days1/21/370Ignacio
73
Identify the parameters that will need to be modeled1 day1/61/671Ignacio
74
Document potential methods of modeling3 days1/71/972Ignacio
75
Submit potential methods of modeling for review0 days1/91/973Ignacio
76
Decide on modeling tool Octave or Matlab3 days1/101/1474Ignacio
77
Define method of verification3 days1/151/1775Ignacio
78
Integration10 days1/201/3169Ignacio,Yuqi
79
Execute measurement on isolated parameters5 days1/201/24Ignacio,Yuqi
80
Implement model in selected software tool.5 days1/271/3178Ignacio,Andrew,Yuqi
81
Test and Documentation12 days2/32/1877Ignacio,Andrew,Artem,Yuqi
82
Create test plan for verifcation3 days2/32/5Ignacio,Andrew,Artem,Yuqi
83
Review and approve test plan3 days2/62/1081Ignacio,Andrew,Artem,Yuqi
84
Perform test plan tasks3 days2/112/1382Ignacio,Andrew,Artem,Yuqi
85
Return to integration task if test plan fails0 days2/132/1383Ignacio,Andrew,Artem,Yuqi
86
Document results, and submit for Review3 days2/142/1884Ignacio,Andrew,Artem,Yuqi
87
Submit results for review0 days2/182/1885Ignacio,Andrew,Artem,Yuqi
88
Isolate the “Software under Test” as a block to analyze linear / non-linear controller for specific properties26 days2/193/2568
89
Research and Planning8 days2/192/28Andrew,Artem,Ignacio,Yuqi
90
Research methods of isolating blocks of software under test for controls5 days2/192/25Andrew,Artem,Ignacio,Yuqi
91
Document and present potential methods3 days2/262/2889Andrew,Artem,Ignacio,Yuqi
92
Integration5 days3/23/688Andrew,Artem,Ignacio,Yuqi
93
Implement the isolated software on the Arduino MKR 1010.5 days3/23/6Andrew,Artem,Ignacio,Yuqi
94
Test and Documentation13 days3/93/2591Andrew,Artem,Ignacio,Yuqi
95
Create test plan for verifcation5 days3/93/13Andrew,Artem,Ignacio,Yuqi
96
Perform test plan tasks3 days3/163/1894Andrew,Artem,Ignacio,Yuqi
97
Document results3 days3/193/2395Andrew,Artem,Ignacio,Yuqi
98
Submit results for review0 days3/233/2396Andrew,Artem,Ignacio,Yuqi
99
Address any review concerns2 days3/243/2597Andrew,Artem,Ignacio,Yuqi
100
Complete task0 days3/253/2598Andrew,Artem,Ignacio,Yuqi