WARP XX

BEST 2012 Design Contest

Scoring System User’s Guide

Version Alpha7

October16, 2012

Scoring System User’s Guide

ACMR00011 Revision A5; October 4, 2012

Release Notes:

Version Alpha 7
WarpXX_TS_Alpha7.zip
Warp XX seeding_v4.xls / Included tie-breaker in evaluation of lowest score to drop. This is for corner cases where two lowest scores are identical.
Version Alpha 6
WarpXX_TS_Alpha6.zip
Warp XX seeding_v4.xls / Corrected bonus calculations.
Cosmetic changes to Field Control Software.
Added online report of all entered scores by match.
Version Alpha 5
WarpXX_TS_Alpha5.zip
Warp XX seeding_v3.xls / Initial release of the 2012 Tournament Software.
LabView runtime & 4 Executables
  • BEST 2012 Field Display
  • BEST 2012 Field Control
  • BEST 2012 Pit Display
  • BEST 2012 Tournament Software
Seeding Match Schedule Generator (XLS)

Copyright © 2012. Page 1 of 40 BEST Scoring System

BEST Robotics, Inc Dallas BEST – Warp XX

All Rights Reserved

  1. Introduction

This document describes the scoring software developed in support of the 2011 BEST competition, BUGS!. It provides information concerning setup and usage of a scoring system for the game.

  1. Scoring System Components

The BEST scoring system consists of one or more computing systems, one or more display systems, and a set of custom scoring software applications. There are four scoring software applications, each written in LabView and made available as executable files:

  • Scorekeeping Application (aka Tournament Software)
  • Field Control Application
  • Display Applications (for Spectator and/or Pit display)

2.1 General Computing System Requirements

The software applications will execute on one or more computer systems having the following system requirements.

XP, Vista, Win7 OS (no Mac)

Minimum 512Mb RAM, 1Gb RAM suggested for Field Control computer

1024x768 graphics resolution, 16-bit color as minimum

4x3 display ratio will view the best

500Mb Disk space

Network – any, wired or wireless (if using this option)

USB port (for Field Control/Response)

Each computer used will need to host the LabView runtime system that is provided as part of the scoring software installation.

The Tournament software uses Comma Separated Value (CSV) file as input, auto-generated by the Seeding Schedule Generator MS Excel file. You may create possible seeding schedule CSV files on any computer with the Microsoft Excel application.

Mobile ScoreBoard support

In order to post scores to the mobile ScoreBoard app for iPhone/Android and the BRI Web ScoreBoard, the scoring computer hosting the Tournament Softwaremust have internet access in addition to the (optional) local network used by the scoring system.

2.2 Previous LabView Installations

The Scoring Software installs the following:
(1) LabVIEW 2011 Service Pack 1 Runtime Engine
(2) NI Datasocket 4.9
(2) DAQmx Core Runtime 9.3.5
(4) The built applications that you use.
The installation of the Scoring Software will not impact the operation of any existing LabView installations that may exist on the computer.

The Datasocket will upgrade the Datasocket present on the system. The upgrade is seamless and the Datasocket 4.9 is completely backwards compatible all the way back to LabVIEW 8.5.1.
The LabVIEW 2011 SP1 Runtime Engine runs in parallel to the LabVIEW 2009SP1 Runtime Engine - the application specifies what runtime engine to use, so the two runtimes are never in conflict and you will not use the new runtime unless you have an application built to use the new runtime. You can use both runtimes at the same time, even, without conflict.
The DAQmx Core Runtime 9.3.5 is the same as the LabVIEW Runtime; there are no development environment pieces, so they will not conflict with currently installed development environments. Applications must be built to run with the runtime, otherwise the runtime is never loaded and never used. You can use both runtimes at the same time, even, without conflict.

2.3 Field Control Requirements

Field control/response for the 2012 game consists of a National Instruments USB6501 Digital I/O module, interfaced to a computer via a ~20+ ft or less USB cable. The computer must be running the Field Control Application. The USB cable may be longer but may require the use of a USB repeater or USB hub to ensure communication between the computer and the field is satisfactory over greater distances. For the 2012 game, the Field Control Application only reads the tie-breaker information from the NI USB6501 Digital I/O module; there is no actual “control” taking place.

2.4 Display System Requirements

Any number of devices can be used for the display system. This may consist of computer monitors or projectors. Each “display” will need to be driven by a computer running one of the Display Applications (Spectator Display or Pit Display).

  1. System Configuration Options

Some example system configurations are shown in the following diagrams. The hub may choose whichever configuration best fits their needs and capabilities.

Figure 1. Single Computer System

Figure 2. Networked Displays

Figure 3. Fully Networked System

