
Page 207
int seek_enlightenment(int argc, char
∗∗
argv) {
int baseline, current, loop_count, result;
seek_command = COMMAND_NONE;
// Get a baseline.
baseline = process_light(SENSOR_2);
loop_count = 0;
while(1) {
msleep(50); // Slow things down a little.
// Every so often, increase the baseline.
if (++loop_count == 5) {
if (baseline < 100) b+;
loop_count = 0;
}
current = process_light(SENSOR_2);
lcd_int(current
∗
100 + baseline);
lcd_refresh();
// If the current value is somewhat less than the baseline…
if (current < (baseline - FUDGE)) {
// Set the baseline from the current value.
baseline = current;
// Search for something better.
if (sys_time % 2 == 0) seek_command = COMMAND_LEFT;
else seek_command = COMMAND_RIGHT;
result = wait_for_better(baseline, 1000);
if (result == -1) {
// If that timed out, search back the other direction.
if (seek_command == COMMAND_LEFT) seek_command = COMMAND_RIGHT;
else if (seek_command == COMMAND_RIGHT) seek_command = COMMAND_LEFT;
result = wait_for_better(baseline, 2000);
if (result != -1) baseline = result;
// If there's nothing better, bail.
}
// Set the new baseline.
else baseline = result;
}
// Relinquish control.
seek_command = COMMAND_NONE;
}
return 0;
}
int cruise_command;
int cruise(int argc, char
∗∗
argv) {
cruise_command = COMMAND_FORWARD;
while (1) sleep(1);
return 0;
}
Содержание MINDSTORMS Robots
Страница 22: ...Page 18 The back tread wheels are anchored to the shafts with the 16t gears ...
Страница 23: ...Page 19 Page 20 Next start building support for the drive motors ...
Страница 25: ...Page 22 Attach the motor wires to output A and output C Next build the platform for the front bumpers ...
Страница 26: ...Page 23 The touch sensors are attached only by the shaft that runs through them ...
Страница 41: ...Page 41 ...
Страница 43: ...Next build the support for the light sensor ...
Страница 80: ...Page 85 Make sure the bump on the long pin is up against the 4u beam ...
Страница 82: ......
Страница 84: ...Page 89 ...
Страница 85: ...Step 14 is similar to Step 11 take a deep breath and go slowly ...
Страница 86: ...Page 90 Grabber Arm In Step 17 the half bushings go between the center block and the cams pear shaped pieces ...
Страница 87: ...Page 91 ...
Страница 88: ...Page 92 Make sure that the two sides are at the same angle They should mirror each other ...
Страница 89: ...Page 93 Page 94 ...
Страница 90: ...Structural Support Page 95 ...
Страница 91: ...Idler Wheel Page 96 ...
Страница 92: ...Page 97 Drive Motor ...
Страница 93: ...While you re putting the motor in hold on to the worm gear so it doesn t slip off Page 98 ...
Страница 94: ...Grabber Arm Motor ...
Страница 95: ...Page 99 ...
Страница 96: ...Page 100 RCX Attach the RCX on both sides as shown Page 101 ...
Страница 158: ......
Страница 159: ...Page 175 The 16t gears are nestled inside the tread wheels ...
Страница 160: ...Page 176 ...
Страница 161: ...Page 177 Attach the motors to output A and output C as shown Page 178 ...
Страница 162: ...The light sensor which is mounted on the bumper is attached to input 2 The touch sensor goes on input 1 Page 179 ...