Start/Stop as one IR function?

What do you think? Would Start/Stop count as one function in Hybrid mode or two?

I’m pretty sure with the way they word it, they want each button to only control one function, as in separate buttons for stop and go. But if you can pull it off, you might be able to have stopping as part of your turn function, i.e. turn and stop. So to stop the robot you turn one way and then turn the other. Or make the button drive for one second and then stop.

I think it’s two. From Team Update #3:

The actions that the Robot takes in response to the messages received should be
repeatable and predictable. In practical terms, this means that when the
RoboCoach presses Button #3, Action #3 always occurs. Robot responses that are
time-dependent or message sequence dependent are not allowed.

Unfortunately, you can’t use that as one state. As answered by the GDC in the Q&A:

Please refer to Team Update #3. With the guidance of the referenced “does it do the same thing every time?” litmus test, using a Signaling Device button to toggle Robot actions would not fit within the intent of Hybrid Mode. Nor would using the Signaling Device to step through a multi-step routine.

The messages sent by the Signaling Device can initiate more complex actions or routines that are completely pre-programmed on the Robot. The Signaling Device can also be used to transmit field state information instead of a specific command or action.

http://forums.usfirst.org/showthread.php?t=8008

From the Q&A responses I believe that it can be done. With the use of sensors you can activate a command that says, if x value is “a” then stop and if x value is “b” go.

This is only my interpretation and I am not a programmer or official answer giver.

I think this might be a rule they cannot police, kind of like the re-use of code from year to year, or just fix during your fix it windows, or even like the maximum ball shooter speed in 2006.

Just use GP in determining your decision, and if you think its allowed, then go for it, otherwise don’t. But have an alternative in mind if they specifically tell you “no.”

they should ask you during inspection to test robocoach functions. I read this somewhere in the Q&A

After searching the Q&A for “inspect”, “inspects”, “inspector”, “inspectors”, “inspection” and “inspections” I can find no such requirement. Do you have a better reference than “I read this somewhere”?

I’m not sure where I saw it but I am 100% sure I read somewhere that if asked you would have to show the inspector or a ref or a judge your hybrid controls and which button does what

a few rules about this subject:

<R65> Emphasis mine

communicate no more than four messages, states or conditions to the ROBOT (please refer to Rule <R69> and Rule <G01> for additional information) during any single
MATCH.

no more than 4 states I would say that having a button that changes states would count as two of your four messages

<R65> Emphasis mine

be able to switch between no more than four states or conditions (i.e. send no more than four messages)

pretty much the same thing just said again later in the rule

Team update #3 Emphasis mine

For example, consider a programmed sequence of actions such as “start driving forward,” “stop in place,” “turn left,” “raise arm,” “open gripper,” “close gripper,” etc. Each time Button #8 is pressed, the Robot advances one step through the sequence of actions. This would not be allowed.

Start and Stop would be steps and advancing steps is not allowed

Also keep in mind (can’t find the quote in the rules for some reason) you must have a 3x5 notecard with all functions of your robocoach remote written on it.

I hope I helped

Do you mean this rule?

<G49> ROBOCOACH Signaling – If the ROBOCOACH will be providing signals to the ROBOT,
then prior to the start of each MATCH the ROBOCOACH must place a Signaling Card in the
ROBOCOACH STATION. The Signaling Card shall be a 3-inch by 5-inch card listing the
one to four actions that can be commanded by the ROBOCOACH.
All you’re doing is telling what you might do. You don’t have to demonstrate it.

I’m not sure where I read it but I specifically remember reading you will have to show your hybrid functions if asked. But it could have been somewhere in Team Update #3 maybe I was thinking of because I talked about if we were to go up to someone like an inspector and keep pressing the button it would always do the same thing. Sorry for the misunderstanding. My main point is that Start/Stop button IS illegal

I’m not sure about the legality of this, but what if my function were say, x=x+1. And then in the autonomous code was looped

if x is even, stop
else go

That way the button always preforms the same function, adding one, but you can achieve the desired result.

Yes? No?

I don’t think that would pass. You’re toggling states.

I would have to agree… technically to task’s are being achieved by one button

I suppose that’s what I get for trying to think this late.

Yeah, I suppose you’re right.

From the Q&A, I hope it helps.

RC Decision-Making during RoboCoach Commands
Background:

  1. Team Alpha has created a RoboCoach command for Alphabot called “move Alphabot to correct heading.” This RoboCoach command triggers the same sequence of RC commands and decisions every time it is sent:
    Quote:
    a) Read heading of CMUCam which is successfully tracking a trackball.

b) If trackball heading is left of robot heading, turn robot left until headings are same, then stop.

c) If trackball heading is right of robot heading, turn robot right until headings are same, then stop.
2) Team Beta has created a RoboCoach command for Betabot called “move Betabot’s arm to correct position.” This RoboCoach command triggers the same sequence of RC commands and decisions every time it is sent:
Quote:
a) Read limit switches at both ends of arm travel.

b) If top limit switch is pressed, lower arm until bottom limit switch is pressed, then stop.

c) If bottom limit switch is pressed, raise arm until top limit switch is pressed, then stop.
Question(s):

  1. With respect to the Q&A response at http://forums.usfirst.org/showthread.php?t=8370, due to RC decision-making, neither RoboCoach command will always result in the same robot action. Alphabot’s RC may decide to rotate the robot left or right, Betabot’s RC may decide to raise or lower the arm. In both cases however, the same RC command and decision sequence is triggered every time the RoboCoach command is sent. Can you comment on the legality of both of these RoboCoach commands?

  2. Should it be accepted that Team Beta’s RoboCoach command is just a poorly veiled attempt at “toggle arm position” (as described in the referenced Q&A response) and is contrary to the intent of the rules, or is there actually a valid distinction due to the presence of RC decision-making?

Thanks again for all your time and effort in providing the Q&A. It is truly appreciated!!!

Reply With Quote Multi-Quote This Message

Default Re: RC Decision-Making during RoboCoach Commands
The Robocoach commands in both the Alpha and Beta examples satisfy the letter and intent of the rule. Both solutions involve reading sensors on the robot to perform the commanded functions.
Reply With Quote

You might not want to have ‘start’ and ‘stop’ actions anyway. If there is interference from your alliance partners or opponents, you will not be able to stop accurately because someone else might be firing an IR message at the same time. Getting some wheel counters on your chassis would allow you to compact it into one action: ‘drive x ft and stop’ (assuming that the target you want to stop under is the same each match).

I think start/stop would be ok for one button.
It’s one function.

If you think it’s saying:
If robot is stopped, start it.
If robot is started, stop it

That way is probably against the rules.

But if you were to ask how many functions a TV Remote Power Button has, I believe most people would answer one. To Toggle Power.

My thoughts on this is that ‘toggle’ is one action. it does the same thing every time. Invert the action that is currently happening. That being said, I still dont think all this talk is even required because you only NEED 4 actions. (Pos 1,2,3, and go to other side)

Your ‘get ball from rack’ function may not always do exactly the same thing, since its going to use sensors, so why should the ruling be any different for a function called ‘toggle’ which merely does something based on current conditions.

Unfortunately, the GDC has expressly said that a toggle function is not allowed in the Q&A:

Please refer to Team Update #3. With the guidance of the referenced “does it do the same thing every time?” litmus test, using a Signaling Device button to toggle Robot actions would not fit within the intent of Hybrid Mode. Nor would using the Signaling Device to step through a multi-step routine.

The messages sent by the Signaling Device can initiate more complex actions or routines that are completely pre-programmed on the Robot. The Signaling Device can also be used to transmit field state information instead of a specific command or action.

(emphasis mine)