Vai al contenuto
PLC Forum


divisione per zero in tia14


meccanico1

Messaggi consigliati

buongiorno a tutti .In un blocco in kop ho inserito dei segmenti in scl con delle espressioni matematiche.Dovrei riconoscerne i risultati errati e mi chiedevo come fare per un singolo segmento.

grazie

Link al commento
Condividi su altri siti


Quando si esegue divisioni e non se ne conosce il valore del divisore è sempre bene inserire prima della divisione una comparazione che ne verifichi il valore e se il valore è uguale a zero è sempre possibile forzare al limite il valore del divisore a una cifra diversa da zero tipo a 1

Link al commento
Condividi su altri siti

Va bene confrontare che il denominatore sia maggiore di zero ma ritengo sbagliato sostituirlo con 1 nel caso non lo sia.

Preferisco non eseguire l'operazione e impostare il risultato a zero

Link al commento
Condividi su altri siti

Ok , ma l'espressione contiene anche delle radici .....quindi dovrei fare anche delle verifiche per la radice di numeri negativi.Pensavo ci fosse un modo per fare riconoscere il tutto al plc .

Penso che farò un fc con il solo calcolo e proverò se a gestire l'uscita eno del blocco.

Link al commento
Condividi su altri siti

In KOP, se il calcolo non è valido, dovrebbe rimanere OFF l'uscita ENO.

In AWL puoi interrogare i bit di stato

Per esempio:

L Dividendo

L Divisore

/R

U OV

SPB _000

T Risultato

_000: NOP 0

 

Mi dispiace che Siemens stia mettendo da parte AWL, perché ha ancora i suoi punti di forza.
I miei programmi sono un misto di KOP, AWL, SCL.


In SCL... Spero che anche in SCL ci sia modo di sapere se l'operazione eseguita è valida. Ma non ho ancora scoperto come.

Link al commento
Condividi su altri siti

da quello che mi sembra di avere capito dall'. in linea sembra di si per blocchi in awl kop e anche scl......per un blocco misto non ho trovato nulla .....proverò e posterò il risultato , grazie a tutti.

Link al commento
Condividi su altri siti

ifachsoftware

Per avere errori gestiti con l'ENO dovrebbe essere sufficiente impostare a true la proprietà Set ENO auto dell'FC in cui si effettano le operazioni.

 

In Scl credo che si potrebbe interrogare la variabile ENO  dall'interno dell'FC ; però non ho provato

.

Invece imposto in SCL per esempio scrivo ENO := TRUE;  posso dire che posso eseguire in KOP altri blocchi  collegati all'ENO di questo , mentre con ENO := FALSE; i blocchi successivi non vengono richiamati

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