Download Automated Suitcase - Electrical and Computer Engineering
Transcript
AN AUTOMATED TESTING TOOL FOR TRAFFIC SIGNAL CONTROLLER FUNCTIONALITIES Draft Final Report N08-10 KLK551 ITD RP180: UI-08-02 November 2008 Prepared by National Institute for Advanced Transportation Technology University of Idaho Primary Authors Ahmed Abdel-Rahim Richard Wall Cody Browne Sk Monsur Ahmed Automated Testing Tool for Traffic Controller Functionality i Standard Disclaimer This document is disseminated under the sponsorship of the Idaho Transportation department and the United States Department of Transportation in the interest of information exchange. The State of Idaho and the United States Government assume no liability of its contents or use thereof. The contents of this report reflect the view of the authors, who are responsible for the facts and accuracy of the data presented herein. The contents do not necessarily reflect the official policies of the Idaho Transportation Department or the United States Department of Transportation. The State of Idaho and the United States Government do not endorse products or manufacturers. Trademarks or manufacturers’ names appear herein only because they are considered essential to the objectives of this document. This report does not constitute a standard, specification or regulation. 1. Report No.FHWA-ID-RD- 2. Government Accession No. 4. Title and Subtitle An Automated Testing Tool for Traffic Signal Controller Functionalities Recipient’s Catalog No. 5. Report Date November 2008 5.Author(s) Ahmed Abdel-Rahim; Richard Wall; Sk. Monsur Ahmed; Cody Browne 9. 3. 6. Performing Organization Code 8. KLK551 Performing Organization Report No. N08-10 10. Work Unit No. (TRAIS) Performing Organization Name and Address National Institute for Advanced Transportation Technology University of Idaho PO Box 440901; 115 Engineering Physics Building Moscow, ID 838440901 11. Contract or Grant No. RP180: UI-08-02 12. Sponsoring Agency Name and Address 13. Type of Report and Period Covered Idaho Transportation Department PO Box 7129 Boise, ID 83707-7129 Draft Final Report January 2008 – October 2008 14. Sponsoring Agency Code USDOT/RSPA/DIR-1 Supplementary Notes: 16. Abstract Traffic engineers and technicians are faced with the challenge of testing traffic controllers to ensure that they comply with different software and hardware requirements prior to deployment. Currently most of the testing is done manually using traditional ‘‘suitcase testers’’ which is time-consuming and have many limitations such as the inability to document the test results or conduct multiple tests. This project presents a traffic controller automated testing tool that implements and facilitates automated testing of traffic controller functionality using the controller interface device (CID) technology. 17. Key Words 18. Distribution Statement Unrestricted; Copies available from NTIS and online at 19. Security Classif. (of this report) Unclassified Form DOT F 1700.7 (8-72) 20. Security Classif. (of this page) 21. No. of Pages Unclassified Reproduction of completed page authorized 22. Price … Table of Contents 1. Overview ................................................................................................................................. 1 2. Project Description .................................................................................................................. 2 3. CID-Based Suitcase Tester Emulator ...................................................................................... 3 3.1. Overview .......................................................................................................................... 3 3.2. Hardware Testing: NEMA TS1 Controllers..................................................................... 5 3.2.1. Interval Advance ....................................................................................................... 5 3.2.2. Manual Control Enable ............................................................................................. 5 3.2.3. Call to NA I............................................................................................................... 5 3.2.4. Call to NA II ............................................................................................................. 6 3.2.5. External min recall .................................................................................................... 6 3.2.6. Walk Rest Modifier................................................................................................... 6 3.2.7. External Start ............................................................................................................ 6 3.2.8. Testing Phases Input and Output Channels .............................................................. 6 3.2.9. Testing Detectors Input Channels ............................................................................. 8 3.2.10. Testing Ring Structure .......................................................................................... 9 3.2.11. Testing Overlap ................................................................................................... 11 3.3. Hardware Testing: NEMA TS2 Controllers................................................................... 11 3.3.1. 4. 5. Additional Inputs for TS2 Controllers in Mode 0 ................................................... 12 Testing Controller Functionality: Automated Tester............................................................. 13 4.1. Introduction and Overview............................................................................................. 13 4.2. Traffic Controller Test Automation ............................................................................... 14 4.3. Automated Tester: Hardware Requirements .................................................................. 15 4.4. Automated Tester: Software Requirements ................................................................... 15 4.5. Automated Tester: Components and Data Flow ............................................................ 16 4.6. Automated Tester: Predefined Tests .............................................................................. 17 4.7. Automated Tester: User’s Manual ................................................................................. 17 References ............................................................................................................................. 19 An Automated Testing Tool for Traffic Signal Controller Functionalities i List of Figures Figure 1 Suitcase Tester Screen of a NEMA TS1 controller .......................................................... 4 Figure 2 Control inputs on a NEMA TSI suitcase tester ................................................................ 5 Figure 3 Input and Output under the phase section of a NEMA TS1 controller ............................ 7 Figure 4 Detector inputs on a NEMA TS 1 controller .................................................................... 8 Figure 5 Ring structure on a NEMA TS1 suitcase tester ................................................................ 9 Figure 6 Overlap display of the communication ports on a NEMA TS1 ..................................... 11 Figure 7 Suitcase tester screen of a NEMA TS2 controller in mode 0 ......................................... 11 Figure 8 I/O mode of a NEMA TS2 controller in mode 0 ............................................................ 12 Figure 9 Additional inputs on A NEMA TS2 controller in mode 1 ............................................. 12 Figure 10 Additional inputs on A NEMA TS2 controller in mode 2 ........................................... 12 Figure 11. Hardware configuration for UI automated traffic controller testing ........................... 15 Figure 12 Automated Tester Flow diagram .................................................................................. 16 Figure 13 Automated tester data polling flow .............................................................................. 17 List of Tables Table 1 Controller Functions Covered in Different Tests ............................................................ 18 An Automated Testing Tool for Traffic Signal Controller Functionalities ii 1. Overview The state of Idaho Intelligent Transportation System (ITS) strategic plan identifies several traffic signal improvement projects as short term high-priority projects. Updating traffic controllers is a major component of these signal improvement projects. Idaho Transportation Department (ITD) District traffic engineers and technicians are faced with the challenge of testing these new controllers to ensure that they comply with the state requirements prior to deployment. Currently the test is being done manually using “suitcase testers.” This manual testing can be both tedious and time consuming besides having limitations, i.e., the inability to document the results. The purpose of this research project was to develop and test an automated testing tool for traffic signal controller functionality. Automation can be used to replace or supplement manual testing. Benefits to traffic engineers include increased test quality, reduced testing time, repeatable and consistent test procedures, reduced testing costs, and improved testing quality and productivity. An automated testing tool will also allow ITD to implement a unified testing procedure for the traffic sections in all districts. The traditional suitcase tester and emulator require the user to input commands manually. The information related to any specific test cannot be automatically recorded for future playback. The operator is required to manually record the commands and input the sequence of instructions each time the test is to be repeated. This process is vulnerable to human error in either recording the test or in repeating the sequence. The automated testing tool utilizes the University of Idaho National Institute for Advanced Transportation Technology’s Controller Interface Device (CID). As a result of a recent ITD research project, all six ITD districts have a CID that can be utilized as part of the testing tool. ITD District traffic engineers are familiar with the CID operation and capabilities, which will make it easier to integrate it within the automated testing procedure. Our plan is to generate computer models that are “trained” to recognize traffic controllers that meet performance expectations using fuzzy logic system identification techniques. The research had the following four objectives: 1. Develop and validate an automated testing tool for traffic signal controller functionality. 2. Develop guidelines and training materials that will assist ITD traffic engineers and technicians in using the automated testing tool. 3. Automate the testing processes and standardize the test observations to reduce operator involvement. 4. Improve the quality of testing without increasing expense. An Automated Testing Tool for Traffic Signal Controller Functionalities 1 2. Project Description The project had eight major tasks. Investigators were to 1. Identify advisory group and technical oversight committee for the project: The advisory group will consist of producers, users, and researchers to direct the focus and implementation for the tester. 2. Characterize traffic controller operating parameters: a. Classify controller operations to rank performance. b. Develop assessment metrics for performance and capability of traffic controllers. c. Identify common failure modes from the experiences of users. 3. Develop excitation models and operational characteristics of traffic controller. a. Develop mapping algorithms for translating common descriptions of signal operations to computer executable instructions. b. Develop a strategy for accessing the traffic controller operations database. 4. Test models for degree of fault coverage and degree of fault observation or differentiation. a. Classify failure modes b. Develop fault tree for hardware failures c. Develop signal timing windows and tolerances 5. Develop specifications for practices, procedures, and interfaces to complete traffic controller validation. 6. Implement preliminary hardware for proof of concept verification a. Integrate PC with CID and traffic controller b. Run beta testing with a standard signal timing plan developed by the project team c. Induce specific failures and document results as part of the development validation d. Review automated tester performance with advisory group 7. Conduct training workshop for ITD traffic engineers and technicians 8. Publish results a. Report on system performance to ITD b. Publish a user’s manual c. Publish technical description in technical and professional society proceedings. An Automated Testing Tool for Traffic Signal Controller Functionalities 2 3. CID-Based Suitcase Tester Emulator 3.1. Overview Traffic engineers have traditionally used a suitcase tester to test and evaluate the operation of a traffic controller. A suitcase tester is a suitcase-like device containing switches and LEDs that, when linked to a traffic controller activates functions on the controller and monitors outputs from the controller. A suitcase tester provides a controlled environment for verifying that the controller behaves as expected when individual functions are programmed. However, traditional suitcase tester usage can be time-consuming and inefficient, particularly when it is necessary to verify the operation of all of the controller’s functions. In addition, each type of traffic controller on the market requires its own suitcase tester. In recent years, with the emergence of CID technology in the traffic industry, suitcase tester emulator software was developed to supplement shortcomings of the traditional suitcase tester (for example, the Siemens Intelligent Transportation Systems (1) and the NAZTEC (2) NEMATS2 testers). These NEMA-TS2 testers consist of two main parts: the tester device and the emulator software. They use the SDLC port to communicate with the traffic controller and the COM port to connect with the host computer. However, these test boxes come with certain limitations. The length of a detector call cannot be specified less than a time step (the pulse detector signal cannot be generated). The number of traffic controllers that they can test simultaneously is also limited. The suitcase tester emulator used in this project utilizes the CID suitcase tester emulator software (3) developed at the University of Idaho’s National Institute for Advanced Transportation Technology (NIATT). The software is a computerized version of the traditional suitcase tester. Just like the traditional suitcase tester, the suitcase tester emulator can verify that the controller has been programmed correctly, and it can also troubleshoot problems with the controller. It goes beyond traditional suitcase testers in that it can test the most commonly used functions of any NEMA or type-170 controller, rather than those of just one specific model. It can also test multiple controllers at the same time. The suitcase tester emulator implements three user interfaces, for use with three different controller types – NEMA-TS1, NEMA-TS2 (type-2), and type-170 (4,5,6). Each interface includes two basic functions – input and output. The input functions are used to activate the controller’s input functions. The output indications are used to monitor the traffic controller’s outputs. Two types of buttons are implemented in the user interface. The output buttons are used to monitor the traffic controller output functions (such as phases). These output buttons emulate the traditional suitcase tester device’s LEDs. Figure 1 shows suitcase tester screen of a NEMA TS1 controller. An Automated Testing Tool for Traffic Signal Controller Functionalities 3 The input buttons are used to activate traffic controller input functions such as activating detector calls. The input buttons emulate the traditional suitcase tester device’s mechanical switches, but with more functions than the mechanical switches are able to provide. In addition, the input buttons in the NIATT CID suitcase tester emulator generate a variety of possible types of signal patterns that could occur in the field. The three possible signal types are random, presence, and deterministic. Random signal: The random signal begins at a high-voltage (24-V for a NEMA controller or 12-V for a type-170 controller) signal, then cycles to a zero-voltage signal, then returns to the high voltage signal, and so on. The duration of each high-voltage signal and each zero-voltage signal is random, as are the intervals between signals. This signal pattern represents vehicles arriving at an intersection randomly. Presence signal: The presence signal begins as the high-voltage signal, cycles to a zerovoltage signal, and remains there until the user deactivates it. There are no variations in this type of signal. This signal pattern represents the vehicles stopping at intersection waiting for the traffic signal to change to green. Deterministic signal: The deterministic signal begins as a zero-voltage signal, cycles to the high-voltage signal, and then returns to zero again. In contrast to the random signal, the user can specify the duration of the high-voltage pulse and the interval between pulses. This signal type will repeat the same pattern until it is stopped. This signal pattern represents vehicles passing through the intersection at a constant flow rate. Figure 1 Suitcase Tester Screen of a NEMA TS1 controller An Automated Testing Tool for Traffic Signal Controller Functionalities 4 3.2. Hardware Testing: NEMA TS1 Controllers The following features are available under the “control menu” section on a suitcase tester in a NEMA TS1 controller (Figure 2). Figure 2 Control inputs on a NEMA TSI suitcase tester 3.2.1. Interval Advance The interval advance button is used for stepwise skipping of phases in a controller. When the interval advance is used, a phase which is initially green turns yellow. With further use of the interval advance function, the signal turns red and moves to the next phase. Expected Results The interval advance control should be able to move the signal phase when invoked. If a controller fails to response to this function then there is a malfunction in the controller. 3.2.2. Manual Control Enable The manual control enable is a function that should be input before any manual input operation can be made into the controller. Expected Results The manual control button should be enabled before any manual inputs can be made to the controller unit during the testing procedure. If this procedure does not function as expected, the controller logic needs to be checked for functionality. 3.2.3. Call to NA I The call to non-actuated I button is used to prevent the controller unit from operating in a An Automated Testing Tool for Traffic Signal Controller Functionalities 5 coordinated mode. For the controller unit to be able to operate in a non-actuated mode when this feature is activated, the desired phases need to be selected in the controller options section on the controller unit. Expected Results The call to non-actuated I function is expected to put the phase in a non-actuated mode. If this function acts otherwise, the following are the probable causes; The status of the phase in the controller options under the configuration menu is wrong. The manual control enable is not selected. The minimum green is more than the maximum green time. 3.2.4. Call to NA II The call to non-actuated II functions the same way as the call to non-actuated I except that this feature is performed on ring two of a standard NEMA plan. Expected results The call to non-actuated II functions in the same manner as the call to non-actuated I. 3.2.5. External min recall When used, the external minimum function causes all phases to reoccur and to serve a minimum amount of green time. 3.2.6. Walk Rest Modifier When the walk rest modifier is used, it makes non-actuated phases remain in the “rest in walk” state in the absence of serviceable or conflicting calls. 3.2.7. External Start External start reinitializes controller into start up like a power outage 3.2.8. Testing Phases Input and Output Channels The suitcase tester can test the input and output channels for standard NEMA eight–phase operations. It tests the red, yellow, green, pedestrian don’t walk, pedestrian clearance, and walk signal indications as presented in Figure 3. The suitcase tester also tests the hold, omit, and pedestrian omit functions. An Automated Testing Tool for Traffic Signal Controller Functionalities 6 Figure 3 Input and Output under the phase section of a NEMA TS1 controller 3.2.8.1. Hold The hold input is used to manually put a phase on hold in the controller and thus prevent the particular phase from being serviced. If the phase is serviced and held, it will continue being served and other phases will be serviced. Expected Results When the hold function is invoked for a phase, the phase is expected to stay in its current signal display. If the phase changes its signal indication while the hold function is still active then, The manual enable control is not activated, or The controller is malfunctioning 3.2.8.2. Omit The omit input is used to manually omit a phase from being serviced by the controller. Expected Results When the omit function is activated the selected phase is expected not to time during the cycle timing sequence. However, if the selected phase runs while the “omit” function is still activated then, either The manual enable control is not activated, or A malfunction in the controller 3.2.8.3. Pedestrian Omit The pedestrian omit (ped omit) button is used to manually omit pedestrian phases from being serviced by the controller. An Automated Testing Tool for Traffic Signal Controller Functionalities 7 Expected Results When the “ped omit” function is activated, the selected pedestrian phase is supposed to be exempted from timing during the cycle. If the selected pedestrian phase runs during the cycle whiles the pedestrian omit function has been activated, the probable causes are either The manual enable control is not activated, or A malfunction in the controller 3.2.9. Testing Detectors Input Channels There are two sets of detector inputs on the suitcase tester: vehicle detector and the pedestrian detector (Figure 4). Figure 4 Detector inputs on a NEMA TS 1 controller 3.2.9.1. Vehicle Detector The eight vehicle detector inputs on the suitcase tester are used to manually simulate the presence of a vehicle at the intersection. Expected Results When a vehicle detector input is activated, the controller is expected to respond to the call and serve the phase in the earliest possible sequence according to the sequence of phases and timing plan. However, if the controller does not respond to the vehicle detector call, there is a failure which can be rectified by Checking to ensure that there are detectors placed in the network and have been activated. The manual control enable function is active. Malfunctioning controller unit. 3.2.9.2. Pedestrian Detector Four pedestrian detector inputs on the suitcase tester are used to send signals to the controller that a pedestrian is present at the intersection. Expected Results When the pedestrian detector functions when activated in a simulation, the controller is expected to respond to and provide service to the pedestrian phase where the call has An Automated Testing Tool for Traffic Signal Controller Functionalities 8 been placed. If however the controller does not respond to the call then there is a failure. This failure could result from any one or combination of the following: The absence of pedestrian detectors in the network Inactivated pedestrian detectors Malfunctioning controller unit 3.2.10. Testing Ring Structure The suitcase tester displays the status of the controller during every signal change. The status is displayed for each ring under status bit A, status bit B or status bit C as presented in Figure 5. Figure 5 Ring structure on a NEMA TS1 suitcase tester 3.2.10.1. Red Rest The red rest input button is used to manually request for a red rest in the controller unit and in the selected ring. 3.2.10.2. Force Off The force off function is used to manually terminate a phase in the controller unit and in the particular ring. Expected Results If the “force off” function does not terminate a phase as expected, then there is a failure in the controller. 3.2.10.3. Inhibit Max The inhibit max function is used to manually request for the maximum timing in the controller An Automated Testing Tool for Traffic Signal Controller Functionalities 9 device to be inhibited. Expected Results The inhibit max function is expected to prevent maximum timing in the controller unit. If however this function does not prevent the maximum timing then there is a failure in the controller. This failure is due to either The manual control enable not activated, or A malfunctioning controller unit 3.2.10.4. Stop Timing The stop timing feature is used to manually request the timing of a phase to stop. Expected results The stop timing function when invoked is expected to stop the controller from proceeding with its timing sequence. 3.2.10.5. Omit All Red The “omit all red” feature is used to manually omit the red clearance interval for a particular phase in the selected ring. Expected results The “omit all red” feature is expected to make a phase time without the red clearance interval. If a phase time includes the red clearance time when this function has been invoked then the possible cause of this failure are The manual control enable was not selected prior to using the “omit all red’ for the particular phase, or There is breakdown in the controller logic. 3.2.10.6. Pedestrian Recycle The pedestrian recycle is used to request for a recycle of the pedestrian phase timings in the controller device for the selected ring. Expected Results If pedestrian recycle function fails to perform a recycling of the phase as it should, then the possible cause of this failure is There is no active pedestrian phase in the timing sequence for the particular ring or there is not enough time to re-service it in the split 3.2.10.7. Max II Select The “max II” function is used to manually request for maximum II timing values in the controller An Automated Testing Tool for Traffic Signal Controller Functionalities 10 device. Expected results When the “max II” function is used, the controller is expected to use the value of the “max II” time for the maximum green else there is a failure in the controller. 3.2.11. Testing Overlap The overlap feature on the suitcase tester screen (Figure 6) shows the status of the communication port at any point during the operation of the CID for overlap A, B, C, and D. Figure 6 Overlap display of the communication ports on a NEMA TS1 3.3. Hardware Testing: NEMA TS2 Controllers. The following features are available under the “control menu” section on a suitcase tester in a NEMA TS1 controller (Figure 7). Figure 7 Suitcase tester screen of a NEMA TS2 controller in mode 0 An Automated Testing Tool for Traffic Signal Controller Functionalities 11 3.3.1. Additional Inputs for TS2 Controllers in Mode 0 The NEMA TS 2 controller has all the features of a NEMA TS1 controller and the following additions: Input/output (I/O) mode, Preempts, Pedestrian Phase Control, and Vehicle Phase Control. 3.3.1.1. I/O mode The I/O mode is used to switch between the different modes operations of a NEMA TS 2 controller. The NEMA TS 2 controller can operate in mode 0, mode 1 and mode 2 as shown in Figure 8. Figure 8 I/O mode of a NEMA TS2 controller in mode 0 3.3.1.2. Additional Inputs for TS2 Controllers in Mode 1 Additional input for this mode include: Preempts, offset, timing plan, detectors, alternative sequence control, as well as general controls (Figure 9). Figure 9 Additional inputs on A NEMA TS2 controller in mode 1 3.3.1.3. Additional Inputs for TS2 Controllers in Mode 2 Additional input for this mode include preempts, alarm, address bit, detectors, controls and flash status. These additional inputs are shown in Figure 10. Figure 10 Additional inputs on A NEMA TS2 controller in mode 2 An Automated Testing Tool for Traffic Signal Controller Functionalities 12 4. Testing Controller Functionality: Automated Tester 4.1. Introduction and Overview Traffic controllers control the intersection to provide safe movement of vehicle and pedestrian traffic. To ensure safety, the controller eliminates the conflict points between vehicular and pedestrian movements. Properly operating controllers are loaded with many functions, and failure of any of these functions could cause the operation unsafe for the users. Operation of controller functions should be tested and monitored frequently. System testing of software and/or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. As a rule, system testing takes, as its input, all of the "integrated" software components that have successfully passed integration testing and also the software system itself integrated with any applicable hardware system(s). The purpose of integration testing is to detect any inconsistencies between the software units that are integrated together (called assemblages) or between any of the assemblages and the hardware. System testing is a more limiting type of testing; it seeks to detect defects both within the "inter-assemblages" and also within the system as a whole. System testing is performed on the entire system in the context of a Functional Requirement Specification(s) (FRS) and/or a System Requirement Specification (SRS). System testing is an investigatory testing phase, where the focus is to have almost a destructive attitude and tests not only the design, but also the behavior and even the believed expectations of the user. It is also intended to test up to and beyond the bounds defined in the software/hardware requirements specification(s). Test automation is the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions. Commonly, test automation involves automating a manual process already in place that uses a formalized testing process. Although manual testing can find many defects in a software based application, it is a laborious and time consuming process. In addition it may not be effective in finding certain classes of defects. Test automation is a process of writing a computer program to do testing that would otherwise need to be done manually. Once the testing has been automated, a large number of test cases can be validated quickly. This is most cost effective for software based products and devices that will have a long shelf life, because even minor patches over the lifetime of the application can cause features to break which were working at an earlier point in time. There are two ways to design the tests: Black box testing. The test developer has no knowledge of the inner workings of the program. The tests cover all the cases that an end user would run into. The completeness of the tests depends on the test developer's expertise using the application. White box testing. The test developer has full knowledge of the inner workings of the An Automated Testing Tool for Traffic Signal Controller Functionalities 13 software based device. The tests ensure each pathway through the source code has been exercised and is working properly. Its completeness can be measured by code coverage metrics. There are two general approaches to test automation: Graphical user interface testing. A testing framework generates user interface events such as keystrokes and mouse clicks, and observes the changes that result in the user interface, to validate that the observable behavior of the device is correct. The correctness of the device response as well as the timing of new test is controlled by the operator or person who is doing the testing. Test vector testing. Commonly used in the integrated circuit design industry, the test vector consists of a series of stimuli and expected device responses. Each test case is called a vector because it directs the device under test to a specific observable action. Elements types in the test vectors include logic levels (True and False), integer and floating point data types. A timing control is also required for automated testing that determines how long to wait for a device output to be asserted before declaring a fault and the time before moving on to the next test vector. Test automation can be expensive, and it is usually employed in combination with manual testing. It can be made cost-effective in the longer term though, especially in regression testing. Regression testing is any type of software testing which seeks to uncover software regressions. Such regressions occur whenever software functionality that was previously working correctly, stops working as intended. Typically regressions occur as an unintended consequence of program changes. Common methods of regression testing include re-running previously run tests and checking whether previously fixed faults have re-emerged. 4.2. Traffic Controller Test Automation The automated tester, developed as part of this project, uses a graphical interface for manual testing. The scope of the traffic controller testing is those operations that can be generated by placing calls from vehicles detectors, pedestrian buttons, and preemption inputs. Only the traffic controller operations that are observable by asserting the signals of the NEMA TS1 A, B and C connections can be verified. The automated tester can be operated in a static mode using the graphical user interface. The timing of input changes is strictly control by the person operating the testing system. Validation of traffic controller responses is the responsibility of the person testing the controller. The automated testing uses XML script files to specify which inputs are activated, the timing of those activations and verifying the controller response(s). The advantage of automated testing is that tests can be repeated exactly and results are recorded automatically. Automated test can be repeated for long periods of time while subjecting the traffic controller to varying environmental conditions. An Automated Testing Tool for Traffic Signal Controller Functionalities 14 The testing software provided is for a limited set of NEMA TS1 controllers running specific firmware version as specified by the Idaho Transportation Department. Other traffic controllers can be tested provided that the testing program has been modified to communicate with that specific controller. Software modifications to the testing software are required because there is no standard communications protocol used by various traffic controller manufacturers that allow the traffic controller settings to be read from the controller. A version of the automated tester has been developed and tested that interfaces with NEMA TS2 type 1 and type 2 controllers. This version uses the National transportation Communications for ITS Protocol (NTCIP) via either the asynchronous RS232 serial port or the Ethernet port. However, our investigation has shown that various vendors have significant differences in the interpretation of the NTCIP standard and the automated testing software must still be verified specific traffic devices running specific firmware versions. 4.3. Automated Tester: Hardware Requirements Figure 11 illustrates the three hardware components requirements for the automated traffic controller testing system developed at the University of Idaho. All three devices must be powered separately with a 120VAC source. A PC with Windows XP or Vista operating system must have the proprietary software installed in accordance with guidelines in the user’s manual. The PC interface with a NIATT Controller Interface Device (CID) using a USB cable. The CID interfaces with a traffic controller using the A, B and C NEMA TS1 connectors. ` Figure 11. Hardware configuration for UI automated traffic controller testing 4.4. Automated Tester: Software Requirements The UI Automated Traffic Controller Tester software may be acquired by downloading the compressed file from the internet or from a memory storage media such as a CD or flash drive. The PC must have .net Framework version 3.0 or higher installed on the PC. If .net Framework version is not installed or the incorrect version is installed, the PC must be connected to the Internet and the installation program will automatically download the required software provided the user has the appropriate computer access privileges. An Automated Testing Tool for Traffic Signal Controller Functionalities 15 4.5. Automated Tester: Components and Data Flow The Automated Tester program is an interface to several components that when coupled together, provide the functions required. The key components are CIDControl – Provides an interface with the CID API TrafficControllers – Provides the framework to describe a traffic controller Communications – Provides the framework to communicate with a traffic controller over serial or Ethernet The CIDControl component provides all of the necessary functions to manage one or many CIDs. The CIDControl also provides events to which the Automated Tester can hook. These events are the basis for testing, observing, and conflict monitoring. Utilizing the Microsoft .NET Framework’s event structure allows the Automated Tester to continuously monitor the CID (without taking all of the computer’s resources). The Traffic Controllers component provides the types by which to classify a traffic controller. It is in this component where information extracted from the controller is formed into information to be used for testing. The Communications component is the basis for all intelligent communication between the PC and a traffic controller. The component implements the NTCIP protocols over both serial and Ethernet connections. The flow chart and data polling flow for the automated tester are presented in Figures 12 and 13. Figure 12 Automated Tester Flow diagram An Automated Testing Tool for Traffic Signal Controller Functionalities 16 Figure 13 Automated tester data polling flow 4.6. Automated Tester: Predefined Tests Several important functions are covered in different tests presented here. A total of 14 tests were developed to test controller’s ring parameters, phase parameters, and preempt parameters. Table 1 shows the tests and their corresponding functions. 4.7. Automated Tester: User’s Manual The automated tester User’s Manual is a WEB based publication that consists of seven chapters. Chapter1 and chapter 2 describe the automated tester installation and configuration. Chapter 3 shows how to add a controller. Chapters 4 through chapter 6 describe test files management, running a test, and writing a test file, respectively. Chapter 7 provides reference for different test files. The contents of the User’s Manual can be viewed using a WEB browser such as Microsoft Internet Explorer (IE) or Mozilla Firefox. The automated tester user’s manual contains instructions for installing the code on the PC. All test vector files are written using a text based XML (Extensible Markup Language.) Although Chapter 6 contains sufficient information necessary for developing new test vector files, tutorials for developing XML programs is available on the Internet (7). An Automated Testing Tool for Traffic Signal Controller Functionalities 17 Table 1 Controller Functions Covered in Different Tests Functions Test Number 1 Ring Parameters Phase Parameters Preempt Parameters Phase In Use/Enable Phase Sequence Phase Omit Control Phase Concurrency Phase Min Green Phase Passage Phase Max Green Phase Yellow & Red Min Recall (Veh Call) Max Recall Max Green 2 Red Rest Dynamic Maxgreen Dynamic Step Phase Walk Phase Ped Clearnace Ped Recall Phase Time to reduce Phase time before reduceMinimum Gap Phase Preempt Minimum Green Track Green Preempt Preempt Track Phase Preempt Dwell Phase Preempt Delay 2 3 4 5 6 7 8 9 x 10 11 12 13 14 x x x x x X x x x X X x x x x x X X An Automated Testing Tool for Traffic Signal Controller Functionalities x x x x x x x x x x x 18 5. References (1) Siemens Intelligent Transportation Systems, 2007. NEMA TS-2 Controller Tester. http://www.itssiemens.com/en/u_nav2162.html/ (accessed 6/26/2008) (2) NAZTEC Inc., 2007. http://www.naztec.com/pdfs/testbox.pdf/ (accessed 6/26/2008). (3) Zhen Li, Ahmed Abdel-Rahim, Brian Johnson, and Michael Kyte, “Design of Traffic Controller Automated Testing Tool”. In Press, Transportation Research: Part C: Emerging Technologies, Volume 16C, issue 3, Elsevier, June 2008. (4) National Electrical Manufacturers Association. Traffic Control Systems. NEMA Standards, Publication No. TS 1-1989. Washington, DC., 1989. (5) National Electrical Manufacturers Association. Traffic Controller Assemblies. NEMA Standards, Publication No. TS 2-1992. Washington, DC., 1992. (6) California Department of Transportation (Caltrans). Transportation Electrical Equipment Specifications (TEES). Sacramento, CA, March. 1997 (7) XML Tutorial 2008. at http://www.w3schools.com/xml/default.asp (accessed 9/11/2008). An Automated Testing Tool for Traffic Signal Controller Functionalities 19