Vai al contenuto
PLC Forum


Decimali A Virgola Mobile


minihidro

Messaggi consigliati

Salve ,

Sto usando un PLC serie Cj1m e dovrei inserire in una DM un numero a virgola mobile negativo del tipo -2,5

Per poi usare il contenuto della DM per effettuare una divisione /B , che da quel che leggo ha una precisione maggiore.

Non riesco ad inseire il numero decimale a virgola mobile negativo nella DM.

Link al commento
Condividi su altri siti


Ho provato a dichiarare nell'area di lavoro - symboli locali - "prova, REAL , -1,5" ma non riesco a settarlo perche' malgrado sia di tipo REAL , non mi prende ne la virgola , ne il segno , ma solo l'intero!

Dove toppo ?

Link al commento
Condividi su altri siti

Ho provato a dichiarare nell'area di lavoro - symboli locali - "prova, REAL , -1,5"

mah, nella tabella dei simboli credo si definisca solo l'associazione tra simbolo e indirizzo

infatti nella mia versione di cx programmer (7.0) le colonne dove tu vai a scrivere si chiamano

Nome - Tipo dati - Indirizzo/valore

andando a cercare nell' . in linea ho trovato che nella colonna "Indirizzo/valore" devi scrivere

l'indirizzo OPPURE un numero se scegli una variabile di tipo NUMBER, che non sapevo neppure esistesse...

morale: assegni un indirizzo al simbolo e poi vai a modificare il contenuto all'indirizzo prescelto

ciao

Link al commento
Condividi su altri siti

Il problema che e' una variabile ti tipo "number" vuole un numero , intero , a virgola mobile , e con il segno.

La dichiarazione , non e' un problema , se non fosse altro che quando lo vai ad inserire un un mov , piu' correttamente in un MOVL non lo accetta e mi da errore.

Succede praticamente la stessa cosa come se mettessi una costante a virgola mobile , direttamente nell'istruzione MOVL.

Il problema rimane : Come caricare un numero a virgola mobile con segno in una DM.

Link al commento
Condividi su altri siti

Certo che potevi dirlo subito: la MOVL non mi permette di scrivere una costante numerica nel parametro di origine, come posso fare in altro modo?

Io faccio cosi:

+F -2,5 +0,0 D1000

l'istruzione +F accetta costanti numeriche, quindi...

rileggendo il tuo primo post ho notato che parli della divisione /B (ovvero BCD), cosa centra con i numeri in virgola mobile ?

Link al commento
Condividi su altri siti

Cioe' in pratica devo "aggirare" la limitazione della DM facendo un finta addizzione , che a questo punto potrebbe essere anche una moltiplicazione per +1 o divisione, sempre in floating.

Per il /B... hai ragione : il problema che ho scritto male il messaggio , e quando e' stato ora di modificarlo , non ci sono piu' riuscito.

La divisione la devo fare , ovviamente con numeri a virgola mobile.

Questa divisione deve essere fatta da delle costanti , che pero' quando e' stato ora di caricarle sulla DM , non ci sono riuscito.

Scusa se mi sono espresso male , ma e' la prima volta che uso della matematica su omron ( e spero sia anche l'ultima) , e non mi ci raccapezzo molto...

Avevo provato anche con il binario , ma le istruzioni FIX e FLT , mi troncano sempre la parte decimale !

In buona sostanza inizio in floating , calcolo in floating , e finisco ovviamente in floating.

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