There will be only one instance of the Scorekeeping application and Field Control application. They may reside on the same computer or different computers depending on your preference. There may be as many instances of the Display application(s) as you desire. In the single computer configuration, you may use a Windows extended desktop for your Display application. Often times, multiple displays are required (e.g., audience, pit, staging, etc.). This is accomplished through standard networking of multiple computers. This may be hard-wired network or wireless. The Display application(s) will simply be configured with the IP address of the Scorekeeping computer.

About Computer Networking

If you desire to use multiple computers via a network, the easiest solution to networking is to use a simple wireless hub or router plugged into the computer running the Tournament Software application, creating a local wireless network, using all of the out-of-the-box configuration so it is a fully open network. Thenconnect to this local wireless network on the other computers which are running Display application(s) orthe Field Control application. This is easy and no special setup is needed to “get around network restrictions”. A wireless hub is $50 at Best Buy.

Alternatively, you may use an existing network (e.g., school/university network). It doesn't matter what network you use, as long as the network doesn't restrict access to ports used by the software (public access WiFi is usually locked down pretty tight). Communications between the computers need to be open and non-firewalled; the Datasocket Server running on each computer itself uses port 3015 to host data, but the applications themselves can use any port between 1024 and 65536 (the entire range) to communicate to that port. Some university networks restrict access to/from all ports except port 80, the HTTP port, for internal AND external communication. If the network only restricts access to specific ports for outbound (and not internal) communications then that is okay.

The best way to determine if communication will be successful is to plug two computers into the network, launch the Tournament Software on the computer you want to host the Tournament Software, launch the Display App on the computer you want to host the Display App, and connect to the Tournament Software from the Display App. You CANNOT use a simple network ping or file sharing protocol as the sole mechanism for determining if the connection will be successful, but it is important to note that if a simple network ping or file sharing protocol does not work then the scoring software has no chance of communicating across the network.
So it depends on the facility’s network and restrictions. This is expected to be a much more complicated networking solution than just creating your own local network with a dedicated hub/router. It may even mean using computers that have authentication certificates with the school's network, certificates that are given an "all-access pass" to do whatever networking is needed. This is not a recommended path but is possible.

  1. System Setup and Use

To setup and use the system, you will need to perform the following steps. Many of the details of each step are described in subsequent sections.

  1. Determine your configuration. Setup computers and any networking.
  2. Connect Field Control computer to USB6501 via USB
  3. Generate/select a seeding bracket to be used. (create “seeding schedule” CSV input file)
  4. Invoke all three applications on the applicable machines. You should have:
  1. 1 instance of Tournament Software,
  2. 1 instance of Field Control Software, and
  3. N instances of Spectator/PitDisplay Software
  1. Setup the Field Control Software and Spectator/Pit Display Software including IP addresses, logos, desired control.
  2. Transfer control of the Field Control Software to the Tournament Software (if desired) in order to synchronize operation from a single machine. (see detail below)
  3. Control all activities from within the Tournament Software application (unless Field Control is being controlled separately)
  4. Follow the CHECKLIST steps in the Tournament Software to run your game.

4.1 Field Control USB Interface

In some cases (depending on the game) it may be desired to extend the length of your USB cable to a length greater than supported by standard USB. This can be accomplished in several ways depending on the length desired:

1)Try using a USB repeater (sometimes built-in to a USB cable).

2)Try using USB to Cat5 converters at the computer-end and field-end.

3)Try using a wireless USB hub.

If you choose to use some form of repeater or converter to extend the length of the cable, it is highly recommended that you implement a powered USB hub at the field end to ensure that the full range USB voltage/current is provided to the NI USB-6501 module. The NI module expects 500ma of current to be supplied and may not function if it is not.

Whatever you decide to use, test it thoroughly before game day!

4.2 Using Laptops with Power Management

If you use a laptop or any other computer with Power management software enabled, you should be sure to disable the power management control surrounding the USB ports. In Windows, there is a power-saving option under "Advanced Power Options" for a "USB Selective Suspend", and if this is turned on and gets triggered then the USB device will be put into suspend mode and the NI DAQ driver that controls the NI-USB 6501 will have no control. It MAY be recovered by unplugging and re-plugging the USB device but this is not guaranteed. Of course, you don’t want to have to do that.

  1. Accessing the Software

5.1 Program Locations

The threeapplications are accessible via shortcuts at Windows START->ProgramFiles->BEST 2012Software

They are actually installed/stored in C:\ProgramFiles\2012BESTTournamentSoftware

These 4 applications are executable files. All necessary LabView software is provided and installed during the installation process.

5.2 Data Files Folder

All data files are stored in the following public data directory, depending on the operating system being used:

Vista/Win7 -> C:\ProgramData\BEST2012

(this is a hidden directory; type in this path in Explorer and it will find the folder)

WinXP -> C:\Documents and Settings\All Users\Application Data\BEST2012

  1. Software Setup

6.1 Field Control Application Setup

Invoke the application. Plug the NI USB6501 digital i/o controller into an available USB port and wait about 10 seconds for it to be recognized. On the Field Control Software “Device” pulldown, select the Dev# device name corresponding to the USB6501 plugged into your computer.There will typically only be one. Once selected and recognized, the “DeviceConfigured?” lamp will turn green.

