Pinewood Derby Finish Line Detection System

Similar documents
EECS145M 2000 Midterm #1 Page 1 Derenzo

PHYS 3322 Modern Laboratory Methods I Digital Devices

successive approximation register (SAR) Q digital estimate

GFT Channel Digital Delay Generator

SWITCH: Microcontroller Touch-switch Design & Test (Part 2)

Design and Realization of the Guitar Tuner Using MyRIO

Digital Strobe Tuner. w/ On stage Display

Risk Risk Title Severity (1-10) Probability (0-100%) I FPGA Area II Timing III Input Distortion IV Synchronization 9 60

Display for the Virginia Museum of Science Digital Communications

Super-Doubler Device for Improved Classic Videogame Console Output

ADC Peripheral in Microcontrollers. Petr Cesak, Jan Fischer, Jaroslav Roztocil

NI-DAQmx Device Considerations

Music-Visualization and Motion-Controlled LED Cube

Major Differences Between the DT9847 Series Modules

ECB DIGITAL ELECTRONICS PROJECT BASED LEARNING PROJECT REPORT ON 7 SEGMENT DIGITAL STOP WATCH USING DECODER

STX Stairs lighting controller.

Scan. This is a sample of the first 15 pages of the Scan chapter.

AD9884A Evaluation Kit Documentation

DUAL/QUAD DISPLAY CONTROLLER Operation Manual

PESIT Bangalore South Campus

Lab 1 Introduction to the Software Development Environment and Signal Sampling

High Resolution Multicolor Contrast Scanner. Dimensioned drawing

Chapter 5 Flip-Flops and Related Devices

N3ZI Digital Dial Manual For kit with Serial LCD Rev 3.04 Aug 2012

Digital Effects Pedal Description Ross Jongeward 10 December 2014

Features of the 745T-20C: Applications of the 745T-20C: Model 745T-20C 20 Channel Digital Delay Generator

Lab 7: Soldering - Traffic Light Controller ReadMeFirst

Application Note AN-708 Vibration Measurements with the Vibration Synchronization Module

Uni700 LCD Controller

A dedicated data acquisition system for ion velocity measurements of laser produced plasmas

ECE 372 Microcontroller Design

Connevans.info. DeafEquipment.co.uk. This product may be purchased from Connevans Limited secure online store at

DT9837 Series. High Performance, USB Powered Modules for Sound & Vibration Analysis. Key Features:

Technical data. General specifications. Indicators/operating means

12.1 Inch CGA EGA VGA SVGA LCD Panel - ID #492

Lab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts)

QUICK START GUIDE FLEXSLICE MODULES

DT1000, DT2000, & DT8000

UNIIQA+ NBASE-T Monochrome CMOS LINE SCAN CAMERA

Operating Instructions

Experiment 7 Fall 2012

AZ DISPLAYS, INC. COMPLETE LCD SOLUTIONS SPECIFICATIONS FOR 15.0 OPEN FRAME MONITOR

BINARY Zone. BLACET RESEARCH MODEL BZ2300 Binary Zone Module. User Manual

HC20 Healthcare Kit Installation Instructions

Data Acquisition Using LabVIEW

LED DRIVERS. LQC4D-V1 4 channels. User Manual FEATURES

Contents: 1 LANsmart Pro Main Unit 4 Remote Unit: ID1, ID2, ID3, ID4

Specifications. End-Point Linearity - ±5% F.S., when used with HACO SCR-speed control

AC334A. VGA-Video Ultimate BLACK BOX Remote Control. Back Panel View. Side View MOUSE DC IN BLACK BOX ZOOM/FREEZE POWER

CM-392-Video to HDMI Scaler Box ID#481

EEM Digital Systems II

In-process inspection: Inspector technology and concept

Physics 120 Lab 10 (2018): Flip-flops and Registers

4.9 BEAM BLANKING AND PULSING OPTIONS

ESI VLS-2000 Video Line Scaler

DT9857E. Key Features: Dynamic Signal Analyzer for Sound and Vibration Analysis Expandable to 64 Channels

C-MAX. CMM-9301-V3.1S Bluetooth 4.0 Single Mode HCI Module. Description. 1.1 Features

The Micropython Microcontroller

Traffic Light Controller

006 Dual Divider. Two clock/frequency dividers with reset

VGA Controller. Leif Andersen, Daniel Blakemore, Jon Parker University of Utah December 19, VGA Controller Components

Boulder 2020 Advance D/A Converter

Lab experience 1: Introduction to LabView

Vtronix Incorporated. Simon Fraser University Burnaby, BC V5A 1S6 April 19, 1999

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer

