Um ein Zeit zu messen, muß man ja einmal bei "0" anfangen und dann bei irgendeinem Wert enden.
Dann hat man die Zeit von 0 bis "irgendein wert".

Entweder will man wissen wie lange ein Vorgang dauert (z.B. das runterollen der Rampe).
Oder man will wissen wie schnell ein Opbejtk ist (wie lange es braucht um eine bekannte Entfernung zurückzulegen).

Dafür bräufte man dann zwei Lichtschranken.
eine die per interrupt einen Timer startet.
Und eine zweite die per Interrupt den erreichten Timerwert ausließt.

Also musst Du dich mit Timern auseinander setzen und die Endzeit von der Startzeit abziehen um eine zeit zu erhalten.

Man kann einen freilaufenden Timer nutzen "millis()/micros()" oder einen Timer gezielt konfigurieren.
Bsp.:
http://playground.arduino.cc/Code/Timer1

Erarbeite Deinen Programmablauf doch erst mal als Text damit wir sehen können über was Du dir schon Gedanken gemacht hast und ob da Fehler drin sind.
Konkrete Arduino Befehle kann man daraus dann ja noch machen.