Junior Botball Challenge
Helpful Links:
- Organized by KISS Institute for Practical Robotics.
- Link firmware downloads.
cut below this line for the student's journal
- Start Chromebook
- Log into Chromebook (with your French username).
- Connect to the Wallaby
- Using WiFi, ideally
- Fall back to a USB, if necessary
- Ping the robot, before connecting to the IDE.
- open a "terminal" with
ctrl + alt + t
(on a Chromebook with a Chrome browser open). - "ping" the Wallaby to see if it responds:
- over wifi,
ping 192.168.125.1
- over usb,
ping 192.168.124.1
- over wifi,
- open a "terminal" with
- Open the IDE, by opening Chrome and browsing to
- over wifi,
192.168.125.1:8888
- over usb,
192.168.124.1:8888
- over wifi,
- project file name
- Create under a NON-default user.
- Contains only lowercase numbers, digits, and dashes.
- No uppercase letters, spaces, underscores, or special characters like exclamation points.
- No abbreviations.
- No grammatical mistakes.
- use
print()
statements liberally- at the top of execution, display the project name. This reduces the chance that someone repeatedly executes the wrong program. For example "tag-your-it" vs "tag-you-are-it".
- at the top of execution, display the robot's starting position on the mat. (Ideally the position of the vertical black lego attached great the front of the robot.) For example, "B, -3".
- at the top of each "chunk" of code, display the chunk's intent. For example, "go straight", "turn left", "raise vertical servo", "close claw", "push cans back"...
- if servos are used, set their starting position at the file's beginning.
- use
print()
statements to isolate the problematic behavior. - check power for laptop & robot.
- check connectivity with ping (see above).
- check the program is saving & compiling correctly.
- servo instructions should be followed by 500+ msec of
msleep()
duration. - check you're on the correct user & program (within the IDE).
- if there are problems with motors/servos
- correct port numbers are specified in the code.
- motors/servos work through the Wallaby test GUI.
- if a program doesn't appear in the Wallaby list:
- check the program is saved & compiled in the IDE.
- check you're looking under the correct user (which may not be
Default User
). - go to home, then return to list (especially for brand-new programs).
-
avoid more then 40% power to wheel motors
(iemotor(0, 45);
is too fast). -
Avoid switching motor directions abruptly. Pad with
print("Pause movement") motor(0, 0) motor(3, 0) msleep(500)
So instead of this jerky code:
print("Move forward.") motor(0, 40) msleep(500) print("Move backward.") motor(0, -40) msleep(500)
Include a pause like:
print("Move forward.") motor(0, 40) msleep(500) print("Pause movement") motor(0, 0) motor(3, 0) msleep(500) print("Move backward.") motor(0, -40) msleep(500)
-
servos arms should be 'aligned' and never hit resistance.
-
wires are tidy, and can't be pinched or wind around axles.
-
an instructor should install & align the servo arms.