Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use dynamic control allocation by default & cleanup old airframes #19990

Merged
merged 10 commits into from
Aug 12, 2022

Conversation

bkueng
Copy link
Member

@bkueng bkueng commented Jul 29, 2022

This sets SYS_CTRL_ALLOC=1, does some minor UX improvements and removes various old airframes.

Removed airframes for sitl:

  • if750a
  • solo
  • iris_ctrlalloc
  • typhoon_h480_ctrlalloc

Removed airframes:

  • 1000_rc_fw_easystar.hil
  • 10015_tbs_discovery
  • 10016_3dr_iris
  • 10018_tbs_endurance
  • 13001_caipirinha_vtol
  • 13002_firefly6
  • 13004_quad+_tailsitter
  • 13005_vtol_AAERT_quad
  • 13006_vtol_standard_delta
  • 13007_vtol_AAVVT_quad
  • 13008_QuadRanger
  • 13009_vtol_spt_ranger
  • 13012_convergence
  • 13014_vtol_babyshark
  • 13050_generic_vtol_octo
  • 14001_tri_y_yaw+
  • 14002_tri_y_yaw-
  • 15001_coax_heli
  • 2105_maja
  • 2200_mini_talon
  • 3031_phantom
  • 3032_skywalker_x5
  • 3033_wingwing
  • 3036_pigeon
  • 3100_tbs_caipirinha
  • 4003_qavr5
  • 4009_qav250
  • 4019_x500_v2
  • 4030_3dr_solo
  • 4031_3dr_quad
  • 4051_s250aq
  • 4072_draco
  • 4080_zmr250
  • 4090_nanomind
  • 4100_tiltquadrotor
  • 50003_aion_robotics_r1_rover

Let me know if one of these should still be kept.
The remaining ones are all updated (I did not test all of them).

@junwoo091400 can you test if mantis works with this?

@bkueng bkueng requested review from dagar and sfuhrer July 29, 2022 11:59
@sfuhrer
Copy link
Contributor

sfuhrer commented Jul 29, 2022

Only looked at the VTOLs and FWs.

I would also remove

  • 13003_quad_tailsitter (if required we can add a generic quad tailsitter, I would rather not)

But I would keep:

  • 13014_vtol_babyshark (afaik it ships with a Pixhawk so falls under "off the shelf" PX4 compatible frames, and compared to most other vehicles it is still sold)

param set-default CA_SV_CS3_TRQ_Y -0.5000
param set-default CA_SV_CS3_TYPE 8
param set-default CA_SV_CS4_TRQ_Y 1.0000
param set-default CA_SV_CS4_TYPE 12
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The wheel would need to be separated from the torque channel as otherwise the allocation of yaw torque is no longer correct, no?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be a matter of scale, but certainly something to check.
I agree it should be separate, it could eventually be a separate yaw wheel controller, and for now we could pass through the yaw control signal as output function?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and for now we could pass through the yaw control signal as output function?

Yep that's prob the best we can do right now. It falls into the same category as flaps, spoilers, airbrakes, landing gear, but for now it's fine to pass it in with the yaw control signal as long as it's handles separately from the rudder.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added the steering wheel as a separate type in be9fd21d1e60e00a2cae339293d6beb9de16e69f. It's in the category "control surfaces" for now, we may want to add a separate category for it. And also think about how the category would be names for rovers, and if there we also want to move away from feeding the "yaw" command through a matrix.
Also added a "Single Channel Aileron" type, as it is quite common to have the same control signal for both ailerons.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

@bkueng
Copy link
Member Author

bkueng commented Aug 2, 2022

Ok, keeping 13014_vtol_babyshark and removing 13003_quad_tailsitter.
@sfuhrer do you want to add A-Tail CS types?

@sfuhrer
Copy link
Contributor

sfuhrer commented Aug 3, 2022

Ok, keeping 13014_vtol_babyshark and removing 13003_quad_tailsitter. @sfuhrer do you want to add A-Tail CS types?

Yes make sense, done 780a393

sfuhrer
sfuhrer previously approved these changes Aug 3, 2022
ROMFS/px4fmu_common/init.d/airframes/13014_vtol_babyshark Outdated Show resolved Hide resolved
bkueng and others added 7 commits August 8, 2022 10:51
Before it was set to left aileron, but the torque values were all 0.
Removes some airframes:
- if750a
- solo
- iris_ctrlalloc
- typhoon_h480_ctrlalloc
Removes some airframes:
- 1000_rc_fw_easystar.hil
- 10015_tbs_discovery
- 10016_3dr_iris
- 10018_tbs_endurance
- 13001_caipirinha_vtol
- 13002_firefly6
- 13003_quad_tailsitter
- 13004_quad+_tailsitter
- 13005_vtol_AAERT_quad
- 13006_vtol_standard_delta
- 13007_vtol_AAVVT_quad
- 13008_QuadRanger
- 13009_vtol_spt_ranger
- 13012_convergence
- 13050_generic_vtol_octo
- 14001_tri_y_yaw+
- 14002_tri_y_yaw-
- 15001_coax_heli
- 2105_maja
- 2200_mini_talon
- 3031_phantom
- 3032_skywalker_x5
- 3033_wingwing
- 3036_pigeon
- 3100_tbs_caipirinha
- 4003_qavr5
- 4009_qav250
- 4019_x500_v2
- 4030_3dr_solo
- 4031_3dr_quad
- 4051_s250aq
- 4072_draco
- 4080_zmr250
- 4090_nanomind
- 4100_tiltquadrotor
- 50003_aion_robotics_r1_rover
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
This is the control surface type for airframes that have only a
single aileron servo or have the ailerons on a single output channel.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
Directly use yaw controls for it, and don't add it to the allocation matrix,
as that would have an effect on rudder scaling if the wheel also would have
a yaw effectiveness.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
sfuhrer
sfuhrer previously approved these changes Aug 9, 2022
@junwoo091400
Copy link
Contributor

Added a small fix for Mantis' FTP, which now enables the QGC UI for Actuators Tab for Mantis using control allocation.

@bkueng bkueng merged commit d7a962b into main Aug 12, 2022
@bkueng bkueng deleted the make_ca_default branch August 12, 2022 07:43
@farhangnaderi
Copy link
Contributor

@bkueng X500 V2 is the newest frame actually from Holybro. Would be cool if it is kept. I can add the required control alloc if needed.

@bkueng
Copy link
Member Author

bkueng commented Aug 24, 2022

Sure, that's fine. Can you do a PR?

@farhangnaderi
Copy link
Contributor

Sure, that's fine. Can you do a PR?

Done: #20107

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants