[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paparazzi-commits] [5460] changes to attempt to improve azimuth control
From: |
Paul Cox |
Subject: |
[paparazzi-commits] [5460] changes to attempt to improve azimuth control : azimuth feedback calculation now acting on tilt_sp instead of the pitch_cmd . |
Date: |
Wed, 18 Aug 2010 16:55:30 +0000 |
Revision: 5460
http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=5460
Author: paulcox
Date: 2010-08-18 16:55:29 +0000 (Wed, 18 Aug 2010)
Log Message:
-----------
changes to attempt to improve azimuth control : azimuth feedback calculation
now acting on tilt_sp instead of the pitch_cmd. Tried increasing
omega_pitch_ref to see if it would allow gain to increase with producing
oscillations. Testing not too encouraging.
Modified Paths:
--------------
paparazzi3/trunk/conf/messages.xml
paparazzi3/trunk/sw/airborne/beth/main_overo.c
paparazzi3/trunk/sw/airborne/beth/overo_controller.c
Modified: paparazzi3/trunk/conf/messages.xml
===================================================================
--- paparazzi3/trunk/conf/messages.xml 2010-08-18 15:43:32 UTC (rev 5459)
+++ paparazzi3/trunk/conf/messages.xml 2010-08-18 16:55:29 UTC (rev 5460)
@@ -641,10 +641,13 @@
<field name="pitch_fb" type="float"/>
<field name="thrust_ff" type="float"/>
<field name="thrust_fb" type="float"/>
+ <field name="tilt_sp" type="float" alt_unit="deg"
alt_unit_coef="57.29578"/>
<field name="tilt_ref" type="float" alt_unit="deg"
alt_unit_coef="57.29578"/>
<field name="tilt_dot_ref" type="float" alt_unit="deg/s"
alt_unit_coef="57.29578"/>
+ <field name="elevation_sp " type="float" alt_unit="deg"
alt_unit_coef="57.29578"/>
<field name="elevation_ref " type="float" alt_unit="deg"
alt_unit_coef="57.29578"/>
<field name="elevation_dot_ref" type="float" alt_unit="deg/s"
alt_unit_coef="57.29578"/>
+ <field name="azimuth_sp" type="float" alt_unit="deg"
alt_unit_coef="57.29578"/>
</message>
<!--109 is free -->
Modified: paparazzi3/trunk/sw/airborne/beth/main_overo.c
===================================================================
--- paparazzi3/trunk/sw/airborne/beth/main_overo.c 2010-08-18 15:43:32 UTC
(rev 5459)
+++ paparazzi3/trunk/sw/airborne/beth/main_overo.c 2010-08-18 16:55:29 UTC
(rev 5460)
@@ -197,8 +197,9 @@
&controller.cmd_pitch,&controller.cmd_thrust,
&controller.cmd_pitch_ff,&controller.cmd_pitch_fb,
&controller.cmd_thrust_ff,&controller.cmd_thrust_fb,
- &controller.tilt_ref,&controller.tilt_dot_ref,
-
&controller.elevation_ref,&controller.elevation_dot_ref);});
+
&controller.tilt_sp,&controller.tilt_ref,&controller.tilt_dot_ref,
+
&controller.elevation_sp,&controller.elevation_ref,&controller.elevation_dot_ref,
+ &controller.azimuth_sp);});
//file_logger_periodic();
Modified: paparazzi3/trunk/sw/airborne/beth/overo_controller.c
===================================================================
--- paparazzi3/trunk/sw/airborne/beth/overo_controller.c 2010-08-18
15:43:32 UTC (rev 5459)
+++ paparazzi3/trunk/sw/airborne/beth/overo_controller.c 2010-08-18
16:55:29 UTC (rev 5460)
@@ -14,7 +14,7 @@
controller.elevation_sp = RadOfDeg(10);
controller.azimuth_sp = 0.;
- controller.omega_tilt_ref = RadOfDeg(200);
+ controller.omega_tilt_ref = RadOfDeg(600);
controller.omega_elevation_ref = RadOfDeg(120);
controller.omega_azimuth_ref = RadOfDeg(60);
controller.xi_ref = 1.;
@@ -34,7 +34,7 @@
controller.one_over_J = 2.;
controller.mass = 5.;
- controller.azim_gain = 1.;
+ controller.azim_gain = 0.05;
controller.omega_cl = RadOfDeg(600);
controller.xi_cl = 1.;
@@ -107,8 +107,9 @@
controller.cmd_azimuth_fb = controller.one_over_J * (2 * controller.xi_cl *
controller.omega_cl * err_azimuth_dot) +
controller.one_over_J * (controller.omega_cl *
controller.omega_cl * err_azimuth);
- controller.cmd_pitch = controller.cmd_pitch_ff + controller.cmd_pitch_fb +
- controller.azim_gain * (controller.cmd_azimuth_fb
+ controller.cmd_azimuth_ff);
+ controller.cmd_pitch = controller.cmd_pitch_ff + controller.cmd_pitch_fb;//
+
+ controller.tilt_sp =
+ controller.azim_gain * (-controller.cmd_azimuth_fb
);//+ controller.cmd_azimuth_ff);
controller.cmd_thrust = controller.cmd_thrust_ff + controller.cmd_thrust_fb
+ thrust_constant;
controller.cmd_thrust = controller.cmd_thrust*(1/cos(estimator.elevation));
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paparazzi-commits] [5460] changes to attempt to improve azimuth control : azimuth feedback calculation now acting on tilt_sp instead of the pitch_cmd .,
Paul Cox <=