Line Follower

Line Follower/Maze Solver Overview
In an effort to kickstart the number of line following robots in Ottawa, a small highly capable fast line follower design has been undertaken. The intent is to provide a complete hardware design with software libraries.

- Four variants under development: one based on the PIC18F25K22 (programmable in C, JAL or basic) called the LineORE MK2A, one based on the PICAXE 28X2 called the LineORE MK2P, one based on the PIC18F4550 (not recommended for beginners) called the LineORE MK1, and one Arduino compatible based on the ATmega328 (PCBs awaiting delivery). The focus is on the LineORE MK2A and LineORE MK2P versions, with the AVR version to follow when the hardware design arrives from manufacturing.

This robot is intended to compete in line following and maze solving events at the CNRG Ottawa Regional games on May 14th, 2011. The rules for these events can be found here : Line Follower Rules, Line Follower Race Rules and Line Maze Rules

LineORE MK2A : PIC18F25K22 Variant

 * Uses Microchip PIC18F25K22, supported with either Microchip C18, JAL, as well as the free Amicus18 basic compiler
 * 8 line sensors on the front, covering 98.6mm side to side
 * Dual 1A h-bridges
 * on-board USB port for communications and 1S LiPo battery charging
 * 2 user LEDs, a speaker and a user programmable button
 * IR LED power control
 * an expansion header with single digital I/O, intended for RF debug link
 * a second expansion header with 1 digital I/O and 1 analog/digital I/O
 * 10cm x 10cm size, wheels mounted 2/3rds of the way back from the front of the robot to speed line detection

Hardware Design Files
The hardware design of this robot is freely available under a public domain license.

PIC Schematic in PDF PIC Eagle Schematic PIC Eagle Board

Hardware Errata : MCLR signal must be disconnected from FT232R

Support Documentation and Software
Example C code and libraries for MPLAB and C18 are provided below, as well as documentation for the libraries. These libraries are freely available under a public domain license.

Software Documentation .DOC Software Documentation .PDF MPLAB Project and LineORE source libraries DS30Loader Bootloader Application

Getting Started
Getting started with the C18 C compiler : LineORE MK2A C18

Getting started with JAL : LineORE MK2A JAL

LineORE MK2A Pictures
PCB Top Render



PCB Bottom Render



Robot Front View



Robot Left Side View



Robot Right Side View



Robot Back View



Robot Bottom View




 * PIC18F25K22 processors, MCP1825 regulators and MCP73831 LiPo chargers donated by Microchip [[File:MICROCHIP.gif]]

LineORE MK2P : PICAXE28X2 Variant

 * Supports PICAXE28X2 3V and PICAXE28X2 2nd generation devices
 * 8 line sensors on the front, covering 98.6mm side to side
 * Dual 1A h-bridges
 * on-board USB port for communications and 1S LiPo battery charging
 * 2 user LEDs, a speaker and a user programmable button
 * IR LED power control
 * an expansion header with single digital I/O, intended for RF debug link
 * 10cm x 10cm size, wheels mounted 2/3rds of the way back from the front of the robot to speed line detection

Hardware Design Files
The hardware design of this robot is freely available under a public domain license.

PIC Schematic in PDF PIC Eagle Schematic PIC Eagle Board

LineORE MK2P Pictures
PCB Top



Robot Front View



Robot Side View



Robot Back View



Robot Side View



Robot Bottom View




 * PICAXE 28X2 processors donated by Revolution Education Ltd.
 * MCP1825 regulators and MCP73831 LiPo chargers donated by Microchip [[File:MICROCHIP.gif]]

LineORE MK1 : PIC18F4550 Variant

 * 12 line sensors, 8 on front and 4 on the back, covering 98.6mm side to side, 137mm corner to corner
 * Dual 1A h-bridges
 * 2 user LEDs, a speaker and a user programmable button
 * IR LED power control
 * 2 wheel encoders
 * on-board USB port for communications and 1S LiPo battery charging
 * an expansion header with hardware UART and two digital I/O
 * 10cm x 10cm size, wheels mounted in center of robot

Hardware Design Files
The hardware design of this robot is freely available under a public domain license.

PIC Schematic in PDF PIC Eagle Schematic PIC Eagle Board

Hardware Errata : Reset button does not function as intended.

PCB Top



PCB Bottom



Robot Front View



Robot Side View 1



Robot Back View



Robot Side View 2



Robot Bottom View




 * PIC18F4550 processors, MCP1650 regulators and MCP73831 LiPo chargers donated by Microchip [[File:MICROCHIP.gif]]

Line-Duino : AVR AtMega328 Variant

 * Uses Atmel AtMega328, supported with either WinAVR/GCC or the Arduino toolchain
 * 8 line sensors on the front, covering 98.6mm side to side
 * Dual 1A h-bridges
 * on-board USB port for communications and loading Arduino sketches
 * ICSP connector for programming the AtMega328
 * 3 user LEDs, a speaker and a user programmable button
 * IR LED power control
 * 10cm x 10cm size, wheels mounted 2/3rds of the way back from the front of the robot to speed line detection

Hardware Design Files
The hardware design of this robot is freely available under a public domain license.

AVR Schematic in PDF format AVR Eagle Schematic and Board zipped

Support Documentation and Software
To be updated as developed