Advertisement
Guest User

Untitled

a guest
Mar 20th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.53 KB | None | 0 0
  1. package org.firstinspires.ftc.teamcode;
  2.  
  3. import com.qualcomm.hardware.modernrobotics.ModernRoboticsI2cColorSensor;
  4. import com.qualcomm.hardware.modernrobotics.ModernRoboticsI2cGyro;
  5. import com.qualcomm.robotcore.eventloop.opmode.Autonomous;
  6. import com.qualcomm.robotcore.eventloop.opmode.LinearOpMode;
  7. import com.qualcomm.robotcore.hardware.DcMotor;
  8. import com.qualcomm.robotcore.hardware.HardwareMap;
  9. import com.qualcomm.robotcore.hardware.Servo;
  10. import com.qualcomm.robotcore.util.ElapsedTime;
  11.  
  12. import org.firstinspires.ftc.robotcore.external.ClassFactory;
  13. import org.firstinspires.ftc.robotcore.external.matrices.OpenGLMatrix;
  14. import org.firstinspires.ftc.robotcore.external.navigation.RelicRecoveryVuMark;
  15. import org.firstinspires.ftc.robotcore.external.navigation.VuforiaLocalizer;
  16. import org.firstinspires.ftc.robotcore.external.navigation.VuforiaTrackable;
  17. import org.firstinspires.ftc.robotcore.external.navigation.VuforiaTrackableDefaultListener;
  18. import org.firstinspires.ftc.robotcore.external.navigation.VuforiaTrackables;
  19.  
  20. import java.util.concurrent.TimeUnit;
  21.  
  22.  
  23. @Autonomous(name = "Albastru aproape")
  24. public class Albastru_aproape extends LinearOpMode {
  25. public static class Initialization {
  26.  
  27. public DcMotor Roata_Stanga_Fata = null;
  28. public DcMotor Roata_Stanga_Spate = null;
  29. public DcMotor Roata_Dreapta_Fata = null;
  30. public DcMotor Roata_Dreapta_Spate = null;
  31. public DcMotor Brats = null;
  32. public DcMotor Bratd = null;
  33. HardwareMap hwMap = null;
  34. Servo brat;
  35. Servo bratsecund;
  36. Servo servo_stanga;
  37. Servo servo_dreapta;
  38. ModernRoboticsI2cColorSensor colorSensor;
  39.  
  40. public Initialization() {
  41.  
  42. }
  43.  
  44.  
  45. /* Initialize standard Hardware interfaces */
  46. public void init(HardwareMap ahwMap) {
  47. // Save reference to Hardware map
  48. hwMap = ahwMap;
  49. bratsecund = hwMap.get(Servo.class, "bratsecund");
  50. brat = hwMap.get(Servo.class, "bratmingi");
  51. colorSensor = hwMap.get(ModernRoboticsI2cColorSensor.class, "jewels_sensor");
  52. servo_stanga = hwMap.get(Servo.class, "servostanga");
  53. servo_dreapta = hwMap.get(Servo.class, "servodreapta");
  54. Brats = hwMap.get(DcMotor.class, "brats");
  55. Bratd = hwMap.get(DcMotor.class, "bratd");
  56. Roata_Stanga_Fata = hwMap.get(DcMotor.class, "sf");
  57. Roata_Stanga_Spate = hwMap.get(DcMotor.class, "ss");
  58. Roata_Dreapta_Fata = hwMap.get(DcMotor.class, "df");
  59. Roata_Dreapta_Spate = hwMap.get(DcMotor.class, "ds");
  60.  
  61. Roata_Stanga_Fata.setDirection(DcMotor.Direction.REVERSE);
  62. Roata_Stanga_Spate.setDirection(DcMotor.Direction.REVERSE);
  63. Roata_Dreapta_Fata.setDirection(DcMotor.Direction.FORWARD);
  64. Roata_Dreapta_Spate.setDirection(DcMotor.Direction.FORWARD);
  65.  
  66. Bratd.setDirection(DcMotor.Direction.FORWARD);
  67. Brats.setDirection(DcMotor.Direction.FORWARD);
  68. // Set all motors to zero power
  69. Roata_Stanga_Fata.setPower(0);
  70. Roata_Stanga_Spate.setPower(0);
  71. Roata_Dreapta_Fata.setPower(0);
  72. Roata_Dreapta_Spate.setPower(0);
  73. }
  74. }
  75.  
  76. Initialization robot = new Initialization();
  77. ModernRoboticsI2cGyro gyro = null;
  78.  
  79. static final double COUNTS_PER_MOTOR_REV = 1440;
  80. static final double WHEEL_DIAMETER_INCHES = 10.16;
  81. static final double COUNTS_PER_CM = COUNTS_PER_MOTOR_REV /
  82. (WHEEL_DIAMETER_INCHES * 3.1415);
  83.  
  84.  
  85. @Override
  86. public void runOpMode() throws InterruptedException {
  87.  
  88. ElapsedTime runtime = new ElapsedTime();
  89. robot.init(hardwareMap);
  90. gyro = (ModernRoboticsI2cGyro) hardwareMap.gyroSensor.get("gyro");
  91.  
  92. telemetry.addData(">", "Giroscopul se calibreaza");
  93. telemetry.update();
  94.  
  95. gyro.calibrate();
  96. gyro.resetZAxisIntegrator();
  97.  
  98. while (!isStopRequested() && gyro.isCalibrating()) {
  99. sleep(50);
  100. idle();
  101. }
  102.  
  103. telemetry.addData(">", "Robot Pregatit.");
  104. telemetry.update();
  105.  
  106. robot.colorSensor.enableLed(true);
  107. robot.brat.setPosition(0.75);
  108. robot.bratsecund.setPosition(1);
  109. waitForStart();
  110. runtime.reset();
  111. robot.servo_dreapta.setPosition(0.42);
  112. robot.servo_stanga.setPosition(0.58);
  113.  
  114. int col = ceva();
  115. //int z=gyro.getIntegratedZValue();
  116. brat_mingi();
  117. if (col == 0) {
  118. Drive(0.2, 81);
  119. } else if (col == 1) {
  120. Drive(0.2, 100);
  121. } else if (col == 2) {
  122. Drive(0.2, 119);
  123. }
  124. Rotire_dreapta(0.175, 90);
  125. Roti_verzi();
  126. Drive(-0.2, 15);
  127. Plasare_cub();
  128. Stop();
  129. }
  130.  
  131. public void Corectare_beta(double speed, double z) {
  132. while (opModeIsActive() && gyro.getHeading() != z) {
  133. if (gyro.getHeading() < z)
  134. Dreapta(speed);
  135. if (gyro.getHeading() > z)
  136. Stanga(speed);
  137. if (gyro.getHeading() == z)
  138. stop();
  139. }
  140. }
  141.  
  142. public void Run(double speed) {
  143. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  144. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  145. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  146. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  147. robot.Roata_Stanga_Fata.setPower(speed);
  148. robot.Roata_Stanga_Spate.setPower(speed);
  149. robot.Roata_Dreapta_Spate.setPower(speed);
  150. robot.Roata_Dreapta_Fata.setPower(speed);
  151. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  152. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  153. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  154. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  155. }
  156.  
  157. public void Run_side(double speed) {
  158. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  159. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  160. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  161. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  162. robot.Roata_Stanga_Fata.setPower(speed);
  163. robot.Roata_Stanga_Spate.setPower(-speed);
  164. robot.Roata_Dreapta_Spate.setPower(speed);
  165. robot.Roata_Dreapta_Fata.setPower(-speed);
  166. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  167. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  168. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  169. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  170. }
  171.  
  172. public void Drive(double speed,
  173. double distance) {
  174. int stanga;
  175. int dreapta;
  176. int moveCounts;
  177. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  178. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  179. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  180. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  181. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  182. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  183. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  184. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  185.  
  186. if (opModeIsActive()) {
  187. distance = distance * 0.58;
  188. moveCounts = (int) (distance * COUNTS_PER_CM);
  189. //double directie;
  190. //directie = gyro.getIntegratedZValue();
  191. telemetry.addData("moveCounts= ", moveCounts);
  192. telemetry.update();
  193. stanga = robot.Roata_Stanga_Spate.getCurrentPosition() + moveCounts;
  194. dreapta = robot.Roata_Dreapta_Spate.getCurrentPosition() + moveCounts;
  195. if (speed > 0) {
  196. while (robot.Roata_Dreapta_Fata.getCurrentPosition() > -dreapta && robot.Roata_Dreapta_Spate.getCurrentPosition() > -dreapta
  197. && robot.Roata_Stanga_Fata.getCurrentPosition() > -stanga && robot.Roata_Stanga_Spate.getCurrentPosition() > -stanga && opModeIsActive()) {
  198. Run(speed);
  199. }
  200. } else if (speed < 0) {
  201. while (robot.Roata_Dreapta_Fata.getCurrentPosition() < dreapta && robot.Roata_Dreapta_Spate.getCurrentPosition() < dreapta
  202. && robot.Roata_Stanga_Fata.getCurrentPosition() < stanga && robot.Roata_Stanga_Spate.getCurrentPosition() < stanga && opModeIsActive()) {
  203. Run(speed);
  204. }
  205. }
  206. Stop();
  207.  
  208. }
  209. }
  210.  
  211. //+ in stanga
  212. public void Drive_side(double speed, double distance) {
  213. int fata;
  214. int spate;
  215. int moveCounts;
  216. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  217. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  218. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  219. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
  220. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  221. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  222. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  223. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  224.  
  225. if (opModeIsActive()) {
  226. distance = distance * 0.58;
  227. moveCounts = (int) (distance * COUNTS_PER_CM);
  228. //double directie;
  229. //directie = gyro.getIntegratedZValue();
  230. telemetry.addData("moveCounts= ", moveCounts);
  231. telemetry.update();
  232. fata = robot.Roata_Stanga_Fata.getCurrentPosition() + moveCounts;
  233. spate = robot.Roata_Dreapta_Spate.getCurrentPosition() + moveCounts;
  234. if (speed > 0) {
  235. while (robot.Roata_Stanga_Fata.getCurrentPosition() > -fata && robot.Roata_Dreapta_Fata.getCurrentPosition() > -fata
  236. && robot.Roata_Stanga_Spate.getCurrentPosition() > -spate && robot.Roata_Dreapta_Spate.getCurrentPosition() > -spate && opModeIsActive()) {
  237. Run_side(speed);
  238. }
  239. } else if (speed < 0) {
  240. while (robot.Roata_Stanga_Fata.getCurrentPosition() > fata && robot.Roata_Dreapta_Fata.getCurrentPosition() > fata
  241. && robot.Roata_Stanga_Spate.getCurrentPosition() > spate && robot.Roata_Dreapta_Spate.getCurrentPosition() > spate && opModeIsActive()) {
  242. Run_side(speed);
  243. }
  244. }
  245. Stop();
  246.  
  247. }
  248. }
  249.  
  250.  
  251. public void Stop() {
  252. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  253. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  254. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  255. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  256. robot.Roata_Stanga_Fata.setPower(0);
  257. robot.Roata_Stanga_Spate.setPower(0);
  258. robot.Roata_Dreapta_Fata.setPower(0);
  259. robot.Roata_Dreapta_Spate.setPower(0);
  260. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  261. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  262. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  263. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  264. }
  265.  
  266. public void Dreapta(double speed) {
  267. if (opModeIsActive()) {
  268. robot.Roata_Stanga_Fata.setPower(speed);
  269. robot.Roata_Stanga_Spate.setPower(speed);
  270. robot.Roata_Dreapta_Spate.setPower(-speed);
  271. robot.Roata_Dreapta_Fata.setPower(-speed);
  272. }
  273. }
  274.  
  275. public void Stanga(double speed) {
  276. if (opModeIsActive()) {
  277. robot.Roata_Stanga_Fata.setPower(-speed);
  278. robot.Roata_Stanga_Spate.setPower(-speed);
  279. robot.Roata_Dreapta_Spate.setPower(speed);
  280. robot.Roata_Dreapta_Fata.setPower(speed);
  281. }
  282. //stop();
  283. }
  284.  
  285. //De pregatit dupa regionala
  286. /*
  287. public void Corectare(double directie) {
  288.  
  289. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  290. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  291. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  292. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  293.  
  294. Stop();
  295.  
  296. while(opModeIsActive() && gyro.getIntegratedZValue() < directie)
  297. {
  298. if(gyro.getIntegratedZValue() < directie)
  299. {
  300. Dreapta(0.2);
  301. }
  302. Dreapta(0.2);
  303. if(gyro.getIntegratedZValue() > directie)
  304. {
  305. Stanga(0.2);
  306. }
  307. }
  308.  
  309. Stop();
  310.  
  311. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  312. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  313. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  314. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
  315.  
  316. }
  317.  
  318. */
  319. //SCHIMBATE INTRE ELE
  320. public void Rotire_stanga(double speed, int angle) {
  321.  
  322. gyro.resetZAxisIntegrator();
  323. int currentHeading = gyro.getIntegratedZValue();
  324. int target = currentHeading + angle;
  325. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  326. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  327. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  328. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  329. while (currentHeading < target && opModeIsActive()) {
  330. telemetry.addData(">", "Orientarea robotului = %d grade", gyro.getIntegratedZValue());
  331. telemetry.update();
  332. Stanga(speed);
  333. currentHeading = gyro.getIntegratedZValue();
  334. }
  335. Stop();
  336. }
  337.  
  338. public void Rotire_dreapta(double speed, int angle) {
  339. angle = -angle;
  340. gyro.resetZAxisIntegrator();
  341. int currentHeading = gyro.getIntegratedZValue();
  342. int target = currentHeading + angle;
  343. robot.Roata_Stanga_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  344. robot.Roata_Stanga_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  345. robot.Roata_Dreapta_Fata.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  346. robot.Roata_Dreapta_Spate.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
  347. while (currentHeading > target && opModeIsActive()) {
  348. telemetry.addData(">", "Orientarea robotului = %d grade", gyro.getIntegratedZValue());
  349. telemetry.update();
  350. Dreapta(speed);
  351. currentHeading = gyro.getIntegratedZValue();
  352. }
  353. Stop();
  354. }
  355.  
  356.  
  357. VuforiaLocalizer vuforia;
  358.  
  359. public int ceva() {
  360. int col = -1;
  361. int cameraMonitorViewId = hardwareMap.appContext.getResources().getIdentifier("cameraMonitorViewId", "id", hardwareMap.appContext.getPackageName());
  362. VuforiaLocalizer.Parameters parameters = new VuforiaLocalizer.Parameters(cameraMonitorViewId);
  363.  
  364. parameters.vuforiaLicenseKey = "AVR36zX/////AAAAmf4wKl7jz04GkSKCzFf6A/gIfIqXUXFiD8Q8smknNL1/7mQ7bfNDDX/GKq/vejsAFCypbnHQwmHunWd2pk/dOZY2Wi4Nj64UbWmDawkA3Jy9oiIfS4C7sfViotjeuhQZuuUuHOEDh63tJEX54rWgXUHYYpBUApz+2pB4ijjg+YipO05M9EEInFeUqL3rpEu1vuLq942L/tc7r2C/Am9W37dHlCMlIBYJ2f1RpTdi/6+WVFuiD5lhIyL6hGU9OMhmRzBrZeJWF0GNFHqi21JxiD9IpRIsk6KDqMdS/gYEWg20Lkk/vPEDbKXCrdm9iAQjlBAzjPq0gIE6i785JI8y61qzxohgI4PXEF0ciUqiC2UD";
  365.  
  366.  
  367. parameters.cameraDirection = VuforiaLocalizer.CameraDirection.FRONT;
  368. this.vuforia = ClassFactory.createVuforiaLocalizer(parameters);
  369.  
  370. VuforiaTrackables relicTrackables = this.vuforia.loadTrackablesFromAsset("RelicVuMark");
  371. VuforiaTrackable relicTemplate = relicTrackables.get(0);
  372. relicTemplate.setName("relicVuMarkTemplate"); // can help in debugging; otherwise not necessary
  373.  
  374. telemetry.update();
  375. waitForStart();
  376.  
  377. relicTrackables.activate();
  378.  
  379. while (opModeIsActive() && col == -1) {
  380.  
  381. RelicRecoveryVuMark vuMark = RelicRecoveryVuMark.from(relicTemplate);
  382. if (vuMark == RelicRecoveryVuMark.LEFT) {
  383. telemetry.addData("left", vuMark);
  384. OpenGLMatrix pose = ((VuforiaTrackableDefaultListener) relicTemplate.getListener()).getPose();
  385. col = 0;
  386. return col;
  387. }
  388. if (vuMark == RelicRecoveryVuMark.CENTER) {
  389. telemetry.addData("center", vuMark);
  390. OpenGLMatrix pose = ((VuforiaTrackableDefaultListener) relicTemplate.getListener()).getPose();
  391. col = 1;
  392. return col;
  393. }
  394. if (vuMark == RelicRecoveryVuMark.RIGHT) {
  395. telemetry.addData("right", vuMark);
  396. OpenGLMatrix pose = ((VuforiaTrackableDefaultListener) relicTemplate.getListener()).getPose();
  397. col = 2;
  398. return col;
  399. }
  400. telemetry.update();
  401.  
  402. }
  403. return col;
  404.  
  405. }
  406.  
  407.  
  408. //Pentru Rosu
  409. public void brat_mingi() {
  410. boolean ok = false;
  411. int okbrat = 0;
  412. int okbrats = 1;
  413. double power = 0.5;
  414.  
  415. robot.brat.setPosition(0);
  416. sleep(1000);
  417. robot.bratsecund.setPosition(0);
  418. int v = 1;
  419. while (opModeIsActive() && (v != 0)) {
  420. telemetry.addData("Color Name", robot.colorSensor.readUnsignedByte(ModernRoboticsI2cColorSensor.Register.COLOR_NUMBER));
  421. telemetry.update();
  422.  
  423.  
  424. if (robot.colorSensor.readUnsignedByte(ModernRoboticsI2cColorSensor.Register.COLOR_NUMBER) == 3 && ok == false) {
  425. ok = true;
  426. Rotire_dreapta(0.1, 10);
  427. sleep(250);
  428. robot.bratsecund.setPosition(1);
  429. sleep(500);
  430. robot.brat.setPosition(0.75);
  431. Rotire_stanga(0.1, 10);
  432. sleep(250);
  433. v = 0;
  434.  
  435. }
  436. if (robot.colorSensor.readUnsignedByte(ModernRoboticsI2cColorSensor.Register.COLOR_NUMBER) == 10 && ok == false) {
  437. ok = true;
  438. Rotire_stanga(0.1, 10);
  439. sleep(250);
  440. robot.bratsecund.setPosition(1);
  441. sleep(500);
  442. robot.brat.setPosition(0.75);
  443. Rotire_dreapta(0.1, 10);
  444. sleep(250);
  445. v = 0;
  446. }
  447. }
  448. }
  449.  
  450.  
  451. public void Roti_verzi() throws InterruptedException {
  452. robot.Brats.setPower(-1);
  453. robot.Bratd.setPower(1);
  454. TimeUnit.MILLISECONDS.sleep(2500);
  455. robot.Bratd.setPower(0);
  456. robot.Brats.setPower(0);
  457.  
  458. }
  459.  
  460. public void Plasare_cub() {
  461. sleep(1500);
  462. robot.servo_stanga.setPosition(0.15);
  463. robot.servo_dreapta.setPosition(0.85);
  464. sleep(1000);
  465. robot.servo_dreapta.setPosition(0.42);
  466. robot.servo_stanga.setPosition(0.58);
  467. }
  468. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement