Nasss, cierto que no todo se puede leer por el puerto paralelo. Aunque da un ancho de banda algo superior a 1Mhz, para el caso de una regla con resolución de 3 micras a ¿1000mm/min? lo sobrepasa.
En el caso de Mach3 el problema de uso de CPU es que al no tener un sistema de "tiempo real" (el RTOS del Linux modificado que lleva LinuxCNC) lo que hacen es poner en bucle a muestrear las patillas a toda leche. Para frecuencias de Khz pues "vale"... pero no para estos usos más serios que buscamos.
Completamente de acuerdo en que cada eje ha de ser "ayudado" con hardware dedicado (distribuir las tareas que decía Gil en su día). En particular hay una "gama" bastante bien integrada con Linux CNC que son las MESA:
http://www.mesanet.com/fpgacardinfo.html (hay otros fabricantes por supuesto).
Disponen de un "chip" dedicado (FPGA, que viene a ser como un micro "simplón" pero especializado en I/O) y hay toda una gama con >50 I/O (frente a la docena de un puerto paralelo) y contadores para las reglas que alcanzan los 200Mhz. Las hay PCI, USB e incluso Ethernet, pero estas últimas el driver está en "beta"... en los foros USA tienen muy buena acogida.
En Linux CNC tienen los drivers para ellas publicados e integrados con ejemplos de configuración (son los
HOSTMOD2) para encoders, servos, PaP, etc. (hay otros fabricantes, pero de lo que he leido me ha parecido los más extendidos con un precio muy razonable
precio/características).
La filosofía de estas tarjetas, es poner una tarjeta al ordenador (mejor PCI, pero puede ser hasta ethernet) y esta "breakout" dispone de uno(varios) conector(es) 50pines "estandar a sus tarjetas" de forma que acoples una tarjeta de encoders, o drivers de motor, o relés, o entradas optoacopladas.... es muy, muy completa la familia.
Estos son unos ejemplos de configuración con diferentes modelos de sus tarjetas + complementos:
http://linuxcnc.org/docs/html/drivers/hostmot2.html#_configurationsAle, ya tenéis lectura amigos
Salu2
PD. I/O para el que no le suene son Input/Output... entradas/salidas... vamos, los pines en el caso del puerto paralelo que son las señales/cables que puede manejar el ordenador.