That did it! Thanks a lot.
Sorry, that should probably be
NMaxValue[ {vd[s], 0<=s<=Tp}, s]
For cumulative integrals it may be convenient to use NDSolve instad of Integrate, at least if the interval is not too large:
Vd = NDSolveValue[{Vd[0] == 0, Vd'[s] == fd[s]}, Vd, {s, 0, Tp}];