Velodyne HD HDL-64E S2.1 Istruzioni per gli Interventi Pagina 33

  • Scaricare
  • Aggiungi ai miei manuali
  • Stampa
  • Pagina
    / 43
  • Indice
  • SEGNALIBRI
  • Valutato. / 5. Basato su recensioni clienti
Vedere la pagina 32
APPENDIX F: DUAL TWO POINT CALIBRATION METHO
D
OLOGY
H
D
L
-
64
E
S2
and
S
2
.
I
U
s
e
r
s
M
a
nu
a
l
Dual Two Point Calibration Methodology and Code Samples
Velodyne uses a dual point calibration methodology to calculate the values in the db.xml file. This section describes this calibration methodology.
The steps for the calibration are as follows:
1: Perform far point calibration at 25.04m
2: Perform near point X calibration at 2.4m
3: Perform near point Y calibration at 1.93m
4: Perform linear interpolation to get distance correction for X and Y (Nearer than 25.00m only)
The formula for the calibration value is as follows:
(x - 0)
D
y
= D
ly
+ (D
2
- D
ly
)
D
x
= D
lx
+ (D
2
- D
lx
)
(x
2
- 0)
(x - x
l
)
(x
2
- x
l
)
Where:
x
l
= 2.4 m
x
2
= 25.04 m
D
lx
= corrected X distance for near point
D
ly
= corrected Y distance for near point
D
2x
= corrected X distance for far point
D
2y
= corrected X distance for far point
Coordinate Calculation Algorithm Sample Code
firingData::computeCoords(guintl6 laserNum, boost::shared_ptr<CalibrationDB> db,
GLpos_t &pos)
{
guintl6 idx = laserNum % VLS_LASER_PER_FIRING;
boost::shared_ptr<CalibrationPoint> cal = db->getCalibration(laserNum);
if (data->points[idx].distance == O) {
coords[idx].setX(O.O);
coords[idx].setY(O.O);
coords[idx].setZ(O.O);
return;
}
II Get measured distance, distancel
float distancel = db->getDistLSB() * (float)data->points[idx].distance;
II Corrected distance by distance calibration at 25.O4m
float distance = distancel+ cal->getDistCorrection();
float cosVertAngle = cal->getCosVertCorrection();
float sinVertAngle = c
al->getSinVertCorrection();
[ 30 ]
Vedere la pagina 32
1 2 ... 28 29 30 31 32 33 34 35 36 37 38 ... 42 43

Commenti su questo manuale

Nessun commento