Vai al contenuto
PLC Forum


Calcolo Bcd - cqm1h


Messaggi consigliati

Inserito:

ciao,

ho una cpu cqm1h cpu51. nel programma vorrei che ad ogni pressione di un pulsante del + o del - mi aumenta o diminuisce un valore (DM950) di una certa quantità.

ora questa operazione è già presente identica per un altro motore (è un aumento/diminuzione della velocità) ed io vorrei farla per un altro motore.

attualmente a questo motore viene dato un riferimento in percentuale da pannello (appunto la DM950) del tiro di coppia (uscita analogica 104). ed io vorrei fare allo stesso modo + e - da pannello e usarlo come riferimento di velocità per questo motore.

ho provato a fare come nel motore esistente ma non mi aumenta linearmente, è un ADD e SUB in BCD, ma credo di sbagliare qualcosa perchè vi mostro la sequenza dei valori della DM950 ad ogni pressione del pulsante, quella della quale faccio ADD: parto da 100, poi 132, 266, 290, 320, 350, 388, 510, 540, 581, 610... come vedete non sono lineari e credo che il problema sia prima di tutto che non so fare le operazioni BCD :senzasperanza:

ah l'operazione che faccio ad ogni pressione è: ADD DM950 #20 DM950, questo perchè anche per l'altro motore è fatto così.

ma il valore #20 cos'è? BCD? mi spiegate un po come è fatto il BCD? :unsure:

grazie

ciao

roberto


Inserita:

Sei sicuro che sia l'unica operazione eseguita su quel DM? Non viene fatto altro direttamente dal pannello operatore?

Usi le istruzioni con un fronte di salita?

#20 è un numero in BCD.

Qui spiega bene cosa è il BCD. Comunque di base è numerazione decimale solo che in una word puoi avere al massimo 4 interi. Infatti nel BCD un numero viene rappresentato da un DIGIT che è un gruppo di 4 bit.

Inserita:

grazie,

come lo scrivo 378 in bcd e un numero con la virgola non è possibile vero?, e #20 a cosa corrisponde?

da pannello non c'è niente solo quello che ho detto. poi ci sono altre operazioni ma sono tutte precedute da P_Off che è sempre off giusto?

ciao

roberto

Inserita:

Se tu vuoi che il numero che scrivi sia caricato nel PLC in binario BCD (o esadecimale) devi usare il cancelletto.

Quindi dovrai scrivere: #378

Devi usare le istruzioni [at]ADD e [at]SUB in modo che l'incremento o il decremento siano eseguite per una scansione sul fronte di salita del bit che stà a sinistra delle istruzioni.

Se non usi la chiocciola ([at]) l'incremento o il decremento dipende da quannto tempo tieni ad ON il bit che comanda le istruzioni ADD o SUB.

Ciao

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