Informatics Enlightened Station 2 Park distance control system

In total 2 project plans are submitted. Deadline for Plan 1 is on at 23:59. The plan must contain the following information:

N3ZI Digital Dial Manual For kit with Backlit LCD Rev 4.00 Jan 2013 PCB

6.4 Chassis Monitor Model Number: LCM0642xx. SPEC No.: SAS Version: 0.0 Issue Date: April 16, Introduction:

Triple RTD. On-board Digital Signal Processor. Linearization RTDs 20 Hz averaged outputs 16-bit precision comparator function.

TV Character Generator

Mission. Lab Project B

Commissioning of the ATLAS Transition Radiation Tracker (TRT)

Review : 2 Release Date : 2019 Last Amendment : 2013 Course Code : SKEE 2742 Procedure Number : PK-UTM-FKE-(0)-10

Displays Open Frame Monitor Model Number: AND-TFT-150Bxx

A TARGET-based camera for CTA

KNX Dimmer RGBW - User Manual

INPUT OUTPUT GAIN DELAY. Hue Candela Strobe Controller. Hue Candela s STROBE CONTROLLER. Front Panel Actual Size 7 ¼ By 4 ¾ POWER. msec SEC 10 1.

AES-404 Digital Audio Switcher/DA/Digital to Analog Converter

Video to DVI 1080p Scaler Box - ID# 796

Published in A R DIGITECH

Exercise 1-2. Digital Trunk Interface EXERCISE OBJECTIVE

Real-time Chatter Compensation based on Embedded Sensing Device in Machine tools

Product Introduction. Duplexer Box MN2555A. Signal Analyzer MS2830A. Ver.1.0

Lab 7: Soldering - Traffic Light Controller ReadMeFirst

FEATURES DESCRIPTION APPLICATION BLOCK DIAGRAM. PT6311 VFD Driver/Controller IC

26 Inch CGA/EGA/VGA/DVI to WXGA/1080p LCD - ID#703

SignalTap Plus System Analyzer

Team Members: Erik Stegman Kevin Hoffman

TeamWork Kits Installation Guide

AND-TFT-64PA-DHB 960 x 234 Pixels LCD Color Monitor

1ms Column Parallel Vision System and It's Application of High Speed Target Tracking

FLAT DISPLAY TECHNOLOGY

15 Inch CGA EGA VGA to XGA LCD Wide Viewing Angle Panel ID# 833

Azatrax Model Railroad Track Signal Control - Single Track

Do the following: a. (12 points) Draw a block diagram of your circuit design, showing and labeling all essential components and connections.

Technical data. General specifications. 60 ma Power consumption P 0. 1 W Time delay before availability t v. 120 ms Interface. Protocol IO-Link V1.

Chapter 11 State Machine Design

PASS. Professional Audience Safety System. User Manual. Pangolin Laser Systems. November 2O12

Revision 1.2d

Transcription:

Pinewood Derby Finish Line Detection System by Cody Clayton Robert Schreibman A Technical Report Submitted to the Faculty of Electrical Engineering Colorado School of Mines Submitted in partial fulfillment for the requirements of EENG 383 Microcomputer Architecture and Interfacing December 12, 2016

Chapter 1: Design Goals 1.1 Need Statement In 1953, the very first Pinewood Derby race took place in California at the Manhattan Beach Clubhouse. Since then, this competition amongst cub scouts has become very popular and is now an annual tradition [1]. Pinewood Derby race is a competition that allows young aspiring engineers to design a miniature car used for racing along a downhill track. The object of this race is simple. Build a unique car by adjusting the shape, size, and weight distribution of a wooden block that will allow the car to reach the finish line in the fastest time. The cars are propelled by gravity alone and must comply with design specifications according to the ACCC AWANA Grand Prix Event Rules and Procedures [2]. It is estimated that since the very first race, there have been over 500 million kids that have build cars and participated in Pinewood Derby races. As a result of an increasing interest in this event, the rules and regulations have become very precise and there has a been a demand for ways to accurately measure which Derby car finished first. Today, official competition timing systems can cost upwards of $1,000 [3]. However, at this price, many communities are simply unable to purchase a system and so other methods are used to determine the winner. Some of the alternative methods used to determine the winner for the Pinewood Derby race can have a margin of error that is subjective. One method is to have a judge watch the finish line to monitor the order of the cars and determine a winner. The problem with this is that it can be difficult to accurately discern the order of the cars especially since they can finish within just millimeters of each other. In addition, the judge might also have issues remembering the exact order. Adding in more judges can help but it can also lead to more disputes since human observations can yield imprecise results. Likewise, another method uses a camera to record the finish line and is replayed in slow motion. This is a better solution, but it can still be difficult to determine the winner due to the low frame rates of inexpensive cameras. This uncertainty can cause arguments that ruin the experience for everyone. There is a need for an inexpensive system that can accurately detect the winner of a Pinewood Derby race and then display the results quickly and clearly. 1.2 Marketing Requirements The solution needs to be: Able to determine race results accurately Easy to turn on and reset Easy to read the results Easy to assemble and disassemble Inexpensive

