I have an quadrature encoder. my minimum and maximum positions are fixed, and I can count the relative position. If my encoder is mid way, looses power and is then restarted, how can I know my current position, without the encoder starting the count again from zero

  • \$\begingroup\$ Use an absolute encoder, instead of quadrature, or only count pulses from the encoder, and use them to increment/decrement an internal register that is battery backed up. \$\endgroup\$ – R Drast Jan 23 '19 at 9:15

Remember that even a powered down elevator can be moved manually, generally you open the isolator, stick a leaver in a hole in the brake housing and then wind the motor over by hand with a crank. The gear ratio makes it painful to do over any distance, but if you got people stuck in a lift, it can be done (Usually there is a card inside the motor compartment with instructions for manual winding).

Even if the car could not be moved manually, a car in movement when the grid drops out will NOT stop instantly, and how far it will move depends on speed and load (In a non obvious way, there is a counterweight and a considerable mass of cable in play) and I would NOT ever assume anything about the state of the system at power up.

Homing to a limit switch works, but really there is little wrong with a cam operated microswitch or two at each floor (Plus a couple of over travel switches at each end), and that has the considerable virtue of simplicity and robustness.

Elevators have LONG service lives (30 years plus in many cases), and a simple system will be fixable long after the original designer has died and the original company gone out of business, something too clever, much less so. For this reason you still see simple switches with one wire per floor used widely and superficially simpler things like running a CAN bus for the call points is less popular then you would expect.

The one place you sometimes see incremental encoders is in the electrical overspeed sensor, generally a pully at the top and bottom of the shaft with a speed sensor fitted and a loop of wire run around and attached to the car.

Lasers and ultrasound both strike me very much as piss poor engineering for this sort of thing, I could MAYBE see optical beam break at each floor (But cleaning it would be a pain), or maybe magnets clipped to the overspeed sense cable and read at the top pully (gets all the electronics out of the shaft), but anything more then that just feels like something to break and be hard to repair.


The only reliable way is to have an end-stop switch. You move the motor in one direction (slowly) until it hits the end-stop and stop. At that point you set the quadrature encode value (Often to zero but you can use any number).

This method is fail-safe because you don't know if the position has changed while there was no power.

You will notice this behavior if you power-up any scanner and the scan 'wagon' is not already in the end-position.

  • \$\begingroup\$ yes, but I want it to use it for an elevator system. Is it possible to start the counter from the previous value, before it had shut down, without going back to the start position \$\endgroup\$ – APM Jan 23 '19 at 9:02
  • \$\begingroup\$ There are two problems: 1/ saving the counter before you lose power. 2/ How sure are you that the position has not changed when there was no power? Peoples lives are at risk with a real elevator system. You just do not play with that. My guess is that a real elevator system has a position switch per floor. \$\endgroup\$ – Oldfart Jan 23 '19 at 9:09
  • \$\begingroup\$ There are existing elevators that use incremental encoders to detect the position of the elevator. In current elevators, using incremental encoders, there is a limit switch placed either at the top or the bottom of the elevator system. when the elevator system reboots, the lift travels in the direction of the limit switch, from where, the value of the encoder is reset, and then, the lift goes to it's designated level, before starting to move people. Also, there are various fail safe mechanisms to prevent the elevator from falling. \$\endgroup\$ – APM Jan 23 '19 at 10:43
  • \$\begingroup\$ The position of the elevator cabin will not change, since, as and when it loses power, the motor locks down wherever it is, and will not move, as long as it does not receive power. In a real elevator system, there are various methods to position a cab on a floor. Off which, the position switch per floor is just a method and a very old one too. \$\endgroup\$ – APM Jan 23 '19 at 10:44
  • \$\begingroup\$ Many new elevators are coming up with various alternatives, such as positioning with an encoder, using linear encoders instead of rotary encoders, using distance measuring sensors, such as ultrasonic sensors, which are placed at the top or the bottom of the elevator system. Another method is by using laser to detect the position of the elevator. \$\endgroup\$ – APM Jan 23 '19 at 10:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.