Vai al contenuto
PLC Forum


Apertura Db - S7-300


dany1

Messaggi consigliati

Buongiorno a tutti,

avrei cortesemente bisogno di un chiarimento su questo argomento:

se in uno stesso segmento tramite AUF apro più DB posso avere dei problemi.

O meglio se scrivo:

AUF DB10

AUF DB20

AUF DB30

AUF DB40

in modo da aprirli tutti e averli a disposizione dei vari FC di programma posso avere dei problemi? naturalmente i dati come MW ecc all'interno di ogni DB anno un indirizzo diverso cioè non sono mai ripetute.

grazie a chi vorrà darmi questo chiarimento.

Ciao

Link al commento
Condividi su altri siti


Matteo Montanari

se tu scrivi

AUF DB10

AUF DB20

AUF DB30

AUF DB40

e dopo

l dw20

carichi i dati riferiti alla dw20 della db40.

in quanto la DB40 è l'ultima Db aperta in sequenza

se scrivi:

l db30.dbw20 (il PLC esegue: apri DB30 e carica il valore della DBW20) carichi i dati relaivi alla dw20 della db30

t db40.dbw20 (il PLC esegue: apri DB40 e trasferisci il valore in accomulatore nella DBW20) trasferisci i dati nella dw20 della db40

in un fc, ob, fb puoi caricare solo una db alla volta, in quanto il puntatore DB è uno solo.

nelle fb hai a disposizione una DB di istanza (chiamata DI) che attivi richiamando l'fb

call fbxy, dbxy

puoi richiamere la db di istanza anche negli FC o OB semplicemente con l'istruzione

O meglio se scrivo:

AUF DI10

in questo caso se scrivi

O meglio se scrivo:

AUF DB10

// apri DB10 come db standard

AUF DI20

// apri DB20 come db d'istanza

l dbw20

// carichi i dati della db10.dbw20

t diw20

// trasferisci i dati nella db20.dbw20

utilizzando due db aperte in contemporanea risparmi sulle istruzioni (scritte ed elaborate dal PLC)

ed anche sul ciclo di scansione in quanto il PLC non deve caricare una nuova DB.

Modificato: da keosmm
Link al commento
Condividi su altri siti

Matteo Montanari

che si accende la luce rossa di SF, la luce gialla di STOP, si spegne la luce verde di RUN e la cpu è in blocco, perchè il software ha richiamato un indirizzo non presente.

il mio era solo un esempio, chiaramente devi modificarlo secondo le tue esigenze.

tieni presente che:

i blocchi dati come DB ne puoi richaiamare solo una alla volta

i blocchi dati come DI ne puoi richaiamare solo una alla volta e solo negli FC, OB, ed FB con nessuna DB d'istanza

ogni caricamento di un dato sotto forma di dbX.dbwY equivale a due istruzioni: carica il blocco dati X, esegui operazione sul dbwY

Link al commento
Condividi su altri siti

Ti consiglio di evitare delle aperture di DB separate dal richiamo della variabile,

cioè

AUF DB10

L DBW100

corrisponde a:

L DB10.DBW100

con la piccola differenza che nel caso di una lista incrociata trovi tutto senza problemi, altrimenti perdi la possibilità

di rintracciare il richiamo facilmente....

tutto questo significa leggibilità anche con applicativi consistenti 2000 I/O ecc.

ciao

pigroplc

Link al commento
Condividi su altri siti

che io sappia e' sconsigliato aprire contemporaneamente piu di 2 blocchi dati .

per aprire il primo db ed il secondo si scrive:

AUF DB 10 //primo db

AUF DI 11 // secondo DB.

pero' puo darsi che ultime realease di S7 permettano di aprire 100 db contemporaneamente.

ciao

p.s. basta sistemarsi bene le aree di memoria e credo no ci sia necessita di aprire cosi tanti db insieme

l'istruzione AUF va usata quando ci sono elaborazioni oppure copie da fare in quantita rilevante tra 2 DB.

AUF apre il db e lo tiene aperto , mentre scrivere DBx.Var si apre e si richiude continuamente.

in sostanza AUF serve per ottimizzare il tempo di scansione evitando alla cpu di continuare ad aprire e chiudere i db in questione .Se devi copiare 10 variabili non credo ti sia utile fare tutto sto cinema.

