"Dave" - the Differentially Driven Two Wheeled Robot

Posted on 04/05/2009 by alien
Modified on: 13/09/2018
Introduction
This is an automatic import from our previous community platform. Some things can look imperfect.

If you are the original author, please access your User Control Panel and update it.

I have attached some images of my first robot. It is built around a pololu round chassis, tamiya twin motor gearbox, and tamiya off road wheels along with a ball caster (also made by tamiya). There is a second deck made from some blue HIPS, and it runs off of 4 AAs and a 9v battery. The "brains" are simply an atmega8 and an L293d along with supporting circuitry. I aim to make this into a sumo and line following robot, however I wanted baseline electronics, chassis and control code to start ...


"Dave" - the Differentially Driven Two Wheeled Robot

I have attached some images of my first robot. It is built around a pololu round chassis, tamiya twin motor gearbox, and tamiya off road wheels along with a ball caster (also made by tamiya). There is a second deck made from some blue HIPS, and it runs off of 4 AAs and a 9v battery. The "brains" are simply an atmega8 and an L293d along with supporting circuitry. I aim to make this into a sumo and line following robot, however I wanted baseline electronics, chassis and control code to start with. The control software is written in C along with avr studio and winavr, at the moment it has two modes - autonomous with input via two NO switches, and an I2C interface with a nunchuck for wired remote control. I had originally used a Bit bashed SPI interface with a Dualshock controller, however the extra buttons, code space and I/O pins required for this made switching to the Nunchuck an easy decision. The control algorithms and software structure for this project are very simple at the moment:

 [semi-pseudo code]

Print Select Mode to LCD

If Right Switch && Left Switch are pressed

Wait 2 Seconds

If Right Switch && Left Switch are still pressed

Enter into Mode1

Else enter  Mode2

 

Mode1: (remote control)

Initiate I2C interface with nunchuck

Read relevant analog and button data

Process button data and output to forward, backward and turning motors

Go to Mode 1

 

Mode2: (autonomous)

Go forward

If left switch is pressed && right switch isn't

Turn right

If right switch is pressed && left isnt

Turn left

if right switch && left switch are pressed

Reverse

Go to Mode2

 

I have attached some pictures of the current robot, and I hope to update when I have the line following and edge detection worked out..

 

 

Navigate Around Obstacles, Remote Controlled via Nunchuck

  • Actuators / output devices: Tamiya Twin Motor Gearbox
  • CPU: atMega8
  • Programming language: C (AVR GCC)
  • Target environment: indoor
Flag this post

Thanks for helping to keep our community civil!


Notify staff privately
It's Spam
This post is an advertisement, or vandalism. It is not useful or relevant to the current topic.

You flagged this as spam. Undo flag.Flag Post