示例#1
0
文件: mbqRedBot.cpp 项目: Eih3/v0.83
void RedBot::rotate(float power)
{
	if (power < 0)
	{
		//Positive angle (counterclockwise):
		motor0(-power); //Left
		motor1(power); //Right
	}
	else
	{
		//Negative angle (clockwise):
		motor0(power); //Left
		motor1(-power); //Right
	}
}
示例#2
0
文件: main.c 项目: robopt/RocketMan
//////////////////////////
// Forward Proportional //
// Wall follow          //
//////////////////////////
void forwardP() {
  //error = gWallCurrent - s5avg; //instant error e
  error = s4avg-s5avg;
  
  P = Kp*error;
  D = Kd*(error-lasterror);
  
  output=P+D;
  
  lasterror=error;
  
  routput = (int)((BASE)+(output));
  loutput = (int)((BASE)-(output));
  
  // saturation logic
	if(routput > MAX)  // no motor values > 255 or < 0
		routput = MAX;
	  else if(routput <= MIN)
		  routput = MIN;
	if(loutput > MAX)  // no motor values > 255 or < 0
		loutput = MAX;
	  else if(loutput <= MIN)
		  loutput = MIN;

	  
	if (routput == MIN) {
    motor1(BASE); //Left motor 
    PTT_PTT3 = 1; //Motor L1
    PTT_PTT5 = 1; //Motor L2
	} else {
    motor1(routput); //Left motor 
    PTT_PTT3 = 0; //Motor L1
    PTT_PTT5 = 1; //Motor L2
	}
	if (loutput == MIN) {
    motor0(BASE); //Right motor 
    PTT_PTT4 = 1; //Motor R1
    PTT_PTT6 = 1; //Motor R2
	} else {
    motor0(loutput); //Right motor
    PTT_PTT4 = 0; //Motor R1
    PTT_PTT6 = 1; //Motor R2
	}
  
  //pwm

}
示例#3
0
文件: main.c 项目: robopt/RocketMan
void backSplit(int rspeed, int lspeed){
      motor0(rspeed);
      motor1(lspeed);
      PTT_PTT3 = 1; //Motor L1
      PTT_PTT5 = 0; //Motor L2
      PTT_PTT4 = 1; //Motor R1
      PTT_PTT6 = 0; //Motor R2
}
示例#4
0
文件: main.c 项目: robopt/RocketMan
void back(int speed){
      motor0(speed);
      motor1(speed);
      PTT_PTT3 = 1; //Motor L1
      PTT_PTT5 = 0; //Motor L2
      PTT_PTT4 = 1; //Motor R1
      PTT_PTT6 = 0; //Motor R2
}
示例#5
0
文件: main.c 项目: robopt/RocketMan
void leftManual(int rspeed, int lspeed){    
      motor0(rspeed);
      motor1(lspeed);
      PTT_PTT3 = 1; //Motor L1
      PTT_PTT5 = 0; //Motor L2
      PTT_PTT4 = 0; //Motor R1
      PTT_PTT6 = 1; //Motor R2
}
示例#6
0
文件: main.c 项目: robopt/RocketMan
void forward(int speed) { 
      motor0(speed);
      motor1(speed);
      PTT_PTT3 = 0; //Motor L1
      PTT_PTT5 = 1; //Motor L2
      PTT_PTT4 = 0; //Motor R1
      PTT_PTT6 = 1; //Motor R2
}
示例#7
0
文件: main.c 项目: robopt/RocketMan
void left(int rspeed){    
      motor0(rspeed);
      motor1(0xFF);
      PTT_PTT3 = 1; //Motor L1
      PTT_PTT5 = 1; //Motor L2
      PTT_PTT4 = 0; //Motor R1
      PTT_PTT6 = 1; //Motor R2
}
示例#8
0
文件: main.c 项目: robopt/RocketMan
//////////////
// Movement //
//////////////
void stop() {
      motor0(0xFF);
      motor1(0xFF);
      PTT_PTT3 = 1; //Motor L1
      PTT_PTT5 = 1; //Motor L2
      PTT_PTT4 = 1; //Motor R1
      PTT_PTT6 = 1; //Motor R2
}
示例#9
0
文件: motor.cpp 项目: phhusson/STpp
int main() {
	HBridgeST motor0(Prop0A, Prop0B, Prop0_PWM, Tim2, 4);

	int v(0);

	while(1) {
		v+=100;
		v%= 1024;
		motor0.setSpeed(v);
		time.msleep(500);
	}
}
示例#10
0
void stop(){
	motor0(127);
	motor1(127);
}
示例#11
0
void move(u08 dir) {
	motor0(dir);
	motor1(dir);
}
示例#12
0
void dumpSuperBall() {
	servo(0, 255);
	motor0(-COLLECTOR_SPEED);
	delayMs(2000);
	motor0(127);
}
示例#13
0
void turnOffCollector()
{
	motor1(127);
	motor0(127);
}
示例#14
0
void turnOnCollector()
{
	motor1(SHOOTER_SPEED);
	delayMs(3000);
	motor0(COLLECTOR_SPEED);
}
示例#15
0
文件: mbqRedBot.cpp 项目: Eih3/v0.83
void RedBot::move(float power)
{
	motor0(power);
	motor1(power);
}
示例#16
0
void set_rgb_led(char r, char g, char b){
  motor0(r);
  motor1(g);
  motor2(b);
}
示例#17
0
文件: mbqRedBot.cpp 项目: Eih3/v0.83
void RedBot::move(float powerLeft, float powerRight)
{
	motor0(powerLeft);
	motor1(powerRight);
}