This demonstration shows how to run the Geekbot Line Follower, which autonomously follows a path... forever (or until the battery runs out, you know, whichever comes first).Contents:
Project Parts List:
RobotGeek Geekbot Kit
Everything you'll need to get started with this demo is included in the RobotGeek Geekbot Kit! We'll be using the Sparkfun Line Follower Array on the standard Geekbot Base.
Assemble your Geekbot
Geekbot V3 Assembly Guide
Follow and complete the Geekbot V3 Assembly Guide, making sure to follow the directions for mounting the Line Follower Array. If you haven't already done so, go through the Geekduino Getting Started Guide and the Geekbot Getting Started Guide.
Download the Sketch
A .zip file with all of the Geekbot Sketches can be found here.
If you haven't already done so, download and install the RobotGeek Libraries and Tools here.
Unzip the file and you will have a folder called
We recommend that you find the
RobotGeek Sketches folder in your Arduino user folder and put the
geekbot-master in there. The rest of this guide will assume you've placed your sketches in the following folder.
Arduino -> RobotGeek Sketches -> geekbot-master
This will be the same 'Arduino' folder you put your libraries and robotgeek tools in, and NOT the folder where the Arduino application is.
File -> Sketchbook -> RobotGeek Sketches -> geekbot-master -> Geekbot_V3 -> geekbotV3LineFollowerand upload the code to your Geekduino.
Wiring for IR control of the Geekbot is as follows:
|Device||Sensor Shield Port|
Right Turn Signal
Left Turn Signal
|Wire Color (from I2C port)||Line Follower Array Pin|
You'll need to place a black line on light flooring, or a white line on dark flooring for the geekbot to follow. A good test pattern is a circle or infinity ∞ line. If you have a light line on dark flooring, you'll have to set invert bits in the code. Check out lines 162-165:
//Default: dark on light mySensorBar.clearInvertBits(); //Other option: light line on dark //mySensorBar.setInvertBits();For a dark line on light floor, leave
mySensorBar.clearInvertBits();uncommented. For a light line on dark floor, //comment out
Once you have the sensor bar configured, all you have to do is turn on the geekbot, set it on the line, and watch it go! You can adjust the trim on the fly with the Rotation Knob. If your geekbot is having trouble finding the line, you can adjust the sensitivity of the Line Following Array by turning the blue knob on it.
PC Control These demos and projects allow the robot to be controlled via a computer.
ArbotiX Commander Control - These demos and projects control the Robot using the ArbotiX Commander, the handheld Arduino based remote control.
Direct Control - These demos and projects control the Robot directly from sensors connected directly to the Robot's control board.
Pose Control - These demos and projects allow you to create and playback a sequence of poses.
Serial Control - These demos and projects control the robot using a serial packet protocol.
Standalone - These demos and projects are deisgned to let your robot function without a computer or additional microcontroller.
Wireless Control - These demos and projects allow you to control the robot wirelessly - usually by replacing the Serial Connection with XBee modules.
Reference - These articles have technical details regarding the control and operation of the robot.
More info here