forked from Archive/PX4-Autopilot
mag cal, scaling of throttle
This commit is contained in:
parent
b30e443f28
commit
e95662f505
|
@ -236,7 +236,7 @@ int ardrone_control_main(int argc, char *argv[])
|
||||||
state.state_machine == SYSTEM_STATE_AUTO ||
|
state.state_machine == SYSTEM_STATE_AUTO ||
|
||||||
state.state_machine == SYSTEM_STATE_MISSION_ABORT ||
|
state.state_machine == SYSTEM_STATE_MISSION_ABORT ||
|
||||||
state.state_machine == SYSTEM_STATE_EMCY_LANDING) {
|
state.state_machine == SYSTEM_STATE_EMCY_LANDING) {
|
||||||
att_sp.thrust = manual.throttle/2.0f;
|
att_sp.thrust = manual.throttle;
|
||||||
|
|
||||||
} else if (state.state_machine == SYSTEM_STATE_EMCY_CUTOFF) {
|
} else if (state.state_machine == SYSTEM_STATE_EMCY_CUTOFF) {
|
||||||
/* immediately cut off motors */
|
/* immediately cut off motors */
|
||||||
|
|
|
@ -306,8 +306,8 @@ void do_mag_calibration(int status_pub, struct vehicle_status_s *status)
|
||||||
calibration_counter++;
|
calibration_counter++;
|
||||||
} else {
|
} else {
|
||||||
/* any poll failure for 1s is a reason to abort */
|
/* any poll failure for 1s is a reason to abort */
|
||||||
mavlink_log_info(mavlink_fd, "[commander] mag calibration aborted, please retry.");
|
//mavlink_log_info(mavlink_fd, "[commander] mag calibration aborted, please retry.");
|
||||||
break;
|
//break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -376,9 +376,9 @@ void do_mag_calibration(int status_pub, struct vehicle_status_s *status)
|
||||||
printf("\nFINAL:\nmag min: %d\t%d\t%d\nmag max: %d\t%d\t%d\n", (int)min_avg[0], (int)min_avg[1], (int)min_avg[2], (int)max_avg[0], (int)max_avg[1], (int)max_avg[2]);
|
printf("\nFINAL:\nmag min: %d\t%d\t%d\nmag max: %d\t%d\t%d\n", (int)min_avg[0], (int)min_avg[1], (int)min_avg[2], (int)max_avg[0], (int)max_avg[1], (int)max_avg[2]);
|
||||||
|
|
||||||
float mag_offset[3];
|
float mag_offset[3];
|
||||||
mag_offset[0] = (max_avg[0] - min_avg[0])/2;
|
mag_offset[0] = (max_avg[0] - min_avg[0]);
|
||||||
mag_offset[1] = (max_avg[1] - min_avg[1])/2;
|
mag_offset[1] = (max_avg[1] - min_avg[1]);
|
||||||
mag_offset[2] = (max_avg[2] - min_avg[2])/2;
|
mag_offset[2] = (max_avg[2] - min_avg[2]);
|
||||||
|
|
||||||
global_data_parameter_storage->pm.param_values[PARAM_SENSOR_MAG_XOFFSET] = mag_offset[0];
|
global_data_parameter_storage->pm.param_values[PARAM_SENSOR_MAG_XOFFSET] = mag_offset[0];
|
||||||
global_data_parameter_storage->pm.param_values[PARAM_SENSOR_MAG_YOFFSET] = mag_offset[1];
|
global_data_parameter_storage->pm.param_values[PARAM_SENSOR_MAG_YOFFSET] = mag_offset[1];
|
||||||
|
|
|
@ -759,9 +759,9 @@ int sensors_main(int argc, char *argv[])
|
||||||
if (manual_control.yaw > 1.0f) manual_control.yaw = 1.0f;
|
if (manual_control.yaw > 1.0f) manual_control.yaw = 1.0f;
|
||||||
|
|
||||||
/* throttle input */
|
/* throttle input */
|
||||||
manual_control.throttle = rc.chan[rc.function[THROTTLE]].scaled;
|
manual_control.throttle = rc.chan[rc.function[THROTTLE]].scaled/2.0f;
|
||||||
if (manual_control.throttle < 0.0f) manual_control.throttle = 0.0f;
|
if (manual_control.throttle < 0.0f) manual_control.throttle = 0.0f;
|
||||||
if (manual_control.throttle > 2.0f) manual_control.throttle = 2.0f;
|
if (manual_control.throttle > 1.0f) manual_control.throttle = 1.0f;
|
||||||
|
|
||||||
/* mode switch input */
|
/* mode switch input */
|
||||||
manual_control.override_mode_switch = rc.chan[rc.function[OVERRIDE]].scaled;
|
manual_control.override_mode_switch = rc.chan[rc.function[OVERRIDE]].scaled;
|
||||||
|
|
Loading…
Reference in New Issue