| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | task/milestone | description | person/people with primary responsibility | start date | finish date | Wed 2/7 | Wed 2/14 | Sun 2/18 | Wed 2/21 | Wed 2/28 | Fri 3/1 | Wed 3/6 | Wed 3/13 | Wed 3/20 | Wed 3/27 | Wed 4/3 | Wed 4/10 | Wed 4/17 | Sun 4/21 | Wed 4/24 | Wed 5/1 | Sat 5/4 | |
2 | Perform material research | Perform research on correct materials to buy (motors, Arduino components, etc.), especially finding the right drone | David | 2/7 | 2/14 | x | x | ||||||||||||||||
3 | Load Balancing Algorithm (1/2) | Perform research on optimal load balancing algorithms and implement in Go | Ronit | 2/7 | 2/14 | x | x | ||||||||||||||||
4 | General Website Setup | Create base template for Django website, do front/backend setup of site, and research hosting live video streaming | Nina | 2/7 | 2/14 | x | x | ||||||||||||||||
5 | Design Presentation Slides | Design Presentation Slides | All | 2/14 | 2/18 | x | x | ||||||||||||||||
6 | Find methods for obtaining drones | Find where and how to purchase/obtain drones to use that are suitable for our needs - talk with robotics professors (like Basti) | David | 2/14 | 2/21 | x | x | x | |||||||||||||||
7 | Load Balancing Algorithm (2/2) | Implement the load balancing algorithm in Go, and finish unit testing. Research fetching the video stream from the DCC | Ronit | 2/14 | 2/21 | x | x | x | |||||||||||||||
8 | Implement GPS Tracking | Research and implement GPS tracking of drone using GoogleMaps API on top of Django website | Nina | 2/14 | 2/21 | x | x | x | |||||||||||||||
9 | Talk with Basti, Work on rover pivot by re-examing parts and redesign project | Talk with Prof. Basti about drones, Talk with Tamal and Kim about failure, redesign project to be accomadating for rover over drone usage | David | 2/21 | 2/28 | x | x | ||||||||||||||||
10 | Rover Camera & Communication Research | Research camera modules with moving feature that can be attached to rover, order, research new communication methods of camera data to Ronit and monitoring site since drone fly app is removed | Nina | 2/21 | 2/28 | x | x | ||||||||||||||||
11 | Computer Vision Algorithm on the Distributed Server | Implement the Computer Vision Algorithm on the CV processing units. Integrate with video frames and unit tests | Ronit | 2/21 | 2/28 | x | x | ||||||||||||||||
12 | Obtain rover project materials, initial work, spring break | Order rover and PTZ camera, examine rover code | David | 2/28 | 3/13 | x | x | x | x | ||||||||||||||
13 | Implement communication from Raspberry Pi to the Distributed CV server | Use FFMPEG to receive a uploaded video stream and break it into several frames for batch processing in Go | Ronit | 2/28 | 3/13 | x | x | x | x | ||||||||||||||
14 | Implement working PTZ camera on RPi desktop | OS conversion from Buster to Bullseye, Firmware updates and changes to fix stale external trigger issue with camera, order new ribbon cables in order to fix no camera display issue, implement PTZ on RPi with nondeprecated libraries that OpenCV can support | Nina | 2/28 | 3/13 | x | x | x | x | ||||||||||||||
15 | Obtain more mats, switch from rover wifi to UART comms | Purchase smaller batteries and laser heads, test with rover web app, work out the correct JSON commands to send over UART | David | 3/13 | 3/20 | x | x | ||||||||||||||||
16 | PTZ refinement and camera debugging | Implement keyboard press control of PTZ gimbal using Arducam libraries and continue debugging camera firmware/potentially hardware issue of stream going stale and no camera display showing | Nina | 3/13 | 3/20 | x | x | ||||||||||||||||
17 | Integrate frame breakdown with CV server code/ build laser pointing circuit | Build a laser pointing circuit using the Raspberry Pi pins and GPIO. Integrate frame breakdown with the Distributed CV server and write unit tests | Ronit | 3/13 | 3/20 | x | x | ||||||||||||||||
18 | Rover movement with UART comms | Work out the correct JSON commands to send over UART and/or debugging rover movement, set up new RPi for concurrent work (VNC, ssh, Bullseye) | David | 3/20 | 3/27 | x | x | ||||||||||||||||
19 | Camera Frankenstein | Order new imx219 camera and attach to camera serial data of RPi along with PTZ portion of broken camera and disable communication between the components to allow for separate movement and live stream, research live streaming from RPi to personal computer | Nina | 3/20 | 3/27 | x | x | ||||||||||||||||
20 | Communication from CV server to rover | Write scripts to use TCP to communicate from the CV server to the rover to turn on the laser pointer | Ronit | 3/20 | 3/27 | x | x | ||||||||||||||||
21 | Finalize rover movement and tuning | Get controlled movement for rover through extensive debugging, and tune it to do exact turns and movement | David | 3/27 | 4/3 | x | x | ||||||||||||||||
22 | Real time communication of video data | Implement RPi streaming communication through use of OpenCV and picamera2 libraries to send video data to Ronit and monitoring site and embed stream into site through iframe | Nina | 3/27 | 4/3 | x | x | ||||||||||||||||
23 | Monitoring Site Refinement & Scripting | Create script that will have preset camera movement pattern to look around and also further flesh out web application with manual movement controls of camera | Ronit | 3/27 | 4/3 | x | x | ||||||||||||||||
24 | Threading | Have the code running on one RPi with threading between video streaming and code logic, or by using two RPis | All | 4/3 | 4/10 | x | x | ||||||||||||||||
25 | Laser pointer accuracy | Coordinate math to be able to point laser correctly, accounting for angle and positioning; Work with CV server to handle location and pointing logic | Ronit & David | 4/3 | 4/10 | x | x | ||||||||||||||||
26 | Integrate physically together | Integrate everything, make mount | All | 4/10 | 4/17 | x | x | ||||||||||||||||
27 | Final Presentation Slides | Final Presentation Slides | All | 4/17 | 4/21 | x | x | ||||||||||||||||
28 | Test entirety of setup | Make sure everything is integrated and working with server and website | All | 4/17 | 4/24 | x | x | x | |||||||||||||||
29 | Prepare for final demo | Fine-tune anything that is needed | All | 4/24 | 5/4 | x | x | x | |||||||||||||||
30 | Final Report | Final Report | All | 4/24 | 5/4 | x | x | x | |||||||||||||||
31 | |||||||||||||||||||||||
32 | |||||||||||||||||||||||
33 | |||||||||||||||||||||||
34 | |||||||||||||||||||||||
35 | |||||||||||||||||||||||
36 | |||||||||||||||||||||||
37 | |||||||||||||||||||||||
38 | |||||||||||||||||||||||
39 | |||||||||||||||||||||||
40 | |||||||||||||||||||||||
41 | |||||||||||||||||||||||
42 | |||||||||||||||||||||||
43 | |||||||||||||||||||||||
44 | |||||||||||||||||||||||
45 | |||||||||||||||||||||||
46 | |||||||||||||||||||||||
47 | |||||||||||||||||||||||
48 | |||||||||||||||||||||||
49 | |||||||||||||||||||||||
50 | |||||||||||||||||||||||
51 | |||||||||||||||||||||||
52 | |||||||||||||||||||||||
53 | |||||||||||||||||||||||
54 | |||||||||||||||||||||||
55 | |||||||||||||||||||||||
56 | |||||||||||||||||||||||
57 | |||||||||||||||||||||||
58 | |||||||||||||||||||||||
59 | |||||||||||||||||||||||
60 | |||||||||||||||||||||||
61 | |||||||||||||||||||||||
62 | |||||||||||||||||||||||
63 | |||||||||||||||||||||||
64 | |||||||||||||||||||||||
65 | |||||||||||||||||||||||
66 | |||||||||||||||||||||||
67 | |||||||||||||||||||||||
68 | |||||||||||||||||||||||
69 | |||||||||||||||||||||||
70 | |||||||||||||||||||||||
71 | |||||||||||||||||||||||
72 | |||||||||||||||||||||||
73 | |||||||||||||||||||||||
74 | |||||||||||||||||||||||
75 | |||||||||||||||||||||||
76 | |||||||||||||||||||||||
77 | |||||||||||||||||||||||
78 | |||||||||||||||||||||||
79 | |||||||||||||||||||||||
80 | |||||||||||||||||||||||
81 | |||||||||||||||||||||||
82 | |||||||||||||||||||||||
83 | |||||||||||||||||||||||
84 | |||||||||||||||||||||||
85 | |||||||||||||||||||||||
86 | |||||||||||||||||||||||
87 | |||||||||||||||||||||||
88 | |||||||||||||||||||||||
89 | |||||||||||||||||||||||
90 | |||||||||||||||||||||||
91 | |||||||||||||||||||||||
92 | |||||||||||||||||||||||
93 | |||||||||||||||||||||||
94 | |||||||||||||||||||||||
95 | |||||||||||||||||||||||
96 | |||||||||||||||||||||||
97 | |||||||||||||||||||||||
98 | |||||||||||||||||||||||
99 | |||||||||||||||||||||||
100 |