1.3 Level-0 Description Figure 1 shows the basic input/output functionality to the system. The inputs will consist of four different signals, one from each lane, and based off of the chronological order of the signals, there will be RGB LEDs used to display the order of the color of the corresponding lane. Table 1 is provided to explain the some of the other components of the of the Interface. Figure 1: The Level-0 Diagram for pine car derby finish line detector. Interface Colored Lanes Reset Button Power Switch Description One car will be on each lane. The cars start at the top of the track and are released mechanically. The first one to cross the finish line is declared the winner. Resets the LED display when pressed. This will be used in between race heats. The switch to turn on the device. 1st-4th Place LEDs The LEDs will all be white when the system is ready, and then the LEDs will be updated as the cars finish. This will display the winner to the user. The order of LED color display will show the user the order in which the derby cars finished. Table 1: The Level-0 Input/Output Table for pine car derby finish line detector.

Chapter 2: Detailed Design 2.1 Level 1 Description We will be using the HCS12 microcontroller, and a phototransistor array to determine the winner of the race. The results will then be displayed on an array of WS2811 RGB LEDs. The amount of light entering each lane is converted into a voltage by the phototransistor board. These voltages are then fed into 4 of the analog inputs on the HCS12. When the voltage reaches a certain threshold we will know a car has crossed the line. THe HCS12 will the output the proper signal to the LED array to display the results. The Level 1 diagram and I/O descriptions for each module are shown below in figure 2 and tables 2 through 4 respectively. Figure 2: The Level-1 Diagram for Figure 1.

Module Inputs Outputs Behavior Phototransistor Board I/O Descriptions The light coming into the phototransistor in each lane. The phototransistor for each lane will output an analog voltage between 0v and 5v called PT0-3. When there is no car above the phototransistor it will output a high voltage because of the lights above the track. When a car passes over the finish line the voltage will drop to near 0v. Table 2: The I/O table representing the Phototransistor Board module. Module Inputs HCS12 I/O Descriptions PT0-3: Analog voltage signal from each lane. Reset: Signal from push button. Power Switch: Input supplying power to the system. Outputs Behavior PTT0 will output the correct waveform to supply data to the WS2811 array. When the voltage on one of the analog pins drops by a threshold amount the HCS12 will mark that lane as finished and send the proper data to illuminate the correct LED with that lane s color. When the reset line is asserted the HCS12 will reset all of the LEDs to white. This signifies that the device is ready for a race to occur. The power switch line provides power to the HCS12. The device will not function without this enabled. Table 3: The I/O table representing the HCS12 module. Module Inputs Outputs Behavior WS2811 Array I/O Descriptions LED Data: An input array that conveys the order of lanes. RGB LEDs: Displays the colors corresponding to input array value. The WS2811 LEDs will remain white until an input signal from the HCS12 is used to tell the LEDs which of the four colors to turn into: red, blue, green, yellow. Table 4: The I/O table representing the WS2811 LED array module.

2.2 Calculations We will be using an array of WS2811 LEDs as the display. The WS2811 is an RGB LED that is controlled through a data_in line. The LED can then take the data and pass it to other WS8211 chips wired in series. These LEDs will then require very precise timing to properly propagate the signal to LEDs further down the chain. Data must be sent at 400 khz. The table below shows the signals required to send data to the WS2811[4]. Figure 3 shows a diagram of these signals. Name Description Time T0H 0 code,high voltage time 0.5 μs ±150ns T1H 1 code,high voltage time 1.2 μs ±150ns T0L 0 code,low voltage time 2.0 μs ±150ns T1L 1 code,low voltage time 1.3 μs ±150ns RES Reset, low voltage time Above 50μs Table 5: This table shows the signal properties to communicate with the WS2811 LED Figure 3: This is the diagram for the signals in table 5 [4] Since we are using such a high frequency we will need a 1:1 prescaler. Table 6 below shows the calculations for the number of counts required to wait for the correct amount of time to pass. This number of counts will be used to generate the signals in Figure 3.

