5

I am doing a light speed determination experimsmt. Lightspeed is around 3*10^8 m/s. For this, I need to measure time interval between 2 light sensors in nanoseconds, Somewhere about 50ns. Is this possible using the Uno R3? I know the clock is 16MHz only but is the clock irrelevantto the topic? If it is not possible, Some tips would be helpful. Thank you.

Sorry for irrelevant tags. No suitable tags found.

  • You may be able to do much better with other parts having faster timer clocks; a lot of relatively easy to work with ARM chips may push this close to if not over 100 MHz. The ATtiny 25/45/85 have possibility as well, but may need some calibration trickery as the PLL seems only to work with the imprecise internal oscillator. – Chris Stratton Aug 04 '14 at 22:39

1 Answers1

2

At 16MHz, the quickest operation that the cpu can do (a one cycle operation) will take 62.5 nanoseconds (1/(16*10^6) seconds). That means the best resolution you could conceivably have is 62.5 ns chunks. It will take considerably longer than one clock to respond to an outside event though, so making an experiment will be really tough even then.

Maybe you could build an experiment like the Fizeau apparatus where the arduino measured pulses of light that make it back through the slit? Those would be measured in microseconds. The arduino could change the speed of the grooved wheel and maximize the returning pulse width, reading the rpm then gives you the speed of light.

I'll note that since the meter is defined by the speed of light, and the foot defined by the meter, You would not be measuring the speed of light in feet or meters per second; you would be measuring the length of a meter given how long a second is, or vice versa.

BrettFolkins
  • 4,431
  • 1
  • 13
  • 26