pyins.sim.generate_sine_velocity_motion
- pyins.sim.generate_sine_velocity_motion(dt, total_time, lla0, velocity_mean, velocity_change_amplitude=0, velocity_change_period=60, velocity_change_phase_offset=[0, 90, 0], sensor_type='rate')
Generate trajectory with NED velocity changing as sine.
The NED velocity changes as:
V = V_mean + V_ampl * sin(2 * pi * t / period + phase_offset)
Roll is set to zero, pitch and heading angles are computed with zero lateral and vertical velocity assumptions.
- Parameters:
- dtfloat
Time step.
- total_timefloat
Total motion time.
- lla0array_like, shape (3,)
Initial latitude, longitude and altitude.
- velocity_meanarray_like, shape (3,)
Mean velocity resolved in NED.
- velocity_change_amplitudearray_like, optional
Velocity change amplitude. Default is 0.
- velocity_change_periodfloat, optional
Period of sinusoidal velocity change in seconds. Default is 60.
- velocity_change_phase_offsetarray_like, shape (3,), optional
Phase offset for sinusoid part in degrees. Default is [0, 90, 0] which will create an ellipse for latitude-longitude trajectory when the mean velocity is zero.
- sensor_type: ‘rate’ or ‘increment’, optional
Type of sensor to generate. If ‘rate’ (default), then instantaneous rate values are generated (in rad/s and m/s^2). If ‘increment’, then integrals over sampling intervals are generated (in rad and m/s).
- Returns:
- trajectoryTrajectory
Trajectory dataframe with n rows.
- imuImu
IMU dataframe with n rows. When sensor_type is ‘increment’ the first sample is duplicated for more convenient future processing.