View unanswered posts | View active topics It is currently Sun Dec 17, 2017 7:45 am






Reply to topic  [ 1 post ] 
Help please! Competition today! 
Author Message
Rookie

Joined: Tue Feb 11, 2014 3:15 pm
Posts: 3
Location: North Bay, Ontario, Canada
Post Help please! Competition today!
For some strange reason I can't figure out, the robot ignores this code in our program below:

if(vexRT(Btn7U)==1) //ferme le gripper
{
if(SensorValue(Gripperpotent) > gripperpotclose)
motor[grippermotor] = 127;
}
else
motor[grippermotor] = 0;
:?

(This code will be transferred to the competition template once we confirm it works.)

Any suggestions?!?

Thank you!

Code:
#pragma config(I2C_Usage, I2C1, i2cSensors)
#pragma config(Sensor, in1,    Gripperpotent,  sensorPotentiometer)
#pragma config(Sensor, dgtl5,  encbl,          sensorQuadEncoder)
#pragma config(Sensor, dgtl7,  encbr,          sensorQuadEncoder)
#pragma config(Sensor, dgtl9,  encfl,          sensorQuadEncoder)
#pragma config(Sensor, dgtl11, encfr,          sensorQuadEncoder)
#pragma config(Sensor, I2C_1,  ,               sensorQuadEncoderOnI2CPort,    , AutoAssign )
#pragma config(Sensor, I2C_2,  ,               sensorQuadEncoderOnI2CPort,    , AutoAssign )
#pragma config(Sensor, I2C_3,  ,               sensorQuadEncoderOnI2CPort,    , AutoAssign )
#pragma config(Sensor, I2C_4,  ,               sensorQuadEncoderOnI2CPort,    , AutoAssign )
#pragma config(Motor,  port1,           backLeft,      tmotorVex393HighSpeed_HBridge, PIDControl, reversed, encoderPort, dgtl5)
#pragma config(Motor,  port2,           frontLeft,     tmotorVex393HighSpeed_MC29, PIDControl, encoderPort, dgtl9)
#pragma config(Motor,  port3,           lifttopright,  tmotorVex393HighSpeed_MC29, PIDControl, encoderPort, I2C_2)
#pragma config(Motor,  port4,           liftbottomright, tmotorVex393HighSpeed_MC29, PIDControl, encoderPort, I2C_1)
#pragma config(Motor,  port5,           grippermotor,  tmotorVex393HighSpeed_MC29, openLoop)
#pragma config(Motor,  port7,           lifttopleft,   tmotorVex393HighSpeed_MC29, PIDControl, reversed, encoderPort, I2C_3)
#pragma config(Motor,  port8,           liftbottomleft, tmotorVex393HighSpeed_MC29, PIDControl, reversed, encoderPort, I2C_4)
#pragma config(Motor,  port9,           frontRight,    tmotorVex393HighSpeed_MC29, PIDControl, reversed, encoderPort, dgtl11)
#pragma config(Motor,  port10,          backRight,     tmotorVex393HighSpeed_HBridge, PIDControl, encoderPort, dgtl7)
//*!!Code automatically generated by 'ROBOTC' configuration wizard               !!*//

task main()
{
   // Variables pour roues
   int X2 = 0, Y1 = 0, X1 = 0, threshold = 15;

   // Variables pour ascenseur et gripper

   int gripperpotclose = 300;
   int gripperpotopen = 2500;



   while(1 == 1)
   {

      // Code pour roues
      if(abs(vexRT[Ch3]) > threshold)
         Y1 = vexRT[Ch3];
      else
         Y1 = 0;
      if(abs(vexRT[Ch4]) > threshold)
         X1 = vexRT[Ch4];
      else
         X1 = 0;
      if(abs(vexRT[Ch1]) > threshold)
         X2 = vexRT[Ch1];
      else
         X2 = 0;

      motor[frontRight] = Y1 - X2 - X1;
      motor[backRight] =  Y1 - X2 + X1;
      motor[frontLeft] = Y1 + X2 + X1;
      motor[backLeft] =  Y1 + X2 - X1;


      resetMotorEncoder(lifttopright);
      resetMotorEncoder(liftbottomright);
      resetMotorEncoder(lifttopleft);
      resetMotorEncoder(liftbottomleft);

      // Code pour lancer l'objet bouton 6U
      if(vexRT[Btn6U] == 1)
      {
         motor(lifttopright) = 127;
         motor(liftbottomright) = 127;
         motor(lifttopleft) = 127;
         motor(liftbottomleft) = 127;

         if(getMotorEncoder(lifttopright)>200)
         {
            if(SensorValue(Gripperpotent) < gripperpotopen)
            {
               motor[grippermotor] = -127;
            }
         }
         else motor[grippermotor] = 0;
      }
      else if(getMotorEncoder(lifttopright)>5)
      {
         motor(lifttopright) = -80;
         motor(liftbottomright) = -80;
         motor(lifttopleft) = -80;
         motor(liftbottomleft) = -80;
      }
      else
      {
         motor(lifttopright) = 0;
         motor(liftbottomright) = 0;
         motor(lifttopleft) = 0;
         motor(liftbottomleft) = 0;
      }

                // Controle manuel du gripper avec les boutons 8D (ferme) et 7D (ouvre)

      if(vexRT(Btn7U)==1) //ferme le gripper
      {
         if(SensorValue(Gripperpotent) > gripperpotclose)
            motor[grippermotor] = 127;
      }
      else
         motor[grippermotor] = 0;

      if(vexRT(Btn7D)==1) //ouvre le gripper
      {
         if(SensorValue(Gripperpotent) < gripperpotopen)
            motor[grippermotor] = -127;
      }
      else
         motor[grippermotor] = 0;

      // Code pour lever l'ascenseur Bouton 5U
      if(vexRT[Btn5U] == 1)
      {
         motor(lifttopright) = 90;
         motor(liftbottomright) = 90;
         motor(lifttopleft) = 90;
         motor(liftbottomleft) = 90;
      }

      if(vexRT[Btn5D] == 1)
      {
         motor(lifttopright) = -75;
         motor(liftbottomright) = -75;
         motor(lifttopleft) = -75;
         motor(liftbottomleft) = -75;
      }

      wait1Msec(20);   // ralentir le cycle à 50 Hz (0,02 secondes par cycle)
   }
}


_________________
Dan Orr
Team 5533 Coach
École secondaire publique Odyssée
North Bay, Ontario


Sat Jan 21, 2017 6:50 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 1 post ] 

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  



Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.