I am working on a project that will determine the location of darts thrown onto a dart board in order to calculate the centroid of the three darts.Unfortunately I am lost trying to figure out the best sensors to accomplish this. I am trying to find a sensor that I can put in each corner of by dart board case (for redundancy) that can determine the distance and angle once a dart is thrown into the board. I have also thought about trying to use small webcams to map the surface of the board to determine where the darts land however that seems to be a far more complicated method. If anyone knows of a good solution to this problem I would appreciate any help.
There are electronic scoring dartboards available but they use soft tipped darts not steel ones.
Ya, the easiest would be to use an electronic dart board but they are low quality and cause a lot of bounce outs. My goal is to be able to do it on my nice dart board with real darts.
you could try a grid of infrared leds and phototransistors to determine where the dart is. When the dart hits, it will block some of the beams. Figure out what beams are broken, and you have your location.
There is an e bristle dartboard that can use steel darts but i think they are expensive.
maybe you could hack one of those
The e bristle board is pretty expensive seeing as I already have a nice board and a case. I think I might try to use the infrared led array rout. The way that I picture it working would be an array of infrared led's all around the square opening in the case for the board and 4 sensors in each corner. If I can get an accurate measurement for the angle at which the blocked led is, with two I can easily calculate the distance and therefore the exact location of the dart. My question now is could I get an accurate angle measurement from a setup like this? The hardest part of this setup (assuming I can get an accurate angle) will be coding it so that if one dart is blocking the view from a sensor to another dart that it voids that data (which is the reason I would be using 4 sensors).
i do not know, how the e bristle dartboard eludes me but i suspect that it is constructed with some sort of conductive sensor per portion.
If you colud hack one it may give some clues ,I suspect your requirement will not be easy.
Positioning information comes up often here , many are looking for a good hobby answer.
Chief_Herb:
The e bristle board is pretty expensive seeing as I already have a nice board and a case. I think I might try to use the infrared led array rout. The way that I picture it working would be an array of infrared led's all around the square opening in the case for the board and 4 sensors in each corner. If I can get an accurate measurement for the angle at which the blocked led is, with two I can easily calculate the distance and therefore the exact location of the dart. My question now is could I get an accurate angle measurement from a setup like this? The hardest part of this setup (assuming I can get an accurate angle) will be coding it so that if one dart is blocking the view from a sensor to another dart that it voids that data (which is the reason I would be using 4 sensors).
Im not really sure how you would do it like that, and frankly, I didn't really put that much thought into it. To save you some engineering trouble, you dont need to reinvent the wheel:
I remembered something similar to this that I was going to do to one of my TVs. I was going to turn it into a touch screen monitor for a computer (never did it though). That's not the setup I was looking at (couldn't find it), but its the same idea. With a little digging, you can probably find out how they do it and replicate that in a manner to suit your needs.
You might also want to look into the actual kits themselves for adaptation to your project. You MIGHT be able to buy one and attach it right to your dartboard and read its output with the arduino instead of an android device or PC. Just make sure its multi-touch so it can read more than 1 dart at a time.
Just had another thought too that could be used in tandem, or maybe as a replacement, RFID tags in the flights (fins) or in the pin hole used to remove the flight shafts (just behind the grip portion). I have never used RFID beyond the consumer level (waving a card in front of a reader), so I cant really say how to do it, or if you could actually get reliable localization from them (angle of impact might be an issue), but it could definitely be used to see who's dart was thrown. Hopefully someone else can chime in on localization reliability.
Just a thought about a different approach: How about sensing the metal in the darts?
You can detect metal using a coil, that's basically how a metal detector works.
The dartboard has 20 numbers with different fields within each number:
triple, double, and 2 singles. -> 4 fields per number.
And 2 for the bull..
That totals to 20*4 + 2 = 82 fields...
You could have a seperate coil for each field and detect a change in the coil. Even when 2 darts hit the same field, you would detect two changes.
82 coils might me a bit much
You could try combining coils? Seperate circular coils for the rings: Doubles,triples, bull and bullseye
And 1 triangular coil for each number.
That would mean 6 coils, each on the edge of the circles of the dartboard. With these you can detect if a trip is hit or a double or which single field.
With the coils for the numbers, you could detect which number is hit.
Not sure if this would be easier then building a grid with optical sensors..
For a 'simple' proof of concept, there are lots of examples online for building a simple metal detector with an arduino.
I don't have a solution but I know that coils won't work, the would interfere with each other as would RFID.
How rapidly do you need to be able to detect the location of a dart?
The grid of sensors ideas works, but the problem is making a grid with small enough spacing.
Using a 2D scanner type mechanism that moves up and down, carrying a single projector and receptor would allow you to locate the dart(s) horizontally. Having that mechanism carry another one that moved left and right would let you locate the dart(s) vertically.
The only question then would be which horizontal measurement goes with which vertical measurement, if there are more than one dart present when scanning.
The only question then would be which horizontal measurement goes with which vertical measurement, if there are more than one dart present when scanning.
Presumably the darts are thrown one at a time from an initial empty board so the position of new darts could be separated from those you detect earlier.
The problem I see with this is resolution, darts can land physically next to each other. That is the actual points are in contact with each other. In my dart playing experience this happens much more than you would think especially when the players are good.
PaulS:
The grid of sensors ideas works, but the problem is making a grid with small enough spacing.
That's the bit I do not get about the bristle dart board.
A couple of sheets of foil may work but would be rapidly degraded.
OK, my thoughts immediately turned to the design of a CT scanner. You might wonder why!
Well, let's look at what we need to use optical blocking for detection - this is one way to implement touch-screens.
Photo-transistors are inconvenient to interface to your Arduino, so we want to use a minimum of those. Perhaps four or six, fed to the Analog inputs, using the internal pull-ups. LEDs are somewhat inconvenient to interface in quantity - unless you use pre-built NeoPixel strips, which require only one pin.
So how about you have a circle of NeoPixel tape facing inwards just beyond the perimeter of the board, mounted perhaps 15 mm in front of the board (and protected by a steel ring!). Spaced around, are six phototransistors also facing inward and masked against external light - the masks are actually slots.
Using a very crude version of the CT algorithms, you "spin" a white LED around the loop and determine which of the phototransistors see it at any given moment, and which do not, using this information to conclude where darts are present. Actually, it might be better to use digital inputs to monitor the phototransistors to obtain the necessary speed. You would use NeoPixels with the closest available spacing.
In addition, the NeoPixel ring becomes a decoration and could interact with the game.
I like the idea but where would you get a bearing for that.
Boardburner2:
I like the idea but where would you get a bearing for that.
??
Nothing moves if you read what he says, so no bearing needed.
got it now
Hi, any new updates on the dartboard project? I too am working to map out different matrices for adaptation and use of old boards which I have laying around.
I found this U.S. patent: US7624988B2 - Electric dart game - Google Patents
The following is a Youtube video of the device being demonstrated. This person appears to have solved the puzzle, but has not brought the device to market. Video: Bristle E-Dartboard - YouTube
Simple 4x20 matrix. Rings x wedges. That'd cover most of it other than the bullseye bit and if you care to detect non-scoring misses.
One circuit detects which ring, another detects which wedge.
Easy peasy lemon squeezy. Hardware tbd. I don't suppose chopping up the board if it's a solid piece into separate scoring sections is feasible, else a microswitch behind each zone would do the trick.