paparazzi-devel
[Top][All Lists]
Advanced

[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

Attachment: twinstar_WINDSTILL_POI.xml
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]