/Ride-Engineering-Competition-PLC-Programming

1st Place Control Systems Project for the 2025 Ride Engineering Competition. A student-built PLC-controlled theme park ride using OpenPLC, Arduino Mega, and real-world industrial ladder logic.

Primary LanguageC

Ride Engineering Competition 2025 – "Abandon Ship!"

Overview

As part of the 2025 Ride Engineering Competition hosted at Ohio State University, our team from the Themed Entertainment Association @ Notre Dame designed and built a working model flat ride called "Abandon Ship!", competing against 20 top engineering schools from across the country.

Our ride followed ASTM F2291-24 standards and included:

  • Risk assessments
  • Factory and site acceptance tests (FAT/SAT)
  • Service and maintenance plans
  • Full mechanical and electrical schematics
  • Custom control systems

My Role – Controls Team Lead

I led the controls engineering effort for our three-motor system, overseeing:

  • Electrical wiring and layout
  • Stepper motor logic and motion control
  • Emergency stop and fault handling
  • Custom operator panel wiring and configuration
  • Industrial-style programming using IEC 61131-3 Ladder Diagrams via OpenPLC

Key Contributions:

  • Designed and built a complete control system using OpenPLC running on an Arduino Mega 2560
  • Created a dual NPN MOSFET failsafe circuit: power flows only if both hardware (E-STOP) and software (Ladder Logic) conditions are satisfied
  • Developed a full set of FAT/SAT test procedures (100+), simulating real-world commissioning of theme park attractions
  • Implemented jogging, homing, auto sequence, and soft stop behaviors entirely in Ladder Logic, supported by an Arduino Extension file written in C++

Award

Our team won 1st Place in Control Systems Design for our:

  • Robust safety integration
  • Use of an open-source industrial PLC platform
  • Modular and maintainable ladder logic programming
  • Real-world simulation of theme park control workflows

Tech Stack

  • OpenPLC (Ladder Diagram logic)
  • Arduino Mega 2560 (as PLC runtime hardware)
  • NPN MOSFETs for dual-fault-tolerant E-Stop enforcement
  • Limit switches, stepper drivers, and manual control panel
  • FastAccelStepper and AccelStepper libraries in Arduino Extension File

🎥 Demo Videos

RECDemoDav.2.mp4
demo720.1.mp4

Acknowledgments

  • Huge thank you to Thiago Alves for building and maintaining the OpenPLC platform — and for answering questions in the forum!
  • Thank you to Charlie Wickham and the competition judges for organizing the event.
  • And a massive shoutout to my teammates on TEA@ND for their hard work, creativity, and late nights!

Images

image

image

image

image

image

image

image

image

image

image