mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-28 19:32:36 +08:00
SIH - change how LAT and LON is used for Takeoff location (#23363)
change how lat long is used for SIH
This commit is contained in:
@@ -15,6 +15,9 @@ if [ "$PX4_SIMULATOR" = "sihsim" ] || [ "$(param show -q SYS_AUTOSTART)" -eq "0"
|
|||||||
if [ -n "${PX4_HOME_LON}" ]; then
|
if [ -n "${PX4_HOME_LON}" ]; then
|
||||||
param set SIH_LOC_LON0 ${PX4_HOME_LON}
|
param set SIH_LOC_LON0 ${PX4_HOME_LON}
|
||||||
fi
|
fi
|
||||||
|
if [ -n "${PX4_HOME_ALT}" ]; then
|
||||||
|
param set SIH_LOC_H0 ${PX4_HOME_ALT}
|
||||||
|
fi
|
||||||
|
|
||||||
if simulator_sih start; then
|
if simulator_sih start; then
|
||||||
|
|
||||||
|
|||||||
@@ -243,8 +243,8 @@ void Sih::parameters_updated()
|
|||||||
_KDW = _sih_kdw.get();
|
_KDW = _sih_kdw.get();
|
||||||
_H0 = _sih_h0.get();
|
_H0 = _sih_h0.get();
|
||||||
|
|
||||||
_LAT0 = (double)_sih_lat0.get() * 1.0e-7;
|
_LAT0 = (double)_sih_lat0.get();
|
||||||
_LON0 = (double)_sih_lon0.get() * 1.0e-7;
|
_LON0 = (double)_sih_lon0.get();
|
||||||
_COS_LAT0 = cosl((long double)radians(_LAT0));
|
_COS_LAT0 = cosl((long double)radians(_LAT0));
|
||||||
|
|
||||||
_MASS = _sih_mass.get();
|
_MASS = _sih_mass.get();
|
||||||
|
|||||||
@@ -273,8 +273,8 @@ private:
|
|||||||
(ParamFloat<px4::params::SIH_L_PITCH>) _sih_l_pitch,
|
(ParamFloat<px4::params::SIH_L_PITCH>) _sih_l_pitch,
|
||||||
(ParamFloat<px4::params::SIH_KDV>) _sih_kdv,
|
(ParamFloat<px4::params::SIH_KDV>) _sih_kdv,
|
||||||
(ParamFloat<px4::params::SIH_KDW>) _sih_kdw,
|
(ParamFloat<px4::params::SIH_KDW>) _sih_kdw,
|
||||||
(ParamInt<px4::params::SIH_LOC_LAT0>) _sih_lat0,
|
(ParamFloat<px4::params::SIH_LOC_LAT0>) _sih_lat0,
|
||||||
(ParamInt<px4::params::SIH_LOC_LON0>) _sih_lon0,
|
(ParamFloat<px4::params::SIH_LOC_LON0>) _sih_lon0,
|
||||||
(ParamFloat<px4::params::SIH_LOC_H0>) _sih_h0,
|
(ParamFloat<px4::params::SIH_LOC_H0>) _sih_h0,
|
||||||
(ParamFloat<px4::params::SIH_DISTSNSR_MIN>) _sih_distance_snsr_min,
|
(ParamFloat<px4::params::SIH_DISTSNSR_MIN>) _sih_distance_snsr_min,
|
||||||
(ParamFloat<px4::params::SIH_DISTSNSR_MAX>) _sih_distance_snsr_max,
|
(ParamFloat<px4::params::SIH_DISTSNSR_MAX>) _sih_distance_snsr_max,
|
||||||
|
|||||||
@@ -235,33 +235,31 @@ PARAM_DEFINE_FLOAT(SIH_KDW, 0.025f);
|
|||||||
* Initial geodetic latitude
|
* Initial geodetic latitude
|
||||||
*
|
*
|
||||||
* This value represents the North-South location on Earth where the simulation begins.
|
* This value represents the North-South location on Earth where the simulation begins.
|
||||||
* A value of 45 deg should be written 450000000.
|
|
||||||
*
|
*
|
||||||
* LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others
|
* LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others
|
||||||
* to represent a physical ground location on Earth.
|
* to represent a physical ground location on Earth.
|
||||||
*
|
*
|
||||||
* @unit deg*1e7
|
* @unit deg
|
||||||
* @min -850000000
|
* @min -90
|
||||||
* @max 850000000
|
* @max 90
|
||||||
* @group Simulation In Hardware
|
* @group Simulation In Hardware
|
||||||
*/
|
*/
|
||||||
PARAM_DEFINE_INT32(SIH_LOC_LAT0, 454671160);
|
PARAM_DEFINE_FLOAT(SIH_LOC_LAT0, 47.397742f);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initial geodetic longitude
|
* Initial geodetic longitude
|
||||||
*
|
*
|
||||||
* This value represents the East-West location on Earth where the simulation begins.
|
* This value represents the East-West location on Earth where the simulation begins.
|
||||||
* A value of 45 deg should be written 450000000.
|
|
||||||
*
|
*
|
||||||
* LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others
|
* LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others
|
||||||
* to represent a physical ground location on Earth.
|
* to represent a physical ground location on Earth.
|
||||||
*
|
*
|
||||||
* @unit deg*1e7
|
* @unit deg
|
||||||
* @min -1800000000
|
* @min -180
|
||||||
* @max 1800000000
|
* @max 180
|
||||||
* @group Simulation In Hardware
|
* @group Simulation In Hardware
|
||||||
*/
|
*/
|
||||||
PARAM_DEFINE_INT32(SIH_LOC_LON0, -737578370);
|
PARAM_DEFINE_FLOAT(SIH_LOC_LON0, 8.545594f);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initial AMSL ground altitude
|
* Initial AMSL ground altitude
|
||||||
@@ -282,7 +280,7 @@ PARAM_DEFINE_INT32(SIH_LOC_LON0, -737578370);
|
|||||||
* @increment 0.01
|
* @increment 0.01
|
||||||
* @group Simulation In Hardware
|
* @group Simulation In Hardware
|
||||||
*/
|
*/
|
||||||
PARAM_DEFINE_FLOAT(SIH_LOC_H0, 32.34f);
|
PARAM_DEFINE_FLOAT(SIH_LOC_H0, 489.4f);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* distance sensor minimum range
|
* distance sensor minimum range
|
||||||
|
|||||||
Reference in New Issue
Block a user