Help measuring distance....
Hi Again..
Need a little help in here... maybe it's a picbasic math question.. it goes: My car has a speed sensor and as I had measured, it pulses 9 times per meter (yes, I pushed the car 2 meters by hands and it counted 18). I would like to calc the distance run, like an odometer. The speed sensor is connected to T0CKI.
-> TMR1 is interrupting every 500ms and the interruption causes TMR0=0. -> This is necessary due to other processes. I would not like to change it. How could I measured the distance in this situation?
Hope you understand my english... :)
Thanks a Lot!
Sylvio
May I suggest using PICXX31
Hi,
I think you should consider using PIC2331/2431/4331 or 4431.
Those PICS have a built-in motion feedback module. I think the "velocity feedback module" will do exactly what you want. Look at the datasheet for more details.
BTW: Downside is that the ADC module is a bit of pain in the ... to use. Since it's not completely integrated with PBP.
J-P
What happened to old days?
WhyNot use a traditional way;
Code:
' 9 Pulses come in in 0ne meter.
' Measure the time it takes for 9 pulses to come in.
' Timer0 is in Counter Mode.
' Timer1 is in Timer Mode.
' Set your prescaler and other TMR settings etc... here.
Start:
TMR1ON = 0 ' Stop TMR1.
TMR1H = 0 ' Clear TMR1.
TMR1L = 0 '....
Speed = 0 ' Speed is a Word variable.
TMR0 = 0 ' Clear TRM0.
WHILE TMR0 = 0 : WEND ' Wait for an incoming Pulse (First pulse does not count).
TMR1ON = 1 ' Start Timer1 Module.
WHILE TMR0 < 9 : WEND ' Count 9 pulses.
TMR1ON = 0 ' Stop Timer1 at 9th Pulse.
Speed.LowByte = TMR1L
Speed.HighByte = TMR1H
' The car took 1Meter in "Speed" mS. Example: 1 Meter in 100mS.
Speed = 60000 / Speed ' Speed = 60,000mS / 100Ms => 600 Meter in One Minute.
Speed = Speed * 60 ' Speed = Speed * 60Mins => 600Meter * 60Mins = 36,000Meter. => 36Km/Hr
LCDOUT $FE,1,"Speed:", dec5 Speed,"Km/Hr"
Goto Start
What happend to the orignal question?
Is it just me or didn't he say he want to measure distance? IE distance, not speed. Yep, I'm sure, he said distance...
I may have misunderstood though....
;-)
/Henrik Olsson.