It sounds as if you want something simple, maybe as simple as possible even.
Here's my take on it:
- Attach a piezo speaker on every drone, say one of these or these, these particular ones in the links have wrong frequency range... I might have to edit the links.
- I'd go with the first link because it takes less space.
- Make an oscillator for every drone in the 20-30 kHz range
- If you got N drones, then you'll need N different frequencies
- Place a microphone near every hula-hops
- A typical microphone might be able to record up to 30 kHz, I don't know. I'm no audiophile.
- The reason for why I say 30 kHz is so you won't hear it, if you're okay with hearing beeps then you can lower it to 10-20 kHz which all microphones should be able to detect.
- Add some cardboard around the hula-hops so the drones are forced to go through the hula-hops.
If you do have the setup above, then you can, for an example, place a µC on every hula-hop with a battery and simply run FFT on the µC. When it detects a beep, say 25 kHz becoming louder and then becoming fainter, then it must've passed through the hula-hop, right? It's very easy to set up.
A simple setup for the FFT would be to sample the microphone at 64 kHz and then do a 64 point FFT and throw away the upper 31 values. Then you will be able to see every amplitude (and phase) for every kHz, so 1 kHz, 2 khz .... and up to 32 kHz. With 10 drones then one can make a beeping sound at 20 kHz, another at 21 kHz, another at 22 kHz and etc.
Another simple setup would be to use a Goertzel filter for every channel, this would be easier to implement and more efficient to execute on whatever µC you'd use. The basic equation you'd use would be
G = x + wG where G and w are complex and x is your sampled voltage of the microphone. w would be equal to the rotational frequency. The magnitude of G would increase as a particular drone would come closer to the hula-hop, and then decrease as it passed. Look in the link above for more info about the value for w. Keep in mind that the magnitude of w should be slightly less than 1. Then you'd use another G and another w for another channel for some other drone. Very easy to set up.
Problems that could arise from this audible solution is the Doppler effect. In other words, the frequency of the beeps will shift as the drones move towards and away from the microphones. This means that their bins in the FFT or Goertzel filter will seep through to each other. But I don't think it will be a major problem.