Skip to content

akhaled247/PLTWElevatorProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

PLTW PoE Control Design Project: Elevator

To learn more about this project, visit my webpage! - Abdullah Khaled

Designed and Programmed By: Abdullah Khaled, Gabriel Garabedian, Brandon Chiou, and Kristian Little

Explanation:

This project was made for our PLTW Principles of Engineering (PoE) class during our VEX V5/Robotics Unit. This project asked us to create a machine that completed a specific goal, and we chose to do the elevators. We were tasked with creating an elevator with the following criteria and constraints:

Criteria:
  • Carriage must go to any floor in any order
  • Display the elevator’s current floor
  • Each floor must have a way for someone to call the elevator to that floor.
  • Users, once in the elevator, must be able to choose their desired floor to go to.
  • Return to ground floor after user-determined period of time
  • Include a “Maintenance Mode” where the lights blink and all doors open

Constraints:
  • Prevent residents from entering elevator shaft
  • Doors must not interfere with other floors
  • Order of carriage should not matter

Design

The CAD for our final design can be found here. Some design changes we made included (but are not limited to)
  • Switching servo-operated doors to motors due to limited 3-wire ports
  • Added limit switches instead of bumpers to carriage
  • Moved floor selector bumper switches to other side of elevator for ease-of-use and wiring ease
  • Added battery mount
  • Switched rack-and-pinion mount since we did not have that part, which made it slightly less stable

Programming

For programming, we decided on using one distance sensor and used a P controller to determine the desired velocity of the elevator motor to get to each floor quickly and accurately.

We also struggled with LED logic, so we decided to bypass that in our final design but keep the control logic in case someone else is able to make it work. Our code can be found in the MachineControlProject.cpp file, but if you decide to use our design/code be sure to configure your motor and three-wire ports or else it will not work (I found this out the hard way!).

Final Thoughts

Overall, we felt that this project went quite well. Some things we could have done better include ensuring a more stable support for the rack and pinion and implementing LEDs into our maintenance mode, but in general there was not much we wanted to improve on. Here is the link to see our elevator in action. I hope this repo is helpful for any future projects you might create!



- Abdullah Khaled

About

This is the code for the elevator we created for the PLTW Machine Control Project.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages