PLC Fx5 - step motor

PLC Fx5 - step motor

Hi, I have a PLC Fx5U. The PLC controls the stepper motor with the crankshaft mechanism. Therefore, the dependence of the position of the pusher on the angle of rotation is not linear. I need to get linear movement of the pusher. To control stepper motors I use the DRVI function. In this function I can set a stable speed, but I need to change the speed as the crank moves. The crank movement time is 0.2-0.3 seconds. 1 turn. How can this problem be solved?