En principio, lo mas estandar seria que modelizaras el motor de CC, obtuvieses sus ecuaciones de estado y diseñases un controlador, junto con un observador de estado. Fijate que simple lo digo jajaj pero no lo es (aunque nosotros lo hemos hecho hace unas semanas).
Bien te comento... segun lo poco que se de controladores y PIDs, yo creo que lo mejor es que diseñes un PID digital en un PIC (analogicos ni de coña!!), y vayas cambiando ("sintonizando" en la jerga) los parametros Kp,Ki,Kd hasta que consigas lo que deseas.
La referencia del PID sería la posicion X donde quieres que este el posicionador, el error seria la medicion del encoder (digitalizada claro), y la salida seria una señal analogica (mediante un DAC) al L293B. Asi de simple. El diseño es muy simple (un PIC y un conversor D/A), y la programacion tambien, pues hay demasiados ejemplos en internet sobre PIDs en micros (incluidos los pics). Lo mas dificil y tedioso será ajustar esos 3 parametros, pero seguro que con un poco de paciencia y documentacion sobre sintonizacion de PIDs lo haces en una tarde.
La gran ventaja de diseñar el PID en soporte digital es que los 3 parametros no son 3 posiciones e-x-a-c-t-a-s de los potenciometros, sino 3 floats que programas comodamente en el PIC en un pimpampum. Si te pones mas elegante y para acelerar las cosas, puedes meterle una consola RS232 para cambiar los valores de sintonia "on the fly", y enviarle referencias de posicion para ver el comportamiento. Yo desdeluego lo haria.
Un saludo!