[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Paparazzi-devel] Airframe-file problem with POI Tracking
From: |
Joseph Metz |
Subject: |
Re: [Paparazzi-devel] Airframe-file problem with POI Tracking |
Date: |
Tue, 27 Jul 2010 12:22:57 +0200 |
Hi Felix and Martin,
the guys from the university bremen installed the paparazzi on my laptop i
think on the 22.03.2010.
I tried to make the file on the command line (terminal?) but it did not run
(i do not know linux well, sorry).
If someone want to test the airframe file on his pc, attached is the file.
I think it could be a first helpf if you, martin would send me a airframe
file with the POI tracking....could be that i can find the bug in my code.
Did no one else used or tested the POI code on his plane?
Regards,
Joseph
----- Original Message -----
From: "Felix Ruess" <address@hidden>
To: <address@hidden>
Sent: Tuesday, July 27, 2010 11:47 AM
Subject: Re: [Paparazzi-devel] Airframe-file problem with POI Tracking
Hi Joseph,
seems that is not the whole error message. Sometimes Paparazzi center
doesn't display the last part of the output ( I guess a buffer is not
flushed).
Could you run make on the command line and paste the full error
message? make; make AIRCRAFT=Twinstar clean_ac ap
Also are you running the latest svn version or some older one (which one?)?
Cheers, Felix
On Tue, Jul 27, 2010 at 11:24 AM, Joseph Metz <address@hidden> wrote:
Hi,
i modified the mc24.xml to fit my airframe file and builded it with my old
airframe file without the POI code.
It runs well without errors.
When i use the new POI airframe file and the modified mc24.xml i get this
"error" again:
CC /home/administrator/work/paparazzi3/var/Twinstar/ap/arm7/adc_hw.o
LD /home/administrator/work/paparazzi3/var/Twinstar/ap/ap.elf
/home/administrator/work/paparazzi3/var/Twinstar/ap/main_ap.o: In function
`navigation_task':
main_ap.c:(.text.navigation_task+0
Does anyone know this error and how to eliminate it?
It´s interesting that i get the same "error" independently if i use this
code in <auto_rc_commands> or not:
<set command="CAM_PAN" value="@YAW"/>
<set command="CAM_TILT" value="@GAIN1"/>
Regards,
Joseph
----- Original Message -----
From: Martin Mueller
To: address@hidden
Sent: Tuesday, July 27, 2010 10:57 AM
Subject: Re: [Paparazzi-devel] Airframe-file problem with POI Tracking
Hi Joseph,
maybe some part of the error is missing inthe end? Try using an RC
radio/transmitter that has a "GAIN1" function, e.g. mc24.xml
Martin
----- original Nachricht --------
Betreff: [Paparazzi-devel] Airframe-file problem with POI Tracking
Gesendet: Di, 27. Jul 2010
Von: Joseph Metz
Hello,
i want to test the POI tracking feature:
http://paparazzi.enac.fr/wiki/Pan_Tilt_Camera
Sadly i can not build the code, i get the failure: main_ap.c:236:error:
"RADIO_GAIN1" undeclared (first use in this function)
After deleting
<set command="CAM_PAN" value="@YAW"/>
<set command="CAM_TILT" value="@GAIN1"/>
in <auto_rc_commands>the failure disappears but the building in the
paparazzi center stops here:
CC /home/administrator/work/paparazzi3/var/Twinstar/ap/arm7/adc_hw.o
LD /home/administrator/work/paparazzi3/var/Twinstar/ap/ap.elf
/home/administrator/work/paparazzi3/var/Twinstar/ap/main_ap.o: In function
`navigation_task':
main_ap.c:(.text.navigation_task+0
If anyone has a airframe file with running POI tracking it would help me
much to find the failure in my code any set it up properly.
Regards,
Joseph
PS: Here is the airframe-file:
<!-- Twinstar II, Roxxy,YGE Regler, 3s 2500-->
−
<airframe name="Twinstar_IS">
<!-- commands section, Tuned -->
−
<servos>
<servo name="AILERON_LEFT" no="2" min="1100" neutral="1500" max="1900"/>
<servo name="THROTTLE" no="0" min="1050" neutral="1050" max="1900"/>
<servo name="ELEVATOR" no="4" min="1150" neutral="1500" max="1900"/>
<servo name="RUDDER" no="3" min="1900" neutral="1500" max="1100"/>
<servo name="AILERON_RIGHT" no="2" min="1200" neutral="1490" max="1800"/>
<servo name="CAM_PAN" no="6" min="2000" neutral="1550" max="1000"/>
<servo name="CAM_TILT" no="7" min="1000" neutral="1550" max="2000"/>
</servos>
−
<commands>
<axis name="THROTTLE" failsafe_value="0"/>
<axis name="ROLL" failsafe_value="0"/>
<axis name="PITCH" failsafe_value="0"/>
<axis name="YAW" failsafe_value="0"/>
<axis name="CAM_TILT" failsafe_value="0"/>
<axis name="CAM_PAN" failsafe_value="0"/>
</commands>
−
<rc_commands>
<set command="THROTTLE" value="@THROTTLE"/>
<set command="ROLL" value="@ROLL"/>
<set command="PITCH" value="@PITCH"/>
<set command="YAW" value="@YAW"/>
</rc_commands>
−
<auto_rc_commands>
<set command="THROTTLE" value="@THROTTLE"/>
<set command="ROLL" value="@ROLL"/>
<set command="PITCH" value="@PITCH"/>
<set command="YAW" value="@YAW"/>
<set command="CAM_PAN" value="@YAW"/>
<set command="CAM_TILT" value="@GAIN1"/>
</auto_rc_commands>
−
<section name="MIXER">
<define name="AILERON_DIFF" value="0.7"/>
<define name="COMBI_SWITCH" value="1.0"/>
</section>
−
<command_laws>
<set servo="THROTTLE" value="@THROTTLE"/>
<set servo="ELEVATOR" value="@PITCH"/>
<let var="roll" value="@ROLL"/>
<set servo="AILERON_LEFT" value="($roll > 0 ? 1 : AILERON_DIFF) * $roll"/>
<set servo="AILERON_RIGHT" value="($roll > 0 ? AILERON_DIFF : 1) *
$roll"/>
<set servo="RUDDER" value="@YAW + @ROLL*COMBI_SWITCH"/>
<set servo="CAM_PAN" value="@CAM_PAN"/>
<set servo="CAM_TILT" value="@CAM_TILT"/>
</command_laws>
−
<section name="CAM" prefix="CAM_">
<define name="TILT_MAX" value="30" unit="deg"/>
<define name="TILT_NEUTRAL" value="0" unit="deg"/>
<define name="TILT_MIN" value="-30" unit="deg"/>
<define name="TILT0" value="0" unit="deg"/>
<define name="PAN_MAX" value="45" unit="deg"/>
<define name="PAN_NEUTRAL" value="0" unit="deg"/>
<define name="PAN_MIN" value="-45" unit="deg"/>
<define name="PAN0" value="0" unit="deg"/>
</section>
−
<section name="AUTO1" prefix="AUTO1_">
<define name="MAX_ROLL" value="0.9"/>
<define name="MAX_PITCH" value="0.6"/>
</section>
−
<section name="adc" prefix="ADC_CHANNEL_">
<define name="IR1" value="ADC_1"/>
<define name="IR2" value="ADC_2"/>
<define name="IR_TOP" value="ADC_0"/>
<define name="IR_NB_SAMPLES" value="16"/>
</section>
<!-- IR neutrals and correction, Tuned -->
−
<section name="INFRARED" prefix="IR_">
<define name="ADC_IR1_NEUTRAL" value="513"/>
<define name="ADC_IR2_NEUTRAL" value="514"/>
<define name="ADC_TOP_NEUTRAL" value="512"/>
<define name="LATERAL_CORRECTION" value="1"/>
<define name="LONGITUDINAL_CORRECTION" value="1"/>
<define name="VERTICAL_CORRECTION" value="-1"/>
<define name="CORRECTION_UP" value="1."/>
<define name="CORRECTION_DOWN" value="1."/>
<define name="CORRECTION_LEFT" value="1."/>
<define name="CORRECTION_RIGHT" value="1."/>
<define name="HORIZ_SENSOR_TILTED" value="1"/>
<define name="IR1_SIGN" value="1"/>
<define name="IR2_SIGN" value="-1"/>
<define name="TOP_SIGN" value="-1"/>
<define name="ROLL_NEUTRAL_DEFAULT" value="-1.99985194206" unit="deg"/>
<define name="PITCH_NEUTRAL_DEFAULT" value="-17.1887340546" unit="deg"/>
</section>
−
<section name="BAT">
<define name="MILLIAMP_AT_FULL_THROTTLE" value="20000"/>
<define name="CATASTROPHIC_BAT_LEVEL" value="9.3" unit="V"/>
<define name="VoltageOfAdc(adc)" value="(0.02454*adc)"/>
</section>
−
<section name="MISC">
<define name="MINIMUM_AIRSPEED" value="7." unit="m/s"/>
<define name="NOMINAL_AIRSPEED" value="10." unit="m/s"/>
<define name="MAXIMUM_AIRSPEED" value="18." unit="m/s"/>
<define name="CARROT" value="5." unit="s"/>
<define name="KILL_MODE_DISTANCE" value="(1.5*MAX_DIST_FROM_HOME)"/>
<define name="CONTROL_RATE" value="60" unit="Hz"/>
<define name="ALT_KALMAN_ENABLED" value="TRUE"/>
<define name="DEFAULT_CIRCLE_RADIUS" value="80."/>
<define name="MIN_CIRCLE_RADIUS" value="50."/>
</section>
−
<section name="VERTICAL CONTROL" prefix="V_CTL_">
<define name="POWER_CTL_BAT_NOMINAL" value="11.1" unit="volt"/>
<!-- outer loop proportional gain -->
<define name="ALTITUDE_PGAIN" value="-0.06"/>
<!-- outer loop saturation -->
<define name="ALTITUDE_MAX_CLIMB" value="2."/>
<!-- auto throttle inner loop -->
<define name="AUTO_THROTTLE_NOMINAL_CRUISE_THROTTLE" value="0.4"/>
<define name="AUTO_THROTTLE_MIN_CRUISE_THROTTLE" value="0.25"/>
<define name="AUTO_THROTTLE_MAX_CRUISE_THROTTLE" value="0.95"/>
<define name="AUTO_THROTTLE_LOITER_TRIM" value="1500"/>
<define name="AUTO_THROTTLE_DASH_TRIM" value="-2500"/>
<define name="AUTO_THROTTLE_CLIMB_THROTTLE_INCREMENT" value="0.15"
unit="%/(m/s)"/>
<define name="AUTO_THROTTLE_PGAIN" value="-0.01"/>
<define name="AUTO_THROTTLE_IGAIN" value="0.2"/>
<define name="AUTO_THROTTLE_PITCH_OF_VZ_PGAIN" value="0.25"/>
<define name="THROTTLE_SLEW_LIMITER" value="2" unit="s"/>
<!-- auto pitch inner loop -->
<define name="AUTO_PITCH_PGAIN" value="-0.15"/>
<define name="AUTO_PITCH_IGAIN" value="0.0"/>
<define name="AUTO_PITCH_MAX_PITCH" value="0.25"/>
<define name="AUTO_PITCH_MIN_PITCH" value="-0.25"/>
</section>
−
<section name="HORIZONTAL CONTROL" prefix="H_CTL_">
<define name="COURSE_PGAIN" value="-2.2"/>
<define name="ROLL_MAX_SETPOINT" value="0.7" unit="radians"/>
<define name="PITCH_MAX_SETPOINT" value="0.7" unit="radians"/>
<define name="PITCH_MIN_SETPOINT" value="-0.4" unit="radians"/>
<define name="PITCH_PGAIN" value="-3000"/>
<define name="PITCH_DGAIN" value="1.5"/>
<define name="ELEVATOR_OF_ROLL" value="1250"/>
<define name="ROLL_SLEW" value="0.1"/>
<define name="ROLL_ATTITUDE_GAIN" value="-7000"/>
<define name="ROLL_RATE_GAIN" value="-500"/>
</section>
−
<section name="NAV">
<define name="NAV_PITCH" value="0."/>
<define name="NAV_GLIDE_PITCH_TRIM" value="0"/>
</section>
−
<section name="AGGRESSIVE" prefix="AGR_">
<define name="BLEND_START" value="50"/>
−
<!--
Altitude Error to Initiate Aggressive Climb CANNOT BE ZERO!!
-->
<define name="BLEND_END" value="15"/>
−
<!--
Altitude Error to Blend Aggressive to Regular Climb Modes CANNOT BE ZERO!!
-->
<define name="CLIMB_THROTTLE" value="1."/>
<!-- Gaz for Aggressive Climb -->
<define name="CLIMB_PITCH" value="0.5"/>
<!-- Pitch for Aggressive Climb -->
<define name="DESCENT_THROTTLE" value="0.05"/>
<!-- Gaz for Aggressive Decent -->
<define name="DESCENT_PITCH" value="-0.25"/>
<!-- Pitch for Aggressive Decent -->
<define name="CLIMB_NAV_RATIO" value="0.8"/>
−
<!--
Percent Navigation for Altitude Error Equal to Start Altitude
-->
<define name="DESCENT_NAV_RATIO" value="1.0"/>
</section>
−
<section name="FAILSAFE" prefix="FAILSAFE_">
<define name="DELAY_WITHOUT_GPS" value="2" unit="s"/>
<define name="DEFAULT_THROTTLE" value="0.3" unit="%"/>
<define name="DEFAULT_ROLL" value="0.17" unit="rad"/>
<define name="DEFAULT_PITCH" value="0.08" unit="rad"/>
<define name="HOME_RADIUS" value="100" unit="m"/>
</section>
−
<makefile>
CONFIG = "tiny_2_1.h"
include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
ap.CFLAGS += -DCAM -DMOBILE_CAM -DPOINT_CAM -DPOINT_CAM_PITCH_ROLL
ap.srcs += cam.c point.c traffic_info.c
ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
main_fbw.c main_ap.c main.c
ap.srcs += commands.c
ap.CFLAGS += -DACTUATORS="servos_4017_hw.h" -DSERVOS_4017
ap.srcs += $(SRC_ARCH)/servos_4017_hw.c actuators.c
ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_AUTO1
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#XBEE
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport
-DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport
-DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1
-DDATALINK=PPRZ -DUART1_BAUD=B9600
ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
ap.CFLAGS += -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3
ap.srcs += $(SRC_ARCH)/adc_hw.c
ap.CFLAGS += -DGPS -DUBX -DUSE_UART0 -DGPS_LINK=Uart0 -DUART0_BAUD=B38400
-DGPS_USE_LATLONG
ap.srcs += gps_ubx.c gps.c latlong.c
ap.CFLAGS += -DINFRARED -DALT_KALMAN -DWIND_INFO -DWIND_INFO_RET
ap.srcs += infrared.c estimator.c
ap.CFLAGS += -DNAV -DAGR_CLIMB -DLOITER_TRIM
ap.srcs += nav.c fw_h_ctl.c fw_v_ctl.c
ap.srcs += nav_line.c
ap.srcs += nav_survey_rectangle.c
ap.srcs += bomb.c
ap.srcs += snav.c
# Config for SITL simulation
# include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
sim.ARCH = sitl
sim.TARGET = autopilot
sim.TARGETDIR = autopilot
sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK
-DDOWNLINK_TRANSPORT=IvyTransport -DINFRARED -DNAV -DLED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c
inter_mcu.c
infrared.c fw_h_ctl_a.c fw_v_ctl.c nav.c estimator.c sys_time.c main_fbw.c
main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c
$(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c
$(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DCAM -DMOBILE_CAM -DPOINT_CAM -DPOINT_CAM_PITCH_ROLL
sim.srcs += cam.c point.c traffic_info.c
sim.CFLAGS
+= -DBOARD_CONFIG="tiny.h" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
sim.srcs += nav_line.c nav_survey_rectangle.c
sim.srcs += bomb.c
</makefile>
</airframe>
--- original Nachricht Ende ----
________________________________
_______________________________________________
Paparazzi-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
_______________________________________________
Paparazzi-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
_______________________________________________
Paparazzi-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
twinstar_WINDSTILL_POI.xml
Description: Text Data