# Feedforward Control: Plant's Process vs Disturbance Model

I have a question on Feedforward Control in a control system, in distinguishing a Plant's Process vs Disturbance Model.

Say the Plant is a motor driving a wheel of a car. There's a measurable disturbance input D(s) acting directly on the wheel actuator that's controlled with standard feedback/feedforward (FB/FF). In other words: D(s) is the disturbance. The disturbance sensor may have its own Transfer Function (G_t in one of the images), but let's assume it's 1 (ie perfect). So, in this case D(s) is also the measurement.

When using Disturbance Feedforward, the FF transfer function is often defined as Gff = -G_D / G_P, where G is the Plant broken into its Process Model and Disturbance Model parts. See the diagrams below, or at this time stamp in this video.

Two things are unclear to me, and I haven't found a good resource to elaborate on them:

1. How are G_P and G_D determined when the disturbance acts directly on the plant actuator? For example, disturbance torque on the actuator. Naively, it seems that G_P = G_D, since the disturbance acts on the motor, and the motor is also the controlled plant, but in that case G_ff = -G_D/G_P = -1 -- and that doesn't seem right, since it would mean Gff = -1*measurement, which disregards plant dynamics.

2. Say the situation changes, and a disturbance affects the car and not the motor: wind blows on the car and causes it to tilt up, and a sensor measures the car's lift. D(s) is the measurement of the car's angle caused by wind, eg an accelerometer mounted to the car body. In this case, we're measuring the disturbance's effect on the car, vs the case in part (1) of measuring the disturbance. The motor's goal is to slow down or speed the car up to remove this tilt and become level again (normal driving state). So, the motor is still the plant to be controlled. So, what is G_D, then? Is G_D = 1, or how is G_D defined when the measurement already includes the effects of the disturbance on the system? <-- Is my error because i'm unclear on what system means, and I need to be saying plant, and my plant is poorly defined?

Regarding the latter point, the measurement of the car's response seems to be G_D (the disturbance acts on the car), and the motor seems to be G_P (the plant the control loop controls). But this seems wrong, since the car is NOT part of the plant; it's a superset. Am I setting this up poorly, and the plant needs to be the car, and the Process-Model-part of the plant is the actuator? Or, am I missing something else?

• The assumption is that the disturbance is measured a priori, which is possible in some practical situations, but not in others.
– Chu
Feb 17, 2022 at 8:44
• Agreed. Assume that for at least (2) the impact of the disturbance can be measured. For (1), assume the disturbance can be measured, since I'm trying to understand the FF framework more generally.
– J B
Feb 17, 2022 at 9:19
• I'm not sure I understand the question. If the disturbance can be measured a priori, then feed it through a block with inverse dynamics to the path through the process. So, if that path through the process is an integrator, the feedforward path would be a differentiator (not an ideal differentiator, of course).
– Chu
Feb 17, 2022 at 9:42
• Right, but HOW to do that depends on several points whose theory I don't fully understand. The question is about how to represent a plant, "in distinguishing a Plant's Process vs Disturbance Model." I'm not sure how else to write the question, beyond what I wrote above, in the two scenarios that I wrote: measuring disturbance, and measuring the effect of the disturbance. Feel free to check out the video for more details, since i might not have summarized the main points well enough.
– J B
Feb 17, 2022 at 20:20

In summary, the plant was defined unclearly. The plant would be the entire vehicle, in this example. The strap-down IMU version of the system is unlike the one shown above. To say the obvious, the IMU is not measuring the disturbance -- it's measuring D(s)G_D(s). So, if this measurement m = D(s)G_D(s), then that is the effective G_D portion, so using the traditional G_FF notation, G_D=1. This is imprecise, though, since G_ff should be derived a different way, and if following an updated block diagram with G_ff reading m = D*G_D, then it's just $$G_{FF} = -1 / \hat{G_P}$$ I.e. $$u = m * G_{FF}$$
In this case, the IMU TF R needs to be taken into account though, so more accurate is $$G_{FF} = -1 / (\hat{R}\hat{G_P})$$