Vai al contenuto
PLC Forum


Aree di memoria : come usarle correttamente ?


Italo Elettriko Musolino

Messaggi consigliati

Italo Elettriko Musolino

Buonasera a tutti

Dopo aver completato grazie al vostro aiuto la mia prima automazione completa con cpu CP1M e pannello NB , ne sto realizzando una più complessa , utilizzando una cpu CJ1M ed un pannello NS8.

Sono riuscito leggendomi i manuali a configurare l'hardware (ora finalmente il PLC e l'HMI dialogano tra loro) , ho creato la parte grafica del programma sull'HMI , inserito gli oggetti (pulsanti , selettori , contatori ecc..) e mi appresto a scrivere il programma PLC.

E qui trovo il primo scoglio......

Fino ad ora mi sono limitato a modificare programmi già esistenti per adattarli alle mie esigenze , oppure a crearne di nuovi ma sempre utilizzando cpu su cui c'erano già dei programmi per cui ho usato questi ultimi come esempi.

Ora invece parto da una cpu "vergine" , oltretutto un modello che non ho mai usato.

Sul manuale ho trovato delle spiegazioni circa le varie aree di memoria , ma ho le idee un pò confuse.

Ad esempio :

Ho capito che gli ingressi (ho una scheda ID232) vanno da 0.00 a 1.15 , e che le uscite (ho una scheda OD232) vanno da 2.00 a 3.15 , e fin qui nessun problema.

Lascio da parte un pò di bit liberi per eventuali future espansioni (diciamo fino a 7.15) ;

A questo punto devo decidere quali bit utilizzare per il resto delle funzioni di comando (selettori e pulsanti "virtuali" dall'HMI) , per le segnalazioni (dal PLC all'HMI) e via discorrendo , ma non mi è ben chiaro cosa cambi ad esempio tra le aree W , CIO , HR , ecc. ecc. ecc....

Come orientarsi correttamente ??

Mi potete fare qualche esempio ??

 

Grazie anticipatamente , e tanti auguri di buone feste !!!!!!

Link al commento
Condividi su altri siti


Oddio, ci vorrebbe un manuale... Aspetta... Si, c'è...

Prendi il manuale W393 che c'è in italiano. E' proprio per il CJ1 (ma vale anche per altri come aree memoria e indirizzamenti),

Lì ci trovi tutte le informazioni che hai chiesto: nel Cap.8 c'è la allocazione degli I/O (come sono assegnati gli indirizzi alle schede), nel cap.9 la descrizione di tutte le aree di memoria disponibili. Poi c'è il manuale W394 con la descrizione di tutte le istruzioni disponibili.

Guarda un po' e facci sapere

Link al commento
Condividi su altri siti

Italo Elettriko Musolino

La mia domanda nasce proprio dall'aver visto la tabella relativa alle aree di memoria nel capitolo 9 del manuale W393...

Se ad esempio devo comandare con un pulsante fisico un bit , dovrò utilizzare uno di quelli associati ad un ingresso fisico del plc (0.00 a 1.15) , ma se invece del pulsante fisico voglio utilizzarne uno "virtuale" dall'HMI , quale area di memoria è più idonea ?

Meglio un bit dell'area CIO o di quella di lavoro (WR) , e perchè ?

E i bit dell'area ritentiva (HR) , in che caso utilizzarli ?

Forse sono un pò "duro" io , ma anche leggendo e rileggendo il manuale continuo ad avere dubbi......   

Link al commento
Condividi su altri siti

Beh, ci sono modi diversi di vedere le cose.

Io adotto questo sistema.

L'area CIO è solo per gli I/O fisici ed eventualmente per scambio con altri PLC in rete.

Per tutti i bit di lavoro (working) sia interni al programma sia di interfacciamento al display, uso la W. 

Le ritentive H sono un'area indirizzabile al bit che mantiene il valore anche allo spegnimento del PLC, mentre le W e le CIO si azzerano.

Le uso principalmente come settaggi on/off di funzioni, oppure come area per shift register di passi programma o altri stati che non voglio perdere allo spegnimento. Dipende dal software

