Skip to content

1. Principles and practices and Project Management

This week was spent familiarizing myself with the tools and methodology for documenting my progress throughout the Fab Academy training (GIT, version control, Web development, Linux and documentation tools). I also came up with a Final Project idea and conceptualized aspects of features (This project idea may change or be replaced as I work through the course, but it’s a good starting point).

Research

The first few days were spent going through tutorials on GIT and trying to familiarize myself with the terminology and how the system works.

When starting to launch some of the tools there were a few “hiccups”. I am a native Windows OS user, so there was a steep learning curve in using Linux, (since most of the tools were demonstrated and documented from Linux). Windows offers a Linux shell, but I encountered numerous errors in installing some of the required libraries for the necessary applications. Troubleshooting proved difficult because I couldn’t determine if the issues were with the libraries, my command syntax, or with windows itself.

After a couple days of trial and error and testing, I decided to stick to mostly GUI programs and slowly migrate to the BASH Linux implementation within Windows as I became more familiar with the tools. That way I could always fall back on a familiar interface when encountering problems while maintaining my documentation site. Learning to use the syntax within Markdown was quite easy given the templates we were given.

Programs used

The programs I settled on using were:

  • Brackets with Markdown extension for creating and editing web pages.
  • Sourcetree for pushing and pulling files to the GIT page.
  • MS Paint for photo editing and resizing.
  • Video Editing - TBD

I will likely change tools as I start to need more sophisticated features and gain confidence and familiarity with Bash Linux.

Final Project (tentative)

Simplified

A modular and maze with electronic features to be used in robotics training tutorials and competitions.

Problem description

I work in the Robomania section at our National Science Centre. We run robotics demonstrations, workshops, camps and clubs. One of the best kits for teaching robotics is the Lego Mindstorms EV3 kit. One of our most useful challenges is getting students to build and program a robot to solve a maze and pass through it. The current maze we use has some major problems:

  • The maze itself is bulky and heavy, making it difficult to transport when we run the activity at remote locations.
  • The maze design is fixed. We give students free range to use whatever programming techniques they want to “solve” the maze. Rather than come up with an intelligent program that can solve a variety of maze configurations, some students use a brute force technique (e.g. programming the robot to go 10cm forward, then turn left 90°, then 30cm forward, turn 90° right......). This requires a lot less thought about the robots algorithm.
  • Difficulty is fixed because the maze is fixed. When we encounter particularly talented students who come up with a working solution quickly, we can’t adjust the mazes difficulty to give them a harder challenge.
  • The maze is a little plain. It’s part of a robotics challenge, so having just a wooden maze with no shiny techy features isn’t as visually enticing as it could be.

Solution

A Modular maze that can be: - Easily broken down and set back up for easier transport. - Reconfigured into various layouts to add more challenges. - Has electronic features to make it more exciting. (electronic timer and barrier)

Schematic

  • Maze base will be designed like a peg board with uniform holes throughout. They will be made of individual pieces (likely plywood) about 1.5’ x 1.5’ that can be joined together to make the larger whole base.
  • Maze walls pieces will be made of plywood or MDF with appropriately spaced pegs on their base to fit into the holes on the base. The wall pieces will be made to the same height, but varying lengths so that they a variety of layouts can be achieved.
  • Grooved brackets will be cut to reinforce the walls to add more stability to the chosen layout. Wall pieces may need to have grooves cut into their ends to accommodate brackets.
  • Grooved paths along wall pieces for clean running of electrical wires for sensors/servos. (potential future upgrade)
  • Electronic control. Connected to proximity sensors (or pressure plates) that control the timer and barrier gate. Servo for barrier gate. Display for timer.
  • 3D printed mounting brackets for sensors and servo (s). 3D printed electronic box for display and circuitry.

Last update: August 3, 2023