Any remaining tabs on the Field Control application may not become visible until an NI USB6501 device is connected. The device WILL need to be wired to the field tiebreaker switches in order to use the Tournament Software.

In the Device Status section, there is a device heartbeat indicator. This lamp should flash periodically indicating that the USB-6501 is alive and communicating.

A status indicator for each tie-breaker switch (by color) is shown here as well. When a tie-breaker switch is opened, the corresponding lamp will illuminate. See the 2012 Game Rules Wiring document for details of the required USB-6501 port connections. This is the only connection option. No other field wiring will work correctly with the Field Control software.

At the top of this section is the ability to set the “Device Poll Frequency”. This is how often the software checks the state of the tie-breaker switches. There are 3 options:

  • 50 Hz (50 times per second),
  • 100 Hz (100 time per second),
  • 200 Hz (200 times per second).

The “Too Intense” lamp will illuminate if the polling demands cannot be satisfied (due to CPU loading, etc.). If the lamp flickers frequently, choose a slower polling frequency. Occasional flickering of the lamp is still satisfactory.

Click on “Allow Remote Control” button to allow control of the Field Control Software in synchronization with the Tournament Software.Enter the IP address of the computer hosting the Tournament Software in the box and click the “Check” button. The IP address of the computer hosting the Tournament Software can be found on the Tournament Software’s “Tournament Settings” page. After verifying the connection, click OK. In this mode, the “Allow Remote Control” button now changes to “Take Back Control” and there is no need for anyone to actually operate the Field Control Software.Click on the “Take Back Control” button to return to local control of the Field Control Software.

In the Tie Breaker Status section, the Tiebreak Order auto-populates based on the information received from the USB-6501. Reset the values by clicking on the “ResetRanks” button.

When the Field Control Software is under manual control (i.e., not controlled by the Tournament Software), the Tiebreak Order can be overridden and set manually as desired.The Tournament Software reads these Tiebreak values from the Field Control Software whenever the match timer reaches zero.

When the Tournament Software and Field Control Software are running on independent computers (via wireless connection) {i.e., fully networked option mentioned in System Setup section}, and you wish to Allow Remote Control, be sure to follow these steps to ensure proper connectivity between the apps:

1)Establish a dedicated (recommended) local wireless network using a 802.11 wireless router or hub. Boot the field computer and tournament computers and connect to the local wireless network.

2)Connect the WLAN port of the wireless router to a wired internet connection if you wish to use the mobile web scoreboard. The tournament software will upload scores to the BRI site in real-time if this connection exists and the Live Web Update option is enabled (see the Web Settings page in the Tournament Software).

3)Connect the USB cable from each field computer to the corresponding field USB6501 module.

4)Launch the Field Control Software on the field computer(s).

5)Launch the Tournament Software on the tournament computer.

6)On the Tournament Software’s Scorekeeper page, connect to each Field Computer by clicking on the Field 1 Connect or Field 2 Connect buttons in the lower right portion of this screen.

  1. When prompted, enter the IP address of the corresponding field computer; this information is shown on the Field Control app under the Allow Remote Control button (lower right).
  2. Click the Check button to verify the connection, then click OK.

7)After connection from the Tournament App to the Field Control App, then you may click on the Allow Remote Control button on the Field Control App(s) to allow the Tournament Software to control it directly, including the resetting of the fie-breaker values. You will be prompted to enter the IP address of the Tournament Software. This can be found on the Tournament Settings page of the Tournament Software.

6.2 Spectator Display Application Setup

An initial setup screen is visible upon invoking the application.

This screen allows you to edit the title for your Display, enter a hub specific logo in place of the default BEST Robotics, Inc. logo, and identify connections to the Tournament Software application. The information entered here is not persistent and will have to be entered upon each invocation of the Spectator Display software.

The connection to the Tournament Software is a required setup item. First configure each machine running the applications to use static IP values.

If running the Spectator Display on the same machine with the Tournament Software application, just click on the “CHECK” button to verify the default IP address of the local host machine (which should be 127.0.0.1).

If running the Spectator Display over a network, enter the IP address of the machine hosting the Tournament Software in the “Tournament Software IP Address” box and click “CHECK” to verify a connection is made. The IP address to enter here can be found on the Tournament Software’s “Tournament Settings” page.

If a connection fails, try the following

  • check the IP address entered, use fixed IP addresses vs. dynamic
  • check network wiring, hub operation and appropriate power,
  • invoke command prompt and “ping” each computer IP address on the network to ensure a connection,
  • test that the two computers truly can communicate via network operations such as file sharing.
  • Reboot your computer and/or network hub

6.3Starting the Tournament Software Application

Double-click on the application to launch it. The first screen that you should see will be the CHECKLIST as follows: