SelfScoringCornholeBoard
Creator: |
Overview
This is a project for building cornhole boards (bean bag toss) that can automatically keep track of the current score based on the location of the bean bags on the board face or in the basket under the hole in the board.
A cornhole board looks like this:
And the bags you throw look something like this:
We intend to make this board keep its own score by adding a postage scale class weight sensor under the board face to detect the weight of any bags that have landed on the face of the board. These are worth 1 point. We'll also add a string/cord basket under the hole with the corners attached to more weight sensors to detect the weight of bags that went in the hole. These are worth 3 points. There are 4 bean bags for each team usually red and black. For the computer to know the difference we will vary the weight by a very small amount the scale can determine the difference but doesn't affect game play by humans. It would be checking the total weight on the face and the total weight in the hole basket and dividing by the set weight for each team's bags to determine how many of which team's bags are where. It would then do the math and display on a 2 digit 7 segment display built right into the board the current round's score for which team. Remember the rules say the points cancel each other out. So if the red team has 1 in the hole for 3 points and the black team has a bag on the board face for 1 point then the red team gets 2 points and black gets zero for the round. The board display would need to show it was the red team getting the points AND that it was 2 points they were getting.
Here are a few links to some force sensing resistors that might work for the weight sensors on the board:
http://www.trossenrobotics.com/p/24-inch-force-sensing-resistor.aspx
http://www.trossenrobotics.com/store/p/6496-1-5-Inch-Force-Sensing-Resistor-FSR-.aspx
We could also look around on the internet for broken postage scales and use the weight sensors from those. If the sensors in digital bathroom scales are sensitive enough to pick out the slight difference in team bag weights then we could find broken bathroom scales and use those sensors.
Another idea to detect the position and team of each bag is with RFID tags sewn into the middle of the bag. The board is a giant RFID reader. Or instead of using magnetic waves to energize the radios inside the bags use conductive thread woven all over the bag so it's certain to touch the board surface no matter where it lands. The board sends constant power (low, safe power) and energizes the radios in each bag that's landed on the board. Each bag that's on the board then transmits it's unique ID to the main receiver. Each second the main receiver will look for each bag ID in turn. If the bag isn't on the board then it won't be transmitting its ID so the main computer knows it's not on the board. Then to handle which bags are in the hole the basket that catches the bags inside the hole is also metal and conducting that same low power. Except it energizes a second after the main top board de-energizes. The main computer will basically do this:
- Each bag's unique RFID ID is pre-registered with the computer and which ones are on which team.
- Energize the main board which causes all the bags on the board to start transmitting their IDs.
- Loop through each registered ID and look for that ID to be transmitting.
- If found then count it as on the board (1 point).
- If not found then look for next ID.
- De-energize the board surface.
- Energize the metal basket inside the hole which causes all the bags in the hole to transmit their IDs.
- Loop through each registered ID and look for that ID to be transmitting.
- If found then count it as in the hole (3 points).
- If not found then look for the next ID.
- De-energize the basket.
- Do the math of adding up the points then subtracting the smaller from the larger and adding the leftovers to the team's total.
- Display the updated score for both teams.
Another option would be to add LED lights under the board face to be able to play at night since we'll be having so much fun the sun will go down and we won't want to stop. Here's an example what that might look like: