Skip to content
This repository has been archived by the owner on Sep 8, 2021. It is now read-only.

JinraeKim/ControlAllocationSwitching.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ControlAllocationSwitching

Notes

Dependencies

  • Julia v1.6.2
  • Others will automatically be installed via Project.toml.

How to reproduce the simulation result?

Case configuration

  • In src/simulation.jl, comment out an undesirable fault case. For example, to perform the case of moderate actuator faults,
# case 1: actuator saturated
# faults = FaultSet(
#                   LoE(3.0, 1, 0.3),  # t, index, level
#                   LoE(5.0, 3, 0.1),
#                  )  # Note: antisymmetric configuration of faults can cause undesirable control allocation; sometimes it is worse than multiple faults of rotors in symmetric configuration.
# case 2: actuator not saturated
faults = FaultSet(
        LoE(3.0, 1, 0.5),  # t, index, level
        LoE(5.0, 3, 0.5),
        )  # Note: antisymmetric configuration of faults can cause undesirable control allocation; sometimes it is worse than multiple faults of rotors in symmetric configuration.

and the case of severe actuator faults,

# case 1: actuator saturated
faults = FaultSet(
                  LoE(3.0, 1, 0.3),  # t, index, level
                  LoE(5.0, 3, 0.1),
                 )  # Note: antisymmetric configuration of faults can cause undesirable control allocation; sometimes it is worse than multiple faults of rotors in symmetric configuration.
# case 2: actuator not saturated
# faults = FaultSet(
#         LoE(3.0, 1, 0.5),  # t, index, level
#         LoE(5.0, 3, 0.5),
#         )  # Note: antisymmetric configuration of faults can cause undesirable control allocation; sometimes it is worse than multiple faults of rotors in symmetric configuration.

Run

Run the function main() in main.jl.

Saved data and figures

  • See data for time response plots and figures for illustrations.

Note

  • Once simulation data are saved in data, running simulation simply reuse the saved data to draw figures. To perform a new simulation, please remove the saved data.

Examples

  • Hexacopter description

ex_screenshot

  • Top view

ex_screenshot

  • Problem description

ex_screenshot

  • Scheme description

ex_screenshot

About

A control allocation switching scheme for the position control of hexacopter considering actuator faults and FDI delay

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages