Lucos68 Inserito: 25 gennaio 2007 Segnala Inserito: 25 gennaio 2007 Qualcuno di voi sa come si fa ad indicizzare le chiamate ai DB con Hakko V606eM20?Mi spiego:ho 10 DB uguali con 10 Word ciascuno,impostando un valore da 1 a 10 alla variabile XXX devo leggere le 10 word relative al DBXXX.
Cesare Nicola Inserita: 31 gennaio 2007 Segnala Inserita: 31 gennaio 2007 Beh, se ho ben capito cosa vuoi fare, non penso esista una funzione già fatta ma devi usare una macro di uno switch. E' un pò lunga la cosa, ma dovrebbe funzionare. Nella macro vai a leggere il valore dell'indice e fai dieci confronti con i valori da 1 a 10: per ogni confronto, se risulta uguale, fai un salto ad una label dove eseguirai in sequenza dieci trasferimenti dalla DBxx a dove vuoi mettere i valori. Sarebbe qualcosa del genere (scritto in pseudo-linguaggio maccheronico, non nel codice utilizzato per le macro di HAKKO):IF Indice=0 goto LABEL 0IF Indice=1 goto LABEL 1IF Indice=2 goto LABEL 2eccetera, fino al'indice 10IF Indice=10 goto LABEL 10ENDLABEL 0Trasferisce DB0.DBW0 in variabile 0Trasferisce DB0.DBW1 in variabile 1Trasferisce DB0.DBW2 in variabile 2eccetera, fino alla word 10 della DB0ENDLABEL 1Trasferisce DB1.DBW0 in variabile 0Trasferisce DB1.DBW1 in variabile 1Trasferisce DB1.DBW2 in variabile 2eccetera, fino alla word 10 della DB1ENDLABEL 2Trasferisce DB2.DBW0 in variabile 0Trasferisce DB2.DBW1 in variabile 1Trasferisce DB2.DBW2 in variabile 2eccetera, fino alla word 10 della DB2ENDeccetera, fino alla LABEL10Spero di essere stato chiaro. Se esiste un modo più veloce sarei felice di saperlo.CiaoCesare
MarioRossiUno Inserita: 1 febbraio 2007 Segnala Inserita: 1 febbraio 2007 Ciao,a dire il vero esiste il modo di leggere delle DB in modo indiretto. Io l'ho usato tempo fa!Ti conviene chiamare l'assistenza e farti spiegare come perchè ora proprio non ricordo il procedimento.Guardo appena ho tempo.Ciao
Lucos68 Inserita: 2 febbraio 2007 Autore Segnala Inserita: 2 febbraio 2007 Ho risolto! Considerando che secondo le tabelle Hakko '81' in esadecimale corrisponde alla lettura da PLC,che '00' corrisponde alla lettura di una Worde che la DBW0 corrisponde alla '0' su Hakko, la DBW2 è la '1' su Hakko, la DBW4 è la '2' ecc. ecc.ne consegue che:;Costruisco il codice di lettura DB$uN=8100$uN+1=00XX$uN+2=XYYY;dove XXX=N°DB in esadecimale;e YYY=N°WORD in sadecimaleVAR=*$uN;VAR avrà il valore contenuto sulla word del DB puntato da *$uNCi ho messo un pò, circa 2 giorni full immersion, ma ci sono riuscito.Se avete bisogno fatemi un fischio, quello che posso....
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora