Vai al contenuto
PLC Forum


Codesys E Codice Ascii - Codesys ABB


Messaggi consigliati

Inserito:

Ciao a tutti!

Sto usando il codesys per configurare un plc ABB, naturalmente! Ma mi sono bloccato per una stupidaggine (spero!!) e non riesco ad andare avanti!

Devo trasformare un intero in carattere ascii, cioè io ho un intero (per esempio 49) e devo ottenere una stringa con il carattere relativo in codice ASCII (esempio "1")... ma proprio non so come fare!!

Please .!!!!


Inserita:

Non conosco ABB, quindi non so se ci sono istruzioni apposite, se ciò non fosse io farei in questo modo:

Dividere su variabili distinte le cifre del numero, ad es. se il numero da convertire e "4321", io metterei 1 in una variabile, 2 in un'altra, e via dicendo....

Per fare questo(sempre riferendomi all'esempio):

- divido il numero per 1000, tengo la parte intera (4) e la carico in una variabile

- moltiplico per 1000 la parte intera e la sottraggo dal mio numero " 4321 - (4 * 1000) = 321 "

- divido per 100 il numero risultante e tengo la parte intera (3) e lo carico sulla seconda variabile

- moltiplico per 100 la parte intera ecc. ecc. fino ad arrivare all'unità.

Per ottenere il carattere ASCII dei singoli numeri ottenuti basta aggiungere 0x30 (30 esadecimale) es il carattere ASCII di 4 è 0x34.

A questo punto puoi caricare i valori ottenuti in un array di byte che sarà la stringa risultante.

Ora, non so come ABB tratti le variabili stringa, ma la conversione sopra descritta ti permette di ottenere il numero binario in ASCII.

Ciao

Inserita:

:) Grazie Lucios :) !

Difatti avevo già fatto la routine in questa maniera sfruttando gli operatori DIV e MOD!

Diciamo che calcolo il byte di controllo (che è la ragione di tutto il problema!) e che alla fine ottengo questo byte da spedire.. lo trasformo in intero e vorrei concatenarlo alla stringa che ne esce fuori..ma il carattere '$' che mi trasforma i numeri hex in char attraverso la tabella ASCII non sembra funzionare con le variabili ma solamente con i numeri... e qui mi sa proprio che devo farmi la conversione a mano :angry: !!!

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