Copter: Support for decacopters

This commit is contained in:
murata 2020-09-16 23:58:57 +09:00 committed by Andrew Tridgell
parent a46333eff5
commit dcda0c48ca
2 changed files with 6 additions and 1 deletions

View File

@ -831,7 +831,7 @@ const AP_Param::GroupInfo ParametersG2::var_info[] = {
// @Param: FRAME_CLASS // @Param: FRAME_CLASS
// @DisplayName: Frame Class // @DisplayName: Frame Class
// @Description: Controls major frame class for multicopter component // @Description: Controls major frame class for multicopter component
// @Values: 0:Undefined, 1:Quad, 2:Hexa, 3:Octa, 4:OctaQuad, 5:Y6, 6:Heli, 7:Tri, 8:SingleCopter, 9:CoaxCopter, 10:BiCopter, 11:Heli_Dual, 12:DodecaHexa, 13:HeliQuad // @Values: 0:Undefined, 1:Quad, 2:Hexa, 3:Octa, 4:OctaQuad, 5:Y6, 6:Heli, 7:Tri, 8:SingleCopter, 9:CoaxCopter, 10:BiCopter, 11:Heli_Dual, 12:DodecaHexa, 13:HeliQuad, 14:Deca
// @User: Standard // @User: Standard
// @RebootRequired: True // @RebootRequired: True
AP_GROUPINFO("FRAME_CLASS", 15, ParametersG2, frame_class, DEFAULT_FRAME_CLASS), AP_GROUPINFO("FRAME_CLASS", 15, ParametersG2, frame_class, DEFAULT_FRAME_CLASS),

View File

@ -466,6 +466,8 @@ MAV_TYPE Copter::get_frame_mav_type()
return MAV_TYPE_COAXIAL; return MAV_TYPE_COAXIAL;
case AP_Motors::MOTOR_FRAME_DODECAHEXA: case AP_Motors::MOTOR_FRAME_DODECAHEXA:
return MAV_TYPE_DODECAROTOR; return MAV_TYPE_DODECAROTOR;
case AP_Motors::MOTOR_FRAME_DECA:
return MAV_TYPE_DECAROTOR;
} }
// unknown frame so return generic // unknown frame so return generic
return MAV_TYPE_GENERIC; return MAV_TYPE_GENERIC;
@ -501,6 +503,8 @@ const char* Copter::get_frame_string()
return "TAILSITTER"; return "TAILSITTER";
case AP_Motors::MOTOR_FRAME_DODECAHEXA: case AP_Motors::MOTOR_FRAME_DODECAHEXA:
return "DODECA_HEXA"; return "DODECA_HEXA";
case AP_Motors::MOTOR_FRAME_DECA:
return "DECA";
case AP_Motors::MOTOR_FRAME_UNDEFINED: case AP_Motors::MOTOR_FRAME_UNDEFINED:
default: default:
return "UNKNOWN"; return "UNKNOWN";
@ -520,6 +524,7 @@ void Copter::allocate_motors(void)
case AP_Motors::MOTOR_FRAME_OCTA: case AP_Motors::MOTOR_FRAME_OCTA:
case AP_Motors::MOTOR_FRAME_OCTAQUAD: case AP_Motors::MOTOR_FRAME_OCTAQUAD:
case AP_Motors::MOTOR_FRAME_DODECAHEXA: case AP_Motors::MOTOR_FRAME_DODECAHEXA:
case AP_Motors::MOTOR_FRAME_DECA:
default: default:
motors = new AP_MotorsMatrix(copter.scheduler.get_loop_rate_hz()); motors = new AP_MotorsMatrix(copter.scheduler.get_loop_rate_hz());
motors_var_info = AP_MotorsMatrix::var_info; motors_var_info = AP_MotorsMatrix::var_info;