Autor Tema: Consulta - emulador de impresora.  (Leído 381 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Consulta - emulador de impresora.
« en: 25 de Junio de 2024, 17:23:30 »
Buenas tardes estimados, tengo el siguiente planteo.



Tengo que adquirir la trama de impresión de un equipo de medición de flujo, que genera tickets por RS232. El protocolo de impresión que usa es el de ESPSON.

Mi duda es la siguiente:

Teniendo en cuenta una comunicación con control de flujo, es necesario que el microcontrolador le devuelva algo al equipo de medición para que este lo tome como una impresora válida ? En caso de que así sea, donde se podría investigar como la trama de respuesta de la impresora ?. En caso de que solo sea necesario trabajar trabajar con la conexión serial, el pin CTS (del lado del equipo de medición) tendría que quedar en alto para comience a imprimir ?

Espero se entienda lo que quiero hacer, pero no he encontrado información clara para determinar como "emular" una impresora. Si he analizado el protocolo para, por ejemplo, imprimir en la impresora epson, pero no entiendo como se tendría que comportar el microcontrolador para que efectivamente lo lean como una impresora y poder adquirir la trama de datos.

Saludos !

Desconectado allennet

  • PIC16
  • ***
  • Mensajes: 108
Re:Consulta - emulador de impresora.
« Respuesta #1 en: 26 de Junio de 2024, 08:18:04 »
si tienes la impresora puedes hacer un escáner de los 4 pines y saber cual es la trama q envian
"La curiosidad mato al gato, pero murio sabiendo"

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Consulta - emulador de impresora.
« Respuesta #2 en: 26 de Junio de 2024, 12:47:54 »
Hola allennet, justamente no tengo la impresora, por eso quería saber si alguien tenía idea. De todas formas pedí que me consiguieran la impresora para ver si puedo "ver" como se comunican y de ahí en más simular ese proceso.

Desconectado scrwld

  • PIC12
  • **
  • Mensajes: 56
Re:Consulta - emulador de impresora.
« Respuesta #3 en: 28 de Junio de 2024, 03:35:12 »
hola jonathan,

 te recomiendo consigas el manual del equipo de medición  y de la impresora.en ellos podrás conseguir información de la trama que envía y/o recibe el equipo de medicion.

si tienes acceso al equipo  y no  impresoras conecta  su puerto serial el  una pc.

puedes usar cualquier programa terminal como hyperterminal, hercules, modsim, etc y veras la trama que se esta enviando.

si tienes la impresora, igual usas el puerto de  la pc conectando solo RX y podrás ver la trama que envía el equipo y la respuesta de la impresora.

saludos

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Consulta - emulador de impresora.
« Respuesta #4 en: 29 de Junio de 2024, 18:40:41 »
Como estás scrwld

Tengo datos desde el equipo en su puerto serie de impresión, pero me parece que el equipo está esperando una especie de ACK desde la "impresora" para determinar que hay una impresora conectada y por lo tanto envíe la trama de impresión. El problema es que no se que respuesta estará esperando.

Luego de tener esa trama de datos, podré procesarla y sacar los datos que necesito.

Saludos !

Desconectado scrwld

  • PIC12
  • **
  • Mensajes: 56
Re:Consulta - emulador de impresora.
« Respuesta #5 en: 30 de Junio de 2024, 05:16:04 »
hola jonathan.

veo que la impresora es térmica, y estas indicando las señales a usar para la comunicación y el control de flujo. has el cable según la imagen y  deberías tener impresión. las señales RTS (Ready To Send ), CTS (Clear To Send)  indican a cada parte que se puede iniciar la transmisión y/o  recepción de los datos.

no logro subir la imagen.

DB9 equipo   DB9 impresora
--------------------------------------
 RX     2 -------------------->   3
 TX     3 -------------------->   2
 RTS   7 -------------------->   8
 CTS   8 -------------------->   7
---------------------------------------

es bueno que indicaras marca y modelo del transmisor y modelo de la impresora. en sus manuales debería tener  info del protocolo.

por curiosidad  porque vas a usar un microcontrolador?.

saludos

luis lopez

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Consulta - emulador de impresora.
« Respuesta #6 en: 01 de Julio de 2024, 19:41:43 »
Buenas tardes, como estás scrwld

Las conexiones del módulo de la impresora y el módulo de transmisión son tal cuál vos la describís en la imagen que me pasaste. Esas conexiones ya vienen indicadas en el manual del equipo.
El protocolo de la impresora es EPSON. Por lo cuál, vamos a usar una impresora TMU220, que es compatible con el equipo (matriz de puntos, no térmica).
Todo lo referente al protocolo necesario para imprimir, hay abundante info, lo que no encuentro es que responde la impresora para indicar "estoy presente".

PD: Es necesario utilizar un microcontrolador porque hay que armar un datalogger.

Saludos cordiales !

Desconectado tsk

  • PIC18
  • ****
  • Mensajes: 257
Re:Consulta - emulador de impresora.
« Respuesta #7 en: 03 de Julio de 2024, 11:06:33 »
No se si esto es lo que estarás buscando

https://download4.epson.biz/sec_pubs/pos/reference_en/escpos/dle_eot.html

Tienes que mandar un comando para ver el estado de la impresora.

Desconectado scrwld

  • PIC12
  • **
  • Mensajes: 56
Re:Consulta - emulador de impresora.
« Respuesta #8 en: 05 de Julio de 2024, 02:59:28 »
hola jonarhan.

puedes intentar lo que te recomienda tsk.

por lo que veo ests usando control de flujo, de parte el pc o dispositivo setea la salida RTS, en este caso la impresora al ver ese nivel en su entrada CTS; a su vez setea su salida RTS y la pc o dispositivo al ver ese nivel en su entrada CTS, sabra de esa manera que alguien esta conectado en el puerto serial.

de esta manera podra funcionar los comandos que  le permite saber el estado de la impresora, enviar la info a imprimir, etc.

en el siguiente enlace hay suficiente info sobre el control de flujo usando RTS Y CTS.

https://www.lammertbies.nl/
https://www.lammertbies.nl/comm/info/rs-232-flow-control
https://www.lammertbies.nl/comm/cable/rs-232

saludos

luis lopez

P.D. que marca y modelo es el transmisor de flujo.

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Consulta - emulador de impresora.
« Respuesta #9 en: 05 de Julio de 2024, 12:48:12 »
Muchas gracias scrwld y tsk

Ya me llegó la impresora para poder estudiar lo que pasa en cada comando.

Citar
https://download4.epson.biz/sec_pubs/pos/reference_en/escpos/dle_eot.html

Eso ya lo estuve leyendo ayer, me sirvió un montón para poder entender.

Lo que voy a hacer ahora es pinchar las líneas de comunicaciones y me podré a estudiar el tema del flujo usando RTS/CTS. Pero ya estoy encaminado.

Los pondré al tanto de los avances.

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Consulta - emulador de impresora.
« Respuesta #10 en: 06 de Julio de 2024, 01:16:38 »
Estimados,

Luego de renegar un poco, lo logré.

Les explico la solución para aquellos que tengan un problema similar.

Mi necesidad estaba en que el equipo de medición, en este caso un contador volumétrico de gasoil, pudiera enviar los ticket de carga y descarga a través del puerto de impresión, para poder almacenarlos en una memoria. Esto sin usar la impresora en cuestión.

El equipo enviaba una trama, donde le pregunta a la impresora por su PAPER STATUS (estado del papel) con el formato según el protocolo ESC POS:

https://download4.epson.biz/sec_pubs/pos/reference_en/escpos/dle_eot.html
También hay información disponible en:
https://github.com/gdsports/ESC_POS_Printer/tree/master

Si la impresora estaba Ok, le enviaba una trama de retorno, indicando papel OK.

Una vez que esa pequeña validación está realizada, el equipo pone a su disposición la trama de impresión necesaria, que podemos capturar con nuestro microcontrolador.

Para poder "emular" la impresora, solo tuve que emular la trama de respuesta de la impresora a "PAPER OK" y listo.

Saludos y muchas gracias a todos !


 

anything