Modificato: da walterword
Link al commento
Condividi su altri siti

OK grazie per le info non essendo uno specialista di siemens mi sono state di grande aiuto, mi servirebbe sapere ancora una cosa che non mi è chiara anche se magari sembrerà banale e cioè:

le word di valori e di bit in un DB si aggiornano anche se questo è chiuso vedi valori analogici derivanti da strumentazione in campo?

Ancora grazie.

Saluti

Link al commento
Condividi su altri siti

se da qualche parte , durante il ciclo , scrivi e dici al plc di copiare un valore o una variabile in un 'altra

queste vengono aggiornate

ciao

Link al commento
Condividi su altri siti

  • 4 years later...
Dario.bagnolo mella

Per alimentare 4 faretti da esterno montati su pali per l’illuminazione del vialetto di un ristorante, ala est, l’uno da 54W(3 tubi neon da 18W) Pt 216W è stato usato un cavo di sez. 2,5 mmq per la linea alimentatrice lunga 10m.

Per le singole derivazioni ai paletti un cavo da 1,5mmq.

A mio parere la linea alimentatrice è sovradimensionata <_< , calcolata la corrente di linea di 1,22A(cosfi 0.8).

Non sarebbe bastato un cavo di sez. 1,5mmq? (sez. minima consentita) per il costo dell’impianto, oppure ci sono norme che impongono sez. maggiori, trattandosi di un locale pubblico?

Link al commento
Condividi su altri siti

Personalmente non amo utilizzare cavi di sezione di 1,5mmq però tutto dipende dall'assorbimento richiesto, dalla lunghezza e soprattutto dalla protezione della linea.

Con i dati che hai citato potrebbe andare bene la sola sezione di 1,5mmq se la linea è protetta da un MT pari o inferiore a 10A (possibilmente anche un differenziale dedicato, ma per continuità di servizio).

L'utilizzo di sezioni maggiori non compota problemi, anzi !!! Ad esempio se nel cavo ci fosse una minima infiltrazione, magari in corrispondenza di un collegamento terminale e il rame dovesse ossidarsi ci sarebero senz'altro meno problemi, così come se in un futuro si volesse aggiungere o sostituire qualche lampioncino.

Non credo ci siano normativi particolari sul sovradimensionamento per locali pubblici.

Da ciò che hai indicato nutro dei dubbi sul tipo di cavo utilizzato e su eventuali giunte:

se si tratta di cavi interrati non è possibile usare il classico cordino e a meno che l'impianto non sia stato realizzato coi classici tubi rigidi (o flessibili) bianchi o grigi (non quelli classici da incasso, ne i cavidotti da interrare), per intenderci, andrebbe utilizzato un cavo di tipo idoneo es FG7 e prevedere meno giunte possibili (ad esempio solo nei paletti).

Link al commento
Condividi su altri siti

Dario.bagnolo mella

Ringrazio per la risposta SOLCHIERE, spiegazione tecnicamente chiara.

Giusto pensare ad un futuro aggiornamento dell'impianto e nel peggiore dei casi ossidazione della giuntura presente nel pozzetto (umidità) per la derivazione ai singoli lampioncini.

Con una sezione maggiore si hanno meno problemi in questo caso, meno resistenza.

Si tratta di cavi interrati.

grazie. :)

Link al commento
Condividi su altri siti

purtoppo leggo che è stata fatta una giunta nei pozzetti interrati: sebbene non sia normativamente vietato potrebbe dare facilmente problemi in caso di umidità tenendo conto che i pozzetti solitamente non sono stagni, ma l'acqua penetra facilmente anche in grandi quantità. E' notevolmente preferibile evitarle e limtarle solo in alloggiamenti stagni.

Se possibilem, specie se il pozzetto non è stagno, fora il fondo del pozzetto in modo che eventualmente l'aqua possa defluire rapidamente e non resti a contatto con la giunta o in generale coi cavi.

Inoltre considera quanto ti ho già detto sul tipo di cavo da utilizzare per posa interrata che non deve essere il classico NO7V-K e neppure l'FROR, ma un cavo di tipo FG7 (ad esempio), ma potrai trovare molte informazioni usando la funzione "cerca" tra i topic perchè l'argomento è stato dipanato puù volte.

Infine cerca di inserire a monte della linea un MT corredato anche di differenziale.

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