Name Counts Equation T0H 12 [.5µs] * [1s / 10^6µs] * [(24*10^6clks) / 1s] * [1cnt / 1clk] = 12 cnts T1H 29 [1.2µs] * [1s / 10^6µs] * [(24*10^6clks) / 1s] * [1cnt / 1clk] = 29 cnts T0L 48 [2.0µs] * [1s / 10^6µs] * [(24*10^6clks) / 1s] * [1cnt / 1clk] = 48 cnts T1L 31 [1.3µs] * [1s / 10^6µs] * [(24* 0^6clks) / 1s] * [1cnt / 1clk] = 31 cnts RES 1200 [50µs] * [1s / 10^6µs] * [(24*10^6clks) / 1s] * [1cnt / 1clk] = 1200 cnts Table 6: Calculations to determine the correct number of timer counts for each part of the signal. The HCS12 will send a reset signal followed by a string of 24 bits, coded like Figure 3, for each of the four LEDs which correspond to each finishing position. This will update each LED in the array. The first 8 of the 24 bits contain the Red value of the LED with the MSB first. The remaining 16 bits hold the 8 bit values for Green and Blue respectively. 2.3 Technical Requirements The finish line detection system should be able to detect the order of the derby cars to within a few millimeters. This distance was used for two reasons. It is sufficient enough for the race results and this distance is about accuracy limitation of lining up the phototransistors in a line. It is likely that the phototransistors will not be perfectly lined up and will have a positioning margin between one millimeter and one centimeter due to human placement. Because of this, the most accurate waveform needed will be 1ms long since the average derby car finishes at about 3m/s [ ( 1 mm * (1m / 1000mm) * (1s / 3m) ) = 1ms ] which is closest to a one to one prescaler. The system will use the counter overflow which will give us a sampling rate of 366 Hz. This is the minimum needed to detect the 1ms difference. The finish line detection system needs to be able to display the race results in a manner that is easy to read. The RGB LEDs will be placed left to right and will change colors according to the order of the cars. Labeling 1 through 4 will be placed below the LEDs from left to right. The colors will be very distinct and will match the colors of the lanes. These components should make the outcome easy to interpret by a judge.

In order to make the device easy to use there will only be 2 buttons. An on/off switch and a reset button. The user will know the device is turned on because the RGB LEDs will default to white to show the system is on and running. Setting up the device will be simple as well. There will only be two cables, a power cable and an ethernet cable. This should be a quick and intuitive connection from the wall outlet to the microcontroller and then to the LED display. The entire device will cost less than $50 when the expensive SSMI board, which we are required to use, is replaced with an inexpensive microcontroller allowing our users to afford the system over the expensive alternative. 2.4 Bill of Materials Material Quantity Acquisition Status Details WS2811 RGB LEDs 4 Acquired Super Bright LEDs 4 Acquired Phototransistors 4 Acquired HCS12 NanoCore 1 Using Schools Resistors - 10kΩ 4 Using Schools Resistor - 470Ω 1 Using Schools Push Button 1 Acquired Power Switch 1 Acquired 10ft Ethernet Cable 1 Acquired Ethernet Connectors 2 Acquired

Chapter 3: Implementation 3.1 Milestone I Tests for the Phototransistor Module 1. Move objects across a Phototransistor from 0.5cm away and observe a value change displayed on PuTTY. 2. Repeat with 2nd Phototransistor 3. Repeat with 3rd Phototransistor 4. Repeat with 4th Phototransistor Tests for the WS2811 RGB LED Module 1. Send code that should make the LED0 red and observe. 2. Send code that should make the LED1 blue and observe. 3. Send code that should make the LED2 yellow and observe. 4. Send code that should make the LED3 green and observe. Milestone I Requirements: The first step for creating the detection system is to get the individual modules functioning correctly. Since the phototransistor board will need to detect pinewood derby cars as they pass over, the HCS12 will need to be able to read two distinct value ranges from each of the individual phototransistors. This will be done by covering up each individual phototransistor and making sure the values read are nice and distinct. In order to make sure the WS2811 Array module of RGB LEDs functions properly, each of the LEDs will need to be able to turn into any of the four colors red, blue, yellow, green. Figure 2 below shows how the modules interact with each other. Table 7 shows the phototransistor module tests that were conducted, and Figure 4 shows the results of those tests which were captured using PuTTY. Table 8 shows the WS2811 module tests that were conducted, and Figure 5 shows the results of those.

