18. Project Development¶
This week I worked on defining my final project idea and started to getting used to the documentation process.
Assignment:
- Complete your final project, tracking your progress:
- what tasks have been completed, and what tasks remain?
- what’s working? what’s not?
- what questions need to be resolved?
- what questions need to be resolved?
- what have you learned?
What tasks have been completed, and what tasks remain?¶
As of this week, all the testing of individual systems has been completed. The individual test and its outcomes can be seen at the project page Project Week 18. The next set of tasks that I have remaining for the final project includes:
- 3D Printing all the requited components mainly the sprockets, casing and cover.
- 2D cutting of the chassis parts
- Final assembly of electronics and testing
- Final assembly of the entire project.
- Test run and rerun spiral to get more improvement in the design and operation of the system.
- Printing the logos for the project.
- Creating final Presentation.png
- Making final Project presentation.mp4 video
- Presenting the final project
- Complete any remaining assignments as per feedback from evaluators.
What’s working? what’s not?¶
As of this week, the test of the system shows that all assemblies are working as expected. To test the working of the system, I have done 2D design and cut using board material in laser printer for the chassis. I have also made a preliminary assembly of the system and programmed the board to connect to the application and remotely control the motion of the robot.
The initial assembly using board material is shown in the video below:
Through this initial setup, I can see that almost all the system are working as expected. I can get a camera feedback from the ESP camera module and control the motion of the motors as desired. I can also get the inputs from the ultrasonic and PIR sensors as expected.
The only thing that is not working as expected is that the camera stream has a delay due to large data size being transmitted through WiFi to the application due to which there is also delay in sending the signal from the controller to the motor control. The controller has to wait for the camera data to be sent to the application after which it send the data to control the motors.
What questions need to be resolved?¶
There are couple of things that I need to work on in order to complete the final project.They include:
- Integrating all components and aligning the wheels together to get sync in movement
- increasing the range of PCB antenna in ESP32
- Decrease lag in data transfer especially the video and the control signal together.
- obstacle detection and stopping when obstacles are detected.
What will happen when?¶
With just two weeks left to the complete the final project at this stage, I have made the plan to do the following:
- Day 1: Complete the Electronics design and PCB fabrication.
- Day 2: Testing outside the casing of the electronics with the sensors and motors to see it works.
- Day 3: Final touchup on the Application desing and interfacing with the electronics above. Making sure it works.
- Day 4: Complete any 3D designs that is left. Start with 3D printing. Need to prioritize this due to need of scheduling the 3D printing amongst the Fab Academy Participant. All participants were printing now and the 3D printer was always busy.
- Day 5: Continue with 3D printing, while in parallel work on 2D design and laser cutting of the casing using board.
- Day 6: Continue with 3D printing, while in parallel work on 2D design and laser cutting of the casing using board.
- Day 7: Continue with 3D printing, while in parallel work on 2D design and laser cutting of the casing using board and Acrylic.
- Day 8: Continue with 3D printing, while in parallel work on 2D design and laser cutting of the casing using board and Acrylic.
- Day 9: start with assembly of the project.
- Day 10: Complete system assembly and start test run.
- Day 11: Test run continues with methods to improve the system.
- Day 12: Continue testing and improving.
- Day 13: Make videos of the test run while the documenting and working on the .
- Day 14: Prepare the videos for the project as well as the presentation and push to git.
- Day 15: Make sure all the things are ready for the final presentation.
13th June 2022 - Presentation Day. Present to the FabAcademy commmunity and take all feedbacks to improve
What have you learned?¶
Learning from the project is extensive and broad. Through handling of and working in the project I have learned a lot of things. I have listed them in sequence of the order in which I have worked in the project and the significance of each of the components to my final project and learning through it.
- Project Management
Through the first week this this week, I have been keeping a parallel track of the tasks that I will need to complete in order to finish my final project. In the first week, we worked on Ghantt chart and project management tool to track progress of the project. Since the assignments we worked on each week were a component of the project, I worked on learning the tools at that stage and planned to make the actual component only during the last two weeks. This way, I would be practicing with other tools along side to find suitable tools that I can make use of in developing the final Project.
While working on other assignment tasks, I also kept on working and re-working on my project design so as to get a better outcome from the project. I created a timeline for the 20weeks and kept sufficient time slot that would be sufficient for me to successfully complete the project on time. In doing so, I created a list of tasks to be completed every week and in the last two weeks
- CAD Design and Manufacturing
In the final project, I have used 2D design tools mainly the inscape and GIMP to edit images. I have created logo for my project, changed size and vectrized the images. In order to get 3D models of my robot and use 3D printer to print some components of the robot. Further, the 2D design can also be created in fusion360 and cut using Laser cutting and logo design using Vinyl cutting machine.
CAD tool mainly EAGLE is used to design circuits and created board equivalent of the circuit that i use for my final project. These board’s png files are used in mods to create a RML file for PCB milling using SRM20.
- CAD Design and 3D Printing
Printing the 3D models and componets of the model using 3D printer. I have made the sprocket design in fusion360 and printed using Makerbot 3D printer available in the lab.
- Embedded Programming
The control of both the motors and sensors as output and input devices are through the controller. The
- interfacing and application development
For the final project i have learnt to create an application that can be used to control the motion of the robot while streaming live video feed from the camera onboard the robot. I made use of DroidScript and MIT app inventor to create an application. Further, I also created a website that send the data from the user interface and send it to the controller.
- System assembly and Testing
The final stretch of my project was to assemble the components that i have designed using 2D design, 3D printing and electronics into a single unit. I planned to have the sensors facing front to give be obstacle detection. Further, I also put the electronics such that the camera view is not entorely blocked. Once the assembly of the system is complete, I move on to testing the movement of the robot at the same time the communication between the controller and the application. While there is a delay in the data transmission, it is still in the permissible limits so that the movement of the robot is proper.
- Preparing presentations and video
After the project, I prepared a presentation slide of size 1920x1080 that would be used as my final presentation along side the final presentation video. Along side that I also prepared a video of 1min length and size less than 10mB. This video was uploaded to the root folder of git was used in the final presentation. Through the two tasks i learnt how to handle multimedia and learnt few movie editing tools like window Videos and Movavi movie editor. I leant to add videos, embed texts into the video, add animations and motion including transition. Further, I also learnt about adding music along side the video.
Finally, the size of the video when edited was rather big in the range of MBytes. I had to reduce that to size less that 10mB hence I made use of online editing tools to make that size smaller so that it can be pushed in to the git directory.
- Troubleshooting problems and finding solutions
Of all the things that I learnt, perseverance was the highlight of the fabAcademy. While a lots of knowledge and skills were learnt, the nature of fab academy course being a closely nit course with very broad dimensions, it taught me that I had to be consistent in the tasks that i perform and manage the time and task so that I donot loose track of all the improtant things that I will have to complete in the end of the week and the end of the course. Finally documenting the weeks progress was the best that i have learnt. This helped in journalling the work I did every day and put it into the git that will store my work for a long time to come.