PDA

View Full Version : Tank Steering With Propeller_Help



briank77479
10-11-2011, 06:57 PM
I'm working on a bot project that uses tank tracks for mobility. Presently, I want to control the bot using a 6-channel RC transmitter/receiver communicating to the propeller board. My goal is to use the right stick of the transmitter to control the tracks. Presently, the basic movement of the bot is moving the stick to either the 12 or 6 o'clock position provides forward or reverse; moving the stick to either the 9 or 3 o'clock position will rotate the bot right or left. What I'd like is to move the stick in say the 1 or 2 o'clock position and have the bot travel in a circle with the radius determined by the stick position; i.e. the closer the stick is to the 12 o'clock position the greater the radius. Also along with direction I'd like the stick position to determine speed; the closer the stick is to center the slower the speed of the bot. My long term goal is to make the bot autonomous and thought this programming exercise would be most helpful in the long term on bot control.
By chance is there a resource available that would guide me on generating a program to accomplish this? If there are examples of something similar that would be a great help.
Any advice would be very much appreciated.

Thanks
Brian

ericball
10-11-2011, 08:03 PM
Not that I've done anything similar, but start with the basics: what are your inputs and what are your outputs?

I suspect your inputs are two values - an X and a Y position of the stick. Your outputs are speed and direction for the two tracks. You then need to work out how to get from one to the other, i.e.
forward: X = 0, Y = +max, left = +max, right = +max
backwards: X = 0, Y = -max, left = -max, right = -max
rotate clockwise: X = +max, Y = 0, left = +max, right = -max
rotate widdershins: X = -max, Y = 0, left = -max, right = +max

Put it on a graph and start figuring out each output for each input.

W9GFO
10-11-2011, 08:23 PM
In it's simplest form;

RightTrack := Yaxis - Xaxis
LeftTrack := Yaxis + Xaxis

Duane Degn
10-11-2011, 10:35 PM
Put it on a graph and start figuring out each output for each input.

I'm curious, what kind of graph has two variables a function of two other variables?

Duane