Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Differenze Tra I Vari Registri Di Sistema Hplc


Messaggi consigliati

Inserito:

Che differenza c'è tra "Relè interni" (UTENTE??) (serie Word 400-499 e 500-599); "Relè interni library" (Serie Word 600-799); DTHP da 1000 a 1999 e da 2000 a 2700?

Tralasciando il fatto del ritentivo o non ritentivo che so cosa vuol dire, ma a livello pratico cosa cambia tra queste diverse aree di memoria?

Quand'è che bisogna usare i dthp ad esempio? Oppure relè interni?

Nel mio programma sto usando le aree relè interni ritentivi nella numerazione da 500 in poi per fare delle autoritenute ad esempio, dove non mi serve ritenzione dopo caduta alimentazione lascio le risorse che mi propone il programma e cioè da 6000 in poi.

Se come ritentivi usassi dei bit nelle word da 600 in poi funzionerebbe comunque, idem se usassi delle word da 2000 a 2700.... ma non sono sicuro di quando ciò sarebbe più o meno corretto.

Poi c'è un'area "delayed" da MW900a 949.... che fà?


Inserita:

Un momento, ma nell'. nella lista delle risorse di sistema le word da 6000 a 6999 me le da per RITENTIVE...

Eppure sono praticamente sicuro che quando facevo le mie prove col kit start utilizzando questi bit per rendere ritentivi dei passo-passo SR alla mancanza di corrente decadessero...?? Infatti poi avevo fatto delle prove mettendo al loro posto dei bit nella serie di word da 2000 in poi!

Boh?

del_user_56966
Inserita:
Che differenza c'è tra "Relè interni" (UTENTE??) (serie Word 400-499 e 500-599); "Relè interni library" (Serie Word 600-799); DTHP da 1000 a 1999 e da 2000 a 2700?

Sono appunto aree diverse perché le seconde sono ritentive!

Tralasciando il fatto del ritentivo o non ritentivo che so cosa vuol dire, ma a livello pratico cosa cambia tra queste diverse aree di memoria?

Quand'è che bisogna usare i dthp ad esempio? Oppure relè interni?

Non puoi tralasciare il fatto, visto che per ritentivo si intende che ritiene il dato allo spegnimento del PLC,

se metti a ON il relè %MX400.0 che pilota le luci di un locale allo spegnimento e alla successiva riaccensione le luci saranno spente perché %MX400.0 è caduto!

mentre se utilizzi un %MX500.0 il relè rimane memorizzato anche dopo lo spegnimento del PLC! quindi le luci torneranno ad accendersi!

Nel mio programma sto usando le aree relè interni ritentivi nella numerazione da 500 in poi per fare delle autoritenute ad esempio, dove non mi serve ritenzione dopo caduta alimentazione lascio le risorse che mi propone il programma e cioè da 6000 in poi.

L'area da 6000 in poi è dedicata al compilatore, non si deve utilizzarla se non per la dichiarazione automatica che fa lui da solo, se si lavora sopra al compilatore...

potresti far confusione!

Se come ritentivi usassi dei bit nelle word da 600 in poi funzionerebbe comunque, idem se usassi delle word da 2000 a 2700.... ma non sono sicuro di quando ciò sarebbe più o meno corretto.

Infatti non ti inventare nulla sono già tanti quelli a disposizione nelle aree corrette che non conviene fare a caso... :)

Poi c'è un'area "delayed" da MW900a 949.... che fà?

Ritarda i fronti di salita/Discesa per un intero ciclo, se non ti dovesse funzionare un fronte vedi che è l'ora di usare quest'area... ;)

del_user_56966
Inserita:
"Relè interni library" (Serie Word 600-799);

Su questi stai attento, perché sono riservati alle librerie,

se metti nel programma una libreria che usa quest'area questa sovrascrive il tuo dato...

Inserita:

Tra ritentive e non ritentive la differenza la conosco, non mi tornava solo il motivo vi fossero tante aree e non ero certo di quali dover usare!

Allora le aree da 600 non le devo toccare perchè se le gestisce ladderhome con le sue librerie... e ok.

Le serie da 500 in poi mi pare di capire siano le più idonee per farmici i cavoli miei quando mi si accendono delle lampadine in testa :P

I registri DTHP da 1000 a 1999 non sono ritentivi

I registri DTHP da 2000 a 2700 sono ritentivi Ma esattamente qual'è il loro scopo? Ci posso smanettare liberamente, e nel caso servono a fare cose particolari?

E poi c'è il fatto delle risorse da 6000 in poi.

Sto vedendo nell'. della penultima versione di ladderhome e sono indicate come ritentive, oggi ho fatto una prova e non lo sono perchè alla riaccensione sono a zero. Penso sia un errore di scrittura nell'..

Comunque io qui non ci metto mano manualmente, le uso solo quando non mi servono relè interni ritentivi e mi vien comodo lasciarmeli assegnare in automatico, questo è chiaro.

Ciao.

P.S. per oggi il Signore mi ha assistito :thumb_yello:

Inserita:

Ah... non mi ero accorto dei delayed.

Quindi fammi capire, vuol dire che se prendo un ingresso %IXyy.zz e lo butto in una risorsa tipo %MX900.1 nel momento in cui l'ingresso passa ad 1 l'MX lo farà solo al successivo ciclo?

La stessa cosa avviene anche se anzichè usare un ingresso fisico uso un altra risorsa interna tipo %MX400.1?

Interessante.

del_user_56966
Inserita:
Ci posso smanettare liberamente, e nel caso servono a fare cose particolari?

Per esempio per mantenere un setpoint, l'intensità di un dimmer ecc..

Quindi fammi capire, vuol dire che se prendo un ingresso %IXyy.zz e lo butto in una risorsa tipo %MX900.1

Il tempo di un ciclo HomePLC è di 100 mS mentre quello della logica programmata è più veloce, quindi se devi mantenere un fronte per un tempo

completo devi usare l'area 900, in caso contrario il tuo fronte si esaurisce prima di arrivare all'elaborazione finale!

del_user_56966
Inserita:
E poi c'è il fatto delle risorse da 6000 in poi.

Come ti dicevo quell'area è gestita dal compilatore, quindi non mi porrei il problema!... :)

Inserita:

Uhm sta cosa del delayed mi intrippa :superlol:

Ricordo che a scuola a proposito delle reti combinatorie (logica cablata) si parlava di "alee statiche e dinamiche" e se ho capito bene si verifica una cosa simile...

Il processore del plc processa velocemente gli stati che gli si presentano in ingresso ed aggiorna altrettanto velocemente i risultati nelle sue aree di memoria, in certi casi alcuni di questi segnali possono commutare e restare nel nuovo valore per tempi molto brevi per poi tornare al valore precedente e se ad esempio dovessi realizzare una funzione logica con un altro ingresso (fisico) per avere un risultato in uscita questo potrebbe essere errato perchè non s'è fatto in tempo a caricare quest'ultimo in memoria.

Quindi la soluzione è di portare questi segnali elaborati velocemente all'interno del programma su un delayed, ed utilizzare quest'ultimo per realizzare la funzione che serviva?

Ho capito bene o giusto? :thumb_yello:

del_user_56966
Inserita:
ed utilizzare quest'ultimo per realizzare la funzione che serviva?

Si, magari adesso dopo la spiegazione tecnica a qualcuno sono venuti i capelli a riccioli... :lol:

direi in modo più chiaro che i fronti sono eseguiti più volte durante un ciclo HomePLC quindi l'unico

fronte che può essere portato come risultato verso un uscita è quello che utilizza l'area ritardata!...

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...