DriveLab
Account

Lab III · Four-quadrant elevator drive with S-curve profiling

A seven-phase S-curve trip, the reflected torque of a counterweighted lift, the four quadrants along the trip, and the braking resistor for the worst regenerating case.

Print QR code

Objectives

As set by the Lab Works booklet:

  1. Generate a jerk-limited S-curve position, velocity and acceleration profile for a traction elevator trip.
  2. Model the counterweighted mass imbalance and compute the reflected motor torque throughout the trip.
  3. Classify the resulting operating points into the four torque-speed quadrants and identify the motoring and generating intervals.
  4. Size a dynamic braking resistor from the peak regenerated electrical power.

Background

Chapter 3 established the counterweight balance Mcw=Mcar+B MratedM_{cw} = M_\text{car} + B\,M_\text{rated} (course eq. 3.1), the reflected motoring and generating torques (eqs. 3.3 and 3.4), the dynamic torque (eq. 3.5), the four-quadrant classification and the jerk-limited S-curve (j=da/dtj = da/dt). Combining an S-curve speed profile with the torque model gives the torque, speed and power P=TωP = T\omega at every instant of a trip, from which the quadrant history and the regenerated energy follow. With ΔM=(Mcar+Mload)−Mcw\Delta M = (M_\text{car} + M_\text{load}) - M_{cw}, r=D/(2 i kgear)r = D / (2\, i\, k_\text{gear}) and the travel direction included in the speed vv and acceleration aa:

Tideal=(ΔM g+Mtotal a)r,ω=vrT_\text{ideal} = \left(\Delta M\, g + M_\text{total}\, a\right) r, \qquad \omega = \frac{v}{r} T={Tideal/ηmotoring (Tideal ω≥0)Tideal ηgeneratingT = \begin{cases} T_\text{ideal} / \eta & \text{motoring } (T_\text{ideal}\,\omega \ge 0) \\ T_\text{ideal}\, \eta & \text{generating} \end{cases}

Parameter sheet

ParameterSymbolValue
Empty car massMcarM_\text{car}1000 kg
Rated payloadMratedM_\text{rated}1000 kg
Counterweight balancing factorBB0.5
Sheave diameterDD0.60 m
Roping ratioii1
Gear ratio (gearless)kgeark_\text{gear}1
Mechanical efficiencyηtotal\eta_\text{total}0.90
Rated velocityvratedv_\text{rated}2.5 m/s
Maximum accelerationamaxa_\text{max}1.0 m/s²
Maximum jerkjmaxj_\text{max}1.5 m/s³
Travel distance (trip)HH20 m
DC bus braking thresholdVdcV_\text{dc}760 V

Procedure

The booklet's five steps, with the names the checker looks for shown in code font.

  1. Set up the environment. Import NumPy and Matplotlib (already in the template).
  2. Define parameters. Set Mcar, Mrated, B, D, i, kgear, eta, v_rated, a_max, j_max, H, Vdc, and the counterweight Mcw.
  3. Implement the S-curve model. Write scurve(H, v_max, a_max, j_max, dt=0.001) returning the arrays t, x, v, a, j of the seven phases. Each jerk phase lasts a/ja/j; if vmax<amax2/jmaxv_\text{max} < a_\text{max}^2 / j_\text{max} the acceleration never reaches amaxa_\text{max}, so use a=v ja = \sqrt{v\,j}. If the trip is too short to reach vmaxv_\text{max}, lower the peak speed until the two ramps, of length v (v/a+a/j)/2v\,(v/a + a/j)/2 each, fit into HH. The checker calls it with a long and a short trip.
  4. Compute torque and power. Write drive(load, direction, v, a) returning the arrays T, w, P, q (torque, motor speed, power and quadrant) for a load in kg, direction +1 (up) or −1 (down), and the S-curve's v and a. Run it for the two booklet scenarios, (a) full load up and (b) empty car down, and for the worst case, full load down.
  5. Plot and analyse. Plot xx, vv, aa and jj of the S-curve; plot TT and PP for each scenario with the quadrant marked. From the full-load-down trip, compute the peak regenerated power P_regen_peak (a positive number, in W) and the braking resistor R_brake at VdcV_\text{dc}, then answer the questions under the workspace.

The checker calls scurve and drive with random arguments on every run, so each must work for any sensible input, not only the lab's values.

Report

One individual report and your code, in this order: Objective, Model, Parameters, Results, Discussion, Conclusion, Code, marked out of 20 (model 6, results and plots 5, discussion 6, report quality 3). The workspace builds it from your work.