Hola.
Una cosa es calcular una función que describa los cambios entre PWM y frecuencia y otra muy diferente calcular la función de transferencia del motor. Para la primera, se toma datos de velocidad para cada valor de PWM, sale una tablita relacionando una variable con otra, pero esa función no nos sirve para hacer el PID. La funcion que se necesita se obtiene al imprimir una función escalón en un rango del 15% al 20% de la señal total del PWM y medir como se comporta la velocidad.
Es muy importante el patrón de medida, ya que es con respecto a él quien tomas las medidas.
La función con la que se calcula el PID es una función con base en el tiempo, ya que si haces la tabla de relacion entre una variable y la otra, solo haces corresponder un valor de velocidad a un valor de PWM y en ese caso no hay control.
El PID es efectivo para sistemas de 1 o 2 orden, para sistemas de orden superior, el PID se torna inestable. Para garantizar que a tu sistema si se le puede aplicar un PID, la función de transferencia de la planta (motor) debe darte una funcion exponencial. Si hay mas variables de perturbación, la cosa cambia, ya que tocaría diseñar un sistema de control un poco mas robusto, como un Fuzzy o un RST.
El ejemplo clásico es el del horno, en el cual la variable a controlar es la temperatura, y la función de transferencia del sistema la sacas inyectando un potencial a la resistencia y mides la temperatura con respecto al tiempo y de ahi se calculan los valores del sistema. En tu caso se inyectaría una señal de voltaje también, y debes medir el cambio de velocidad en el sistema con respecto al tiempo, ya con eso puedes plantear tooooda la matematica para calcular el PID.
Si el motor va a tener carga, debes verificar el par motor de motor y el sistema final ya es mas complejo, pero se puede hacer. O puedes hacerte un variador de velocidad en el cual el par motor permance constante, es otra opcion.
Saludos