riomario2005 Inserito: 17 aprile 2007 Segnala Share Inserito: 17 aprile 2007 Ciao a tutti vorrei qualche consiglio sull`utilizzo dei puntatori con i PLC omron (Serie CJ).Per l`esattezza vorrei sapere come creare un puntatore ad un ingresso fisico. Per le uscite ho risolto con l`istruzione OUTB, ma se avete qualche consiglio migliore ben venga. Link al commento Condividi su altri siti More sharing options...
Ospite drei Inserita: 17 aprile 2007 Segnala Share Inserita: 17 aprile 2007 A cosa ti serve un puntatore ad un gresso fisico?Se vuoi verificare lo stato dell'ingresso 0.0 basta che usi un contatto normalmente aperto ,o nromalmente chiuso, nel programma. Da CX-Programmer per aggiungere un contato normalmente aperto nella posizione in cui è il cursore premi il tasto "c".Idem per le uscite, invece di usare l'istruzione OUTB puoi usare una bobina di sucita normale.Da CX-Programmer per aggiungere una bobina di uscita nella posizione in cui è il cursore premi il tasto "o".Spero di non aver interpretato male la tua domanda.Ciao. Link al commento Condividi su altri siti More sharing options...
Conver Inserita: 17 aprile 2007 Segnala Share Inserita: 17 aprile 2007 Per creare un puntatore ad un ingresso fisico in omron CJ bastano le seguenti righe:LD P_On MOVR(560) 0.00 IR0 LD P_On MOV(021) &7 DR0 LD DR0,IR0 OUT W0.00In questo esempio:- Carico l'indirizzo fisico della locazione 0.00 nel registro di indirizzo IR0 tramite l'apposita istruzione MOVR- Carico il valore 7 nel registro di spiazzamento DR0 tramite una semplice MOV- Copio il bit indirizzato dall'associazione dei due precedenti registri (nella forma <registro di spizzamento>,<registro di indirizzo> ) nel bit interno W0.00 In questo esempio l'indirizzo copiato sul bit interno è lo 0.07.Con lo stesso modo puoi indicizzare qualsiasi area disponibile a bit della CPU (inputs, Outputs, area W, etc.), dipende da che bit passi in ingresso all'istruzione MOVR.Ciao. Link al commento Condividi su altri siti More sharing options...
riomario2005 Inserita: 18 aprile 2007 Autore Segnala Share Inserita: 18 aprile 2007 Ok grazie mi e` stato molto utile.L` utilizzo dei puntatori mi serve per realizzare una procedura indicizzata di controllo assi. Link al commento Condividi su altri siti More sharing options...
riomario2005 Inserita: 19 aprile 2007 Autore Segnala Share Inserita: 19 aprile 2007 Ciao Volevo chiederti un`altra curiosita` se l`indirizzo dell` ingresso ed il suo spiazzamento sono contenuti in una word per es del Banco E0 cambia qualche cosa?Es MOVR E10, IR0 dove in E10 ho &0 MOV E12, DR0 dove in E12 ho &7.Ottengo sempre il puntatore all`ingresso 0.07?Ciao grazie. Link al commento Condividi su altri siti More sharing options...
Conver Inserita: 20 aprile 2007 Segnala Share Inserita: 20 aprile 2007 A lavorare a bit in quel modo non ho mai provato sinceramente, ma secondo me in quel caso se va bene ti prende il settimo bit della word E0, oppure il bit 0 della word E7 (E0 + spostamento di 6) in quanto è il dato che passi alla MOVR che discrimina l'area.Es.: se passi alla MOVR il dato 0.00 (come nell'esempio precedente) lui memorizza la locazione fisica del primo bit del canale IR, se ci passassi W0.0 prenderebbe la locazione fisica del primo bit dell'area W.Passandoci una DM (o un EM come nel tuo caso) dovrebbe prendere l'indirizzo fisico della word, ma non so come si comporti facendo poi una richiesta a bit.... Scusami se non ti riesco a dare più informazioni, ma il puntamento a bit l'ho usato solo per un'applicazione ormai 3 anni fa e lavoravo solo sull'area W.Ciao Link al commento Condividi su altri siti More sharing options...
Ospite drei Inserita: 21 aprile 2007 Segnala Share Inserita: 21 aprile 2007 (modificato) Ciao Volevo chiederti un`altra curiosita` se l`indirizzo dell` ingresso ed il suo spiazzamento sono contenuti in una word per es del Banco E0 cambia qualche cosa?Es MOVR E10, IR0 dove in E10 ho &0 MOV E12, DR0 dove in E12 ho &7.Ottengo sempre il puntatore all`ingresso 0.07?No, punterebbe alla word E17. Come ha detto Cover è quello che scrivi con l'istruzione MOVR in IR che discrimina l'area.Secondo me ti basta inizilizzare un IR con 0.00 e poi variare il puntatore con un DR. Modificato: 21 aprile 2007 da drei Link al commento Condividi su altri siti More sharing options...
Ospite drei Inserita: 24 aprile 2007 Segnala Share Inserita: 24 aprile 2007 Ho fatto alcune prove, un modo per puntare con un IR un tipo di area diverso da quello che si usa per creare il puntatore c'è.LD P_On MOVL(498) #0C000 E0_0 MOVL(498) E0_0 IR1 MOV(021) 0,IR1 E0_2Con questo codice il puntatore IR1 viene inizializzato alla memoria fisica che il plc chiama canale 0 dell'area CIO.Come si vede il puntatore viene creato tramite un semplice MOVL che scrive l'indirizzo fisico della memoria voluta (CIO 000) tramite la word E0_0.Variando il valore del CIO 000 si può vedere che varia il valore in E0_2.Chiaramente usando gli indirizzi fisici della memoria del PLC il programma potrebbe essere incompatibile con un'altra CPU Omron.La lista degli indirizzi fisici delle CPU CS1G/H si trova nel maunale numero W339-E1-09 appendice C. Link al commento Condividi su altri siti More sharing options...
riomario2005 Inserita: 26 aprile 2007 Autore Segnala Share Inserita: 26 aprile 2007 Immaginavo che ci fosse la possibilita` di dirgli a che area di memoria puntare comunque grazie per il consiglio che mi e` stato molto utile 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