mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-06-06 16:58:48 +08:00
cleaning actuators
This commit is contained in:
@@ -194,10 +194,11 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
ap.CFLAGS += -DMODEM_BAUD=B57600
|
||||
|
||||
include $(PAPARAZZI_SRC)/conf/autopilot/booz2_common.makefile
|
||||
include $(CFG_BOOZ)/booz2_autopilot.makefile
|
||||
@@ -205,7 +206,6 @@ include $(CFG_BOOZ)/booz2_test_progs.makefile
|
||||
|
||||
include $(CFG_BOOZ)/booz2_simulator_nps.makefile
|
||||
|
||||
ap.CFLAGS += -DMODEM_BAUD=B57600
|
||||
include $(CFG_BOOZ)/subsystems/booz2_radio_control_ppm.makefile
|
||||
include $(CFG_BOOZ)/subsystems/booz2_actuators_buss.makefile
|
||||
include $(CFG_BOOZ)/subsystems/booz2_imu_b2v1.makefile
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
+126
-15
@@ -1,5 +1,80 @@
|
||||
<airframe name="booz2_a5">
|
||||
|
||||
<servos min="0" neutral="0" max="0xff">
|
||||
<servo name="back_right" no="0" min="0" neutral="0" max="255"/>
|
||||
<servo name="back_left" no="1" min="0" neutral="0" max="255"/>
|
||||
<servo name="center_right" no="2" min="0" neutral="0" max="255"/>
|
||||
<servo name="center_left" no="3" min="0" neutral="0" max="255"/>
|
||||
<servo name="front_right" no="4" min="0" neutral="0" max="255"/>
|
||||
<servo name="front_left" no="5" min="0" neutral="0" max="255"/>
|
||||
</servos>
|
||||
|
||||
<commands>
|
||||
<axis name="PITCH" failsafe_value="0"/>
|
||||
<axis name="ROLL" failsafe_value="0"/>
|
||||
<axis name="YAW" failsafe_value="0"/>
|
||||
<axis name="THRUST" failsafe_value="0"/>
|
||||
</commands>
|
||||
|
||||
<section name="BUSS_BLMC" prefix="BUSS_BLMC_">
|
||||
<define name="ADDR" value="{ 0x52, 0x54, 0x56, 0x58, 0x5A, 0X5C }"/>
|
||||
</section>
|
||||
|
||||
<section name="SUPERVISION" prefix="SUPERVISION_">
|
||||
<define name="FRONT_ROTOR_CW" value="1"/>
|
||||
<define name="MIN_MOTOR" value="2"/>
|
||||
<define name="MAX_MOTOR" value="210"/>
|
||||
<define name="TRIM_A" value="0"/>
|
||||
<define name="TRIM_E" value="0"/>
|
||||
<define name="TRIM_R" value="0"/>
|
||||
</section>
|
||||
|
||||
<section name="IMU" prefix="IMU_">
|
||||
|
||||
<define name="GYRO_P_CHAN" value="1"/>
|
||||
<define name="GYRO_Q_CHAN" value="0"/>
|
||||
<define name="GYRO_R_CHAN" value="2"/>
|
||||
|
||||
<define name="GYRO_P_NEUTRAL" value="31489"/>
|
||||
<define name="GYRO_Q_NEUTRAL" value="31814"/>
|
||||
<define name="GYRO_R_NEUTRAL" value="32752"/>
|
||||
|
||||
<define name="GYRO_P_SENS" value=" 1.01" integer="16"/>
|
||||
<define name="GYRO_Q_SENS" value="-1.01" integer="16"/>
|
||||
<define name="GYRO_R_SENS" value="-1.01" integer="16"/>
|
||||
|
||||
|
||||
<define name="ACCEL_X_CHAN" value="5"/>
|
||||
<define name="ACCEL_Y_CHAN" value="3"/>
|
||||
<define name="ACCEL_Z_CHAN" value="4"/>
|
||||
|
||||
<define name="ACCEL_X_SENS" value="-3.49637365" integer="16"/>
|
||||
<define name="ACCEL_Y_SENS" value="-3.48686012" integer="16"/>
|
||||
<define name="ACCEL_Z_SENS" value="-3.55363744" integer="16"/>
|
||||
|
||||
<define name="ACCEL_X_NEUTRAL" value="29174"/>
|
||||
<define name="ACCEL_Y_NEUTRAL" value="29720"/>
|
||||
<define name="ACCEL_Z_NEUTRAL" value="28629"/>
|
||||
|
||||
|
||||
<define name="MAG_X_CHAN" value="0"/>
|
||||
<define name="MAG_Y_CHAN" value="1"/>
|
||||
<define name="MAG_Z_CHAN" value="2"/>
|
||||
|
||||
<define name="MAG_X_SENS" value="5.20834273" integer="16"/>
|
||||
<define name="MAG_Y_SENS" value="-5.22061499" integer="16"/>
|
||||
<define name="MAG_Z_SENS" value="-2.69279936" integer="16"/>
|
||||
|
||||
<define name="MAG_X_NEUTRAL" value="-164"/>
|
||||
<define name="MAG_Y_NEUTRAL" value="3"/>
|
||||
<define name="MAG_Z_NEUTRAL" value="42"/>
|
||||
|
||||
|
||||
<define name="BODY_TO_IMU_PHI" value="ANGLE_BFP_OF_REAL(RadOfDeg(0.))"/>
|
||||
<define name="BODY_TO_IMU_THETA" value="ANGLE_BFP_OF_REAL(RadOfDeg(0.))"/>
|
||||
<define name="BODY_TO_IMU_PSI" value="ANGLE_BFP_OF_REAL(RadOfDeg(0.))"/>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<makefile>
|
||||
@@ -10,8 +85,8 @@ TARGET_DIR = ~
|
||||
|
||||
SRC_FMS=fms
|
||||
|
||||
test_spi.ARCHDIR = omap
|
||||
test_spi.srcs=$(SRC_FMS)/test_spi.c
|
||||
|
||||
include $(PAPARAZZI_SRC)/conf/autopilot/booz2_common.makefile
|
||||
|
||||
FLASH_MODE = IAP
|
||||
lpc_test_spi.ARCHDIR = arm7
|
||||
@@ -25,24 +100,60 @@ lpc_test_spi.CFLAGS += -DUSE_LED
|
||||
lpc_test_spi.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
|
||||
lpc_test_spi.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
|
||||
|
||||
#
|
||||
# test BUSS BLDC
|
||||
#
|
||||
lpc_test_motors.ARCHDIR = arm7
|
||||
lpc_test_motors.ARCH = arm7tdmi
|
||||
lpc_test_motors.TARGET = lpc_test_motors
|
||||
lpc_test_motors.TARGETDIR = lpc_test_motors
|
||||
|
||||
test_telemetry.ARCHDIR = omap
|
||||
test_telemetry.srcs=$(SRC_FMS)/test_telemetry.c
|
||||
test_telemetry.CFLAGS += -I$(GLIB_INC)
|
||||
test_telemetry.LDFLAGS += -L$(GLIB_LIB) -lglib-2.0
|
||||
lpc_test_motors.CFLAGS += -DPERIPHERALS_AUTO_INIT
|
||||
lpc_test_motors.CFLAGS += -DBOARD_CONFIG=\"boards/booz2_v1_0.h\" -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
|
||||
lpc_test_motors.srcs += $(SRC_BOOZ_TEST)/booz2_test_buss_bldc_hexa.c
|
||||
lpc_test_motors.CFLAGS += -DUSE_LED
|
||||
lpc_test_motors.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
|
||||
lpc_test_motors.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
|
||||
|
||||
lpc_test_motors.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
|
||||
lpc_test_motors.srcs += $(SRC_ARCH)/uart_hw.c
|
||||
|
||||
lpc_test_motors.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
|
||||
lpc_test_motors.srcs += downlink.c pprz_transport.c
|
||||
|
||||
lpc_test_motors.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart1
|
||||
lpc_test_motors.srcs += $(SRC_BOOZ)/booz2_datalink.c
|
||||
|
||||
lpc_test_motors.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=150 -DI2C0_SCLH=150 -DI2C0_VIC_SLOT=10
|
||||
lpc_test_motors.srcs += i2c.c $(SRC_ARCH)/i2c_hw.c
|
||||
|
||||
|
||||
|
||||
#
|
||||
#
|
||||
#
|
||||
overo_test_telemetry.ARCHDIR = omap
|
||||
overo_test_telemetry.srcs=$(SRC_FMS)/overo_test_telemetry.c
|
||||
overo_test_telemetry.CFLAGS += -I$(GLIB_INC)
|
||||
overo_test_telemetry.LDFLAGS += -L$(GLIB_LIB) -lglib-2.0
|
||||
|
||||
ap.ARCHDIR = $(ARCHI)
|
||||
ap.LDFLAGS = -lm -levent -lrt
|
||||
ap.CFLAGS += -I$(SRC_FMS)
|
||||
ap.srcs=$(SRC_FMS)/fms_test_datalink.c
|
||||
ap.CFLAGS += -DDOWNLINK
|
||||
ap.CFLAGS += -DDOWNLINK_TRANSPORT=UdpTransport
|
||||
ap.srcs += $(SRC_FMS)/fms_network.c
|
||||
ap.srcs += $(SRC_FMS)/udp_transport.c
|
||||
ap.srcs += downlink.c
|
||||
#
|
||||
#
|
||||
#
|
||||
overo_test_spi.ARCHDIR = omap
|
||||
overo_test_spi.srcs=$(SRC_FMS)/overo_test_spi.c
|
||||
|
||||
|
||||
|
||||
#ap.ARCHDIR = $(ARCHI)
|
||||
#ap.LDFLAGS = -lm -levent -lrt
|
||||
#ap.CFLAGS += -I$(SRC_FMS)
|
||||
#ap.srcs=$(SRC_FMS)/fms_test_datalink.c
|
||||
#ap.CFLAGS += -DDOWNLINK
|
||||
#ap.CFLAGS += -DDOWNLINK_TRANSPORT=UdpTransport
|
||||
#ap.srcs += $(SRC_FMS)/fms_network.c
|
||||
#ap.srcs += $(SRC_FMS)/udp_transport.c
|
||||
#ap.srcs += downlink.c
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -180,7 +180,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
@@ -177,7 +177,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
@@ -185,7 +185,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
# ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
@@ -185,7 +185,7 @@
|
||||
|
||||
<makefile>
|
||||
ARCH=lpc21
|
||||
BOARD_CFG = \"booz2_board_v1_0.h\"
|
||||
BOARD_CFG = \"boards/booz2_v1_0.h\"
|
||||
|
||||
# prevents motors from ever starting
|
||||
#ap.CFLAGS += -DKILL_MOTORS
|
||||
|
||||
@@ -124,6 +124,7 @@ ap.CFLAGS += -DSTABILISATION_ATTITUDE_REF_H=\"stabilization/booz_stabilization_a
|
||||
ap.srcs += $(SRC_BOOZ)/stabilization/booz_stabilization_attitude_ref_euler_int.c
|
||||
ap.srcs += $(SRC_BOOZ)/stabilization/booz_stabilization_attitude_euler_int.c
|
||||
|
||||
ap.CFLAGS += -DUSE_NAVIGATION
|
||||
ap.srcs += $(SRC_BOOZ)/guidance/booz2_guidance_h.c
|
||||
ap.srcs += $(SRC_BOOZ)/guidance/booz2_guidance_v.c
|
||||
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
#ifndef CONFIG_DEMO_H
|
||||
#define CONFIG_DEMO_H
|
||||
|
||||
/* Master oscillator freq. */
|
||||
#define FOSC (12000000)
|
||||
/* PLL multiplier */
|
||||
#define PLL_MUL (5)
|
||||
/* CPU clock freq. */
|
||||
#define CCLK (FOSC * PLL_MUL)
|
||||
/* Peripheral bus speed mask 0x00->4, 0x01-> 1, 0x02 -> 2 */
|
||||
#define PBSD_BITS 0x02
|
||||
#define PBSD_VAL 2
|
||||
/* Peripheral bus clock freq. */
|
||||
#define PCLK (CCLK / PBSD_VAL)
|
||||
|
||||
#define LED_1_BANK 1
|
||||
#define LED_1_PIN 24
|
||||
|
||||
|
||||
#endif /* CONFIG_DEMO_H */
|
||||
@@ -0,0 +1,11 @@
|
||||
<settings>
|
||||
<dl_settings>
|
||||
|
||||
<dl_settings NAME="BUSS BLDC">
|
||||
<dl_setting var="motor" min="0" step="1" max="5" module="test/booz2_test_buss_bldc_hexa"
|
||||
values="back_right|back_left|center_right|center_left|front_right|front_left"/>
|
||||
<dl_setting var="thrust" min="0" step="1" max="200"/>
|
||||
</dl_settings>
|
||||
|
||||
</dl_settings>
|
||||
</settings>
|
||||
+3
-3
@@ -21,8 +21,8 @@
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef BOOZ2_SUPERVISION_H
|
||||
#define BOOZ2_SUPERVISION_H
|
||||
#ifndef BOOZ_SUPERVISION_H
|
||||
#define BOOZ_SUPERVISION_H
|
||||
|
||||
#include "airframe.h"
|
||||
|
||||
@@ -117,4 +117,4 @@
|
||||
|
||||
|
||||
|
||||
#endif /* BOOZ2_SUPERVISION_H */
|
||||
#endif /* BOOZ_SUPERVISION_H */
|
||||
@@ -31,7 +31,7 @@
|
||||
#include "i2c.h"
|
||||
|
||||
#include "airframe.h"
|
||||
#include "booz2_supervision.h"
|
||||
#include "actuators/booz_supervision.h"
|
||||
|
||||
/*
|
||||
We're not using the airframe file "mixer" facility
|
||||
@@ -68,7 +68,7 @@
|
||||
buss_twi_blmc_idx = 0; \
|
||||
buss_twi_blmc_status = BUSS_TWI_BLMC_STATUS_BUSY; \
|
||||
ActuatorsBussTwiBlmcSend(); \
|
||||
}
|
||||
}
|
||||
#else
|
||||
#define ActuatorsCommit() { \
|
||||
if ( buss_twi_blmc_status == BUSS_TWI_BLMC_STATUS_IDLE) { \
|
||||
@@ -76,8 +76,8 @@
|
||||
buss_twi_blmc_status = BUSS_TWI_BLMC_STATUS_BUSY; \
|
||||
ActuatorsBussTwiBlmcSend(); \
|
||||
} \
|
||||
else \
|
||||
twi_blmc_nb_err++; \
|
||||
else \
|
||||
twi_blmc_nb_err++; \
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -85,7 +85,8 @@
|
||||
|
||||
#define BUSS_TWI_BLMC_STATUS_IDLE 0
|
||||
#define BUSS_TWI_BLMC_STATUS_BUSY 1
|
||||
#define BUSS_TWI_BLMC_NB 4
|
||||
#define BUSS_TWI_BLMC_NB 4
|
||||
//(sizeof(buss_twi_blmc_addr)/sizeof(uint8_t))
|
||||
extern uint8_t buss_twi_blmc_motor_power[BUSS_TWI_BLMC_NB];
|
||||
extern volatile bool_t buss_twi_blmc_status;
|
||||
extern uint8_t twi_blmc_nb_err;
|
||||
|
||||
@@ -68,7 +68,7 @@ void dl_parse_msg(void) {
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if defined USE_NAVIGATION
|
||||
case DL_BLOCK :
|
||||
{
|
||||
if (DL_BLOCK_ac_id(dl_buffer) != AC_ID) break;
|
||||
@@ -94,6 +94,7 @@ void dl_parse_msg(void) {
|
||||
DOWNLINK_SEND_WP_MOVED_LTP(&wp_id, &enu.x, &enu.y, &enu.z);
|
||||
}
|
||||
break;
|
||||
#endif /* USE_NAVIGATION */
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,14 +26,23 @@
|
||||
#include "init_hw.h"
|
||||
#include "sys_time.h"
|
||||
#include "interrupt_hw.h"
|
||||
#include "downlink.h"
|
||||
#include "datalink.h"
|
||||
|
||||
#include "booz2_test_buss_bldc_hexa.h"
|
||||
|
||||
#define NB_MOTORS 6
|
||||
static const uint8_t motor_addr[] = {0x52, 0x54, 0x56, 0x58, 0x5A, 0x5C};
|
||||
uint8_t motor = 0;
|
||||
uint8_t thrust = 10;
|
||||
static bool_t i2c_done;
|
||||
|
||||
//static uint8_t addr = 0x52; /* 1 : back right */
|
||||
//static uint8_t addr = 0x54; /* 2 : back left bad balanced */
|
||||
//static uint8_t addr = 0x56; /* 3 : center right not so well balanced */
|
||||
static uint8_t addr = 0x58; /* 4 : center left */
|
||||
//static uint8_t addr = 0x58; /* 4 : center left */
|
||||
//static uint8_t addr = 0x5A; /* 5 : front right */
|
||||
//static uint8_t addr = 0x5C; /* 6 : front left */
|
||||
static bool_t i2c_done;
|
||||
|
||||
static inline void main_init( void );
|
||||
static inline void main_periodic_task( void );
|
||||
@@ -56,12 +65,14 @@ static inline void main_init( void ) {
|
||||
}
|
||||
|
||||
static inline void main_periodic_task( void ) {
|
||||
uint8_t thrust = 20;
|
||||
i2c0_buf[0] = thrust;
|
||||
i2c0_transmit(addr, 1, &i2c_done);
|
||||
i2c0_transmit(motor_addr[motor], 1, &i2c_done);
|
||||
|
||||
RunOnceEvery(128, { DOWNLINK_SEND_ALIVE(16, MD5SUM);});
|
||||
|
||||
}
|
||||
|
||||
static inline void main_event_task( void ) {
|
||||
|
||||
DatalinkEvent();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user