The aspect of the Hungry Hungry Hippo children's game that we will be prototyping is the one of the hippos. The hippo's body will be represented as boxes made from foam core. We will build the mechanism that lifts and moves the head of the hippo forward when you press a lever. We will use a sensor, Arduino, and analog display to keep track of and show the score.
We spent several hours in the lab constructing our prototype of the Hungry Hungry Hippo. There are three parts to our prototype: the hippo, the marble-catching mechanism, and the score counter.
The hippo's body is a large box made of foam core. The head of the hippo is a hollow half cylinder (featuring hippo-like googly eyes) connected to a long rod with a notch in it.
The marble catching mechanism works by holding the rod and pulling up. This will cause the notch to fold on itself and lift the head. To lower the head and entrap the marbles, the player must simply pull the rod downwards. The player would then pulls the head toward the body to bring the marble in.
The counting mechanism is located within the box, and consists of an LED facing a photocell with a small space between them through which a marble can roll. We connected the components to an Arduino and programmed it to to detect the change in light from the marble and add score points.
The design is simple, but captures the spirit of the game even surpassing the original game's lack of any electronic, active score keeping, and it was very fun to work on.
I enjoyed working on this project. We had the chance to learn about prototyping techniques and use simple yet versatile materials like foamcore and laser utters to put the project together. There were, however, several elements that I would like to improve upon in the future. One big problem we faced was the inability of the photocell to detect the marbles because they were transparent. Although we corrected this somewhat by covering the marbles in tape, it would be better to just get coloured marbles. Also we had trouble with our arena, which either was flat and difficult for the hippo to reach all of the marbles, or was sloped and forced all of the marbles to roll too quickly down the hoppo's throat. The best solution to this issue is to have more hippos, which compete with one another for balls and are able to reach different parts of the arena without requiring sloping. Personally, I worked primarily on the hippo's clomping mechanism. We spent time initially comparing different mechanisms for the hippo to open and close its mouth and draw marbles in, and at first they were fairly complicated, but I eventually made a much simpler one with a notch in foamcore that allowed the hippo's mouth to easily open and close (which can be seen in the above pictures). I did little work with the electronics on this project, and that is an area in which I want to develop more experience, so I plan on taking an active role in the electronics of our final project.
There a couple things I would change if a built a version 2.0 of our design.
I mainly worked on building the foam core structure of the hippo's head and body. I came up with the idea of carving a path for the marbles to follow, and also inserting the components of the score keeper into the foam of the hippo's body. I worked a bit with the marble catching mechanism. Originally, we had the player pull down to raise the head, but I realized that the structure of our hippo's body made it easier to have the player pull up to raise the head. I didn't work much with Arduino and the electronic components, but I already have a lot of experience with Arduino. As a Course 6 student, I enjoyed worked with more physical compenents than software for once.
For the final project, I would definitely like to practice using CAD software to 3D print components. I also want to work with the laser machine and other shop tools. I want to doing physical prototyping.
We made a couple changes since the work-in-progress step.
We cut out an hourglass shape from the buttom of the hippo's body. This created a path for the marbles to enter the body. We proceeded to stick the LED and photocell inside the foam part of the foam core, where the "hourglass is thinnest". This helped eliminate a lot of the unnecessary light from the LED. We threaded the wires from the score counter along the inside of the hippo's body and into an Arduino. We also created a stadium limiting the movement of the hippo. We covered the marbles in tape because they were originally transparent, which caused the score counter to be less accurate. Lastly, we rastered our team's name and project onto a piece of foam core.
The coding process occurred separately from the manufacturing process. We went through quite a few renditions of the code - most just for testing - before we reached our final code.
The trickiest part of the code was the section that told the computer (and us) when a marble had passed between the photocell and LED. The photocell picked up a lot more interfering light than would have been the case if we had been able to use an infrared LED and receiver. This is due to the photocell's ability to pick up light from outside the hippo's body. Therefore, the code would have to signal a marble was present not when the light reading dropped but when it dropped by a certain minimum amount. Another variable, as we discovered, was the slight fluctuations in light readings that occurred when the hippo's head was moved in and out of the body. Our minimum change in light reading therefore had to be greater than the variability.
Unfortunately, we discovered in our last hour of working on the hippo that this minimum change was not consistently met by our marbles, as they were clear and at times enough light could penetrate them to keep the sensor from recognizing there was a marble there. Our solution was to coat the marbles in tape to make them opaque.
A last-minute, icing-on-the-cake addition to the code was a section that allowed the user to clear the number of marbles in the counter by pressing the spacebar in the Serial Monitor.
Our final code did not show the photocell readings in the spacebar (which is part of the reason we had to use other testing codes to calibrate and debug the program). Instead it only showed "Count: [Number of marbles]". This was the method we used to keep score.
My Hungry Hungry Hippo 2.0 Improvements:
I mainly contributed electronics and programming skills to the project, as I took over the Arduino circuits and code. I have a low-moderate amount of programming experience so I very much enjoyed being able to improve it by writing and debugging this code as well as creating the circuits.
I would like to do more manufacturing, particularly projects beyond foam core. I would like to learn more with CAD and 3D printing as well as get more experience with laser cutting.