Fixedwing subsystems
From Paparazzi
This block
<subsystem name="actuators" type="4015" >
replaces
# for Tiny v1.1 ap.CFLAGS += -DACTUATORS=\"servos_4015_MAT_hw.h\" -DSERVOS_4015_MAT ap.srcs += $(SRC_ARCH)/servos_4015_MAT_hw.c ap.srcs += $(SRC_FIXEDWING)/actuators.c
This block
<subsystem name="actuators" type="4017" >
replaces
# for Tiny v2 or Twog v1 ap.CFLAGS += -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017 ap.srcs += $(SRC_FIXEDWING_ARCH)/servos_4017_hw.c $(SRC_FIXEDWING)/actuators.c
This block
<subsystem name="actuators" type="ppm" >
replaces
# to output standard PPM to a R/C receiver # # This is used in the case where you want to directly drive a receiver which has a microcontroller # to do the decoding and driving of the servos (not a 4015 or 4017 decoder chip). # The PPM is output on the SERV_CLK pin. The PPM frame rate, pulse width, and number of channels # can be adjusted in the "servos_ppm_hw.h" file to suit your particular receiver. ap.CFLAGS += -DACTUATORS=\"servos_ppm_hw.h\" -DSERVOS_PPM_MAT ap.srcs += $(SRC_FIXEDWING_ARCH)/servos_ppm_hw.c $(SRC_FIXEDWING)/actuators.c
This block
<subsystem name="airspeed" type="ets" >
replaces
# EagleTree sensor (airspeed) ap.CFLAGS += -DUSE_AIRSPEED_ETS -DUSE_AIRSPEED -DUSE_I2C0 ap.srcs += airspeed.c airspeed_ets.c i2c.c $(SRC_ARCH)/i2c_hw.c sim.CFLAGS += -DUSE_AIRSPEED_ETS -DUSE_AIRSPEED -DUSE_I2C0 sim.srcs += airspeed.c airspeed_ets.c i2c.c $(SRC_ARCH)/i2c_hw.c
This block
<subsystem name="baro" type="ets" >
replaces
# EagleTree sensor (altimeter) ap.CFLAGS += -DUSE_BARO_ETS -DUSE_I2C0 ap.srcs += baro_ets.c i2c.c $(SRC_ARCH)/i2c_hw.c sim.CFLAGS += -DUSE_BARO_ETS -DUSE_I2C0 sim.srcs += baro_ets.c i2c.c $(SRC_ARCH)/i2c_hw.c
This block
<subsystem name="attitude" type="infrared" >
replaces
# attitude via IR sensors # # default values for tiny and twog are: # ADC_IR1 = ADC_1 # ADC_IR2 = ADC_2 # ADC_IR_TOP = ADC_0 # ADC_IR_NB_SAMPLES = 16 # # to change just redefine these before including this file # ap.CFLAGS += -DADC_CHANNEL_IR1=$(ADC_IR1) -DUSE_$(ADC_IR1) ap.CFLAGS += -DADC_CHANNEL_IR2=$(ADC_IR2) -DUSE_$(ADC_IR2) ap.CFLAGS += -DADC_CHANNEL_IR_TOP=$(ADC_IR_TOP) -DUSE_$(ADC_IR_TOP) ap.CFLAGS += -DADC_CHANNEL_IR_NB_SAMPLES=$(ADC_IR_NB_SAMPLES) ap.CFLAGS += -DINFRARED ap.srcs += $(SRC_FIXEDWING)/infrared.c
This block
<subsystem name="autopilot" >
replaces
# # $Id: booz2_autopilot.makefile 4827 2010-04-21 08:02:18Z poine $ # # Copyright (C) 2008 Antoine Drouin # # This file is part of paparazzi. #tin # paparazzi is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # paparazzi is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with paparazzi; see the file COPYING. If not, write to # the Free Software Foundation, 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. # # # All targets need the board config $(TARGET).CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(TARGET).CFLAGS += -DWIND_INFO -DTRAFFIC_INFO sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DINFRARED -DLED sim.srcs += latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.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 ap.CFLAGS += $(FIXEDWING_INC) ap.srcs = $(SRC_FIXEDWING)/main.c ifeq ($(ARCHI), stm32) ap.srcs += lisa/plug_sys.c endif # # Interrupts # ifeq ($(ARCHI), arm7) ap.srcs += $(SRC_ARCH)/armVIC.c else ifeq ($(ARCHI), stm32) ap.srcs += $(SRC_ARCH)/stm32_exceptions.c ap.srcs += $(SRC_ARCH)/stm32_vector_table.c endif # # LEDs # ap.CFLAGS += -DUSE_LED -DLED -DTIME_LED=1 ifeq ($(ARCHI), stm32) ap.srcs += $(SRC_ARCH)/led_hw.c endif # # Systime # ap.CFLAGS += -DUSE_SYS_TIME ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c #ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)' ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./60.))' ifeq ($(ARCHI), stm32) ap.CFLAGS += -DSYS_TIME_LED=1 -DPERIPHERALS_AUTO_INIT endif # # FlyByWire Main # ap.CFLAGS += -DFBW ap.srcs += $(SRC_FIXEDWING)/main_fbw.c # # AutoPilot Main # ap.CFLAGS += -DAP ap.srcs += $(SRC_FIXEDWING)/main_ap.c ap.srcs += $(SRC_FIXEDWING)/estimator.c # # InterMCU & Commands # ap.CFLAGS += -DINTER_MCU ap.srcs += $(SRC_FIXEDWING)/inter_mcu.c ap.srcs += $(SRC_FIXEDWING)/commands.c # # UARTS # ap.srcs += $(SRC_ARCH)/uart_hw.c ifeq ($(ARCHI), arm7) ap.CFLAGS += -DADC ap.srcs += $(SRC_ARCH)/adc_hw.c else ifeq ($(ARCHI), stm32) ap.srcs += lisa/lisa_analog_plug.c endif
This block
<subsystem name="gps" type="ublox_lea4p" >
replaces
# UBlox LEA 4P ap.CFLAGS += -DGPS -DUBX ap.CFLAGS += -DGPS_LINK=Uart$(GPS_UART_NR) ap.CFLAGS += -DUSE_UART$(GPS_UART_NR) ap.CFLAGS += -DUART$(GPS_UART_NR)_BAUD=$(GPS_BAUD) ap.srcs += $(SRC_FIXEDWING)/gps_ubx.c $(SRC_FIXEDWING)/gps.c $(SRC_FIXEDWING)/latlong.c
This block
<subsystem name="gps" type="ublox_lea5h" >
replaces
# UBlox LEA 5H ap.CFLAGS += -DGPS -DUBX -DGPS_USE_LATLONG ap.CFLAGS += -DGPS_LINK=Uart$(GPS_UART_NR) ap.CFLAGS += -DUSE_UART$(GPS_UART_NR) ap.CFLAGS += -DUART$(GPS_UART_NR)_BAUD=$(GPS_BAUD) ap.srcs += $(SRC_FIXEDWING)/gps_ubx.c $(SRC_FIXEDWING)/gps.c $(SRC_FIXEDWING)/latlong.c
This block
<subsystem name="gyro" type="pitch" >
replaces
# additional pitch stabilization with gyro # # this assumes you are already using a roll gyro # # default values for tiny and twog are: # ADC_GYRO_PITCH = ADC_4 # # to change just redefine these before including this file # ap.CFLAGS += -DADC_CHANNEL_GYRO_PITCH=$(ADC_GYRO_PITCH) -DUSE_$(ADC_GYRO_PITCH)
This block
<subsystem name="gyro" type="roll" >
replaces
# roll stabilization with gyro # # default values for tiny and twog are: # ADC_GYRO_ROLL = ADC_3 # ADC_GYRO_NB_SAMPLES = 16 # # to change just redefine these before including this file # ap.CFLAGS += -DADC_CHANNEL_GYRO_ROLL=$(ADC_GYRO_ROLL) -DUSE_$(ADC_GYRO_ROLL) ap.CFLAGS += -DADC_CHANNEL_GYRO_NB_SAMPLES=$(ADC_GYRO_NB_SAMPLES) ap.CFLAGS += -DGYRO -DADXRS150 ap.srcs += $(SRC_FIXEDWING)/gyro.c
This block
... <subsystem name="spi"/> </firmware> <modules> <load name="humid_sht.xml"/> <load name="baro_scp.xml"/> </modules>
replaces
# Payload: Sensirion humidity/temp, VTI pressure/temp ap.srcs += humid_sht.c ap.CFLAGS += -DUSE_HUMID_SHT -DDAT_PIN=3 -DSCK_PIN=2 ap.srcs += baro_scp.c ap.CFLAGS += -DUSE_BARO_SCP
This block
<subsystem name="joystick" >
replaces
# joystick for fixedwings $(TARGET).srcs += joystick.c $(TARGET).CFLAGS += -DUSE_JOYSTICK
This block
<subsystem name="navigation" >
replaces
# Standard fixed wing navigation #add these to all targets $(TARGET).CFLAGS += -DNAV $(TARGET).srcs += $(SRC_FIXEDWING)/nav.c $(TARGET).srcs += $(SRC_FIXEDWING)/traffic_info.c $(TARGET).srcs += $(SRC_FIXEDWING)/nav_survey_rectangle.c $(SRC_FIXEDWING)/nav_line.c
This block
<subsystem name="navigation" type="extra" >
replaces
$(TARGET).CFLAGS += -DNAV $(TARGET).srcs += $(SRC_FIXEDWING)/nav.c $(TARGET).srcs += $(SRC_FIXEDWING)/traffic_info.c $(TARGET).srcs += $(SRC_FIXEDWING)/nav_survey_rectangle.c $(SRC_FIXEDWING)/nav_line.c $(TARGET).srcs += $(SRC_FIXEDWING)/nav_cube.c $(TARGET).srcs += $(SRC_FIXEDWING)/discsurvey.c $(TARGET).srcs += $(SRC_FIXEDWING)/OSAMNav.c $(TARGET).srcs += $(SRC_FIXEDWING)/snav.c
This block
<subsystem name="navigation" type="bomb" >
replaces
ap.srcs += bomb.c sim.srcs += bomb.c
This block
<subsystem name="control" >
replaces
ap.srcs += nav.c fw_h_ctl.c fw_v_ctl.c
This block
<subsystem name="radio" type="control_ppm" >
replaces
ap.CFLAGS += -DRADIO_CONTROL ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
This block
<subsystem name="telemetry" type="transparent" >
replaces
ap.CFLAGS += -DUSE_UART$(MODEM_UART_NR) ap.CFLAGS += -DUART$(MODEM_UART_NR)_BAUD=$(MODEM_BAUD) MODEM_UART = Uart$(MODEM_UART_NR) ap.CFLAGS += -DDOWNLINK -DDOWNLINK_FBW_DEVICE=$(MODEM_UART) -DDOWNLINK_AP_DEVICE=$(MODEM_UART) -DPPRZ_UART=$(MODEM_UART) ap.CFLAGS += -DDOWNLINK_TRANSPORT=PprzTransport -DDATALINK=PPRZ ap.srcs += $(SRC_FIXEDWING)/downlink.c $(SRC_FIXEDWING)/datalink.c $(SRC_FIXEDWING)/pprz_transport.c
This block
<subsystem name="telemetry" type="xbee_api" >
replaces
# XBee modems in API mode ap.CFLAGS += -DUSE_UART$(MODEM_UART_NR) ap.CFLAGS += -DUART$(MODEM_UART_NR)_BAUD=$(MODEM_BAUD) MODEM_UART = Uart$(MODEM_UART_NR) ap.CFLAGS += -DDOWNLINK -DDOWNLINK_FBW_DEVICE=$(MODEM_UART) -DDOWNLINK_AP_DEVICE=$(MODEM_UART) -DXBEE_UART=$(MODEM_UART) ap.CFLAGS += -DDOWNLINK_TRANSPORT=XBeeTransport -DDATALINK=XBEE ap.srcs += $(SRC_FIXEDWING)/downlink.c $(SRC_FIXEDWING)/datalink.c $(SRC_FIXEDWING)/xbee.c
This block
<subsystem name="testing" >
replaces
## TODO This file probably needs to move to the board specific folder # a test program to setup actuators setup_actuators.ARCHDIR = $(ARCHI) setup_actuators.ARCH = arm7tdmi setup_actuators.TARGET = setup_actuators setup_actuators.TARGETDIR = setup_actuators setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0 setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c # a test program to tunnel between both uart tunnel.ARCHDIR = $(ARCHI) tunnel.ARCH = arm7tdmi tunnel.TARGET = tunnel tunnel.TARGETDIR = tunnel tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DLED tunnel.srcs += $(SRC_ARCH)/uart_tunnel.c # A test program to monitor the ADC values test_adcs.ARCHDIR = $(ARCHI) test_adcs.ARCH = arm7tdmi test_adcs.TARGET = test_adcs test_adcs.TARGETDIR = test_adcs test_adcs.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1 -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3 -DUSE_ADC_4 -DUSE_ADC_5 -DUSE_ADC_6 -DUSE_ADC_7 test_adcs.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600 test_adcs.srcs += downlink.c $(SRC_ARCH)/uart_hw.c xbee.c test_adcs.srcs += sys_time.c $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c test_adcs.c # pprz_transport.c # a configuration program to access both uart through usb usb_tunnel_0.ARCHDIR = $(ARCHI) usb_tunnel_0.ARCH = arm7tdmi usb_tunnel_0.TARGET = usb_tunnel_0 usb_tunnel_0.TARGETDIR = usb_tunnel_0 usb_tunnel_0.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_UART0 -DUART0_BAUD=B115200 usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c usb_tunnel_0.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c usb_tunnel_1.ARCHDIR = $(ARCHI) usb_tunnel_1.ARCH = arm7tdmi usb_tunnel_1.TARGET = usb_tunnel_1 usb_tunnel_1.TARGETDIR = usb_tunnel_1 usb_tunnel_1.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_UART1 -DUART1_BAUD=B115200 usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c usb_tunnel_1.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c

