acnide Inserito: 23 aprile 2012 Segnala Share Inserito: 23 aprile 2012 Buon giorno..... Mi spiace per voi... ma io sono ancora qua a tediarvi!!!!!!! questa volta alle prese con i flag. Li ho "scoperti" ieri sera, e credo che siano un ottimo strumento. Leggendo la guida in linea di ladderhome, ho visto che ce ne sono tantissimi e che forniscono preziose info. Mi chiedevo però se ce ne fosse qualcuno che fornisce lo stato delle uscite fisiche del Hplc. per esempio se io volessi sapere se l'uscita %qx0.0 e l'uscita %qx2.0 sono attive quaòle flag dovrei interrogare? (ovviamente se c'è un flag che possiede questa funzione). Chiedo ancora: Una word è formata da 16 bit. Ogni bit concorre a formare il valore della word, oppure ogni bit è un valore a se stante? Esempio: leggo la word del ricevitore IR. %mw14. premo il tasto Up quindi il valore sarà 335 (ad esempio). In questo caso il valore 335 sarà contenuto in un singolo bit? Se così fosse io potrei scrivere in una word 16 numeri diversi e laggerli all'interno del programma... Per intenderci potrei usare la word come fosse un array spero di essere stato chiaro.... grazie Link al commento Condividi su altri siti More sharing options...
del_user_56966 Inserita: 23 aprile 2012 Segnala Share Inserita: 23 aprile 2012 Mi chiedevo però se ce ne fosse qualcuno che fornisce lo stato delle uscite fisiche del Hplc. per esempio se io volessi sapere se l'uscita %qx0.0 e l'uscita %qx2.0 sono attive quaòle flag dovrei interrogare? (ovviamente se c'è un flag che possiede questa funzione). Intendi leggere le uscite... le risorse %Q sono sia di scrittura che di lettura... quindi puoi usare le uscite anche come dei normali ingressi... ----|%QX0.0|---------------------(%MX400.0)-- Una word è formata da 16 bit. Ogni bit concorre a formare il valore della word, oppure ogni bit è un valore a se stante? Esempio: leggo la word del ricevitore IR. %mw14. premo il tasto Up quindi il valore sarà 335 (ad esempio). In questo caso il valore 335 sarà contenuto in un singolo bit? Se così fosse io potrei scrivere in una word 16 numeri diversi e laggerli all'interno del programma... Per intenderci potrei usare la word come fosse un array La Word è formata da 16 bit ogni bit ha un suo valore booleano che ha un moltiplicatore 2 rispetto al bit precedente... Bit 0 = 1 Bit 1 = 2 Bit 2 = 4 Bit 3 = 8 Bit 4 = 16 Bit 5 = 32 Bit 6 = 64 Bit 7 = 128 ... ... fino a Bit 15 = 32768 Quando leggi il valore di una Word leggi la somma di tutti i bit che sono attivi (True).... se i bit attivi sono il numero 0, 4, 5 il valore della Word è 1+16+32 ovvero 49... Link al commento Condividi su altri siti More sharing options...
acnide Inserita: 23 aprile 2012 Autore Segnala Share Inserita: 23 aprile 2012 ciao aleandro, in pratica se il comando è 335, nella word saranno attivi i bit che concorreranno a raggiungere il numero 335.... giusto? come faccio a settare i siingoli bit? non me lo dire.... attarverso la funzione bitsr posso scrivere true o false in ogni singolo bit (leggo dalla guida) settando true o false posso cambiare il comando..... giusto? grazie Link al commento Condividi su altri siti More sharing options...
del_user_56966 Inserita: 23 aprile 2012 Segnala Share Inserita: 23 aprile 2012 in pratica se il comando è 335, nella word saranno attivi i bit che concorreranno a raggiungere il numero 335.... giusto? Yes! come faccio a settare i siingoli bit? non me lo dire.... attarverso la funzione bitsr posso scrivere true o false in ogni singolo bit (leggo dalla guida) settando true o false posso cambiare il comando..... quelle sono funzioni obsolete, occupano troppa memoria... usa direttamente la nozione standard %MX "numero Word". "Numero Bit" tipo se vuoi settare il Bit 4 del registro 400 fai cosi.... -----| |----------------------------(%MX400.4)-- semplice no? Link al commento Condividi su altri siti More sharing options...
acnide Inserita: 23 aprile 2012 Autore Segnala Share Inserita: 23 aprile 2012 ciao aleandro, l'esempio che mi hai postato setta il bit 4 della word 400 a 0 o a 1? Link al commento Condividi su altri siti More sharing options...
del_user_56966 Inserita: 23 aprile 2012 Segnala Share Inserita: 23 aprile 2012 l'esempio che mi hai postato setta il bit 4 della word 400 a 0 o a 1? Lo setta secondo lo stato dell'ingresso che lo precede... se l'ingresso e TRUE allora anche il bit 4 è attivo mentre se l'ingresso è FALSE anche il Bit 4 è FALSE... Link al commento Condividi su altri siti More sharing options...
acnide Inserita: 23 aprile 2012 Autore Segnala Share Inserita: 23 aprile 2012 Ho capito...... le parentesi con dentro la word sarebbe un uscita in ladder chiamata %mx400.4 se pigio il pulsante %ix0.0 il bit 4 della word viene settato a 1... ma quando lascio? Link al commento Condividi su altri siti More sharing options...
del_user_56966 Inserita: 24 aprile 2012 Segnala Share Inserita: 24 aprile 2012 le sigle IEC devono essere tutte in maiuscolo, quindi usa %MX, %IX, %QX ecc... mai minuscolo! se pigio il pulsante %ix0.0 il bit 4 della word viene settato a 1... ma quando lascio? se il relè interno deve restare attivo, puoi semplicemente mettere in serie un Passo-Passo (che lo rende un Bistabile)... -----| |-----------|PP|-----------------(%MX400.4)-- Link al commento Condividi su altri siti More sharing options...
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