I recently implemented a PID loop for speed control of a treadmill. I used a position encoder to find the speed of the treadmill and used it to find error from a desired speed for the PID controller. The output of the PID controller, called the control signal, is the PWM for the motor. You should see your motors' documentation for speed commands and then serially communicate those to the motor. These speed commands can go from 0% to 100% PWM. 100% would mean that your motor is running at the highest rated voltage meaning highest rated rpm. 50% would mean it is running at half the rated voltage and resulting into half the rated maximum rpm respectively.
You have to map the speed (m/s) into PWM values. You can do this as follows:
Maximum speed = 100% PWM (Must have a value that the motor interprets as full PWM, see motor documentation)
1 = (100% PWM) / Maximum Speed)
and your final PID output should be like:
PID_OUT = (100 % PWM / Maximum Speed)*(Error * Kp + Sum_of_Erros * Ki * Loop_Time + Kd*(Error - Last_Error) / Loop_Time)
Lastly, I am just a noobie. Wait for experienced people for some detailed answers :) .
Hope it helps.