1 / 41

FIRST LEGO League Tournament Software

This software, entirely written in LabVIEW by National Instruments, offers features like game clock, score tracking, sponsor logo display, and networked configurations. It includes control and display applications for local and remote use, along with minimum hardware and software requirements. The timer/sound/schedule selector allows for easy control of match timings with sound cues and schedule management.

morins
Download Presentation

FIRST LEGO League Tournament Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FIRST LEGO LeagueTournament Software Created By: Danny Diaz, National Instruments danny.diaz@ni.com

  2. FIRST LEGO League Tournament SoftwareIntroduction • Tournament Software Features • Provides Game Clock • Provides Score Sheets and Score Tracking • Provides Score/Match Information Display • Provides Main Display and Pit Display Options • Provides Information about Individual Rounds • Provides Sponsor Logo Display • Provides Networked Configurations • Entirely Written In National Instruments LabVIEW

  3. FIRST LEGO League Tournament SoftwareSoftware Components • Control Application • Main Software for Tournament Control • Display Application • Tournament Information Display (local / remote) • Score Sheet • Referee Paper Score Sheet (PDF) • Designed by Laura Hayden, National Instruments • Tournament Scheduler • Creates Team / Schedule Information (Excel) • Created by Bryan Lee, BAE Systems

  4. FIRST LEGO League Tournament SoftwareMinimum Requirements • Single Computer Requirements • 1+ GHz PC Compatible w/ 512MB RAM • 100MB Hard Disk Space • 1024 x 768 Screen Resolution (exact) • Windows 2000 SP4 or Windows XP SP2

  5. FIRST LEGO League Tournament SoftwareMinimum Requirements • Networked Computer Requirements • 1+ GHz PC Compatible w/ 512MB RAM • 100MB Hard Disk Space • 1024 x 768 Screen Resolution (exact) • Windows 2000 SP4 or Windows XP SP2 • Networking • Wireless - 802.11g (54Mbps) Network or Better • Wired - 100Mbps Ethernet or Better

  6. FIRST LEGO League Tournament SoftwareHardware Configuration • Multiple Configurations • Single Computer, Single Source • Computer Video Plugged Directly Into Projector • Freeze Projector Image While Updating Scores or Starting Timer • Only really viable for Laptop w/ exported display

  7. FIRST LEGO League Tournament SoftwareHardware Configuration • Multiple Configurations • Single Computer, Multiple Sources • One Computer w/ Extended Desktop • Main Display Operating Control Application • Extended Display Operating Display Application

  8. FIRST LEGO League Tournament SoftwareHardware Configuration • Multiple Configurations • Remote Computers, Simple Configuration • Local System Operating Control Application • One or more Networked Systems Using Display App

  9. FIRST LEGO League Tournament SoftwareHardware Configuration • Multiple Configurations • Remote Computers, Advanced Configuration • One Networked System w/Control App for Timer Control • One Networked System w/Control App for Score Entry • One or More Networked Systems Using Display App

  10. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application

  11. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application • Control Application • Main Program for Tournament Software • Controls Game Clock • Facilitates Score Entry • Hosts All Remote Data • Controls All Run-Time Configurable Settings

  12. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Timer/Sound/Schedule Selector Timer/Sound/Schedule Selector

  13. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Timer/Sound/Schedule Selector • Timer/Sound/Schedule Selector • Switches Between 3 Menus • Timer • Timer Start/Stop/Reset • Sounds • Start / Stop / Uh Oh Sounds • Schedule • Team Information & Schedule • Imported from the Tournament Scheduler • Scores File • Save / Load Scores

  14. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Timer/Sound/Schedule Selector • Timer Control • Timer Button • One-Click Timer Control • Button’s Color Indicates Mode • Red Button – Timer is stopped, reset, and ready to start new match. One click will play start sound, begin the next match, and turn the button green. • Green Button – Primary Game time is running, one click will stop match and play uh-oh sound. Timer then turns red and the match is ready to start again. When match ends on time, stop sound is played, and the button turns yellow. • Yellow Button – Secondary Game time is running. One click will stop the timer, reset the timer, and make the button turn red. • Timer Display • Displays time shown on main display

  15. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Timer/Sound/Schedule Selector • Sounds • App Notes: • Requires DirectX 8.0 or Better**. • [BUG] All Sounds must have the same sampling rate. • Start Delay* – Delay for timer to start after the sound has been played. • Stop Trig* - Time at which stop sound will be played • Volume – Sound Volume * For audio systems with delays, these delays/triggers should be used to sync the sounds with the actual timer. ** DirectX 8.0 or better is installed with XP SP2

  16. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Timer/Sound/Schedule Selector • Schedule / Scores File Settings • Browse Schedule • Import a new schedule file • Schedule / Alliance Schedule / etc. • Reload Schedule • Updates a loaded schedule • Good for updating team info (names) • Will not add new teams from file • Load Scores File • Creates a New scores file, loads an existing file, or overwrites an existing file. This must be set before entering scores. * Schedule files are generated by Bryan Lee’s Tournament Scheduler. File format descriptions can be found on the GroupHub.

  17. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector Score Selector Primary Config/Auto-ScoreSheet/Results Selector/Bracket Control

  18. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Primary Selector • Control Config • Allows you to customize all of the configurable options and save them. • Score Entry • Provides score entry capabilities, including a clickable-entry method resembling the referee score sheet. • Match Results • Display match results on the main display. • Bracket Control • Displays/controls bracket usage.

  19. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Table Colors • Defines the colors of the tables on the bottom of the Display Application*. • Click on the colors themselves in order to activate an advanced color picker. • Table Colors are a substitute for giving tables real names. Most tournaments refer to tables as “red table”, “green table”, etc… so this allows the tables to be “named” visually from within the display. • Updates refresh to the display application almost immediately. * Graphic above is from the Display Application; note the table colors!

  20. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Clock Config • Defines the time duration for the primary clock and the secondary clock (in seconds). • Primary clock runs when match starts. • Secondary clock runs once primary clock expires. The purpose of the secondary clock is to help keep the tournament on time between matches. • Updates to either of these occur immediately, even if the clocks are currently running!

  21. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Logo / Title Config • Defines what logos* are placed into each of the 3 logo slots, and what their refresh rates are (how fast they cycle images). • Each set of logos are defined in a file, consisting of the number of logos and the paths to each logo on separate lines. • The title is what is displayed at the top of the display application. Unfortunately there is no way to customize this when done in this fashion; we cannot italicize the word FIRST. * Logo graphics are scaled to the size of the logo window, preserving their aspect ratio. Sometimes this scaling isn’t performed optimally, creating ugly or blocky looking logos. In order to prevent scaling, make the logo have a max width of 179 pixels or a max height of 49 pixels.

  22. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Display Params • Defines how fast the 10 displayed team info scrolls on Display Application. • External Clock Support • Provides support for external timer clocks. Must use MicroFrame Computer Controlled Displays. • Defines the RS232 serial port connected to the displays. • This is the ONLY configuration box that is NOT saved in a configuration profile!

  23. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Match Config • Allows you to switch between “Ranking” matches or “Practice” matches. • Allows you to change the current match number. The match number is incremented when the primary game clock expires normally for a match (not when an uh-oh occurs). • Practice Match score information is NOT saved in the score file, even though one has to be defined in order to enter scores. The Practice Scores ARE displayed, however. * I lied. This information isn’t stored in the configuration profile either.

  24. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Data Server Control • The Control Application uses the DataSocket Server to host data for local and remote Display Applications. • DataSocket Server is lanched on Control Application Startup, and is minimized into the system tray (icon on right). • On rare occasions the DataSocket server may stop updating information. If this happens, a simple restart of the server can solve this problem and it will begin updating information once again. DataSocket Server Icon

  25. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Control Config • Profile Control • A Profile is a set of configuration parameters grouped together. This allows you to save configurations once you have tweaked them to your liking. The profile saves almost every entry cell in the program. • Make Default – makes the current set of configurations the default* configuration. These parameters are loaded automatically when the program starts up. • Save / Load Profile – allows you to save or load a configuration profile to/from disk. * The default configuration profile is stored in the default.cfg file located in the \data directory for the software. If you want to restore the default profile to “factory” settings just delete this file and a new one will be created when you click “Make Default”.

  26. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Score Entry • Score Type Selection • Allows you to select one of the following options: • Calculated Score – automatically calculates a score based on the score sheet buttons. • Did Not Compete – Primarily used for when a team does not show up for a match, but is still competing. • No Score – Since a score of ZERO is a “reserved” score*, you must select this to allow a score of zero to be entered. • Manual Score – Manually enter in a score. * A zero score is a reserved score because it is used to signify whether or not a score has been entered. When a score of ZERO or Did Not Compete is entered, the score is recorded as a “-2” or “-1” respectively. The score is displayed correctly on the display app.

  27. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Score Entry • Board Reset • Resets the board / score. This is done automatically when a score is entered, this button shouldn’t need to be used. • Bonus Indicator • This displays whether or not the Fairness Bonus is being applied (only valid in “Calculated Score” mode).

  28. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Match Results • Match For Results • Use this to select the match number to display the results for. • Get Teams / Scores • Press this button to auto-load the teams that competed in that match, as well as the scores that were entered for that match. • Show Match Results • Pressing this button causes it to turn green, and on any display marked as a MAIN display (as opposed to a PIT display) will switch to show the results. Click again to return to normal.

  29. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Primary Selector • Bracket Control • Bracket control is not a fully matured feature, and requires the scorekeeper to use the match results screen manually. Information is displayed on the Display App in near real time when active. • Activate Bracket • Use this to cause the display application to display the bracket instead of the scores. • Populate Quarterfinals • This button takes the top 8 teams, arranges them in a standard seeding configuration, and posts them in the bracket. This also clears out all other boxes. • Save Bracket Info • Saves the team/bracket information.

  30. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Team Score Control Team Score Control

  31. FIRST LEGO League Tournament SoftwareSoftware Configuration – Control Application – Team Score Control • Team Score Control • Team ID / Name • Allows you to select the team to give a score to. You are not allowed to set a round score to a team until you select a different team – this is for score protection. • Set Rx Score • Allows you to set the score in the Score field (Score Sheet) for a given round for that team. You can identify rounds a team has not received a score from by the score; a score of zero is reserved for NO SCORE. • Submit Score • Submits the score to the score file. Any errors in a calculated score are shown, and may prevent score entry.

  32. FIRST LEGO League Tournament SoftwareSoftware Configuration – Display Application

  33. FIRST LEGO League Tournament SoftwareSoftware Configuration – Display Application • Display Application • Tournament Software Display • Pulls all information from Control App DataSocket Server • MUST run on 1024x768 resolution display (no more, no less) • Has 2 Modes of Operation • Can be Networked or Local

  34. FIRST LEGO League Tournament SoftwareSoftware Configuration – Display Application – Setup Display Application Setup • The Display App starts In a window. Move the window to the desired desktop screen and press the yellow “Stick Window” button. This will cause the window to maximize in that screen and lose its mobility. You may need to hide the taskbar if it is visible on that screen. • Determine if the Display App will be used as a Main display or as a Pit display – the difference is that only a Main display swaps the score updating window for the match results when results are displayed. Press the desired button, and both buttons will disappear. • Type in the IP address of the computer running the DataSocket server you want to connect to in the IP Address control, and press CONNECT. Once connected, all related buttons and controls will disappear. Remember, the local machine can be targeted with an IP of 127.0.0.1 • To close the Display Application, click on it and press ALT-F4.

  35. FIRST LEGO League Tournament SoftwareSoftware Configuration – Display Application – Runtime Notes Display Application – Runtime Notes • The Tournament Software is currently designed to only work for 2 tournament setups; 2 tables with 1 running simultaneously, and 4 tables with 2 running simultaneously. • The Display Application indicates which tables are running with a green background on the tables as well as a green timer bar and match indicator. For a 2 table tournament, only the first and third table is used, even though they will be able to have a color assigned to them.

  36. FIRST LEGO League Tournament SoftwareSoftware Configuration – Advanced Configuration (Split Timer and Scorekeeper) Advanced Configuration – Splitting the Timer and Scorekeeper

  37. FIRST LEGO League Tournament SoftwareSoftware Configuration – Advanced Configuration (Split Timer and Scorekeeper) Advanced Configuration • The normal use-case is to have one computer serve as both the timer and scorekeeper station, so that events with limited equipment are satisfied. • It is sometimes desirable to separate the Timer functionality from the Scorekeeper functionality. • This allows a single dedicated scorekeeper to focus on scorekeeper data entry instead of that AND timer control • It is possible to run 2 computers and dedicate one toward scorekeeping and one toward timekeeping, instead of just one for both. • Each computer then becomes responsible for different aspects of the information for the display • When separated, the Display App(s) must be pointed to each “half” of the information

  38. FIRST LEGO League Tournament SoftwareSoftware Configuration – Advanced Configuration (Split Timer and Scorekeeper) Split Duties – The Timer Station • When seperated, the Timer Station runs the Control Application but only uses it for its timer and team queuing capabilities. • The Timer Station is responsible for: • Configuring / Starting / Stopping the Game Clock • Configuring / Playing Sounds Triggered by the Game Clock • Advancing the Match Number • Updating data for the “Team Status Bar” information at the bottom of the Display Application (NOT the score information table) • The Timer Station requires that the same schedule CSV file be loaded for both the Scorekeeper and the Timer Station • This is because the timer app needs information about schedule information to update who is playing and who is “on deck”

  39. FIRST LEGO League Tournament SoftwareSoftware Configuration – Advanced Configuration (Split Timer and Scorekeeper) Split Duties – The Scorekeeper Station • When seperated, the Scorekeeper Station runs the Control Application and controls almost all aspects of the software. • The Scorekeeper Station is responsible for: • Configuring the Display Application Properties (Name, Table Colors, etc…) • Keeping Score and storing the scores in a scores file • Displaying Match Scores, Updating Team Scores, etc… • Logo Control (Scorekeeper hosts logo information for Display) • The Scorekeeper Station requires that the same schedule CSV file be loaded for both the Scorekeeper and the Timer Stations • This is because the scorekeeper needs information about teams for round score entry, and schedule information for match display mode.

  40. FIRST LEGO League Tournament SoftwareSoftware Configuration – Advanced Configuration (Split Timer and Scorekeeper) Display Application Setup for Advanced Configuration • The Display App has the ability to connect to 2 DataSocket servers at the same time, for the purpose of allowing separate control applications to control the Timer and the Score Display. • To select different servers, click on the “Advanced Settings” button under the “IP Address” control. This will activate a modal window that will allow you to select which servers to target for different functionality. • Type in the IP Addresses, and press the “Connect to …” buttons. Once the servers are verified to be running and contain the correct information, the server indicator will turn green. • Once both server indicators turn green, press the GO button to finish the advanced configuration. • Remember, both control applications MUST load the SAME schedule file – this file may be shared via a network share or copied via floppy disk!

  41. FIRST LEGO League Tournament SoftwareSoftware Configuration – Advanced Configuration (Split Timer and Scorekeeper) Troubleshooting the Advanced Configuration • Make sure both Control Applications are up and running before attempting to connect the separate stations with the Display App(s). • If a station is not connecting correctly, • Make sure you can “see” the computers on the network (the computers must have an IP address, must be able to “ping” one another, etc…). • You might need to restart the Datasocket server on either the timer or scorekeeper app or both. Press the yellow “reset server” button in the “Control config” window in each app. • Your Windows Firewall might be blocking communication. Either disable the firewall or see the following website: • http://digital.ni.com/public.nsf/websearch/8AE45BBFA1D7025E862570F200642FD8?OpenDocument • If there is significant lag between the Timer Station and the Display app, check the refresh rate on the logos in the Scorekeeper App. Logo hosting can be a large bandwidth eater, especially if the refresh rate for the logos is high and the logo size (in bytes) is large.

More Related