| | Re: FindLight
|
|
(...) Looks like you're setting maxlight = SENSOR_2, then testing if (SENSOR_2 > maxlight), which will rarely (if ever) be true, because the value of SENSOR_2 is unlikely to change in such a short time. I think the first maxlight = SENSOR_2 (...) (18 years ago, 25-Feb-07, to lugnet.robotics)
|
|
| | Re: FindLight
|
|
Thanks. I thought setting maxlight before the 'if' statement would be enough, but moving it closer to the front (before the 'while' statement') did the trick. The bit after the while loop still gives me pain though. I've changed it a bit to be able (...) (18 years ago, 25-Feb-07, to lugnet.robotics)
|
|
| | Re: FindLight
|
|
(...) //findlight.nqc #define A OUT_A #define C OUT_C int maxlight; int light; int time = 0; #define TURNTIME 500; //change to accomodate 1 turn #define ROTATE_CLOCKWISE OnFwd(A); OnRev(C); #define ROTATE_COUNTERCLOCKWISE OnFwd(C); OnRev(A); task (...) (18 years ago, 26-Feb-07, to lugnet.robotics)
|
|
| | Re: FindLight
|
|
(...) I accidentally put a semicolon on the #define line above which is wrong. The program I posted will not compile unless the semicolon is removed. My apologies. It's what I get for posting late at night. John Hansen (18 years ago, 26-Feb-07, to lugnet.robotics)
|
|
| | Re: FindLight
|
|
Thank you for your well commented adaptation. I'm still experiencing the same problem even though the values for the different variables as shown by 'watch the brick' check out. The problem is in a different place. I wrongly assumed wait 'ticks' and (...) (18 years ago, 26-Feb-07, to lugnet.robotics)
|
|
| | Re: FindLight
|
|
(...) Use FastTimer instead of Timer for 10ms resolution. I should have remembered that last night. John Hansen (18 years ago, 27-Feb-07, to lugnet.robotics)
|