Log in

View Full Version : Counter class issues


Hypnotoad
28-01-2013, 00:23
I am using the counter class as a makeshift encoder. During testing I had the code print out what value the getPeriod function was getting. The print statement however, was only outputting the correct number when the sensor gave a pulse. While there was no pulse it gave me zeroes. Does anyone have any clue as to why this may be happening?

MagiChau
28-01-2013, 06:19
getPeriod() would be working as intended. If the encoder is not getting a pulse it means the velocity is zero and thus getPeriod is zero.

Here's the actual source code for the method.

public double getPeriod() {
double period;
if (m_counter.readTimerOutput_Stalled()) {
return Double.POSITIVE_INFINITY;
} else {
period = (double) m_counter.readTimerOutput_Period() / (double) m_counter.readTimerOutput_Count();
}
return period / 1.0e6;
}

The counter class will run the getStopped() method if the pulse did not change within x period and set the time to stalled.

public boolean getStopped() {
return m_counter.readTimerOutput_Stalled();
}