So recently my team and I have discovered a problem with our lift. We have a 6 motor 5 bar lift. In order to lift it we have the two left hand side trigger buttons on the front of the remote programmed to be the up and down. For some reason we can go one way without the motors spazzing but when we try and go the other direction the motors start to spazz and its a really rickety lift or decent. We have determined it is not due to weight though because it can either lift fine or descend fine depending on which way we have the motor controllers plugged in at.
Here is the code if anyone thinks this might be the problem.
#pragma config(Motor, port2, right, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port3, left, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port4, rightLift1, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port5, rightLift2, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port6, leftLift1, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port7, leftLift2, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port8, top1, tmotorServoContinuousRotation, openLoop)
#pragma config(Motor, port9, top2, tmotorServoContinuousRotation, openLoop)
//!!Code automatically generated by ‘ROBOTC’ configuration wizard !!//
// Negative cuz our motors are flipped.
int speed = -126;
task main()
{
while (true) {
motor[left] = vexRT[Ch3];
motor[right] = vexRT[Ch2];
if (vexRT[Btn5U]) {
motor[rightLift1] = speed;
motor[rightLift2] = speed;
motor[leftLift1] = speed;
motor[leftLift2] = speed;
}
else {
motor[rightLift1] = 0;
motor[rightLift2] = 0;
motor[leftLift1] = 0;
motor[leftLift2] = 0;
}
if (vexRT[Btn5D]) {
motor[rightLift1] = -speed;
motor[rightLift2] = -speed;
motor[leftLift1] = -speed;
motor[leftLift2] = -speed;
}
else {
motor[rightLift1] = 0;
motor[rightLift2] = 0;
motor[leftLift1] = 0;
motor[leftLift2] = 0;
}
if (vexRT[Btn6U]) {
motor[top1] = speed;
motor[top2] = speed;
}
else {
motor[top1] = 0;
motor[top2] = 0;
}
if (vexRT[Btn6D]) {
motor[top1] = -speed;
motor[top2] = -speed;
}
else {
motor[top1] = 0;
motor[top2] = 0;
}
}
}