Vai al contenuto
PLC Forum


Passare Da Esadecimale A Decimale.


minihidro

Messaggi consigliati

Ho un problema:

Devo cambiare un numero da esadecimale a decimale.

Ho un numero per esempio il 9038hex, in realta' questo numero non e' esadecimale , ma decimale con segno positivo (+9038)

Il plc ovviamente mi fa il calcolo invece sul 9038hex cioe' 36920 decimale.

Come si fa a impostare questo numero come decimale , e non come hex ?

Grazie.

Link al commento
Condividi su altri siti


dipende anche da che plc usi

comunque devi convertirlo

usando esempio BCD BIN (non ricordo quale da provare)

vedi nella guida (barra in alto ultima a destra) - riferimento istruzzioni (tipo plc ) - conversion instructions

Link al commento
Condividi su altri siti

con plc CJ1W CS1W

ci sono le funzioni a virgla mobile anche doppia

ma bisogna saperci lavorare

io a volte ci provo ma mi risulta difficile

Modificato: da gianff
Link al commento
Condividi su altri siti

.. in virgola mobile ci lavoro... il problema che per lavorarci bene occorre che le variabili siano con segno.. altrimenti fa altri calcoli....

Tornando a noi , se io prendo questa costante ed utilizzo BIN me la mette in decimale senza mobificare nulla.

E fin qui ci siamo.

Ma se eseguo dei calcoli , mi vengono fuori dei numero "strani" o meglio sono numeri calcolati "senza segno"

Sarebbe sufficente che ci aggiungessi un "+" ed i calcoli verrebbero corretti.

Il problema che non so come fare.

Link al commento
Condividi su altri siti

Scusami ma non ho capito cosa intendi con strani.

Se usi le funzioni di calcolo in decimale, non dovresti avere problemi visto che considerano il segno nei calcoli.

Se il tuo valore è 9038 (positivo) non c'è bisogno del segno davanti, il plc lo interpreta come positivo. Invece se il valore è in negativo deve assolutamente avere il segno meno.

Se invece fai dei confronti devi usare le funzioni con segno (es. >=S).

Potresti fare un esempio di calcoli con risultati strani? solo per capire meglio il problema.

Modificato: da 0.0
Link al commento
Condividi su altri siti

Ti spiego subito: se io ho il numero &2954 mi da un numero reale (float) di -1,084584e-019 float.

ed i relativi calcoli vengono sballati...

Se io invece inserisco +2954 i calcoli sono corretti.

Ciao.

Link al commento
Condividi su altri siti

I plc omron hanno il tipo unsigned. &2954 è una costante di tipo senza segno, quindi la conversione in float crea dei problemi.

Non mi sono mai trovato a fare una cosa del genere, ed ora non ho ne manuali omron ne plc con cui fare delel prove.

Siccome sono curioso come una scimmia domani faccio un po' di prove.

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