Autonomous running after time up

Our autonomous program for VIQC currently has a pause in the middle of the program where a human picks up the robot and puts it back at a legal starting position. After the robot is placed at a starting position, the human presses a touch led sensor which continues the code. We also use a gyro and bumper sensors which have varying amounts of delay. Due to this method the amount of time our autonomous takes to run varies from run to run by a few seconds.

This results in some of our autonomous runs taking longer than a minute, losing us some points. We are currently working on speeding it up with a faster drivetrain, but hypothetically speaking, if we were doing an autonomous run at Worlds, and the time runs out, but our robot still continues to finish the last bit of code, and in the process, scores some points, what would happen?

In previous competitions the judge would simple discount/remove anything scored after time, but we are not sure if this is how it will be at Worlds.

Just to be safe, should we implement a fail safe into our code, so that after a minute, no matter where in the code it is, it stops the code? Or is it better to let it play out the rest of the code, in case any points scored right after the buzzer are counted?

From my experience, they would only score what was in at the end of time but that is why I use the built-in timer to stall all moders and stop the last command

1 Like

They are supposed to score any points that were scored due to robots and balls moving before the end of the match.

<G12> When it’s over, it’s over. Scores will be calculated for all Matches immediately after the Match is complete, and once all Robots and Balls on the Field come to rest.

c. This rule’s intent is for Driver inputs and Robot motion to cease at the end of the Match. A pre-programmed routine which causes the Robot to continue moving after the end of the Match would violate the spirit of this rule. Any Scoring which takes place after the Match due to Robots continuing to move will not count.

This would also suggest that any scoring which takes place after the buzzer due to robots’ motion before the buzzer would count. This was also specified in Q&A 925:

If a Ball is in the air (or rolling along the Floor) at the end of the Match, it should be scored wherever it eventually comes to rest.

– GDC

So now the only question is whether the “end of the match” is the beginning of the buzzer or the end.

1 Like

You would need to ask the ref for that because it does not state it in the rules but you should just proactively force it to stop at the end of time

The match ends when the timer hits 0. The buzzer begins when the timer hits 0.

1 Like

There is no reference in the rules to a buzzer. You simply get a minute. You can time it if you like, but if you are using the standard VEX apps the time markers are always at the beginning of the sounds.

2 Likes

I agree with this, because it says you get 60 seconds, and it’s 60 seconds from the beginning of the trumpet sound to the beginning of the buzzer. You could say at your event that the match begins at the end of the trumpet and ends at the end of the trumpet. Most people use the beginning of the trumpet, though, so then it’s beginning of the buzzer. What if the ref doesn’t know, though, is mostly what I was saying. Anyhow, we should probably stop all this because the OP sort of has their answer.

1 Like

My team has implemented a timer which shuts the robot off at 60 seconds no matter where it is in running the autonomous code. The team members were worried that there wouldn’t be a clear answer if the robot was still running after the time limit.

1 Like

thanks for all the help. Looking at the feedback, I think our best bet would be to just add a timer in our code, so all motors are stopped at 60sec.

1 Like