![]() |
How many RoboCoach Commands?
I know that the RoboCoach can only have four buttons, but what if those four buttons did different things in Hybrid mode than in TeleOperate mode. I'm thinking of having technically eight commands. Four in Hybrid and Four in TeleOperation. For example the programming might look a little like this:
If in Hybrid { If 1 pressed { Do action 1 } If 2 pressed { Do action 2 } If 3 pressed { Do action 3 } If 4 pressed { Do action 4 }} If in TeleOperate{ If 1 pressed { Do action 5 } If 2 pressed { Do action 6 } If 3 pressed { Do action 7 } If 4 pressed { Do action 8 }} Rule G01 and G02 states that the robot can only respond to four signals from the RoboCoach, but the signal that changes the mode from Hybrid to TeleOperate does not come from the RoboCoach, it comes from the Robot Operator Interface. Did I just find a loophole? :ahh: Unfortunately, now that I think about it more, why would I use the IR Remote during TeleOperate if the Operator Interface has plenty of Inputs? Expecially since the OI has less frequency interference than the IR remote (from what I've been reading) and is more predictable. |
Re: How many RoboCoach Commands?
along the same line of thought, can you program your robot to respond to a series of comands such as, 1,2,3 or 2,4,1 to be two distinct operations?
|
Re: How many RoboCoach Commands?
it's not a loophole, just creativity of coding.
also, think about this: if you had one of your commands "cycle" through a list of 3 other commands, you could have an infinite amount of commands from 4 inputs. however... your robocoach will go nuts trying to figure out which command is which. Maybe if you had a card counter or something.. hmmm. |
Re: How many RoboCoach Commands?
I was thinking about this today too. Something else occurred to me. Theoretically there could be 16 command (possibly more), if you were to combine them. However with the interference issues, it would need to be less.
I have no comment on this with regard to the rules, but it makes sense if your needs require more than just 4 commands. |
Re: How many RoboCoach Commands?
We are't even considering using the remote unless its the first few seconds of hybrid mode considering every one else is going to be using there remotes and the command might not be sent and we mite just screw up our whole programming , and lose our chance of scoring in the hybrid mode.
|
Re: How many RoboCoach Commands?
I'm not positive, but I think I remember reading that you can only have 4 commands from the IR and that you cant do any of that stuff, but I may be wrong. Even if you could do that, you have to display a 3 by 5 notecard saying everything that you may tell the robot to do. If you use the combinations like that, you will need alot of notecards.:D
Joey |
Re: How many RoboCoach Commands?
one of the rules is that you cannot dynamically change control sets... sorry!
|
Re: How many RoboCoach Commands?
From the manual:
Quote:
So, the long and the short of the matter is, you get four commands that can't change during a match. (Between matches is another story.) |
Re: Multiple IR Key codes to activate four hybrid operating modes
Do you think it is within the spirit of the rules to use multiple key combinations (1-2-3, 4-5-6, 7-8-9, .i.e) to
activate the four different operating modes? This way, a team could reduce the likelihood of another remote operating their robot during the hybrid period.:confused: The 3 by 5 cards would still say, for example, forward, left, right, and reverse. Forward could be 1-2-3, Left 4-5-6, Right 7-8-9). This should maybe be a new thread. |
Re: How many RoboCoach Commands?
I think that the Robocoach can only make the robot do 4 things during a match. As for the changing from hybrid to tele - the second bullet of <R69> specifically disallows that.
• The ROBOT shall not dynamically change the recognized command set during a MATCH. As far as combining commands to create more combinations the last bullet of <R65> explicitly disallows that • not use changes in the signal states to encode or transmit larger messages (e.g. Morse code) We were of course also thinking about techniques to increase the number of commands and it has become clear that there can only be the 4 that are on the card posted on the Robocoach station. Good luck, Greg |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
i cant see why not seeing it is still only four actions. correct me if im wrong. |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
Quote:
Can we put the lawyers to bed now? I'm pretty sure the intent is FOUR buttons control FOUR commands, in a 1:1 ratio. |
Re: How many RoboCoach Commands?
My thoughts are like this for the moment.....
Let's say you have 16 selectable autonomous/modes for your Robot. Each one of those modes uses only 4 commands, but the 4 commands mean different things depending on the selection setting. In each round the ROBOCOACH would have a card that list each of the 4 commands used in that mode, or 16 cards of 4 commands each. So in theory you only have 4 commands for any given match, but up to 64 commands available to choose from or 16 command sets to choose from. To me this seems completely doable and within the rules. I do think that some clarification from the rules committee is needed. |
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
Thank for all the answers. I think it is abvious that the FIRST rules do not want us to have more than four methods and four buttons, one for each button. Thankfully, our design only needs three, and one as an emergency stop.
As I said earlier, were just going to use the Operator Interface for buttons instead of the remote during TeleOperate. |
Re: How many RoboCoach Commands?
Quote:
Quote:
|
Re: How many RoboCoach Commands?
Quote:
for more information i would suggest looking into this topic http://www.chiefdelphi.com/forums/sh...&highlight=R65 specific rules are listed in my previous post on this matter http://www.chiefdelphi.com/forums/sh...4&postcount=25 |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
Code:
int *fwd[] = {&relay1_fwd, &relay2_fwd, &relay3_fwd, &relay4_fwd, &relay5_fwd};Code:
Button 1: Chooses a relay |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
|
Re: Multiple IR Key codes to activate four hybrid operating modes
• The ROBOT shall not dynamically change the recognized command set during a MATCH.
I was under the impression that this rule was to keep people from choosing which 4 signals to recognize after the match had already started, not it couldn't change it's reaction based on it. So if I were commanding my arm to a specific angle during autonomous it wouldn't be illegal for that to move the arm up sometimes and not others I don't think. But what if I had a + button a - button and 2 toggle mode buttons. The two buttons ALWAYS toggle the mode, the + and the - always effect the mode in the + or - direction... It's really hard to interpret such a rule if you read it as "your robot can only react in 4 different ways to inputs", which is why I think that really can't be. My 2 cents -nrv |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
|
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
A: cycles through positions on the overpass B: sets position (where our ball is) C: cycles through starting positions in the home stretch D: sets starting position that way the robot will know where it is and where the ball is, and can conduct itself appropriately. What is the CD opinion on that? |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
|
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
We did do something similar to that last year with our various autonomous modes though. |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
For example, using the number buttons, Drive straight: 241 Turn left: 134 Whack ball: 423 Stop: 123 The signal that the remote sends when you push one button is coded already, somehow, isn't it? I see no rule preventing you from changing the coding scheme. Might be a Q&A question...with emphasis that the intent of this method is to improve safety by reducing communication errors :) |
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
|
Re: Multiple IR Key codes to activate four hybrid operating modes
Quote:
|
Re: How many RoboCoach Commands?
Not at all! The message is what comes out the other end...and I am still only selecting one of 4 commands, which is what the rules allow.
Note that I specified the message in each case: For the message "Drive straight", the signal is: 241 For the message "Turn left", the signal is: 134 For the message "Whack ball", the signal is: 423 For the message "Stop", the signal is: 123 I have modified the SIGNAL to be 3 characters, but I have NOT changed the number of MESSAGES. The are still only 4 messages. =================================== To show you what would be illegal, consider this example of a use of a larger number of coded messages, with a smaller signal: The message "drive" uses a first digit of 1 The message "turn" uses a first digit of 2 The message "manipulate ball" uses a first digit of 3 The message "stop" uses a first digit of 4. Now, we get to the illegal part: For a first digit of 1, the second digit of 1 means "slow" For a first digit of 1, the second digit of 2 means "medium" For a first digit of 1, the second digit of 3 means "fast" For a first digit of 2, the second digit of 1 means "right" For a first digit of 2, the second digit of 2 means "left" For a first digit of 3, the second digit of 1 means "pop off overpass" For a first digit of 3, the second digit of 2 means "pick up" For a first digit of 3, the second digit of 3 means "drop" For a first digit of 4, the second digit of 1 means "with manipulator down" For a first digit of 4, the second digit of 2 means "with manipulator up" See how in this illegal example, we use only the 4 digits, and the signal is only two characters long, but it is decoded into ten different MESSAGES! |
Re: How many RoboCoach Commands?
Quote:
Quote:
|
Re: How many RoboCoach Commands?
Pressing two buttons in sequence is not the same as pressing two buttons at once.
However, it is likely that the intent of that rule is also to prohibit the longer signal scheme I presented.....so if someone plans to use this scheme, it would be wise to ask about it on the Q&A |
Re: How many RoboCoach Commands?
Quote:
Quote:
|
Re: How many RoboCoach Commands?
Didn't I just explain how this does NOT increase the complexity of the message? (ie. it is not transmitting more than more 4 messages) I guess I did a lousy job the first time :)
Let's say you want to transmit for different commands, which are: Drive straight Turn left Whack ball Stop First case: You could use a single button for each one Drive straight = "1" button Turn left = "2" button Whack ball = "3" button Stop = "4" button Second case: You could make it use the sequential pressing of 3 buttons for each one: Drive straight: press "2" button, then press "4" button, then press "1" button Turn left: press "1" button, then press "3" button, then press "4" button Whack ball: press "4" button, then press "2" button, then press "3" button Stop: press "1" button, then press "2" button, then press "3" button What is the message in each case? In the first case, the first message is "Drive straight". In the second case, the first message is "Drive straight". How is "Drive straight" a longer message than "Drive straight"? I don't understand. |
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
so who is going to confirm that six robots are doing exactly what is written on six small cards? six more refs? instant replay? gp?
|
Re: How many RoboCoach Commands?
We can sit here and argue semantics until the cows come in but I think the rules have very clearly stated the way the Hybrid mode should operate is you have 4 buttons that do 4 actions and those actions cannot change the actions the other buttons perform. It doesn't matter how complex or simple your IR commands are. Button 1 can only make it do one thing and the same with buttons 2 through 4.
|
Re: How many RoboCoach Commands?
I am doing the following things:
--using a maximum of four different inputs from the robocoach --communicating no more than four messages, states, or conditions to the robot --limiting the robot to react to four distinct commands --I am helping to insure that the robot will only react to permitted signaling devices belonging to the assigned alliance I am not doing any of the following prohibit things: --switching between more than 4 states or conditions --operating thru more than one input at a time --using changes in signal states to encode or transmit larger messages (eg Morse code) (note that morse code uses only two digits to encode the whole alphabet and number set, where I am using 4 different 3 character long sequences of 4 numbers to encode 4 different messages) I still don't understand how this is a violation of any of the rules. |
Re: How many RoboCoach Commands?
Quote:
Quote:
(Morse code actually uses a set of either three or four symbols, not two "digits", but that's beside the point.) |
Re: How many RoboCoach Commands?
(I agree about Morse code, I didn't mention the short and long spaces)
What you say may be true, but could you please quote a rule that says so? I can't find one. |
Re: How many RoboCoach Commands?
Sorry to be in the middle of this epic Morse code throwdown, but I have a thought:
Could a lack of a command also be a command? Would it count as one of the four? Example: Press "1" and the robot does something. If no command is received in the next three seconds, the robot reverts to a previous behavior until another button is pushed. In this example, you are technically sending information by not pressing a button within a time period. Would this count as a command? |
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
Quote:
Program 5 time slots into the 15-second hybrid mode. Within each 3-second time slot, a command must be received for the robot to do something. So a potential history of these time slots might look like this: Time / Command 00:00 / 1 00:03 / 2 00:06 / 4 00:09 / 3 00:12 / 2 But what if I wanted to add an additional command to the system and remain below the refs' radar? Time / Command 00:00 / 1 00:03 / No command sent 00:06 / 4 00:09 / 3 00:12 / 2 You could program the "No command sent" command to do anything, not just revert to previous behavior. Perhaps "No command sent" means "turn left." How many commands do I really have now? |
Re: How many RoboCoach Commands?
I'll discuss the epic Morse code thing with Alan off line and see what we come up with....
Anyways, if your command set includes "if 4 is pressed within 3 seconds of 1 being pressed, then do the fourth thing, else do the fifth thing" then I think you are using 5 commands. |
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
I realize that, but I think it's because I can see a difference between a message and the coded signal used to transmit that message, and you apparently can't see that difference, or think it is irrelevant.
If anyone wants to play with the scheme I mentioned, I'd suggest asking about it in Q&A. |
Re: How many RoboCoach Commands?
Quote:
With the game this year, there is a pretty small number of finite states you could have for your robot. A basic state diagram for one might be something like "drive straight. stop. knock ball off. drive straight. turn to the left in an arc of radius X. goto state 1". Pretty simple stuff, doesn't really require input from the robocoach to go through knocking random balls off. Now, you might modify the above state machine to throw in some bypasses - "if we're in state one(driving straight) and receive a "1" signal, turn to the left 5 degrees. a "2" signal turn to the right 5 degrees". That would give you three possible behaviors for that portion of operation using only two button pushes. you could also have buttons 3 and 4 modify state 5 (turning at radius X) so you turn at a different radius to line up with your ball on the other side - a default radius might take you from the outside of the track to the inside (or inside to outside), while a signal of "3" could be a tight radius (inside to inside) and a signal of 4 could be a wide radius (outside to outside)... that would give you again 3 possible behaviors using only 2 signals. So i would say using the absence of a signal to dictate robot behavior is entirely acceptable, making your example above perfectly fine. You do need to be careful, however, when talking about breaking the hybrid period into time slots - there's a powerful urge there to have signals mean something different in different time slots, which, i think, would be breaking the rule. |
Re: How many RoboCoach Commands?
Q&A will need to clarify more of this Hybrid interaction.
The mixture of autonomous control and the 4 Robocoach commands can make for quite a variety of responses even under the most benign of conditions. For example, a robot that senses and avoids traffic jams autonomously, and a Robocoach command to order a left or right override. The robot can detour all over the field on just those two commands. |
Re: How many RoboCoach Commands?
Quote:
Not pressing "1" within 3 seconds is not sending a command. The bot is simply playing out it's program. Pressing "1" again before the 3 seconds to restart the timer could be considered 1) reissuing the command (so you are patting the "watchdog) 2) or a new type of command (extended period) |
Re: How many RoboCoach Commands?
If your robot ever makes this decision, then IMO, you have sent a command to the robot, even if you HAVE NOT sent any signal to your robot:
1. Doing Action A for 3 seconds... 2. Has a signal been sent to the robot in the last 3 seconds? If so, GOTO 3. If not, GOTO 4. 3. Doing Action B... 4. Doing Action C... |
Re: How many RoboCoach Commands?
If you press "1" and that means
"go explore that rock, drill a hole in it, do some chemistry, and back up ten feet and stop." That is a single command. A complex command but still a single command. It is what a lot of different types of devices do. |
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
I'm not clear on the benefits of Squirrell's proposal ... while I do agree with most of the comments that this is not a legal operation.
What exactly do you gain by sending 123 or 456 or 789 versus a simple 1 or 2 or 3? What are the benefits of sending an (imo illegal) multi-button command? If alliance and/or opponent interference is the problem that you're trying to avoid then perhaps we should get some time prior to match start to verify that our remote commands do not overlap. It'd be a darned shame if in the middle of my Auto-HURDLE, my alliance partner inadvertantly makes me TURN LEFT! :ahh: This concern will end up influencing my team's placement of the IR sensor, to make sure that we have access to the PROGRAMMING button ... we can re-load the 1/2/3/4 buttons from our (very typical) Sony remote control into something like CH UP / CH DN / MUTE / MENU ... or some other keys. |
Re: How many RoboCoach Commands?
Quote:
I don't know exactly how IR works, but let's say every single button press on every single remote control in the world has a unique wavelength, and that's how the board identifies them. I know they aren't that unique, but just for the sake of argument. Now let's say you press the "A" button. Good, now you press the "B" button. The signal state has changed from x nanometers in wavelength to y nanometers in wavelength, and by doing so it has encoded a larger message. If that explanation doesn't make it crystal clear... then I guess go ahead and use your idea. Quote:
|
Re: How many RoboCoach Commands?
Quote:
Quote:
Quote:
Quote:
All of you are concerned with default behavior. Specifically, you all mention that when the Action (which is triggered by the Command) ends, then the robot should default to Default Behavior. Let me first define some of my terms: Action -- a series of clearly defined movements; can be as simple as "move faster" or as complicated as "go explore that rock, drill a hole in it, do some chemistry, and back up ten feet and stop." (credit: ebarker) Command -- any information sent to the robot to trigger an action; according to FIRST rules, there can be no more than four distinct commands. Default Behavior -- whatever the robot was doing before any commands were issued, and before any actions were embarked upon. Now if you'll bear with me, imagine this: what if the default behavior was that the robot was standing still, and would remain standing still unless any other command was received? Now my examples and previously expressed exasperation should make sense, and you should agree with me that what I describe is illegal according to the 2008 rules, but in case it doesn't make sense and/or you don't agree, I'll walk through the 15-second hybrid period, time slot by time slot. If you're just tuning in now, you'll need to refer to my previous post to understand what I'm talking about. Time 00:00 -- Hybrid period begins. The robot begins its default behavior, which, as I previously mentioned, is standing still. 00:00 - 00:03 -- Command "1" is received. Action "A" is triggered. 00:03 - 00:06 -- No command is sent. Since no command is received in this time slot (00:03 - 00:06), Action "E" is triggered. 00:06 - 00:09 -- Command "4" is received. Action "D" is triggered. 00:09 - 00:12 -- Command "3" is received. Action "C" is triggered. 00:12 - 00:15 -- Command "2" is received. Action "B" is triggered. Action E is triggered by the lack of a command in any of the 5 time slots, would NOT normally happen as a part of Default Behavior. This is what I've been trying to say: it is possible to 1) transmit a command, 2) and trigger any action (including complex series of events), without actually sending a signal to the robot. AND, if the sum total of the distinct commands (including any commands sent by a LACK of a signal) total more than four, then the robot is violating the rules. Quote:
|
Re: How many RoboCoach Commands?
Quote:
|
Re: How many RoboCoach Commands?
So what I'm seeing is action "E" occurs after any of A, B, C, or D. E is just simply an extension to the other four. In other words the E property is contained inside of the A,B,C,D.
Think of it this way. If you have multiple programs you can choose several ways to implement things. abort - pressing A then B. B aborts A and executes B. example. A = go forward, B = stop interrupt - pressing A then B. B interrupts A and executes and the returns which lets A resume it's task. example. A = make tea, B = make coffee, when done go back to making tea queue - pressing A then B. A is executed completely, then B example, A = make tea, B = then make coffee What I think is clearly forbidden and against the spirit of the rules is this: If you telegraphed within a short interval say: AAA - program #1 AAB - program #2 ABC - program #3 ABD - program #4 ABA - program #5 DBA - program #6 DAD - program #7 and the list go's on and on, etc "It is left as an exercise to the student to determine the number of permutations." |
Re: How many RoboCoach Commands?
More -
Definitions: lawyering - turning and twisting an interpretation to suit the needs of the reader, usually to the detriment of the person or group that wrote the document. specification - fullfilling a customer need, making a precise determination what the customer needs in the product. It is generally agreed that "lawyering" is undesirable and we don't want to telegraph a zillion messages. So let's see if we can fulfill this customer specification. buttons = A - go, B - turn left, C - turn right, D - stop example #1 - a command can cancel or abort a previous command elapsed time 0 - A start going forward 3 - B stop and turn left 5 - A start going forward 7 - D stop example #2 a command can interrupt a previous command elapsed time 0 - A start going forward 3 - B keep going and turn left 5 - D stop 7 - C turn right and stop In example #2 it interrupts the previous command and resumes after completion. The theoretical principal is the same as a software interrupt. Just a different implementation. Back to lawyering versus specification. Clearly using 4 buttons to telegraph a zillion programs is forbidden. But does our customer want the behavior in example #1 or #2 ??? (This sounds like my job every day, discerning this type of customer spec.) Two more examples. buttons = A - go control, B - turn left control, C - turn right control Notice the button descriptions are slightly different than above example #3 - a command can cancel or abort a previous command elapsed time 0 - A start going forward 3 - A stop 5 - B start turning left 7 - B stop turning left example #4 a command can interrupt a previous command elapsed time 0 - A start going forward 3 - B start turning left and keep going 3 - B stop turning left and keep going 5 - A stop are examples #3 and #4 legal ? And if so how do label the 3x5 card ? 1st card buttons = A - go, B - turn left, C - turn right, D - stop 2nd card buttons = A - go control, B - turn left control, C - turn right control ????????????? |
Re: How many RoboCoach Commands?
I think that there is a definite difference between an action and a state change. For example, if pressing button A "switches direction," is that legal? In some cases, it allows the robot to move forward, but other times backward...
My question, though, is how many total times can the Robocoach press the various buttons? Say A is turn left, B is turn right, C is manipulator up, and D is manipulator down. The rules specify that only 4 commands may be sent; they do not specify how many times each of the four commands may be sent. It seems that they only want a maximum of four button presses, but the wording is not definite either way. |
Re: How many RoboCoach Commands?
1 Attachment(s)
Quote:
In this example, sending a signal to the robot initiates a series of commands, and the lack of a signal just means that the series initiated by the previous command. for example, you might hit "1" which means "drive over there, pick up that rock, and drill a hole in it" as three separate and distinct states. If during the first state in the sequence you send it command "2" which says "turn left, drive straight for 3 seconds, then stop and wait for instructions", you would be interrupting the sequence started with command "1", which is perfectly legal. So from your example, action E is part of the default behavior of A. They key is to draw out the state diagram, and ensure that each command received by the robot only goes to one state - it's illegal for button 4 to mean something different based on the state it's in. You could have more than one state per button, so long as the state is the same in every instance and the only difference is that it goes back to whatever it was doing previously (instead of always moving on to the same next state). The signal means the same thing every time. the robot's actions are the same every time for that signal. |
Re: How many RoboCoach Commands?
Quote:
the rules say that the robocoach can communicate no more than four messages, states or conditions to the ROBOT. However, what if he messages are not sent to the robot. Rather, if they were sent to the driver. in that aspect you could communicate to the driver after autonomous mode was over. Also it is stated that no more then four inputs may be used by the robocoach.... it never mentions outputs though!!!!:yikes: |
| All times are GMT -5. The time now is 02:19. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi