I don't know how this is done but the following sounds likely and easily achievable.
It's how I would approach implementing a solution initially if I had no other information.
Summary: IF you can reverse the lead screw then piston position is correlated to suction and you can simply control stroke length. So motor speed affects suction profile and piston position affects pressure.
Pump stroke will affect suction.
If there is no significant volume input into the controlled space then piston position provides the same suction level. This would allow open-loop control, but results would be uncertain due to variation in enclosed space with different users and pressure sensors are cheap and easy to use.
A pressure sensor allows actual suction to be measured and rate and magnitude to be controlled. Simple feedback should allow full pressure/time profile to be controlled easily. Ideally the desired pressure time / pressure profile is generated in software and pump speed and direction adjusted to suit.
This is probably a simple enough requirement that very basic hardware could be used. A "ramp" signal is generated - maybe a triangle wave or perhaps modified to a shape that suits. Magnitude of waveform = desired pressure.
Adjusting the analog magnitude could use a user controlled potentiometer or digitally controlled equivalent. Pressure is adjusted to track this with desired:actual pressure controlling lead screw positioning. Oscillator speed adjusts rate.
A single cheap quad opamp (eg LM324) would suffice.
Or for the very keen even a hex package of schmitt inverters (eg 74xx14).
But a microcontroller solution is liable to be as low cost all up and more flexible in results.