Skip to main content

IntegratorActivity

Enum IntegratorActivity 

Source
pub enum IntegratorActivity {
    Inactive,
    HoldIntegration,
    Active,
}
Expand description

The activity level of the PID controller’s integrator.

§Details

During PID operation, the integrator could be paused, or disabled entirely. Pausing the integrator is useful when the integrator has already accumulated a useful amount of error enough to eliminate the steady state error but the system is entering a regime where noisy sensor feedback or rapid setpoint changes could cause the integrator to accumulate unwanted error.

§Example

In an autopilot application, you could set integrator activity to

  • Inactive when the aircraft not under autopilot control at all
  • HoldIntegration when the aircraft is under autopilot control but below an altitude threshold (ground effect causes strong disturbances present in that region only)
  • Active when the aircraft is under autopilot control and above the altitude threshold

Variants§

§

Inactive

The integrator is disabled and the i-term set to zero

§

HoldIntegration

The integrator is paused and the i-term is held at the last value

§

Active

The integrator is active and the i-term is updated

Trait Implementations§

Source§

impl Clone for IntegratorActivity

Source§

fn clone(&self) -> IntegratorActivity

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for IntegratorActivity

Source§

impl Debug for IntegratorActivity

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for IntegratorActivity

Source§

fn eq(&self, other: &IntegratorActivity) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for IntegratorActivity

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.