Vai al contenuto
PLC Forum


Operazione Matematica


TsLuigi

Messaggi consigliati

Scusate, ma ho bisogno di aiuto, non mi riesce di fare una semplice divisione.

Sotto è postato il codice, mi da sempre lo stesso errore, "Tipo di operando non ammesso"

Se qualcuno mi può aiutare, ringrazio anticipatamente.

FUNCTION FC102 : VOID

VAR_TEMP
n : INT;
MEM : BOOL;
END_VAR

VAR_INPUT
DBn : BLOCK_DB;
Dur : BLOCK_DB;
Dw : INT;
START : BOOL;
END_VAR

BEGIN
IF n < 500 THEN
IF START AND NOT MEM THEN
n := 0;
DB4.dw[n] := DBn.dw[n]/Dur.dw[Dw];
n := n+2;
MEM := TRUE;
ELSIF START AND MEM THEN
DB4.dw[n] := DBn.dw[n]/"Dati".Durata;
n := n+2;
END_IF;
ELSE
IF NOT START THEN
n := 0;
MEM := FALSE;
END_IF;
END_IF;


END_FUNCTION

DATA_BLOCK DB4
STRUCT

DB_VAR : ARRAY [0..500] OF INT;

END_STRUCT
BEGIN

END_DATA_BLOCK

Link al commento
Condividi su altri siti


DBn.dw[n]/"Dati".Durata;

Ho provato anche con il simbolico, "Dati.Durata, è il simbolico di Db10.dbw312.

La prima parte della divisione me la accetta, la seconda parte mi da errore, anche se scrivo un numero.


Ho provato anche

"Corsa".dw[n]/"Dati".Durata

sempre errore...

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