Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Rules/Strategy (http://www.chiefdelphi.com/forums/forumdisplay.php?f=6)
-   -   Start/Stop as one IR function? (http://www.chiefdelphi.com/forums/showthread.php?t=62907)

Steve W 01-02-2008 07:49

Re: Start/Stop as one IR function?
 
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

Bongle 01-02-2008 07:57

Re: Start/Stop as one IR function?
 
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).

comwiz7 04-02-2008 06:12

Re: Start/Stop as one IR function?
 
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.

Racer26 04-02-2008 08:32

Re: Start/Stop as one IR function?
 
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.

Jon Stratis 04-02-2008 08:36

Re: Start/Stop as one IR function?
 
Unfortunately, the GDC has expressly said that a toggle function is not allowed in the Q&A:

Quote:

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)

Steve W 04-02-2008 08:37

Re: Start/Stop as one IR function?
 
Quote:

Originally Posted by 1075guy (Post 691877)
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.

The difference is that it relies on sensors to give the state not on/off static states. The answers are there in the Q&A.

Mr. Lim 04-02-2008 08:48

Re: Start/Stop as one IR function?
 
Quote:

Originally Posted by citrusapocalyps (Post 689145)
What do you think? Would Start/Stop count as one function in Hybrid mode or two?

This is all based on the Q&A response Steve W quoted above at: http://forums.usfirst.org/showthread.php?t=8460

Start/Stop as a single RoboCoach command can be achieved if you use encoders (or any other sensor) to track whether your robot is in motion or not. You can then write a command that will stop a robot in motion, or start a stationary robot, but the RC's decision must be based on input from a sensor on the robot.

You cannot simply save a state in software that keeps track of whether your robot is moving based on when or how many times you've sent the RoboCoach command. i.e. 1st push start, 2nd push stop, toggling back and forth.

It's an important distinction to make between those two scenarios. It is possible to achieve the behaviour you're looking for, but you need to be mindful of how to go about doing it.

Racer26 04-02-2008 10:28

Re: Start/Stop as one IR function?
 
My mistake, I was not aware Q&A had actually explicitly mentioned Toggling. Doesn't change my plans, and also, doesn't change my feeling that a toggle function is not required. Furthermore, it doesn't change my opinion that 'toggle' is one action, however, if thats how the GDC wants it, thats fine by me.

Jon Stratis 04-02-2008 11:55

Re: Start/Stop as one IR function?
 
Quote:

Originally Posted by SlimBoJones (Post 691884)
This is all based on the Q&A response Steve W quoted above at: http://forums.usfirst.org/showthread.php?t=8460

Start/Stop as a single RoboCoach command can be achieved if you use encoders (or any other sensor) to track whether your robot is in motion or not. You can then write a command that will stop a robot in motion, or start a stationary robot, but the RC's decision must be based on input from a sensor on the robot.

You cannot simply save a state in software that keeps track of whether your robot is moving based on when or how many times you've sent the RoboCoach command. i.e. 1st push start, 2nd push stop, toggling back and forth.

It's an important distinction to make between those two scenarios. It is possible to achieve the behaviour you're looking for, but you need to be mindful of how to go about doing it.

According to the GDC, such a thing may not be against the letter of the rules, but it is certainly against the spirit. So, if you're thinking of employing such a system, you should question what is more important for a FIRST team: following the letter and intent of the rules, or finding a sneaky way around them to perform better in the competition? I guess it really comes down to a question of what your teams goal is - to have the best performing robot, or to have the best performing team.

Quote:

Question:

All of the Robocoach rulings I have read seem to outlaw the notion of software state... the action conveyed by the press of a button should be independent of any previous button presses. However, the actions are allowed to be dependent on sensor readings. Is a hardware device solely intended to keep track of state (such as a servo coupled to a multi-position switch which feeds back to the RC) in order to address a larger set of commands in violation of the letter or spirit of any rules?

Answer:
This would be a violation of the spirit, but not necessarily the letter, of the rules.

efoote868 04-02-2008 12:24

Re: Start/Stop as one IR function?
 
What if instead you had a "pause" function, where you press pause, and the robot stops its actions for a determined length of time?

That would include both the start and the stop, all in one neat little package.
Also, every time you hit the "pause" button, the robot will remain inactive for 1 second more.

Mr. Lim 04-02-2008 12:46

Re: Start/Stop as one IR function?
 
Quote:

Originally Posted by eagle33199 (Post 692000)
According to the GDC, such a thing may not be against the letter of the rules, but it is certainly against the spirit. So, if you're thinking of employing such a system, you should question what is more important for a FIRST team: following the letter and intent of the rules, or finding a sneaky way around them to perform better in the competition? I guess it really comes down to a question of what your teams goal is - to have the best performing robot, or to have the best performing team.

Yes, but you need to examine both of those GDC responses EXTREMELY carefully. This one http://forums.usfirst.org/showthread.php?t=8460 you'll notice that the sensors are "legitimately" being used, and are within the letter AND intent of the rules. The GDC response to this specific scenario in the Q&A is:
Quote:

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.
That's right folks, you CAN achieve a "toggling" type action on your arm (as in the Q&A example), but you must do so by legitimately using sensors on your robot, and NOT just by software switching states based on IR remote keypresses, or by replicating those software states with a combination of hardware and sensors.

That's the difference between complying with the intent of the rule or not, and it's an important distinction. It IS forcing teams to take a higher level of autonomy, even if it's trivial to some of us.

By my reading, it should be possible, to create a start/stop behaviour on a single RoboCoach command that is within the letter AND intent of the rules. Whether you comply with the intent of the rule depends critically on whether you use sensors to determine whether your robot is in motion or not.

citrusapocalyps 04-02-2008 18:04

Re: Start/Stop as one IR function?
 
Wow, thanks for all of the responses! I think the best idea for what I had in mind would be to have the function be to stop for 1 second or something like that, that way it will be sure to pass.


All times are GMT -5. The time now is 01:44.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi