Error: Failed to load processor TicketBox
No macro or processor named 'TicketBox' found

Line and Wall following robot

Distance outer wheel has to travel more than the inner wheel:

Distance between wheels: r
Desired angle: a
Dist = a*rπ / 180

To build a robot that can enter the Stavanger Robot Society competition December 14th.

Due to late arrival in the competition. I have focused on using some simple components:

Goals in the competition

  • Complete two laps of a circuit where half the circuit consists of line following, and the other half consists of a simple maze. This is to be completed without user interaction and without touching any walls. Speed is beneficial.
  • Be able to reproduce a "drawing" of the circuit afterwards.

Current Status

24.06.2009

Gotten some new motors with gearbox and encoders. Entirely new concept.

New motorsNew motors New motorsNew motors

Features:

Pinout for the motor ribbons:

NCMotor+ (RED)
+5VEnc ChB
GNDEnc ChA
Motor-NC

Encoders seem to produce approx 1260 pulses pr revolution of the wheel

13.05.2009

Might be too much torque to have the motors arranged as they were, changed layout:

Layout of big motorsLayout of big motors Layout of big motorsLayout of big motors Layout of big motorsLayout of big motors Layout of big motorsLayout of big motors

Features:

  • Two 540 Motors
  • 1-3 Synced wheel shafts on each side (only one side and two "enabled" shafts in the pictures)
  • Most likely the fastest Lego Robot ever

Got it running, using ESC from the E-Savage, turns out that even at the lowest possible speed i can run those motors at, the torque and speed is insane. I can probably get it to hold and not fall apart, but i feel it might not be worth it...

11.05.2009

Got idea for a new platform using motors from E-Savage

Prototype platform:

New platform for differential driveNew platform for differential drive New platform for differential driveNew platform for differential drive New platform for differential driveNew platform for differential drive

18.11.2008

I've figured out that both sensors are working fine, but that they were affected by reflections from the lego. I have moved the sensor board so that this is no longer a problem.

Tried the robot on a track today, and a few issues came up:

  • #29 Differential is causing problems since the robot has no suspension.
  • #30 The robot does not hold the turn long enough. So for medium turns, it will start to turn in, then straighten up too early.
  • #30 The robot does not handle sharp turns at all

On a positive note:

  • Both sensors work about the same now.
  • The robot handles the slow turns.

12.11.2008

  • Rolling chassis
  • Problem with one phototransistor
  • No ultrasound yet

11.11.2008

  • Have a Rolling chassis with most of the electronics on board.
  • Some minor problems with chassis (position of sensors, and wheel grinding on chassis)
  • No internal powersource yet
  • No ultrasound yet

Mechanical

Mechanical construction is done in Lego, using a servo for steering and a modified servo as motor. I have a "car like" steering box, and have decided against using differential steering.

Electronics

The robot is build around an Arduino board. Powerplant will be either a 7.4V NiMh battery from a RC truck, or a 11.1V LiPo battery from a RC helicopter. Most likely I will use the NiMh battery due to no need for low voltage warning.

Sensors

  • Optical Detectors / Phototransistor: QRD1114
  • Ultrasonic Range Finders: Maxbotix LV-EZ0
  • Potmeters for steering trim and steering scaling

Schematics

Incomplete

Schematics for the !PhotoSensor boardSchematics for the PhotoSensor board

Arduino Source Code

espen_lightrobot.pde

Pictures

Picture of the Lego robotPicture of the Lego robot The Lego differential should be good enough for this purposeThe Lego differential should be good enough for this purpose Servo modified for endless rotation is used as motor for the robot.Servo modified for endless rotation is used as motor for the robot.

All pictures

Tickets

#39
Lookuptable for brakeovershot
#38
Make motors brake if setpoint=0 and actual speed != 0
#37
Create a sequence system
#36
Regulator doesnt work untill a certain speed
#35
Tune Motor::regulate
#34
Make calulate rpm in Motor class work on short periods (ie 10 ms)
#33
Verify RPM calculations for reverse running of the motors in Motor class
#32
Create lookup system for Motor class
#31
Move arduino sketchbooks under arduino folder on ubuntu
#30
Robot does not handle turns well
#29
Differential is causing problems
#28
One of the Photo Transistors does not seem to function properly
#26
Move Light Sensor up some, or increase ride height in front
#25
Add Schematics
#24
Add pictures
#23
Software Tweaks
#22
Modify software for ultrasonic sensors
#21
Wire in ultrasounic sensors
#20
Make daughterboard for Potmeters and Sensor input
#19
Dummy Ticket