How to Hit the Bullseye Using Engineering (Even When You Are Drunk)

How to Hit the Bullseye Using Engineering (Even When You Are Drunk)


Have you ever want to know how to hit the bullseye in darts with ease and every single time? Well, these guys have got you covered. A couple of cheeky engineers have spent years developing an augmented dart board that gives a “little” boost to your darts game.

These chaps finally fulfilled a three-year dream of creating an “automated” dart board. With this device, you can hit the bullseye every time thanks to the power of engineering. The setup first tracks the motion of the dart midflight using motion capture. The board then calculates x, y and z positions in Matlab to predict the flight path of the dart and act accordingly using regression analysis. Once the board has calculated the landing point of the dart the board is moved to intercept using 6 stepper motors. The system has been refined to the extent that the dart will always hit the bullseye. This all happens within as little as 400 ms. Impressive.

So let’s see how they managed to solve the problem of how to hit the bullseye in darts using engineering.

Building the dart board

The age-old problem of how to hit the bullseye in darts has confounded darts players since the game began. One man, Mark Rober (and his friend John), heard the call and they have finally provided the ultimate dart board. Mark is an ex-NASA engineer who has “invested” the last three years of his life to designing, building and perfecting this dart board. The board relies on six Vicon motion tracking cameras, infra-red reflectors, and standard darts to work.

The CPU of the board takes around 200 milliseconds to calculate the flight trajectory of the dart. In just another 200 milliseconds the six stepper motors kick in to prevent the player from heartbreak and embarrassment. Before impact, the board is able to refine the trajectory when tracking the dart and reposition accordingly. It can do this as many as 100 times to ensure the bullseye score.

The auto-bullseye board is obviously a fixed object and it’s only good if your aim is roughly in the operating area of the device. If you are so inebriated that you manage to throw the dart behind you, it can’t help you.

Getting a bullseye score, the holy grail! [Image Source: Pixabay]

Hitting the bullseye

There were two main problems they needed to solve to figure out of how to hit the bullseye in darts. First of all, they needed to know where the dart will end up. They also had to figure out where the board needs to be. The first problem was solved using six cameras or “eyes” to track the motion of the dart, using IR. Since darts are very small and it is very hard to track a fast moving object in a busy background they needed a way for the device to only focus on the dart. To solve this, the darts used have special reflectors on them to help the cameras pick them up. Each of the cameras can take a 4k resolution picture, 260 times a second! Wow.

Each “eye” blasts the space between them with IR that hits the retroreflectors on the darts. This bounces IR back to the lenses to let the system to track them. If you simply waved a dart around, the human eye simply sees a blur in busy space. The automated bullseye machine only sees the movement of the dart in an empty space. Neat.

[Image Source: Pixabay]

The board takes shape

The board took a long time to build. In fact, much longer than the team envisaged. They openly confess that this was largely due to the time they invested in building their own motion capture system. They used their own cameras and an incredible NVIDIA TX1 board. This is effectively like a Raspberry Pi “on Russian steroids”. This turned out to be too big an issue to overcome. The team resolved themselves to integrate a VICON system instead.

With this system in place, they had solved the x, y and z position tracking of the dart. Good work, problem one sorted right? Pretty much, now they needed to know where the dart would actually land. To solve this they employed the power of MATLAB to produce the code to allow them to do just that. This is actually pretty complex. Whenever you throw something into the air, neglecting air resistance, it travels travel in a perfect parabola. This is obvious for something like a ball or javelin, but it is also true olesses obvious objects like a high jumper. When you track the center of mass it will arc in a perfect parabola.

Using this knowledge, and the motion tracking system, they used the side views to determine the up and down coordinates for the impact site. For left and right positions, they realized that from a bottom view the dart will travel in a linear path. From this knowledge the used y = mx +b and the y-intercept to determine how much to move laterally.

Moving the center of the board to the target location

So they’d figured out where to move to. Now they needed to solve how to move it. The board is on two linear sliders that allow the board to move in any position within the frame of the machine. This provides the track for the target bullseye to move. Now they needed something to move it. The team opted for six stepper motors with a spool of fishing line. These were attached to the center of the back of the board. Once the final impact site has been calculated, the CPU uses trigonometry to send commands to the motors. The motors then unwind or wind the line as appropriate to move the center of the board to the target location.

This all happens in less than half a second! Amazing. This lets the dart hit with sub-millimeter precision on the board. As we mentioned earlier the board makes many final adjustments before impact. The impact prediction is updated anywhere between 1o and 100 times. You’ll notice this when the board is in motion, it jitters or shakes prior to the dart impacting.

So there you go, How to hit the bullseye in darts using engineering. Do you fancy building your own? Or does it take the fun out of the game? Let’s hear your thoughts.

Sources: Mark Rober via YouTubeGizmodo