Page 1 of 1

Possible control for holonomic drive robot with PSP-NX?

Posted: 25 Oct 2010, 09:46
by sqiddster
Recently, I have been pondering about holonomic drive robots.
While they are very practical, controlling them remotely is not easy, and often ends up acting like any other driving platform.
I have come up with an idea... why not use the PSP-NX? What I thought is that one analog stick can use one axis for rotation of the bot, but the other, and this is interesting, is to use both axis to directly control the direction of the robot's movement without rotating.... I.e when the analog stick is pointing northwest, the bot moves northwest.

Oh my, I just had another idea... A compass sensor could be used to ensure that the robot is always moving in relation to the user... as in, if the robot has rotated any number of degress, if the analog stick is pointing northwest, the robot could still point northwest in relation to the user. Perhaps this option could be turned on/off.

The way I see it, this looks like some pretty hardcore programming... but the results could be pretty cool...
For me this opens a few possibilites about such robots!

Hmm, as I am Australian, maybe now would be a time to invest in some Rotacasters?

Any thoughts?

Re: Possible control for holonomic drive robot with PSP-NX?

Posted: 26 Oct 2010, 17:58
by mightor
Hey sqiddster,

I've been building holonomic robots for a little while now. Coming up with a nice remote control that would show off the capabilities of a holonomic platform would be quite a challenge.

I use a gyroscope on my own holonomic robot and it works very nicely. I do have plans to combine using the compass and the gyro to produce more reliable heading figures using Aswin's code (just search the forums for it).

The Rotacaster wheels are great. I was lucky to receive 4 prototypes to play with and I am really impressed with their quality and playability. I would definitely recommend them to anyone who wants to get started with holonomic robots. They should be available within the next few weeks, I believe. It'll be the best money you'll spend :)

- Xander

Re: Possible control for holonomic drive robot with PSP-NX?

Posted: 26 Oct 2010, 19:42
by sqiddster
Thanks Xander...
Yes, I think I will be purchasing some rotacasters when they become available, any ideas on pricing?

How exactly do you use a gyro, for what purpose is it used? surely you don't inegrate it, as I tried that, and it failed for me (huge amounts of drift)...

Re: Possible control for holonomic drive robot with PSP-NX?

Posted: 28 Oct 2010, 03:33
by hassenplug
mightor wrote:I've been building holonomic robots for a little while now. Coming up with a nice remote control that would show off the capabilities of a holonomic platform would be quite a challenge.
I've messed around with a couple options. One controller had three levers, which had one controlling each motor.

Another used an acceleration sensor to measure the tilt of the controller (wii style) and a compass. The robot also has a compass, and the robot will turn to face the same direction as the controller.

Another option would be a joystick controller to control X/Y movement, and an additional lever to control rotation (clockwise/counterclockwise).

Just some ideas.

Steve

Re: Possible control for holonomic drive robot with PSP-NX?

Posted: 28 Oct 2010, 10:43
by mightor
I am not sure on pricing yet, I believe it'll be around $16 (either US or AUS, not sure).

I use the following code (ROBOTC) to keep track of my heading:

Code: Select all

// Task to keep track of the current heading using the HT Gyro
task getHeading () {
  float delTime = 0;
  float prevHeading = 0;
  float curRate = 0;

  PlaySound(soundBeepBeep);
  while (true) {
    time1[T1] = 0;
    curRate = gyro_reading;
    if (abs(curRate) > 3) {
      prevHeading = currHeading;
      currHeading = prevHeading + curRate * delTime;
      if (currHeading > 360) currHeading -= 360;
      else if (currHeading < 0) currHeading += 360;
    }
    wait1Msec(5);
    delTime = ((float)time1[T1]) / 1000;
  }
}
This actually works very well. The only thing you need to make sure of is to power the motors while calibrating the gyro (even assigning a power level of 0 and "brake" will work).

- Xander