Dark ride

I created this dark ride for my son's halloween party and is based his ideas and ideas from other places on the internet.  It utilizes multiple Arduinos to trigger jump props including car horn/lights.  The track is made from 1/4" OSB plywood and 1" PEX tubing for the car to follow.  The PEX is very flexible and worked very well for the curves.  As the car goes around the track, it goes through multiple areas separated by black sheet plastic.  It was the easiest way to create different areas since I could just staple the plastic to the ceiling joists and the plywood on the floor of my basement.

 

The car is built on a furniture dolly and uses a RF relay unit purchased from Amazon and uses an old 18V drill to drive the wheels.  It is setup to look like an electric chair.  I used an old lawn chair with PVC pipe as the bar to keep people in the seat.

 

image

image

 

The jump/drop scares utilize arduinos, LED diodes and LDRs as trip wires to trigger the scare.  I tried using PIR sensors but could not get consistent results.  The arduino then controls a relay module connected to sprinkler valves and a car horn/lights.  Since the LED provides the light for the LDR, I found I need to keep an eye on how much fog I use since it can interfere with the LDR.  The zombie picture is not upside down.  He is hanging from the ceiling and drops in front of you as you travel by.

 

image

image

 

I will post better pictures and a video of the ride once I have better lighting.  It is too dark to get any quality videos.  The entire ride takes about 35 seconds to go around which should be good for a group of 10 year old kids.  It is fairly tame and I wanted to make it scarier but I had to consider my target audience.  I didn't want any kids having nightmares.

 

Here is the code for the LDR.  I have two different setups.  One is using one relay and one is using two relays but both utilize the same code.  I just commented out the unused relay when not needed.

 

//Connections:

//LDR --> One leg to Vcc and the other to both analog pin 0 and to the GND via 100K resistor

//Relay --> Connect one pin of the coil to digital pin 2 and the other to GND.

 

int sensorPin = A0;   // select the input pin for ldr

int sensorValue = 0;  // variable to store the value coming from the sensor

 

void setup() {

  pinMode(2, OUTPUT); //pin connected to relay 1

  //pinMode(3, OUTPUT); //pin connected to relay 2

  Serial.begin(9600); //sets serial port for communication

}

 

void loop() {

  // read the value from the sensor:

  sensorValue = analogRead(sensorPin);   

  Serial.println(sensorValue); //prints the values coming from the sensor on the screen

 

  if (sensorValue < 930){ //setting a threshold value

    digitalWrite(2,HIGH); //turn relay 1 ON

    delay(500);}

 

    // digitalWrite(3,HIGH); //turn relay 2 on

    // delay(500);}

  else

    digitalWrite(2,LOW); //turn relay OFF

    //digitalWrite(3,LOW); //turn relay off

    delay(100);                 

}

 

This is the circuit diagram I created in Tinkercad.  I used an LED in place of the relay since Tinkercad did not have the same relay module I used.  This circuit and code works perfect in real life but works intermittently in Tinkercad if you try to recreate it.  

image

 

These are the components I used for all of my circuits.

 

Relays

https://www.amazon.com/gp/product/B07BS6PCR6/ref=ppx_yo_dt_b_asin_title_o09_s00?ie=UTF8&psc=1

 

Arduino Nano

https://www.amazon.com/gp/product/B07G99NNXL/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1

 

Laser Diode

https://www.amazon.com/gp/product/B01ITK4PEO/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

 

LDR

https://www.amazon.com/gp/product/B016D737Y4/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

Related
Engagement
Recommended