Poi ovviamente ognuno ha i suoi gusti, chi viene dai CPM ha spesso l'abitudine di usare l'area CIO come area di lavoro, ma è un po' rischioso perché schede speciali o funzionalità particolari (reti) usano tale area. La W invece è solo usata dal software utente, quindi non toccata da niente altro.

 

Spero di averti un po' chiarito

Link al commento
Condividi su altri siti

Italo Elettriko Musolino

Ottimo , ora mi è molto più chiaro , grazie mille !!!!!!

Ti chiedo un'ultimo consiglio : l'automazione che sto realizzando deve in pratica contare i pezzi in uscita da una pressa che cadono in un contenitore , ed una volta pieno quest'ultimo fermare il nastro trasportatore (ma non la pressa) per il tempo necessario all'impianto di sostituire il contenitore pieno con uno vuoto e ricominciare da capo ;

Se ad esempio ho una mancanza di alimentazione , al ripristino ho la necessità di ripartire dal numero presente prima dell'interruzione.

Siccome faccio il conteggio confrontando due word nell'area D (una con i l numero di pezzi impostato da pannello , l'altra con i pezzi conteggiati) , in caso di interruzione dell'alimentazione si resetta tutto o i dati vengono mantenuti ?

Link al commento
Condividi su altri siti

Italo Elettriko Musolino

Perfetto !!!!

A questo punto non mi rimane che darmi da fare e scrivere il programma.....

Grazie mille per le informazioni !!!!

 

Link al commento
Condividi su altri siti

Italo Elettriko Musolino

Work in progress....

Tutto fila liscio , sto usando le aree come mi ha indicato Ctec, ad esclusione dei bit necessari per i comndi dall'HMI al PLC per cui ho scoperto (leggendo il manuale) che non è possibile utilizzare l'area W.

Solo per questi comandi ho quindi optato per l'area CIO , lasciando tra l'ultimo bit utilizzato dagli I/O fisici ed il primo di quelli "virtuali" quattro word libere per eventuali espansioni future.

Secondo voi va bene ?

Grazie ancora per l'aiuto !!

Link al commento
Condividi su altri siti

Certo che puoi usare i W, non so dove tu l'abbia letto. Semplicemente in CxDesigner l'area W del PLC è chiamata WR, come l'area H è chiamata HR, e la D si chiama DM.

Comunque, nulla vieta di fare come dici te. E' corretto.

Link al commento
Condividi su altri siti

Italo Elettriko Musolino

Avevo provato ad associare ad un pulsante dell'HMI un bit dell'area W , ma quando lo azionavo l'hmi mi restituiva un messaggio di errore . 

Leggendo allora le istruzioni relative all'area W ho trovato questa nota : "I canali dell'area di lavoro possono essere utilizzati solo nel programma e non per lo scambio degli I/O con terminali di I/O esterno." 

Ho provato allora ad assegnare al medesimo pulsante un bit dell'area CIO e tutto ha funzionato a dovere.
Potere dei manuali.... 

5a47d7ad8a815_areaw.PNG.b11bb1cbb4ef867cacf1969b2ed56007.PNG

Link al commento
Condividi su altri siti

45 minuti fa, Italo Elettriko Musolino scrisse:

Avevo provato ad associare ad un pulsante dell'HMI un bit dell'area W , ma quando lo azionavo l'hmi mi restituiva un messaggio di errore . 

ciao

mi sembra strano.......

 

Link al commento
Condividi su altri siti

Si, nel manuale dice infatti che non hanno nessun riferimento con gli I/O fisici, ed è vero. Ma non c'entra nulla con lo scambio del display. Questo non è un dispositivo di I/O FISICO del PLC, lo sono solo le schede che gli si connettono (direttamente o tramite bus).

I W possono essere usati eccome, altrimenti non mi spiegherei come possano funzionare i miei programmi fatti con tale sistema (anche se ora non li uso più)... ;-)

Premesso come ti ho detto che puoi comunque usare anche i CIO, se vuoi possiamo analizzare il display. Posta una foto dell'errore e dei settaggi di un dispositivo con indirizzo W

 

Link al commento
Condividi su altri siti

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...