  Because they represent physical systems with propagation delays, hyperbolic
systems are well suited for feedforward control. This is especially true when
the delay between a disturbance and the output is larger than the control
delay. In this paper, we address the design of feedforward controllers for a
general class of $2 \times 2$ hyperbolic systems with a single disturbance
input located at one boundary and a single control actuation at the other
boundary. The goal is to design a feedforward control that makes the system
output insensitive to the measured disturbance input. We show that, for this
class of systems, there exists an efficient ideal feedforward controller which
is causal and stable. The problem is first stated and studied in the frequency
domain for a simple linear system. Then, our main contribution is to show how
the theory can be extended, in the time domain, to general nonlinear hyperbolic
systems. The method is illustrated with an application to the control of an
open channel represented by Saint- Venant equations where the objective is to
make the output water level insensitive to the variations of the input flow
rate. Finally, we address a more complex application to a cascade of pools
where a blind application of perfect feedforward control can lead to
detrimental oscillations. A pragmatic way of modifying the control law to solve
this problem is proposed and validated with a simulation experiment.
