Come possiamo aiutarti?

Print

Leggere e recuperare i dati da un sensore di distanza TF-Luna LiDAR tramite la porta RS232/485 dell’ACE

 

 

Qui vedremo come estrarre i dati da un fotogramma HEXA. Un esempio con un sensore LiDAR

Questo radar ha un’uscita seriale TTL. È necessario aggiungere un convertitore da TTL a RS232 per collegarlo a un ACE RS232.

Dati e analisi

Questo LiDAR invia per impostazione predefinita un frame di dati ogni 10 ms:

  • Dist: Distanza in cm
  • Amp: Indicatore di potenza del segnale
  • Temp: Temperatura Celsius = Temp / 8 – 256℃

In questo esempio, vedremo come estrarre i dati Dist Amp Temp dalla posizione 2 alla 7 del frame di dati.

Esempio per Dist:

I dati sono composti da 2 byte, posizione 2 e 3.

Per una distanza di 157 cm, riceviamo questi dati : 59599D003C07780913. Vogliamo estrarre il valore in grassetto: 9D 00

  • 9D in HEXA (base 16) = 157 in DEC (base 10) : è il bit meno significativo (LSB)
  • 00 in HEXA (base 16) = 0 in DEC (base 10) : è il bit più significativo (MSB)

Se applichiamo il peso all’MSB: [ 157 ] [0 * 256 ] = 157, il numero che vogliamo come risultato!

Se la distanza fosse 587, sarebbe: [ 75 ] [2 * 256 ] = 587

Il primo codice iniziale del data frame è 59 in HEXA = 89 in DECIMALE

Analisi dei dati su PC con il software realterm

vBuilder: Ascoltare la porta seriale dell’ACE

  • ascolta la porta seriale in attesa di ricevere il “carattere di avvio” 89 (59 in HEXA)
  • conta il numero di byte ricevuti
  • memorizza il frame di dati nell’array di ricezione RX[ ], di lunghezza determinata dal numero di bit ricevuti Byte ricevuti
  • Minimum Break determina il tempo minimo di silenzio da prendere in considerazione per considerare che l’intero frame è stato ricevuto (tempo tra 2 frame)

Controllo del frame di dati

Dopo aver ricevuto il frame di dati, possiamo verificare se il 1° e il 2° carattere sono 89

Se il risultato è corretto, si può passare al punto 2.

Calcolo di ciascun valore, Dist, Amp e Temp

Temp: temperatura Celsius = Temp / 8 – 256℃

Prova la subroutine

È possibile scaricare il programma qui