Advertisement
Guest User

Untitled

a guest
Feb 8th, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.75 KB | None | 0 0
  1. package com.qualcomm.ftcrobotcontroller.opmodes;
  2.  
  3. import com.qualcomm.robotcore.eventloop.opmode.LinearOpMode;
  4. import com.qualcomm.robotcore.hardware.DcMotor;
  5. import com.qualcomm.robotcore.hardware.GyroSensor;
  6. import com.qualcomm.robotcore.hardware.Servo;
  7. import com.qualcomm.robotcore.util.Range;
  8.  
  9. public class auto3_wait extends LinearOpMode{
  10. //motors for drive train
  11. GyroSensor gsens;
  12. double default_left = -0.3;
  13. double default_right = 0.3;
  14. double motorleft = default_left;
  15. double motorright = default_right;
  16.  
  17. DcMotor motorRF;
  18. DcMotor motorRB;
  19. DcMotor motorLF;
  20. DcMotor motorLB;
  21.  
  22. private float servo_rate = 0.5f;
  23.  
  24. //motors for arm
  25. DcMotor extendArm1;
  26. DcMotor extendArm2;
  27. DcMotor retractArm;
  28. DcMotor raiseArm;
  29.  
  30. //servos for other shit
  31. Servo boxRotateServo;
  32. Servo putterServo;
  33. Servo trapdoorServo;
  34. Servo sweeperServo;
  35. Servo putterServo2;
  36. Servo climberServo;
  37.  
  38. public void preciseSleep(int duration){
  39. long currentTime = System.currentTimeMillis();
  40. long startTime = currentTime;
  41. while(currentTime < (startTime + duration)){
  42. currentTime = System.currentTimeMillis();
  43. }
  44. }
  45.  
  46. static double sweeperVal = 0.5;
  47.  
  48. @Override
  49. public void runOpMode() throws InterruptedException{
  50. motorRF = hardwareMap.dcMotor.get("motorRF");
  51. motorRB = hardwareMap.dcMotor.get("motorRB");
  52. motorLF = hardwareMap.dcMotor.get("motorLF");
  53. motorLB = hardwareMap.dcMotor.get("motorLB");
  54.  
  55. extendArm1 = hardwareMap.dcMotor.get("extend1");
  56. extendArm2 = hardwareMap.dcMotor.get("extend2");
  57.  
  58. raiseArm = hardwareMap.dcMotor.get("raise");
  59. retractArm = hardwareMap.dcMotor.get("retract");
  60.  
  61. boxRotateServo = hardwareMap.servo.get("boxRotate");
  62. sweeperServo = hardwareMap.servo.get("sweeper");
  63. trapdoorServo = hardwareMap.servo.get("trapDoor");
  64. putterServo = hardwareMap.servo.get("putter");
  65. putterServo2 = hardwareMap.servo.get("putter2");
  66. climberServo = hardwareMap.servo.get("climber");
  67.  
  68. gsens = hardwareMap.gyroSensor.get("gyro");
  69. //telemetry.addData("rotation", gsens.getRotation());
  70.  
  71. motorRF.setPower(0.0);
  72. motorRB.setPower(0.0);
  73. motorLF.setPower(0.0);
  74. motorLB.setPower(0.0);
  75. extendArm1.setPower(0.0);
  76. extendArm2.setPower(0.0);
  77. retractArm.setPower(0.0);
  78. raiseArm.setPower(0.0);
  79.  
  80. boxRotateServo.setPosition(0.5);
  81. sweeperServo.setPosition(0.5);
  82. trapdoorServo.setPosition(0.5);
  83. climberServo.setPosition(1);
  84. putterServo.setPosition(1);
  85. putterServo2.setPosition(0);
  86.  
  87. waitForStart();
  88. preciseSleep(15000);
  89.  
  90. motorLB.setPower(default_left);
  91. motorLF.setPower(default_left);
  92. motorRB.setPower(default_right);
  93. motorRF.setPower(default_right);
  94. //Move sweeper backwards continuously
  95. sweeperServo.setPosition(1);
  96. int counter = 0;
  97. while(counter < 1200) {
  98. double delta = (gsens.getRotation() - 595.0);
  99. if (delta > 0.0 && motorright < default_right + 0.1) {
  100. //Turning to the right
  101. motorright = motorright + 0.01;
  102. motorleft = default_left;
  103. } else if (delta < 0.0 && motorLB.getPower() > default_left - 0.1) {
  104. //Turning to the left
  105. motorleft = motorleft - 0.01;
  106. motorright = default_right;
  107. } else {
  108. motorleft = default_left;
  109. motorright = default_right;
  110. }
  111. motorLB.setPower(motorleft);
  112. motorLF.setPower(motorleft);
  113. motorRB.setPower(motorright);
  114. motorRB.setPower(motorright);
  115. counter = counter + 1;
  116. telemetry.addData("rotation", delta);
  117. telemetry.addData("counter", counter);
  118. telemetry.addData("motorleft", motorleft);
  119. telemetry.addData("motorright", motorright);
  120. telemetry.addData("actual_left", motorLB.getPower());
  121. telemetry.addData("actual_right", motorRB.getPower());
  122. telemetry.addData("default_left", default_left);
  123. telemetry.addData("default_right", default_right);
  124. telemetry.addData("rot", gsens.getRotation());
  125. sleep(1);
  126. }
  127. sleep(10);
  128. //Stop moving sweeper
  129. sweeperServo.setPosition(0.5);
  130. climberServo.setPosition(0);
  131. motorLB.setPower(0.0);
  132. motorLF.setPower(0.0);
  133. motorRB.setPower(0.0);
  134. motorRF.setPower(0.0);
  135. telemetry.addData("left_busy", motorLB.getPower());
  136. telemetry.addData("right busy", motorRB.getPower());
  137. preciseSleep(1500);
  138. climberServo.setPosition(1);
  139. }
  140. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement