Article View: free.it.visual-basic
Article #1789Re: Lettore codici a barre
From: POWERMOS
Date: Wed, 21 Jan 2004 01:28
Date: Wed, 21 Jan 2004 01:28
143 lines
8113 bytes
8113 bytes
"Luca" <xxx@xxx.it> ha scritto nel messaggio news:GO9Pb.118368$VW.4799566@news3.tin.it... > Dovrei realizzare un programma di Gestione Magazzino che utilizza un lettore > ottico per il codice a barre dei prodotti. > Dove posso trovare istruzioni su come gestire il Lettore? Quale lettore mi > consigliate di utilizzare?? > Grazie mille. > Ciao > Luca Dipende dal tipo di applicazione che devi sviluppare. In modo molto pratico, un codice a barre rappresenta un sistema per codificare in modo comprensibile per un dispositivo elettronico una informazione di tipo alfanumerica. In sostanza una parola oppure una chiave di codifica per un prodotto che deve essere stoccato a magazzino potr� essere tradotta in un insieme di elementi grafici comprensibili ad un dispositivo di lettura come una pistola a scansione oppure una penna ottica. ovviamente la transcodifica � di tipo biunivoco, quindi ad un certo carattere corrisponder� una ed una sola sequenza di simboli grafici e viceversa. La struttura geometrica del codice, quindi le regole che consentono di costruirlo in modo tale da renderlo comprensibile ai dispositivi di lettura, sono piuttosto rigide e servono per costruire il font che verr� utilizzato per la creazione dell'etichetta da stampare. 1) per creare un codice a barre basta Word ed un font TTF relativo al codice che si vuole creare. In altre parole il codice viene usato come se si trattasse di un normale font TTF (ad esempio Arial o similari). 2) il passo successivo consiste nel decide re quale tipo di codice a barre utilizzare per la propria applicazione. Di codici ve ne sono a iosa, forse il pi� comune di tutti, reperibile attraverso la rete a costo 0 ( ergo GRATIS!!!!) � il CODE 39. Per maggiori delucidazioni circa questo tipo di codice basta effettuare una ricerca sul web usando come oggetto CODE39 oppure CODE 39. Per il download del font si pu� andare al seguente URL: http://www.clancysystems.com/newsite/code39.asp ed effettuare il download del font. 3) Si deve informare il SO, nel ns caso Windows, che si intende aggiungere al gi� nutrito elenco di font di caratteri quello relativo al codice a barre scelto. Per fare questa operazione si deve andare sul menu START-> Impostazioni -> Pannello di Controllo selezionare la voce Caratteri. Una volta aperta la finestra si seleziona dal menu File la voce: Installa nuovo tipo di carattere ... a questo punto Windows richiede il percorso dove si trova il font da installare, quindi si dovr� andare nella cartella dove si � effettuato il download del font e procedere con l'installazione. Osservazione: ------------- Alla fine penso che sia la stessa cosa andare a copiare brutalmente il font nella cartella Caratteri, ma usando questa procedura non si ha nessun rischio di fare degli errori. 4) A questo punto si apre un foglio di Word, si digita la frase o la parola che si desidera codificare secondo lo standard CODE 39 avendo l'accortezza di iniziare la frase con * e terminarla con *. A tale proposito prima di effettuare l'operazione si dovr� disattivare l'opzione di completamento automatico di Word che associa alle parole racchiuse fra una coppia di * la stessa parola, ma in grassetto. Per fare questo si deve andare nel menu di Word Strumenti e selezionare la voce Correzione automatica. A questo punto si seleziona la cartella Formattazione automatica durante la digitazione e si elimina il segnop di spunta alla voce *Grassetto* e _Corsivo_ con formattazione reale Si chiude il tutto e si ritorna al nostro foglio originale. Si evidenzia la frase/parola da tradurre (che ricordo deve essere compresa fra i delimitatori *) e si applica lo stile di carattere CODE 39 (lo si riconosce poich� costituito da una serie di barre affiancate). A questo punto dovrebbe comparire la codifica cercata. 5) Per verificare se il sistema funziona e tutto � stato fatto correttamente io ho usato una pistola in modalit� terminale della Datalogic per verificare se la lettura era corretta. Il risultato � stato ottimo, con stampa a 600 DPI sono riuscito a leggere correttamente (al primo colpo), codifiche con size del carattere di 15 punti. Se non sapete cosa � una pistola in modalit� terminale faccio una piccola digressione. I terminali di lettura per bar code oltre a costare parecchio (da 200 ? fino anche a 900 ?) si suddividono in due famiglie: - penne ottiche / pistole in modalit� terminale o emulazione di terminale - pistole di tipo terminali batch La prima famiglia consente di collegare il dispositivo di lettura direttamente in parallelo alla tastiera PS/2 tramite un cavo apposito fornito con il lettore stesso (che ricordo essere un dispositivo con interfaccia simile I2C). Il cavo presenta una derivazione in cui si inserisce il connettore della tastiera, l'altra terminazione si inserisce nel PC dove normalmente si inserirebbe la tastiera. Per provare la pistola basta aprire il NotePad e sparazzare su un qualsiasi codice che capiti a tiro (ad esempio su una rivista oppure il ns codice a barre CODE 39) per vedere comparire la parola decodificata in chiaro sul monitor. Si chiama emulazione di tastiera/terminale proprio perch� � come se si digitasse direttamente sulla tastiera. Naturalmente nelle specifiche della pistola bisogna sincerarsi che abbia gli appositi algoritmi per decodificare lo standard di interesse. In genere, comunque, il CODE39 � leggibile da tutte le pistole di questo tipo. La penna ottica ha una connessione simile, ma costo mooolto di meno (circa 90?), ma ha lo svantaggio di richiedere allenamento all'uso e di consumarsi (la punta se ne va per attrito). La seconda famiglia, quella dei terminali batch, consente di effettuare le scansioni del codice e di effettuare operazioni di memorizzazione dei codici internamente alla pistola stessa. In genere sono dotate di tastierino alfanumerico per consentire ad esempio l'input di dati quali la quantit� o quant'altro si desideri. Tali pistole sono programmabili mediante software proprietario attraverso la porta seriale RS232 oppure USB. Al termine delle operazioni la pistola si ripone nella propria base (definita in gergo calamaio) e si pu� attivare da PC la procedura per il trasferimento del file relativo alle operazioni effettuate (da qui il nome batch). Per concludere, se ti interessa, ti posso fornire un applicativo in Excel, senza grosse pretese, scritto in 5' ed in VBA che consente di tradurre dei codici, formattare un etichetta e richiedere all'utente se stamparla o meno. Il tutto ovviamente funzionante e testato con pistola in modalit� emulazione di terminale (una GRIPHON della Datalogic che mi sono fatto imprestare perch� troppo cara per poterla comprare solo per fare esperimenti ;-P). Per ora e tutto, spero che sia tutto chiaro, in ogni caso per altre info sono a disposizione. Ciao Pow _____________________________ Ama il tuo mestiere con passione E' il significato della tua vita Auguste Rodin (1840-1917)
Technical Details
Message-ID:
<%AkPb.156404$_P.5650759@news4.tin.it>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!irazu.switch.ch!switch.ch!newsfeed.nextoneserver.com!news-out.tin.it!news-in.tin.it!news4.tin.it.POSTED!not-for-mailReferences:
<GO9Pb.118368$VW.4799566@news3.tin.it>Show Full Headers
Complete Article Headers
X-Google-Language: ITALIAN,ASCII X-Google-Thread: f94ee,6134fb44ea22d473 X-Google-Attributes: gidf94ee,public X-Google-ArrivalTime: 2004-01-20 17:28:28 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!irazu.switch.ch!switch.ch!newsfeed.nextoneserver.com!news-out.tin.it!news-in.tin.it!news4.tin.it.POSTED!not-for-mail From: "POWERMOS" <flatiron1NOSPAM@tin.it> Newsgroups: free.it.visual-basic References: <GO9Pb.118368$VW.4799566@news3.tin.it> Subject: Re: Lettore codici a barre Lines: 145 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 Message-ID: <%AkPb.156404$_P.5650759@news4.tin.it> Date: Wed, 21 Jan 2004 01:28:27 GMT NNTP-Posting-Host: 80.116.134.162 X-Complaints-To: newsmaster@tin.it X-Trace: news4.tin.it 1074648507 80.116.134.162 (Wed, 21 Jan 2004 02:28:27 MET) NNTP-Posting-Date: Wed, 21 Jan 2004 02:28:27 MET Organization: TIN