Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
-
QuantamGuy
- Member

- Posts: 8
- Joined: December 26th, 2023, 9:45 pm
- Division: B
- State: ND
- Has thanked: 0
- Been thanked: 0
Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
Rule 6.d mentions, "Using a software simulation of the robot to verify motions and/or runtimes is not permitted".I have a few questions on how this applied:
1. Does this mean I cannot make a GUI interface to select certain points on a grid?
2. Is creating a program that takes in a drawing of the path, and then translates it to code for the bot to follow fall under simulation?
1. Does this mean I cannot make a GUI interface to select certain points on a grid?
2. Is creating a program that takes in a drawing of the path, and then translates it to code for the bot to follow fall under simulation?
-
alkotz
- Member

- Posts: 8
- Joined: November 12th, 2019, 6:42 pm
- Division: C
- State: MN
- Has thanked: 1 time
- Been thanked: 0
Re: Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
I'll be interested to hear what others have to say on these questions.
1) As per a response in the FAQs, based on rule 6.d.i, a spreadsheet of movements that computes the run time would be a simulation and so is not allowed. So if that GUI interface that you are interacting with accepts speed info from you and estimates the run time, then it would definitely be a violation. The other part of this question is a little less clear: 6.d.i also disallows simulation of the route ("motions"). So can you simply tap target locations into a setup GUI and have it compute the correct motions? I don't know. It sounds like it is getting close to a violation here. I haven't read the FAQ lists in the last few weeks, so I don't know if there is any additional info offered there.
2) Can you write a program that scans a drawing and translates it to code? That would be pretty sophisticated for what I think the intent of this event is, but ignoring that, I think this would fall into the same category as asking whether a routing GUI is allowed. The fundamental question is whether such a setup process constitutes a "simulation".
An alternate approach to the problem of setting the run time: why not use a couple computing cycles on your robot to compute the speed needed on each leg to reach the target on time? Then the speed calculation is done at runtime by the robot and could even be updated in mid run based on real run data (as long as it doesn't create a "stalling penalty" as per 6.o). I think this is entirely in the intended spirit of this event.
Another "tool" you can have in your arsenal is to have a complete log that includes info on time for various operations that you might command and you do the math yourself for runtime (then it is not a software simulation). For example, a 90 deg left turn at 55% speed might take 3.1 seconds, etc. Don't forget transition times between movements in your log if they are measurable.
1) As per a response in the FAQs, based on rule 6.d.i, a spreadsheet of movements that computes the run time would be a simulation and so is not allowed. So if that GUI interface that you are interacting with accepts speed info from you and estimates the run time, then it would definitely be a violation. The other part of this question is a little less clear: 6.d.i also disallows simulation of the route ("motions"). So can you simply tap target locations into a setup GUI and have it compute the correct motions? I don't know. It sounds like it is getting close to a violation here. I haven't read the FAQ lists in the last few weeks, so I don't know if there is any additional info offered there.
2) Can you write a program that scans a drawing and translates it to code? That would be pretty sophisticated for what I think the intent of this event is, but ignoring that, I think this would fall into the same category as asking whether a routing GUI is allowed. The fundamental question is whether such a setup process constitutes a "simulation".
An alternate approach to the problem of setting the run time: why not use a couple computing cycles on your robot to compute the speed needed on each leg to reach the target on time? Then the speed calculation is done at runtime by the robot and could even be updated in mid run based on real run data (as long as it doesn't create a "stalling penalty" as per 6.o). I think this is entirely in the intended spirit of this event.
Another "tool" you can have in your arsenal is to have a complete log that includes info on time for various operations that you might command and you do the math yourself for runtime (then it is not a software simulation). For example, a 90 deg left turn at 55% speed might take 3.1 seconds, etc. Don't forget transition times between movements in your log if they are measurable.
-
QuantamGuy
- Member

- Posts: 8
- Joined: December 26th, 2023, 9:45 pm
- Division: B
- State: ND
- Has thanked: 0
- Been thanked: 0
Re: Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
1) The GUI interface's idea is only to select starting points, endpoints, obstacles, and barriers. the program uses this to compute a path that we upload to the bot. idk if this would be allowed
2) I was thinking of using splines on the GUI interface of the course that would translate to movements on the map. if 1 was allowed,I would integrate this with it
2) I was thinking of using splines on the GUI interface of the course that would translate to movements on the map. if 1 was allowed,I would integrate this with it
-
brian9640
- Member

- Posts: 80
- Joined: April 11th, 2016, 9:14 am
- State: OH
- Has thanked: 2 times
- Been thanked: 24 times
Re: Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
As an event supervisor for Robot Tour, I would rule your GUI as described as a violation. To be clear, this is an opinion!!! You can always hope arbitration interprets the rules differently. Which is very risky.
The rules and FAQ (see link below) specify competitors must modify the impound program. Which is defined as one or several source code files. Your GUI is configuring the robot. By configuring I mean your GUI is NOT modifying the source code files impounded. As I read the rules and this FAQ, students need to modify the impounded source code files to program how the robot will move.
If your GUI was modifying the source files, then the GUI is a software simulation. Plus the GUI is providing a visual simulation of the robot's motion.
https://www.soinc.org/rule-says-teams-a ... ogram-what
The rules and FAQ (see link below) specify competitors must modify the impound program. Which is defined as one or several source code files. Your GUI is configuring the robot. By configuring I mean your GUI is NOT modifying the source code files impounded. As I read the rules and this FAQ, students need to modify the impounded source code files to program how the robot will move.
If your GUI was modifying the source files, then the GUI is a software simulation. Plus the GUI is providing a visual simulation of the robot's motion.
https://www.soinc.org/rule-says-teams-a ... ogram-what
Last edited by brian9640 on January 4th, 2024, 5:28 pm, edited 6 times in total.
-
QuantamGuy
- Member

- Posts: 8
- Joined: December 26th, 2023, 9:45 pm
- Division: B
- State: ND
- Has thanked: 0
- Been thanked: 0
Re: Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
The thing is,my program will be an exe that i can run,that wil open the gui.woulden that count as a program file?
-
brian9640
- Member

- Posts: 80
- Joined: April 11th, 2016, 9:14 am
- State: OH
- Has thanked: 2 times
- Been thanked: 24 times
Re: Question on"Using a software simulation of the robot to verify motions and/or runtimes is not permitted"
Look at the link below for a FAQ on simulation.QuantamGuy wrote: ↑January 18th, 2024, 5:33 pm The thing is,my program will be an exe that i can run,that wil open the gui.woulden that count as a program file?
https://www.soinc.org/rules-state-using ... -keys-tell
Let me ask you a question as an event supervisor:
How are you modifying the impounded source code? An FAQ requires competitors to modify their impounded source code.
I'm concerned your answer would be "you are not". An 'exe' is a compiled program. That would indicate you are not modifying any source code. I have not seen your robot program, but the FAQ above and your description makes me believe your solution is illegal. Again this is only an opinion!!!
Who is online
Users browsing this forum: No registered users and 0 guests