Hi Jaydeep
you ought to use ParametricNDSolve without defining in advance Km.
So something like this for model1 (notice the parameters Km betwwen curly braces at the end) will work
Model1 = ParametricNDSolve[{
Ca'[t] == ((Vmax Cb[t])/(Km + Cb[t]) - Pdiff Fuc Ca[t] +
Pdiff Cb[t])/Va,
Cb'[t] == (Pdiff Fuc Ca[t] -
Pdiff Cb[t] - (Vmax Cb[t])/(Km + Cb[t]))/Vb,
Ca[0] == 0,
Cb[0] == Cb0 },
{Ca, Cb}, {t, 0, 100}, {Km}, {Km}, PrecisionGoal -> Infinity]
Then to plot an actual solution vs a specific parameter value (here the first argument, 15, holds for the Km parameter):
Plot1 = Plot[Ca[15][t] /. Model1, {t, 0, 180},
PlotRange -> {{0, 45}, {0, 1000}}, PlotStyle -> Magenta]
A last this one will allow you to manipulate the solution of your model:
Manipulate[
Plot[Ca[Km][t] /. Model1, {t, 0, 180},
PlotRange -> {{0, 45}, {0, 1000}}], {Km, 0, 40}]
Hope this helps.
Luciano