diff --git a/docs-source/conf.py b/docs-source/conf.py index 8fe8096..a68336b 100644 --- a/docs-source/conf.py +++ b/docs-source/conf.py @@ -71,6 +71,8 @@ DUAL_THEME_DIAGRAMS = [ "field/network/diagrams/ssl_field_network_fanout_truss.drawio", "field/network/diagrams/ssl_field_network_fanout_direct.drawio", + "field/diagrams/setup_field.drawio", + "field/diagrams/setup_lab.drawio", ] diff --git a/docs-source/field/complayout.md b/docs-source/field/complayout.md index 24908d9..c96a306 100644 --- a/docs-source/field/complayout.md +++ b/docs-source/field/complayout.md @@ -10,16 +10,15 @@ noted. A full diagram is provided below. Scale is approximately relative to the field, but omitted to allow for local variance. -![Full Competition Field Diagram](images/comp-field-arch-icons.svg) +{image} diagrams/setup_field.light.svg +:class: only-light +:alt: Competition Setup Diagram -There's a lot to dissect here, but lets define some abbreviations: +{image} diagrams/setup_field.dark.svg +:class: only-dark +:alt: Competition Setup Diagram -- GC - Game Controller -- VIS - Vision Computer -- NE - Networking Equipment -- SC - Streaming Computer - -The colors hold meaning as well: +The colors implies the following meaning: - Yellow - Yellow Team resource - Blue - Blue Team resource @@ -41,33 +40,63 @@ malfunction so this separation is key. A physical barrier is recommended between ### Tables -Enough tables should be provided such that the vision and game controller each have at least half a table. Each team -should have at least 1 full table at the field during their match or registered practice slot. A permanent dedicated -field table for the full duration of the event is not guaranteed; teams may need to share between matches. Tables should -be no smaller than ~1m x 2m (3 x 6ft). +Tables should be no smaller than ~1m x 2m (3 x 6ft). please refer to [Top Level Diagram](#top-level-diagram) for further +position reference. + +Since we might not get the same amount of tables per event, and the position of the fields will be different, the +following outlines the tables function and each position relative promximity. + +#### Spaces between Tables and Field + +For ease of access into the field for Robot Handlers, and Referees, a one-person's gap must be maintained between the +tables and the field. + +The overall position of tables may be adjusted strategicly. This is done so to ensure a clear line of sight between +spectators and audiences to the field at all times. -A gap should be present at the midfield line so game officials and robot handles have easy access to enter and leave the -field. Care should be taken to secure netwokring cables on the ground at this entry point in particular. This is also -the area most likely to be used to put in and remove robots (compared to the far side). +As there will be ethernet (networking) cables provided to each table, care should be taken to perform proper cable +management to ensure that the cables are secure and far from unwanted attention such as participants or workers stepping +or tripping on them. The positioning of cables must be placed out of the audience and spectators line of sight at all +times. -Organizers should avoid placing tables between the field and spectators. Typically with specified field size and number -of teams in attendance it is not necessary to place tables all the way around the field. This means it is possible to -keep clear line of sight between spectators and the field. This also has the advantage of placing the robot handlers and -remote controls in closer proximity to the referee and game controller. If issues arise via challenge flags, or field -network faults all of the relevant parties are in closer proximity to each other to resolve any issues. +#### Vision and Game Controller Computer Tables + +The [Vision Computer](#vision-computer) and [Game Controller Computer](#game-controller-computer) each should occupy +half of a table separately and located to the left and right of the mid-field line. + +#### Team Tables + +Each team should have at least 1 full table next to the field during their match or registered practice slot. Each table should be provided with one power outlet and one networking cable. It is the team's responsibility to bring a -power strip or network switch if they need more than one connection when arriving at their table for the match. +power extension board or additional netowrking equipment if they require more than one connection during competition and +practices. + +> Please note that no permanent dedicated field tables per teams are guaranteed; teams are expected to share these +> tables between matches and practices. + +##### remote controllers + +There are 2 remote controllers during comeptition, one for each team, each will be positioned close to the team setup. +The positioning of remote controllers affect the Robot Handler is position during the game. + +Ideally, the position of the remote controllers should allow a direct line of sight for the person standing next to it +with the Referee and Game Controller Operator. This is preferred as netowrking issues may arise or controller being +faulty, and would be easier for the Robot Handler to report the problem to the Referee. + +Robot handlers are encouraged to check with Referee and Game Controller Operator during the game to voice out their +concern if the remote controller feels unresponsive. For example a challenge flag has been raised but there was not +stopping of the game. ### Event Equipment -The vision and game controller computers should be placed close to each other, the midfield line, and the referee. This -has several advantages: +The [Vision Computer](#vision-computer) and [Game Controller Computer](#game-controller-computer) should be placed close +to each other, the midfield line, and the referee. This has several advantages: -- The Referee and GCO can communicate easily -- The VE and GCO can communicate as necessary +- The Referee and Game Controller Operator(GCO) can communicate easily +- The Vision Expert(VE) and GCO can communicate as necessary - Networking is centrally located and can be patched more easily -- A physical space buffer is provided between the teams and the midfield, lowering congestion +- A physical space buffer is provided between the teams and the midfield, lowering congestion. It's shown in the diagram as being split across the midfield line, but combining them into one table on a single side is also common. If this is done, it's preferable to have one empty table on the opposing side, or to omit it to provide the @@ -86,11 +115,16 @@ assistant referee who may be attempting to communicate both across the field and Only the function of components, not people are described here. For the purpose of specific human roles, consult the rules. -### Networking Equipment +### Field Network -The networking equipment is the small cyan box labeled "NE" on the diagram. It is typically centrally located near the -ground. The networking equipment is responsible for connecting all of the computers at the field and providing essential -network services. See the [Network and Compute](network/compute.md) for physical network details. +The Field Network is a dedicated network that connects all the devices such as [vision computer](#vision-computer), +[Game Controller Computer](#game-controller-computer), [Team Computer](#team-computer), +[ssl-status board (optional)](#status-board-recommended-optional), and +[streaming computer (Optional)](#streaming-computer-optional). This equipement is usually a managed networking switch, +located on the ground near the centre of the field, see [image](#competition-field) for more information. + +This Field Network is responsible for providing essential network services See the +[Network and Compute](network/compute.md) for physical network details. ### Cameras @@ -102,17 +136,25 @@ More information is present in the [Cameras and Lenses](cameras.md) page. ### Vision Computer -The vision computer is the device labeled "VIS" in the diagram. The vision computer is responsible for providing robot -and ball position data on the network. League software processes camera data and field geometry to produce accurate -positions. This computer needs a connection to one or more cameras directly, or their associated mounted computer. The -specifics of this connection can be very field dependent and are described in more detail under the possible -configurations section below. See the [Vision Protocol](/protocol/vision.md) page for the league software that fills -this role. +The vision computer is responsible for providing robot and ball position data via the network. League software processes +camera data and field geometry to produce accurate positions. + +This computer requires a connection to the field cameras directly, or the additional computer that connects to the Field +Cameras. + +Fields may have different camera combinations. See the [Vision Protocol](/protocol/vision.md) page for the league +software that fills this role. ### Game Controller Computer -The game controller computer is the device labeled "GC" in the diagram. The game controller computer manages the game -state and publishes this information to the network. It also accepts requests from the teams via the remote control or +The Game Controller Computer hosts [ssl-game-controller] that also publishes information to +[ssl-status-boards](#status-board-recommended-optional). This software holds crucial information on game state, events, +and team information. + +Similar to [Vision Computer](#vision-computer), the Game Controller Computer communicates the information via the +[Field Network](#field-network). + +Due to the properties of [ssl-game-controller](<>)It also accepts requests from the teams via the remote control or optionally the team AI software. See the [Referee Protocol](/protocol/referee.md) page for the league software that fills this role. @@ -130,6 +172,9 @@ Often times networking contractors at large events are unable to accommodate the Teams are responsible for bringing their own computer to run their software and AI. Teams should expect only one network and one power connection at their table. +Teams are encouraged to bring additional equipment to make their connections, communications to robot, troubleshooting +and debugging work. + ### Status Board (Recommended, Optional) The status board displays the score, game time, and events such as infractions and goals. At least one display should be diff --git a/docs-source/field/diagrams/setup_field.drawio b/docs-source/field/diagrams/setup_field.drawio new file mode 100644 index 0000000..02cf91c --- /dev/null +++ b/docs-source/field/diagrams/setup_field.drawio @@ -0,0 +1,228 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs-source/field/diagrams/setup_lab.drawio b/docs-source/field/diagrams/setup_lab.drawio new file mode 100644 index 0000000..2939ca8 --- /dev/null +++ b/docs-source/field/diagrams/setup_lab.drawio @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs-source/field/images/setup_field.drawio.png b/docs-source/field/images/setup_field.drawio.png new file mode 100644 index 0000000..dc10200 Binary files /dev/null and b/docs-source/field/images/setup_field.drawio.png differ diff --git a/docs-source/field/images/setup_lab.drawio.png b/docs-source/field/images/setup_lab.drawio.png new file mode 100644 index 0000000..7ccabff Binary files /dev/null and b/docs-source/field/images/setup_lab.drawio.png differ diff --git a/docs-source/field/lablayout.md b/docs-source/field/lablayout.md index 6a29ec2..da0b89c 100644 --- a/docs-source/field/lablayout.md +++ b/docs-source/field/lablayout.md @@ -10,15 +10,13 @@ all of the pieces at play. This minimal setup condenses that functionality. A diagram is provided below. Scale is approximately relative to the field. -**Picture coming soon!** +{image} diagrams/setup_lab.light.svg +:class: only-light +:alt: Competition Setup Diagram -![Full Competition Field Diagram](images/comp-field-full.png) - -There's a lot to dissect here, some abbreviations: - -- FC - Field Computer -- TC - Team Computer -- NE - Networking Equipment +{image} diagrams/setup_lab.dark.svg +:class: only-dark +:alt: Competition Setup Diagram ## Placement and Layout Guidance @@ -32,10 +30,14 @@ arbitrary dimensions. In a typical lab setup, lots of equipment does double duty. -### Networking Equipment +### Field Network + +This connects the [Field Computer](#field-computer) and [Team Computer](#team-computer), transmitting +SSL-software-related data, such as Game Controller and Vision messages. Having this equipment is recommended, as it +replicates the competition setup, where your computer attaches directly to the Field Network switch. -The networking equipment is the small cyan box labeled "NE" on the diagram. This will connect the team computers -together, provide networking services, and also provide an internet uplink. This is often preferred over wireless. +This connection also typically provides Internet access, simplifying code deployment, troubleshooting, and development. +Without Internet access, however, the Field Computer is unaffected and continues to operate normally. ### Field Computer