Vai al contenuto
PLC Forum


Puntatori Area - puntatori area


ilfesta76

Messaggi consigliati

Ciao a tutti ragazzi, ho un problema , non avendo mai avuto esperienza con i puntatori area ed avendo il bisogno di utilizzare un fb su piu macchine gia in funzione vorrei non dover utilizzare l'area merker che potrebbe essere gia occupata, ma al suo posto utilizzare delle db, il mio problema di fondo è....... qual'è la sintassi da utilizzare per scrivere per esempio" U M [MD 1590]" sottoforma di db???? grazie in anticipo.

Link al commento
Condividi su altri siti


io mi trovo bene a programmare scrivendo gli FB e adoperando le variabili statiche (STAT) dell'FB: tutte le memorie faranno capo alla DB di istanza che dichiari al momento del richiamo dell'FB nel tuo FC/OB.

tornando al tuo caso particolare la sintassi è la seguente:

innanzitutto essendo una DB, devi dire su che DB "stai lavorando" e questo lo fai scrivendo:

AUF DBxx

oppure

AUF DB[MW0] dove MW0 può essere tranquillamente una variabile locale purchè di 16 bit

dopodichè devi dire il bit che vuoi interrogare e lo puoi fare:

U DBXyy.z

oppure

U DBX[MD0] dove MD0 può essere tranquillamente una variabile locale purche di 32 bit

attenzione..... per dichiarare il bit appoggiandosi ad una variabile, c'è una ben preciso formato!

Link al commento
Condividi su altri siti

Grazie ma io vorrei fare a meno dell'md1590 e usare per esempio db100.dbd1590, e possibile?

grazie ancora!!

infatti daercol mi potresti fare un esempio?? grazie mille!!

Link al commento
Condividi su altri siti

AUF DB 100 (e quì non ci piove)

poi apri la tendina dell'interfaccia e nell'area TEMP imposti una variabile (di tipo DINT) che chiami "puntatore"

a questo punto scrivi

U DBX[puntatore]

rimane da definire come impostare puntatore..... la regola è questa:

I TRE BIT MENO SIGNIFICATIVI (QUELLI A DESTRA TANTO PER INTENDERCI) DEFINIRANNO IL BIT 0-7 MENTRE I RESTANTI 29 DEFINIRANNO IL BYTE

Supponiamo che vuoi leggere il bit 38.5

trasformato in bit, diventa:

000000000000000000000100110101

[ 38 ][5]

e che per farlo in linguaggio AWL diventa: .......

L 38

SLW3

L 5

OW

t puntatore

Link al commento
Condividi su altri siti

UN ULTIMISSIMA DOMANDA... è TUTTO PERFETTO, SE NON CHE dichiarando la variabile "pointer" nelle variabili temp del mio fb pultroppo proprio perchè è temporanea mi viene elaborata solo una volta e per esigenze mie ( devo poter far ruotare le segnalazioni di allarme quando ne ho piu di una) ...come devo fare senza usare merker??

Link al commento
Condividi su altri siti

se predisponi una variabile temp, la prossima scansione assumerà un valore non determinabile,

se desideri che il valore persista, crei il tuo puntatore nell'area STAT anzichè TEMP (sono fatte apposta) e pertanto il valore rimarrà quello della scansione precedente.

Link al commento
Condividi su altri siti

  • 1 year later...

Un saluto cordiale come sempre a tutti .

Vi chiedevo , qual' è il valore esatto della potenza minima disponibile che in rare occasioni l' ENEL concede di prelevare sul contatore , quando ad esempio ci sono utenti morosi o che hanno avuto problemi con ritardi di pagamenti su bollette.

Grazìe e saluti.

Modificato: da koperniko
Link al commento
Condividi su altri siti

Grazie Mzara , quindi dovremmo essere sui 450 -500 W all' incirca. Alcuni giorni fa , mi è capitato che un mio amico aveva montato una pompa sommersa da 2 HP circa 1500 W , e appena la inseriva , interveniva immediatamente l' interruttore del contatore che staccava velocemente visualizzando "DISTACCO IMPOSTO SUPERO POTENZA PER PIU' DEL 25% . Da cio' ho capito che sicuramente c'era qualche problema di limitazione di potenza sul contatore, ma non pensavo che il valore di quella concessa a seguito di problemi con pagamenti fosse cosi basso.

Cordiali saluti

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