Figure 2: The Level-1 Diagram for Figure 1. Module Test Name Input Expected Output Actual Output Phototransisto r PT Sensitivity Test 1 PT Sensitivity Test 2 PT Sensitivity Test 3 PT Sensitivity Test 4 Move objects across a PT from 0.5cm away and observe a value change displayed on PuTTY. Initial Value < 20 Final Value > 100 2nd PT Initial Value < 20 Final Value > 100 3rd PT Initial Value < 20 Final Value > 100 4th PT Initial Value < 20 Final Value > 100 Results 198 PASS 197 PASS 204 PASS 193 PASS

Table 7: First Module Tests Figure 4: Phototransistor signals captured four times Results: Using PuTTY, the four signals are read while each individual individual phototransistor was covered up. There is a very distinct high and low value for when the derby car passes over.

Module Test Name Input Expected Output WS2811 RGB LEDs LED Color Settings Test 1 LED Color Settings Test 2 LED Color Settings Test 3 LED Color Settings Test 4 Send code that should make the LED0 red and observe. Send code that should make the LED1 blue and observe. Send code that should make the LED2 yellow and observe. Send code that should make the LED3 green and observe. LED0 should be red LED1 should be green LED2 should be blue LED3 should be yellow Table 8: Second Module Tests Actual Output RED GREEN BLUE YELLOW Results PASS PASS PASS PASS Figure 5: Left photo shows passing tests. Right photo shows that the LEDs can change colors. Results: The LEDs have no problem changing into the needed colors which means all the tests pass.

3.2 Milestone II Tests to Verify Correct Module Interactions. 1. Have the photoresistors set off in the order of red, blue, yellow, green and observe the LEDS for that order. 2. Have the photoresistors set off in the order of yellow, green, red, blue and observe the LEDS for that order. 3. Have the photoresistors set off in the order of green, yellow, blue, red and observe the LEDS for that order. 4. Press the reset button to make sure all the LEDs change back to white. Milestone II Requirements: After the individual modules are functioning independently, the next step is to combine the subsystems into a single unit. The values read from the Phototransistor Board now need to be transmitted to the HCS12 where it will be processed and converted to a format that will tell the LEDs on the WS2811 what colors to display. Figure 9 shows the results of the combined system tests, and Figure 6 shows the accuracy of the device. Module Test Name Input Expected Output Actual Output Combined System Derby Car Finish Order: red, blue, yellow, green Derby Car Finish Order: yellow, green, red, blue Derby Car Finish Order: green, yellow, blue, red Reset Button changes LEDs to white Blocked Light from Derby Cars activates the input signal Blocked Light from Derby Cars activates the input signal Blocked Light from Derby Cars activates the input signal Blocked Light from Derby Cars activates the input signal Display: red, blue, yellow, green Display: yellow, green, red, blue Display: green, yellow, blue, red red, blue, yellow, green yellow, green, red, blue green, yellow, blue, red Results PASS PASS PASS All LEDs white All white PASS Table 9: LED display tests corresponding to the finish line detection. Results: The system functioned exactly as intended as all of the tests passed. The system properly detected the finishing sequence and displayed the correct colors. The reset button changes all of the LEDs back to white, indicating the system is ready for the next race.

3.3 Final Implementation Tests to verify that the system functions properly. 1. Run cars down track and record finish order, and observe that the proper colors are displayed. Figure 6: Waveform showing two cars crossing the finish line 1.3ms apart. Results: The system functioned exactly as intended. The finishing positions of each lane were recorded accurately. Figure 6 shows that the detection system can capture two distinct cars 1.3ms apart. Since the derby cars will be traveling on average 3m/s, the detection will be accurate to within 2mm.

References [1] Gargiulo, Joe. "Pinewood Derby History - Story By Don Murphy". Pinewoodpro.com. Web. 28 Oct. 2016. http://www.pinewoodpro.com/pinewood-derby-history.htm [2] http://www.arabchurch.org/ministries/awana/grandprix/rules/awana%20grandprix%20event %20Rules%20and%20Procedures.pdf [3] "The Champ Timer - Pinewood Derby Digital Timer". Besttrack.com. Web. 28 Oct. 2016. http://www.besttrack.com/champ_timer.htm [4] WS2811 Datasheet. https://cdn-shop.adafruit.com/datasheets/ws2811.pdf

Appendix A: Running the Project How to use the Pinewood Derby Finish Line Detection System: Plug in the power cable to the barrel jack on the control box Plug in the black side of the ethernet cable to the control box Plug in the other side of the ethernet cable to the sensor board Plug in the power connectors from the sensor board to the light bar Switch the control box on The lights should light up all white if everything is good If the lights are not white the light bar is not properly aligned Readjust the light bar to be over the sensors and press reset Run the race Press the reset button to run the next race The lights will go back to white when it is ready for a new race