Light chasing autonomous rover

I started 2 years ago with an autonomous rover that chases light and avoids obstacles. We're now 11 versions further and version 12 is almost ready! Eventually the rover must cruise around without hitting any objects and return to a charging station when the battery runs low. I'll show you the evolution of the rover, starting with version 2 (version 1 was crap)

 

 

 

 

 

 

 

 

Version 2

First version that could drive around with obstacle avoidance in the front.

Version 2

Version 4

- added double suspensions as the robot was getting too heavy
- added a pneumatic system with compressor and a piston that comes out of the bottom for charging purposes (never used)
Version 4

Version 5

- new steering design as version 4 had problems with backlash
- installed a "hood" for easy access to the steering gears
- inserted smaller battery to reduce weight

Version 5

Version 5

Version 6

- Reduced size to make the robot more agile
- Removed the pneumatic system
- Added two LDR's so the robot can chase a light source
- Added some really cool neon lights!

Version 6

Version 9

- New drivetrain design: 4WD to give the robot more torque (and avoid broken gears)
- Still problems with steering: added 2 other microcontrollers to control the steering of the front and back wheels seperately
- The hood is back again for easy access and adjustment of the steering gears 

Version 9

Version 10

- Added a custom made PCB with connections for everything: motors, sensors, I2C, LCD...
- New slimmer 4 wheel design for better agility
- Added 2 overexperienced drivers!

Version 10

Version 11

- Version 10 had still problems with steering and the consequenses of mechanical backlash: added two NXT motors with built-in rotary encoders for more precise controlling of the steering
- Fired the overexperienced drivers due shortage of space

Version 11 

Version 11

Version 12

Version 12 is coming up soon! Total new design with caterpillar tracks as a wheelbased robot isn't agile enough for a living room...

 

 

 

 

 

 

 

 

 

 

 

 

 

Chases light source and avoids obstacles

  • CPU: ATmega 1280
  • Programming language: Arduino
  • Target environment: indoor

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/light-chasing-autonomous-rover

Awesome lego bot. Really

Awesome lego bot. Really nice to see the evolution! Can you post your code as many here would be interested

Also, bring back the overexperienced drivers! They add character! :slight_smile:

I like it! The six wheels

I like it! The six wheels seems a bit ambitious. Have you been able to work out the kinks in steering? I can imagine there would be a lot of wheel slippage when turning, so do you use a differential gear system or any sort of electronic speed regulation for the individual wheels?

Differential vs. Electronic

The first versions had differentials but as the rover kept growing and became heavier the differentials started to slip, break off and so on. So I decided to drive the 4 outer wheels directly with an own motor. As you already pointed out, there would be wheel slippage when turning so I solved that in the software. When making a turn, the outer wheels would drive x% and the inner wheels would drive y%. I didn’t implement this yet in version 11; the video of it is actually a test drive. I noticed that the rover wasn’t agile enough so I needed to build a complete new design with caterpillar tracks (version 12) and I didn’t take the hassle to program the electronic differential.

Version 12 will be a half

Version 12 will be a half the size of version 11, but I’ll see what I can do to rehire the overexperienced drivers :wink: Is there a special tab/page where I can put the code?? (couldn’t find it) It’s more than 600 lines and maybe a bit long to put in an Reply…

Code

I’ve uploaded the code of version 11 in an attachment. (can’t see it anywhere though)

cool looking robot

cool looking robot