Repository navigation
Expand file tree
/
Copy pathAutonomous_time.v5python
More file actions
1 lines (1 loc) · 5.23 KB
/
Copy pathAutonomous_time.v5python
File metadata and controls
1 lines (1 loc) · 5.23 KB
1
{"mode":"Text","textContent":"vexcode_brain_precision = 0\nvexcode_console_precision = 0\nvexcode_controller_1_precision = 0\nLeftVelo = 0\nRightVelo = 0\nprintPeriodic = 0\n\ndef move(rightVelocity,leftVelocity,waitSeconds):\n print(\"Move\")\n rightmg.set_velocity(rightVelocity,PERCENT)\n leftmg.set_velocity(leftVelocity,PERCENT)\n rightmg.spin(FORWARD)\n leftmg.spin(FORWARD)\n wait(waitSeconds, SECONDS)\n print(\"Waited for\" + str(waitSeconds))\n rightmg.stop()\n leftmg.stop()\n print(\"Move is completed\")\n \ndef move_position(rightVelocity, leftVelocity, rightPosi, leftPosi):\n print(\"Starting Move Posistion\", rightPosi, leftPosi)\n rightmg.set_velocity(rightVelocity,PERCENT)\n leftmg.set_velocity(leftVelocity,PERCENT)\n rightmg.spin_to_position(rightPosi, DEGREES, wait=False)\n leftmg.spin_to_position(leftPosi, DEGREES, wait=False)\n rightmg.spin(FORWARD)\n leftmg.spin(FORWARD)\n rightmg.stop()\n leftmg.stop()\n print(\"Move posistion completed\")\n\ndef turn(direction,degrees,velocity,waitSeconds): \n # main thread\n # Turn both motors on\n print(\"Turn is starting\")\n if direction == \"right\":\n rightmg.spin_to_position(degrees, DEGREES, wait=True)\n #rightmg.set_position(degrees, DEGREES)\n rightmg.set_velocity(velocity,PERCENT)\n rightmg.spin(FORWARD)\n print(degrees + \" is how degrees turned \")\n else:\n leftmg.spin_to_position(degrees, DEGREES, wait=True)\n #leftmg.set_position(degrees, DEGREES)\n leftmg.set_velocity(velocity,PERCENT)\n leftmg.spin(FORWARD)\n print(degrees + \" is how degrees turned \")\n \n wait(waitSeconds,SECONDS)\n print(\"Turn is completed\")\n\ndef lift(velocity,waitSeconds):\n print(\"Lifting\")\n ScissorLift.set_velocity(velocity,PERCENT)\n ScissorLift.spin(FORWARD)\n wait(waitSeconds,SECONDS)\n ScissorLift.stop()\n print(\"Lift is completed\")\n\ndef print_state():\n disp = {\"LeftMotorDone\":leftmg.is_done(),\"RightMotorDone\":rightmg.is_done()\n ,\"LeftMotorSpinning\":leftmg.is_spinning(),\"RightMotorSpinning\":rightmg.is_spinning()}\n for key, value in disp.items():\n print(key + ':' + str(value))\n brain.screen.print(key + ':' + str(value) , precision=6 if vexcode_brain_precision is None else vexcode_brain_precision)\n brain.screen.next_row()\n\n# resets motor degrees \ndef reset_state():\n print(\"Reseting motors\")\n rightmg.set_position(0,DEGREES)\n leftmg.set_position(0,DEGREES)\n rightmg.set_velocity(0,PERCENT)\n leftmg.set_velocity(0,PERCENT)\n print(\"Finished reseting motors\")\n\ndef stop():\n print(\"Motors stopping\")\n rightmg.stop()\n leftmg.stop()\n print(\"Motors have stopped\")\n\ndef bottom_left():\n print(\"Autonomous Mode bottom left\")\n reset_state()\n move(50,50,2)\n reset_state()\n turn(\"right\",90,-25,2)\n reset_state()\n move(50,50,2)\n reset_state()\n lift(50,2)\n lift(-50,2)\n move(-50,-50,2)\n reset_state()\n turn(\"left\",-90,-30,2)\n reset_state()\n move(-50,-50,2)\n reset_state()\n stop()\n\ndef bottom_right():\n #print(\"Autonomous Mode bottom right\")\n reset_state()\n move(75,75,1)\n reset_state()\n #turn(\"left\",85,-30,2)\n #move(50,50,2)\n reset_state()\n #lift(50,2)\n #lift(-50,2)\n reset_state()\n #move(-50,-50,2)\n reset_state()\n #turn(\"right\",-85,-30,2)\n reset_state()\n #move(-50,-50,2)\n reset_state()\n stop() \n\ndef bottom_right_position():\n reset_state()\n current_right_posi = rightmg.position(DEGREES)\n current_left_posi = leftmg.position(DEGREES)\n move_position(50, 50, 540+ current_right_posi, 540+current_left_posi)\n stop()\n\ndef when_started1():\n global LeftVelo, printPeriodic, RightVelo, vexcode_brain_precision, vexcode_console_precision, vexcode_controller_1_precision\n controller_1.buttonX.pressed(bottom_left) \n controller_1.buttonA.pressed(bottom_right_position)\n \n \nwhen_started1() \n \n\n \n","textLanguage":"python","rconfig":[{"port":[1,9],"name":"leftmg","customName":true,"deviceType":"MotorGroup","deviceClass":"motor_group","setting":{"fwd":"forward","rev":"reverse","gear":"ratio36_1","motor_a_reversed":"true","motor_b_reversed":"true"},"triportSourcePort":22},{"port":[13,20],"name":"rightmg","customName":true,"deviceType":"MotorGroup","deviceClass":"motor_group","setting":{"fwd":"forward","rev":"reverse","gear":"ratio36_1","motor_a_reversed":"false","motor_b_reversed":"false"},"triportSourcePort":22},{"port":[],"name":"controller_1","customName":false,"deviceType":"Controller","deviceClass":"controller","setting":{"left":"","leftDir":"false","right":"ScissorLift","rightDir":"false","upDown":"leftmg","upDownDir":"false","xB":"rightmg","xBDir":"false","drive":"none","id":"primary"},"triportSourcePort":22},{"port":[6],"name":"ScissorLift","customName":true,"deviceType":"Motor","deviceClass":"motor","setting":{"reversed":"false","fwd":"forward","rev":"reverse","gear":"ratio18_1","id":"partner"},"triportSourcePort":22}],"slot":0,"platform":"V5","sdkVersion":"20210708.10.00.00","appVersion":"2.2.0","fileFormat":"1.0.1","icon":"","targetBrainGen":"First","target":"Physical"}