CNC - CODIGOS PARA TRAZADORES (Parte V)
Archivos PLT para Trazadores o Plotters
Un Plotter es como una impresora, con la INMENSA diferencia que este realiza el trazado de líneas, por medio de unas fibras, lápices, bolígrafos o elementos muy similares, llamadas plumillas en AutoCAD, El cabezal de un Plotter puede tener varias de estas plumillas (cada una con un color distinto), por lo que vi, algunos tienen cabezal rotativos, con la posibillidad de cambiar de plumilla en cualquier momento. aquí tienes un mini-video de este tipo de cabezales...
La mayor aplicación de los plotters la encuentran los Arquitectos de ilusiones, jaja...
Bueno, no, hablando en serio, Los Arquitectos los utilizan para el trazado de los planos de sus diseños, como sabrás, estos planos son inmensos, y una impresora común, no nos serviría para esta tarea, pues, creería yo que ese fue uno de los motivos por los cuales fueron creados, aunque nosotros utilizaremos sus lenguajes para otra cosa. Aquí tienes la foto de otro, aunque este ya no tiene cabezal rotativo como el anterior, sino que tiene las fibras puestas en forma vertical y descenderá la que corresponda al color de trazado, bueno, este tiene la pinta de ser fabricado en casa...
Aquí hay que resaltar algo, cada plotter tiene sus propios drivers, y en ellos la forma en que se controlará el movimiento de sus motores o bien la decodificación de una imagen para realizar el trazado. Volvemos a lo de siempre, todo depende del fabricante, algunos liberaron su código, otros no, pero nada impide que puedas controlarlos, en el mundo de la informática todo es posible, y aquí nos encontramos nosotros...
Ahora bien, todos estos plotters, te permitirán imprimir la imagen en un archivo de texto, este archivo contiene la información necesaria para que el plotter pueda trazarla, que algunos los llaman trazadores virtuales, no se si será el nombre correcto o no, pero la idea es obtener este archivo a como de lugar.
Una vez lo tengas, habrá que ver, qué información se encuentra dentro, o mejor dicho qué lenguaje utiliza, y bueno, dependerá del plotter que estés utilizando, o más bien, del driver de ese plotter.
En la Red de Redes, encontrarás varios, y te tocará elegir uno de ellos. El que yo describiré en este apartado, es el que utilizo con mi máquina, nada impide que más adelante lo cambie, esto seguramente me llevará a modificar el programa de control, que es el que veremos en la sección de Programación. Pero sigamos.
Los archivos PLT, tienen una larga lista de comandos, entre ellos algunos muy específicos del plotter utilizado, más que nada respecto a la configuración de la hoja de impresión, la ubicación del punto inicial del trazado, las plumillas utilizadas, la ubicación del cabezal, el calibrado del tamaño de la hoja, que algunos escalan la imagen según el papel de impresión, etc.
La tabla que verás a continuación es una traducción de la información que encontré respecto a este lenguaje gráfico. Sólo incluí las que más me interesaron...
"HP-GL" LENGUAJE GRÁFICO
Instrucciones de trazado y Control del Lápiz:
INSTRUCCION | FUNCION |
---|---|
PU | Subir el lápiz (Pen Up). |
PD | Bajar el lápiz (Pen Down) |
PA | Posicionamiento Absoluto de Trazado (Plot Absolute). |
PR | Posicionamiento relativo de Trazado (Relative Coordinate Pen Move). |
AA | Trazado de Arcos en Modo Absoluto (Absolute Arc Plot). |
AR | Trazado de Arcos en Modo Relativo (Relative Arc Plot). |
CI | Círculo. |
Otras instrucciones que me resultaron interesantes:
INSTRUCCION | FUNCION |
---|---|
DF | Valores por defecto del set de Instrucciones. |
IN | Inicializar set de Instrucciones. |
SC | Escala. |
SP | Selección de Lápiz. |
Bueno, hay muchas más, pero estas son las que voy a describir a partir de ahora, comenzamos...???
Sintaxis de HP-GL (Lenguaje Gráfico de Hewlett Packard)
Aquí voy a tomar un ejemplo muy sencillo para describir la forma en que se escribe un bloque de instrucciones. Cada bloque está formado por una o dos instrucciones de dos letras cada una, que suele ser un mnemónico de los que vimos en las tablas anteriores, mira este ejemplo...
La primera instrucción está referida a si se realiza el trazado o no, en este caso la instrucción es PD (bajar el lápiz), eso significa que sí, se realizará trazado.
La segunda instrucción, está referida al modo de desplazamiento, que como ya vimos anteriormente, puede ser en modo Absoluto (PA) o Relativo (PR), en este caso será Desplazamiento o Posicionamiento Absoluto (PA)
Lo que sigue son dos números separados por una coma, el primer número es la coordenada para el Eje X, el segundo para el Eje Y, estas coordenadas determinan el punto al cual debe desplazarse, en nuestro ejemplo será hacia el punto "X=1001,Y=566
".
Finalmente, el signo ";" indica Fin de Bloque de Instrucción, igual que en el lenguaje C o C++.
Bien, ahora veamos como se inicia el código de trazado de una imagen cualquiera, mira esto...
.(;.I81;;17:.N;19:IN;SC;PU;RO0;IP;IW;VS15;VS15;VS15;VS15;VS15;
VS15;SP1;PU;PA0,0;SP1;LT;PA53,421;.....bla, bla, bla...
Todo aquello que ves en azul, vendrían a ser instrucciones de configuración del Trazador, de como se va a realizar el trazado, el sistemas de coordenadas, el área de impresión, etc., etc., estas instrucciones aparecerán siempre, son las que encabezan cualquier código de trazado, puede variar según el trazador o la forma en que se deba trazar una imagen, puede depender de varios factores, pero sigamos...
Luego aparecen un par de instrucciones que ya conocemos, como verás, la primera es PU; lo único que se hace con esta instrucción es levantar el lápiz. La que sigue, ya es un desplazamiento PA0,0;, y según la instrucción, lo hará en Modo Absoluto hacia la coordenada 0,0, es decir, la punta del lápiz se dirige a la coordenada de origen.
Veamos ahora las dos que siguen, la primera de ellas SP1; es Select Pen 1 (Selección del Lápiz 1).
La Segunda es LT; (Line Type) que vendría a ser Tipo de línea, hay un par de números que deberían acompañar a LT y que indican el tipo de línea a trazar, que podrían ser; línea llena, sólo puntos, línea y punto (en sus distintas variedades), simples segmentos separados por un espacio determinado (también en sus distintas variedades), etc. Por defecto cuando aparece esta instrucción sóla, sin ningún número, significa que el trazado se hará con línea llena.
Luego aparece otro desplazamiento en Modo Absoluto PA53,421;
hacia el punto "X=53,Y=421
"
Finalmente aparece .....bla, bla, bla... que en terminología mundana, significa que el código continúa, jejeje...
En realidad, aquí es donde comienza la fiesta, es decir, de aquí en más comenzaremos a graficar, suponte ahora que ya estas graficando, y en medio de todo ello te encuentras con este trozo de código...
... PDPA53,397,77,372,125,372,174,397,174,469;PUPA149,469;PDPA101,566; PUPA125,372;PDPA149,397,149,445,101,518; ...
Ufff...!!!, se suponía que un bloque de trazado estaba formado por dos instrucciones (pares de letras) y dos números (coordenadas X,Y), y que demonios es esto...???
Para que no se te frustren las intensiones de continuar, voy a tratar de explicarlo con más detalle, sólo voy a tomar la primera parte de todo ese código, aquella que está en azul, ya verás que para el resto, también será válido, ok...? aquí está...
PDPA53,397,77,372,125,372,174,397,174,469;
Vamos de nuevo...
PDPA es Bajar el lápiz y desplazarse en Modo Absoluto, primero hacia el punto
53,397
, de allí ir hacia el punto 77,372
, luego a 125,372
, de allí a 174,397
y finalmente hacia 174,469;
y obviamente, Fin de bloque de Instrucción ";"
Si lo analizas con un poco de detalle y de lógica, esa línea de código podría estar escrita de otra forma, algo así...
PDPA53,397;PDPA77,372;PDPA125,372;PDPA174,397;PDPA174,469;
Y esto sí cumple con lo que dijimos anteriormente, pero lo podríamos mejorar, mira...
PDPA53,397;
PDPA77,372;
PDPA125,372;
PDPA174,397;
PDPA174,469;
Y si los drivers de nuestro trazador generan estos códigos SIEMPRE en MODO ABSOLUTO...???, pues no haría falta que aparezca PA, a demás, si cada línea fuera un bloque de instrucciones, tampoco sería necesario el ";" y entonces nuestro código resultaría de la siguiente forma...
PD53,397
PD77,372
PD125,372
PD174,397
PD174,469
Bueno, esto sí es lo que entiende mi máquina.
Ok, hasta aquí hemos llegado con los códigos de los archivos PLT, te preguntarás, qué pasa con el resto de las instrucciones...? y bueno, son muy similares a los códigos vistos anteriormente, más adelante quizás le agregue el resto, por ahora quedamos aquí, respecto al trazado de arcos, aunque hay instrucciones específicas para su trazado, el driver que yo utilizo, fragmenta una curva en sus componentes lineales, algo así...
Y ya no es una curva, sino simples trazados lineales unidos entre sí, Se nota la diferencia...???, bueno, como dije anteriormente, el resto lo veremos más adelante, cuando ya tenga más claro en que consiste cada instrucción extraña que se presente, y te adelanto que ya me encontré con dos...
Lo que toca ahora, es ver como hacer para obtener estos archivos, así que, lo que veremos de aquí en más, será la configuración de un trazador en AutoCAD.
Me sigues...???
R-Luis...