How to display elevator floor using arduino?

Hi all,

I want to display the elevator present floor and destination floor using arduino. This guy has developed partially what I want but couldn't get any help with components and connection. https://youtu.be/TbrIq70C5a0

So let's say someone gets in the floor at 3rd floor, and want to get out at 10th floor. Then the display outside the elevator should read (source floor, present floor, destination floor) .i.e. 3, 6, 10

The Youtube video claims that the device uses an altimeter.
Perhaps you can get started with https://learn.adafruit.com/adafruit-bmp388/arduino

The altimeter will tell the Arduino what floor it is currently on (or passing). It has no connection to the call buttons so it has no way of knowing where it is headed. To do that you have to tap into the elevator electronics, which may be considered a safety problem by the elevator company.

You could have an Ardiuno on each floor connected by network (wired or wireless) that can 'look at' the call buttons to see what floors are requesting pick-up. You'd need one in the elevator to 'look at' the floor buttons to see which destination floors have been selected.

By "look at" I mean a non-contact optical sensor that detects which buttons are lit. Since it has no connection to the elevator electronics it should not be a safety problem.

johnwasser:
To do that you have to tap into the elevator electronics, which may be considered a safety problem by the elevator company.

Not "may be" at all! :astonished:

The problem with an altimeter is that it will require frequent automatic re-calibration, presumably at the lowest - ground or basement - floor.


And you seriously need to watch this! :sunglasses:

Mount an array of targets, in a binary pattern, at each stop. On the car is an array of sensors arranged to detect the presence or absence of a corresponding target. The state of the sensors goes to a byte variable and is readable as the floor number.

In the real world, where multiple people may get into the elevator on different floors, there is no single “source floor” or “destination floor” . However, I’m guessing that this is one of the classic school exercises, where an Arduino is used to model the main activities of on elevator. Which is actually a much better case than believing that someone seriously intends to retrofit a working elevator with a load of hobby electronics.

If this is a school project then its an easy solution, I did a number of these type of controls for home elevators back in the 1990's.
For the standard two floor house we used a Allen Bradley Micrologix plc with relay and contactor interfaces, we used limit switches to detect position and doors closed safe to move. To meet local standards some of the limits were double pole series connected to a manual emergency stop for safety.

For the multi floor units we used a bigger PLC and I developed a simple program (these PLC's used ladder logic for programming which was really just a graphical representation of Boolean), basically store elevator position in one variable, floor call button in a second variable and lift destination button in the third variable. Code looked at which floor called, compared to position of car, if higher go up until position and floor match then stop, unlock door, clear call variable and wait. If car position higher than floor call go down. once in the car simply press floor number and logic is the same.

There were a lot of interlocks around doors being closed before car could move, doors only unlocking when the car was on the floor etc.

All of this is easily duplicated with an Arduino, a handful of limit and pushbuttons for input and if just a project LED's for outputs?