Area FA AE Specifica tecnica STM009 Cliente: DATALOGIC System Q master CC-LINK comunicazione CC-LINK con lettore codice a barre DATALOGIC interfaccia HMS - gestione protocollo DAD e stringhe di configurazione Mod. FA_STM_00 Data: 23.12.2008 Pag. 1/10 STM009.doc Rev. 00 Preparato da: Verificato da: Firme Mandelli Giovanni Firma digitale Mandelli Giovanni Firma digitale
SOMMARIO 1 Introduzione...3 2 Descrizione connessioni...4 3 Descrizione banchetto di collaudo...4 4 Descrizione test di collaudo...5 4.1 Configurazione rete CC-LINK 5 4.2 Configurazione DATALOGIC.6 4.3 Descrizione programma..7 4.4 Utilizzo sezioni di programma 7 4.4 Differenze di configurazione..8 5 Riepilogo documenti correlati...10 6 Conclusioni...10 STM009 rev.00 Data: 23.12.08 pag. 2 di 10
1 Introduzione SCOPO : fornire un programma di esempio per gestire i lettori di codice a barre DATALOGIC con interfaccia CC-LINK. L esempio comprende tutte le funzionalità del protocollo DAD e le funzioni di configurazione tramite stringhe ASCII. Non tutte le funzionalità sono strettamente necessarie al funzionamento del lettore, quindi l utente dovrà valutare quali sezioni di programma prendere in considerazione. NB: il programma ha lo scopo di fornire un aiuto e non è stato creato per rispondere alle esigenze di ogni applicazione. MITSUBISHI ELECTRIC non si assume nessuna responsabilità sul funzionamento del programma stesso STM009 rev.00 Data: 23.12.08 pag. 3 di 10
2 Descrizione connessioni 3 Descrizione banchetto di collaudo Materiale utilizzato : Q35B-E Q25HCPU QJ71BT11N rack PLC PLC System Q master CC-link BarCode Reader DATALOGIC con interfaccia CC-LINK Connessione CC-LINK 3 fili STM009 rev.00 Data: 23.12.08 pag. 4 di 10
4 Descrizione test di collaudo 4.1 Configurazione rete CC-LINK Start I/O No == indirizzo di I/O della scheda master CC-LINK nel sistema. Nell esempio il master è la prima scheda montata dopo la CPU quindi ha indirizzo di partenza 0000 Mode == Remote Net V.2 in quanto l interfaccia CC-LINK del lettore DATALOGIC gestisce la V.2 del CC-LINK e quindi uno scambio dati più elevato ( 128 Word ogni slave ) All Connect Count == numero di slave collegati Remote Input / Remote Output / Remote Register Write / Remote Register Read == indirizzi delle variabili interne del PLC su cui verranno appoggiate le variabili di scambio Special Relay / Special Register == registri contenenti lo stato della comunicazione STM009 rev.00 Data: 23.12.08 pag. 5 di 10
Station Information == informazioni sugli slave collegati NB : ogni stazione CC-LINK ha un area di scambio fissa di 32 bit e 4 word in letture e altrettante in scrittura. Con la V.2 di CC-LINK è possibile definire che ogni slave occupi fino a 4 stazioni e che ogni lettura venga ripetuta per 8 cicli consecutivi; in questo modo ogni nodo può arrivare a scambiare 896 bit e 128 word Nell esempio lo slave è stato configurato per 4 stationi e 2 cicli, quindi per 64 word di scambio in entrata e altrettante in uscita 4.2 Configurazione DATALOGIC Siccome le aree di scambio PLC sono strutturate a word a il DAD driver ne occupa i primi 3 byte, è opportuno lavorare con l I/O digitale sempre abilitato al fine di avere il corretto allineamento del messaggio ricevuto. Per lo stesso motivo quando si lavora con la frammentazione, la consistenza non dovrebbe essre ablitata per evitare di avere dei byte non significativi all interno del codice La configurazione tramite stringhe di Escape implica la necessità di trasferire da PLC a slave messaggi di lunghe dimensioni, quindi si è optato per renderle disponibili solo per un area di scambio di dimensioni di 64 byte o superiore. STM009 rev.00 Data: 23.12.08 pag. 6 di 10
4.3 Descrizione programma Il programma è composto da più sezioni, ognuna delle quali segue una specifica DATALOGIC. In base alle esigenze il singolo utilizzatore può scegliere quali usare e se mantenere o cancellare quelle superflue START-UP : viene abilitato lo scambio dati con lo slave usando il bit di Handshake. Successivamente viene lanciato un comando di Resync. DAD : gestione del protocollo DAD FRAGMENT : gestione della frammentazione per lettura codici di lunghezza superiore all area di scambio configurata FLUSH_Q : gestione funzione FLUSH_Q per resettare tutte le letture bufferizzate CONFIG START : lancio istruzioni ASCII per apertura configurazione SET_ENUM / SET_INT / SET_STR : programmi di gestione dell invio delle stringhe di ESCAPE STRINGHE : sezione per compilazione comandi ASCII da inviare e comandi di invio SAVE RAM / SAVE ROM : comando di salvataggio configurazione in RAM o ROM CLOSE Config : comando di chiusura della configurazione PS: se si usa il comando di salvataggio in RAM o ROM l istruzione di CLOSE_CONFIG non è necessaria in quanto il sistema esegue un Reboot automatico dopo il salvataggio. 4.4 Utilizzo sezioni di programma Per gestire la lettura del codice a barre sono sufficienti i seguenti sottoprogrammi: START_UP DAD FRAGMENT FLUSH_Q ( facoltativo solo se si vuole gestire la funzione ) Per la gestione della configurazione tramite stringhe di ESCAPE vanno aggiunti anche i restanti sottoprogrammi. STM009 rev.00 Data: 23.12.08 pag. 7 di 10
L utente dovrà utilizzare solo il programma STRINGHE come interfaccia e lasciare lavorare gli altri sottoprogrammi senza apportare modifiche sostanziali. Il programma usa le seguenti aree di memoria : - lettura da slave D0 e seguenti - scrittura da master D500 e seguenti - codice letto D100 e seguenti Inoltre vengono utilizzati altre variabili per uso interno. Si consiglia di verificare la lista delle variabili usate per evitare sovrapposizioni 4.5 Differenze di configurazione Ogni differente configurazione dello slave DATALOGIC comporta un diverso formato dello scambio dati e di conseguenza l esempio di cui tratta questo documento potrebbe non funzionare. Riassumendo lo slave per questo esempio è così configurato : - slave 1 versione CC-LINK 2 - stazioni occupate 4 cicli 2 ( 64 byte write / 64 byte read ) - utilizzo byte per I/O digitale - consistenza non abilitata - stringhe di ESCAPE solo per area scambio dati di almeno 64 byte Le principali differenze che si possono riscontrare in caso non venga rispettato quanto sopra sono - se l area di scambio è diversa da 64 byte l indirizzo del bit di Handshake ( Y10D8 ) che abilita la comunicazione cambia in base alla formula riportata nei documenti allegati al prodotto. Il programma è anche pensato per muovere l area di lettura e di scrittura della lunghezza configurata, se quest ultima varia dovrà variare anche questa lunghezza. come si vede K30 sposta 60 byte ( senza contare i 4 byte occupati dal protocollo DAD più il byte di I/O ) STM009 rev.00 Data: 23.12.08 pag. 8 di 10
- se non si utilizza il byte di I/O il codice letto è shiftato di un byte per cui occorre una successiva operazione per riordinare ed interpretare quanto letto. Nel caso della frammentazione l operazione va ripetuta ad ogni frame letto - se si utilizza la consistenza si ottiene il codice con il primo e l ultimo byte non significativi. Anche in questo caso occorre una successiva operazione di riordino. Per la frammentazione vale quanto già detto. - Se si usano le stringhe di ESCAPE per la configurazione l esempio ne riporta solo alcune. L utilizzatore deve compilare la sezione STRINGHE con i comandi interessati e creare un ciclo che le lanci in sequenza. L esempio è per il comando manuale delle stringhe esempio di stringa per SET_INTEGER. Configurare la stringa desiderata. NOTA : Se non si intende utilizzare tutti i sottoprogrammi ma non si vuole eliminarli dal progetto è sufficiente disabilitarne l esecuzione STM009 rev.00 Data: 23.12.08 pag. 9 di 10
5 Riepilogo documenti correlati Manuali utilizzati : - System Q programming manual - QJ61BT11N User manual - DATALOGIC DAD driver Reference manual - HMS How to set up an Anybus CC-LINK slave module with a Mitsubishi PLC - HMS Anybus CompactCom CC-LINK rev 1.11 6 Conclusioni Il presente documento e il relativo esempio applicativo sono da intendere come traccia per aiutare il progettista a gestire nel miglior modo possibile la comunicazione in base alle esigenze della propria applicazione. Le configurazioni adottate in questo esempio sono quelle ritenute più standard e semplici possibili; purtroppo non soddisfaceranno tutte le esigenze ma Datalogic e Mitsubishi Electric rimangono a disposizione per ulteriori sviluppi e consulenze. STM009 rev.00 Data: 23.12.08 pag. 10 di 10