MindSensors GlideWheel-M tests

Discussion specific to the intelligent brick, sensors, motors, and more.
Post Reply
inxt-generation
Posts: 290
Joined: 03 Oct 2011, 00:06
Location: Gallifrey
Contact:

MindSensors GlideWheel-M tests

Post by inxt-generation »

MindSensors kindly sent me some GlideWheel-Ms to test. Here are my tests, and their results:


Speed test.

I wanted to see how fast the GlideWheel-M could go before it broke, or started to lose encoder counts. Also how well it handled different motors directly connected to it, as well as PWM. It's probably better explained in the video;



So, it handles most motors pretty well. PF-XL seems to be the best, with RC motor (obviously) doing worst. The GlideWheel-M can easily handle speed exceeding 1000 RPMs, though I don't really see a application that would be using that :wink:

Just some pics of the setup and motors.

Image

Image

Image

Programs are in RobotC.

Code: Select all

task SpeedAdjust();

task main()
{
  nxtDisplayCenteredTextLine(0, "Do you want");
  nxtDisplayCenteredTextLine(1, "PID control?");
  nxtDisplayCenteredTextLine(2, "This will give");
  nxtDisplayCenteredTextLine(3, "speeds like the");
  nxtDisplayCenteredTextLine(4, "MindStorms NXT");
  nxtDisplayCenteredTextLine(5, "Servo Motor.");
  nxtDisplayCenteredTextLine(7, "No.        Yes.");

  while(nNxtButtonPressed == kNoButton);

  if(nNxtButtonPressed == kLeftButton) nMotorPIDSpeedCtrl[motorA] = mtrNoReg;
  else nMotorPIDSpeedCtrl[motorA] = mtrSpeedReg;

  while(nNxtButtonPressed != kNoButton);

  eraseDisplay();

  nxtDisplayCenteredTextLine(7, "DEC         INC");

  StartTask(SpeedAdjust);

  while(true)
  {
    time1[T1] = 0;

    nMotorEncoder[motorA] = 0;

    while(nMotorEncoder[motorA] < 360 && nMotorEncoder[motorA] > -360);

    nxtDisplayCenteredTextLine(2, "Mtr RPM = %d", 60000 / time1[T1]);
    nxtDisplayCenteredTextLine(3, "Mtr RPS = %d", 1000 / time1[T1]);
  }
}

task SpeedAdjust()
{
  int speed = 0;

  while(true)
  {
    if(nNxtButtonPressed == kLeftButton) speed -= 1;
    if(nNxtButtonPressed == kRightButton) speed += 1;

    if(speed > 100) speed = 100;
    if(speed < -100) speed = -100;

    nxtDisplayCenteredTextLine(0, "Mtr speed = %d", speed);
    nxtDisplayCenteredTextLine(1, "Mtr PWM = %d", motorPWMLevel[motorA]);

    motor[motorA] = speed;

    wait1Msec(100);
  }
}

Encoder test.

Not much to this one. Run a NXT motor and PF-XL with the GlideWheel-M for 1000 revolutions, and see how much they drifted.



GlideWheel-M encoder accuracy is equal to, or better than the NXT motor.

Code: Select all

#pragma config(Motor,  motorC,          ,              tmotorNormal, PIDControl, reversed, encoder)
//*!!Code automatically generated by 'ROBOTC' configuration wizard               !!*//

task main()
{
  long MtrBTtlEncdr = 0;
  long MtrCTtlEncdr = 0;

  for(int i = 1; i <= 1000; i++)
  {
    nMotorEncoder[motorB] = 0;
    nMotorEncoder[motorC] = 0;

    nMotorEncoderTarget[motorB] = 360;
    nMotorEncoderTarget[motorC] = 360;

    motor[motorB] = 50;
    motor[motorC] = 50;

    while(nMotorRunState[motorB] != runStateIdle && nMotorRunState[motorC] != runStateIdle);

    motor[motorB] = 0;
    motor[motorC] = 0;

    MtrBTtlEncdr += nMotorEncoder[motorB];
    MtrCTtlEncdr += nMotorEncoder[motorC];

    nxtDisplayCenteredTextLine(2, "NXT Encdr: %d", MtrBTtlEncdr);
    nxtDisplayCenteredTextLine(3, "PF Encdr: %d", MtrCTtlEncdr);
    nxtDisplayCenteredTextLine(5, "Revolutions: %d", i);
  }
}
So, there they are. I could've done better, but I was pressed for time (BrickWorld, cleaning up, etc). I also used these in my BrickWorld 2012 BOTS challenge robot, but that's another post.
A.K.A. NeXT-Generation.
"A kingdom of heaven for RobotC now has recursion!"
jwiger
Posts: 125
Joined: 24 May 2011, 20:41
Location: Where ever the military sends me (currently Central Texas)
Contact:

Re: MindSensors GlideWheel-M tests

Post by jwiger »

Well done!
JimmyJam
"The more you know, the more you know, the less you know."
inxt-generation
Posts: 290
Joined: 03 Oct 2011, 00:06
Location: Gallifrey
Contact:

Re: MindSensors GlideWheel-M tests

Post by inxt-generation »

Thanks! :mrgreen:
A.K.A. NeXT-Generation.
"A kingdom of heaven for RobotC now has recursion!"
Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests