Group 16 - SE 101
This is our github repository for the Scribbler Robot Project.
Summary:
As our final demo, we have programmed our Scribbler Bot into a friendly, playful companion, or "Buddy". We have programmed Buddy in such a way that it is easy to interact with. Able to take voice commands, Buddy can perform a variety of tasks. You can give him commands without even touching your keyboard! If asked, Buddy can recognize and find objects of certain colours for you, point you in the right direction if you're lost, or interact with you and follow your hand gestures. If you are sad, Buddy will even cheer you up with a joke!
Before coding anything, we as a group discussed the best approach to take for this project. In order to do this effectively, we executed the computational decision making method. The computational decision making table really helped us figure out which ideas were viable based on the criteria we appointed ourselves to follow. Ideas such as drawing graphs of functions and following lines were discarded due to our constraints. After coming to a conclusion, we conceived the idea of Buddy based on the functions that were selected.
For this project to be completed on time, we had to make good use of our time. After breaking down the tasks using a flowchart, we got a good idea of how much time needed to be allotted to specific parts of the project. Using this general idea, we really set strict checkpoints and due dates for the project with the help of PERT. Finally, our project progression was accurately traced with the help of a Gantt chart.
In order for Buddy to be brought to life, a number of requirements had to be met. We put our work breakdown structure into more detail and broke everything down into requirements. Some functional requirements include a server and an iPhone application. There were also some criteria that had to be met and constraints that limited us, such as the capabilities of our robot. There were some hardships along the way of this project; these included adjusting to a new language and dealing with inaccurate aspects of the Scribbler. We however collectively overcame these obstacles and worked great together, we developed experience using new tools and programming languages, and we produced a polished functional robot!
Roles:
Mart - App development (user interface and data collection), redis server integration, Robot movement precision optimization and Myo sensor data
Justin - Code assimilation, windows - redis interface
Noah Guld- Idea generation, Personality Developer and weather interface
Karel Casier- Image Processing, Color Interpretation and Object Finding Algorithm [https://github.com/KarelCasier]
Roy - Assistant coder with speciality in music
Jitin - Assistant coder and documenter
Gillian - Colour identification programmer and Assistant Coder and documentation