Project tutorial
Hot Wheels Finish Line

Hot Wheels Finish Line © GPL3+

A basic but very accurate Arduino based Die-cast (Hot Wheels) finish line judge using IR LED emitters and receivers.

  • 251 views
  • 0 comments
  • 1 respect

Components and supplies

Necessary tools and machines

About this project

My work was planning a team building event, a Lunch Hour Hot Wheels Tournament. Two race brackets, Single knock out. To avoid any arguments, bad feelings and wrong doing's, I offering to make a electronic finish line judge. I knew the Arduino would do the trick! Over a span of a couple weeks I went from prototype to a slick working model ready for race day!

The course was 20ft long with the finish line judge at the end! We had 26 cars enter the event. Winner gets a trophy and bragging rights! It took the entire lunch hour to get to the final 2 cars. The final race was won by a half a car length... to close for the naked eye to tell!

The project is based around the Arduino Nano and Gikfun IR LED emitter and receiver. These are readily available online and are easy to mount, install an wire up.

As soon as the first car breaks the IR beam, the top mounted LED declares the winner. The LED remains on for 5 seconds then the device resets by itself and is ready to go again. There is no need to press a reset button. This makes it easy for kids to play for seamless non-confrontational action!

The IR LED emitter is powered by the 3.3V and the IR receiver is powered by the 5v from the board. The IR receivers are constantly reading a "HIGH" value until an object (a die-cast car) breaks the beam making it read "LOW". Once "LOW" is triggered, the top mounted LED for winning lane lights up.

The device is stand-alone and can be placed anywhere along the track. There is no need to modify a section of track to make it work.

Finish Line Judge

Code

IR_Finish_LineArduino
//By Mike Freda - March 2020
//Diecast electronic finish line
//First car to break IR beam is the lane winner
//Uses Gikfun 5mm 940nm IR LED's emitters and receivers: EK8443

int analogOutPin1 = A1; // finish line beam lane 1
int analogOutPin2 = A2; // finish line beam lane 2

const int ledPin1 = 11; //lane 1 winning LED
const int ledPin2 = 12; //Lane 2 winning LED

int sensorValueFinish1 = 0;
int sensorValueFinish2 = 0;

int sensorThresh = 500; //Sets the trigger sensing threshold of the IR receivers. ~1000 = high

void setup() 
{
  Serial.begin(9600);
  pinMode(ledPin1, OUTPUT); //lane 1
  pinMode(ledPin2, OUTPUT); //lane 2
  digitalWrite(ledPin1, HIGH); //Flashes Winner LED's
  digitalWrite(ledPin2, HIGH);
  delay(2000);
  digitalWrite(ledPin1, LOW);
  digitalWrite(ledPin2, LOW);
}

void loop() 
{
  //reads the analog in value:
  sensorValueFinish1 = analogRead(analogOutPin1);
  sensorValueFinish2 = analogRead(analogOutPin2);

   // remove "//" from below for Debugging and checking actual sensor values. 
   //             You may have to adjust sensorThresh value for better accuracy.
   //             The sensors should read around 900-1000 then go "low" (less than 400) when a car passes through the beam.
    
   // Serial.print("Sensor Finish1 = " );
   //Serial.println(sensorValueFinish1);
   //Serial.print("Sensor Finish2 = " );
   //Serial.println(sensorValueFinish2);
   //delay(50);

// wait/check for the finish sensors to be triggered
  
  if(sensorValueFinish1 < sensorThresh && digitalRead(ledPin2) == LOW) //Lane 1 is winner
  {
   digitalWrite(ledPin1, HIGH); //turn on lane 1 winner LED
   delay(5000);
   digitalWrite(ledPin1, LOW); //turn off lane 1 winner LED
  }

  if(sensorValueFinish2<sensorThresh && digitalRead(ledPin1) == LOW) //Lane 2 is winner
  {
   digitalWrite(ledPin2, HIGH); //turn on lane 2 winner LED
   delay(5000);
   digitalWrite(ledPin2, LOW); //turn off lane 2 winner LED
  }
}

Schematics

Circuit Diagram
Circuit and Component Layout

Comments

Similar projects you might like

Hot Wheels Car Photogate

Project tutorial by nfarrier

  • 4,240 views
  • 2 comments
  • 13 respects

Arduino Hot Wheels Speed Track Part #1 - Prototype

Project in progress by Unexpected Maker

  • 3,024 views
  • 0 comments
  • 4 respects

Arduino Hot Wheels Speed Track Part #2 - Code

Project in progress by Unexpected Maker

  • 2,354 views
  • 0 comments
  • 5 respects

Buzz Wire with Score Counter

Project tutorial by behrooz66

  • 9,880 views
  • 26 comments
  • 42 respects

RCar | Robots for All!

Project tutorial by Luís Rita

  • 8,606 views
  • 2 comments
  • 43 respects

Hot Glue LED Matrix Lamp

Project tutorial by John Bradnam

  • 8,022 views
  • 1 comment
  • 37 respects
Add projectSign up / Login