Come effettuare la stampa di etichette

Attenzione !I messaggi sul forum potrebbero essere modificati dal nostro staff. La data e l'ora dei messaggi potrebbe non essere quella di invio ma quella di moderazione da parte dello staff. Grazie per l'attenzione.

Home Forum Terminali operatore (Weintek) Come effettuare la stampa di etichette

Questo argomento contiene 3 risposte, ha 2 partecipanti, ed è stato aggiornato da  Sergio Bertana 1 mese, 1 settimana fa.

Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
  • Autore
    Articoli
  • #46162

    Armando
    Partecipante

    Ho l’esigenza di stampare con etichettatrice un semplice codice identificativo, sul centro di lavoro ho installato uno slimLine Cortex M7 e pannello Weintek MT6070iP. Chiedo consiglio ma avendo a disposizione porta USB host su pannello la soluzione più semplice mi pare connettere al pannello una etichettatrice USB che accetta comandi ascii come la Dymo LW450 ed inviare comandi di stampa con una macro.

    Ho trovato esempi di macro ma non ho compreso a pieno.  Avete esempi di codice per inviare comandi ascii a stampante tramite USB?

    #46169

    Sergio Bertana
    Amministratore del forum

    Non è possibile gestire la porta USB host del pannello da macro, puoi invece inviare comandi ad una stampante connessa in seriale oppure in ethernet.

    Devi installare un drivere Free protocol (Screenshot) e poi tramite macro con il comnado OUTPORT puoi inviare in uscita dalla porta i caratteri ascii. Ti rimando a questo topic dove trovi una semplice macro.

    In alternativa puoi gestire dallo SlimLine l’invio delle stringhe ascii alla stampante (Vedi funzioni Sysfputc, Sysfwrite, SysVarfprintf) sul manuale. Ma anche in questo caso la stampante deve essere connessa in seriale o in ethernet.

    #46277

    Armando
    Partecipante

    La porta COM del pannello è utilizzata per il collegamento al PLC, come suggerito abbandono l’idea e collego la stampante al PLC.

    Primo quesito: il collegamento alla stampante (PLC SlimLine Cortex M7>stampante Zebra TLP2844): Pin6 TX> Pin3 RxD, Pin5 RX>Pin6 Txd, poi da manuale stampante ho due pin (il 6 e 8) denominati RDY da collegare a CTS (Pin 7 del plc) e DSR, penso sia il Pin3 DTR del PLC.

    Secondo quesito: inviare i comandi alla stampante; Non mi è chiaro la funzione giusta da utilizzare; la stampante accetta comandi EPL2, per esempio per stampare “Example 1” il comando è questo:

    N↵
    A50,0,0,1,1,1,N,”Example 1″↵
    P1↵

    Quale funzione utilizzo ?

    #46302

    Sergio Bertana
    Amministratore del forum

    La connessione seriale mi sembra corretta a parte un refuso (Credo sia Pin5 RX>Pin2 Txd). I segnali RDY e DSR li puoi collegare come hai detto poi è da capire come gestirli guardando la documentazione sulla stampante.

    Per l’uscita dei dati dopo avere aperto la porta dicomunicazione con l’FB SysSerialPort, puoi eseguire l’uscita di ogni singolo carattere con la funzione Sysfputc, esempio:

    Sysfputc(16#4E, Fp); (* Invio “N” *)
    Sysfputc(16#0D, Fp); (* Invio “Cr” *)

    E così di seguito per tutti i caratteri, oppure usi la funzione SysVarfprintf, ecco un esempio:

    SysVarfprintf(Fp, ‘%s’, STRING_TYPE, ADR(‘N$rA50,0,0,1,1,1,N,”Example 1″$rP1$r’));

    Nota: Può essere che dopo ogni <CR> simbolo $r, la stampante esegua il comando e non accetti altri caratteri se non dopo un tempo. In tal caso suddividi la SysVarfprintf in 3 righe interponendo una pausa tra l’invio. Trattandosi di PLC per eseguire la pausa devi realizzare una macchina a stati usando l’istruzione CASE. Nel forum quasi tutti gli esempi sono fatti con macchina a stati.

Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)

Devi essere loggato per rispondere a questa discussione.