In the first group project, we made a jacket responding to the disaster. Here the interaction is when facing the disaster, the life jacket can protect people. It can change when facing different disaster. This project inspires me that I should think of something that really benefit people. Because for the first project, it is about something in the future so what I think is to do something closer to life interacting with people while at the same time benefit people’s lives. Then at that time, I saw some boys playing the Whac-A-Mole, this is where I get my idea. Refer to the idea that benefit people to make their daily lives happier, I think this is a good idea for the mid-term project. But I want to make it more interactive and more fun, so I want to make this game into a competition between two people. Also I think by hitting the button, people can release stress from their daily lives. Then I keep on thinking how to make it into a competition. The first thing I think of is to count the time for each player then add the time to see which one use less time. But when latter writing the code, I found this one a bit hard to write so following the professor’s advice I count the number to see which one is the winner. Changing from the Whac-A-Mole, I want to make my player not only interact with the light(mole) but also interact with people to make it a competitive game. While for the user, it is for people of all age to play. The value for people is to add more fun to lives while at the same time release stress by hitting the button.
When designing the project, the first thing I think is to use something to replace the mole to pop up. Then I suddenly think the light is a really good idea, because just like the mole, it suddenly turns on and give a signal to inform the player. Then I think of how to replace the hole, then relate to what we told in class, I think the button is a great replacement to the hole because it can control the light while at the same time let user push to release stress. At first, we used the normal button to test whether this work. However, we found the normal button a bit hard to push and it is not easy to stick to a fixed position so we tried the distance sensor. This time, the light is easier to control but we recognize another problem is the layout is ugly. Also, there is another problem is that, when we cover the sensor with surface with hole which we plan to let the player hit the hole. However, when we tried this, we found that as soon as the surface is covered, the sensor sense it and the light immediately turn off. So before the player hit the hole which is on the same same horizontal plane as the surface, the light already turn off. I was stuck there. Then I got help from our great fellow Jin Tian. She suggested me to use the arcade button. It is bigger and easier to stick to fixed position, so we finally use this one. However, we can do it better. In the presentation, we got some great feedback. At that time, I know that the arcade button has lights on itself. So if we don’t use the LED but use the light of the arcade button, it would be great. If I searched more about the arcade button, our project would be better.
When building up the project, the first difficult we meet is the code. Since we want the LED play the role of the mole, we need to let them randomly light up. To do this, we use the random function. Then at first, I plan to count the time to see which player uses a shorter time. I don’t know how to do that so I asked helped then I learned the millis function. It is to count the current time. By howLongItTookToTurnOff = millis() – onTime I managed to count the time of the player. However, getting the advice from professor there is better and easier way to count is to count the number of the hit to determine which one is the winner. Once the player hit the light, player1Score++, he gets a point. After solving the rules for this game, we plan to control the number for each game. We decided each 11(to always make one player win one more point) LED turn on and turn off as one round of competition. To do this, we first int counter = 0, then counter += 1, when it reach 11, the game is over. To directly show the winner, we use the light to represent each winner, the green light for player1 and red light for player2. After the presentation, we get some great feedback on the rules. To make it more fun, if the people hit the wrong button, he will lose one point this not only make the winner more outstanding, but also make the game more competitive, because you need to prevent your competitor from hitting your button, because once they hit, you lose your point, this make the game more funny.
(the sensor one, not the final work)
After the cable and everything is done, we do the layout. We first use a very big box, then to save space, we change it into a smaller size. I was a bit confused when using the gravity, because the inch and centimeter confuse me and I finally figure it out. Then we hide the Arduino and all other cable inside and the work is done. We also bought two hammer to let the user better hit the button and be more funny.
One bad choice we made during the progress is changing the button into the sensor. Before we go to the user test, some of my friends suggested me to use the distance sensor because it is more sensitive to recognize when the hammer hitting so I change the button into sensor. However, when we add the layout, we found the whole thing don’t work, because once we add the surface, the distance sensor sense it and the lights directly turn off. Having this experience taught me that, we need to try every suggestion but when there is something goes wrong, we need to immediately fix it and find a better solution to solve the problem. One more interesting thing I learned is the big breadboard need to use cable to connect its middle part because the two part is separate from each other.
In conclusion, I think our project convey the idea to make people release stress and to make their lives happier. I think I can do better by improving the rules for this game to make it more interactive. Also, I think I should add the number of the button and add more round to make the game more funny. One thing I learned in this project is for each small step, I need to think is there a better way of doing this, is there a easier way of doing this. Also, when facing failure when I trying, I need to immediately reflect why this failure happen and find another better solution. Learning from failure is also important.
]
(this one is the failure in the project).