Plant time constant T_p = 5 s, nominal model K_n = 2 / T_n = 5 s, PI integral time T_i = 5 s, sample time dt = 0.05 s, simulation time T_sim = 20 s. A setpoint step r = 1 is applied at t = 0 and a disturbance step d is applied at t = 10 s.
Top = output y (red = PI alone, blue = DOB+PI, gray = setpoint r) / Middle = disturbance d (black) and DOB estimate d-hat (green) / Bottom = control input u (red = PI, blue = DOB+PI)
For a first-order plant $G_p(s) = K_p/(T_p s + 1)$ subject to an input disturbance $d$, a DOB uses a nominal model $G_n(s) = K_n/(T_n s + 1)$ to estimate the disturbance.
Disturbance estimate (ideal form and Q-filtered form):
$$\hat{d}_{\text{raw}} = G_n^{-1}(s)\, y - u, \qquad \hat{d} = Q(s)\,\hat{d}_{\text{raw}}$$$G_n^{-1}$ is improper, so the low-pass Q filter $Q(s) = 1/(\tau_Q s + 1)$ makes the implementation realizable.
Final control input (DOB+PI):
$$u = u_c - \hat{d}, \qquad u_c = K_c\, e + \frac{K_c}{T_i} \int e\, dt$$Discrete update: $\hat{d}[k] = (1-\alpha)\,\hat{d}[k-1] + \alpha\,\hat{d}_{\text{raw}}[k]$, with $\alpha = dt/(\tau_Q + dt)$.