Skip to main content

HomingMethod

Enum HomingMethod 

Source
pub enum HomingMethod {
Show 18 variants HardStopPos, HardStopNeg, IntegratedLimitSwitchPos, IntegratedLimitSwitchNeg, IntegratedHomeSensorPosRt, IntegratedHomeSensorNegRt, IntegratedHomeSensorPosFt, IntegratedHomeSensorNegFt, CurrentPosition, Integrated(i8), LimitSwitchPosRt, LimitSwitchNegRt, LimitSwitchPosFt, LimitSwitchNegFt, HomeSensorPosRt, HomeSensorNegRt, HomeSensorPosFt, HomeSensorNegFt,
}
Expand description

Homing methods for CiA 402 servo drives.

Integrated methods delegate to the drive’s built-in CiA 402 homing mode (SDO 0x6098). The drive uses its own sensor inputs.

Software methods (no Integrated prefix) are implemented by the Axis struct, which monitors AxisView sensor signals for edge triggers and captures the home position.

Variants§

§

HardStopPos

Hard stop in positive direction (torque foldback). CiA 402 code: -1.

§

HardStopNeg

Hard stop in negative direction (torque foldback). CiA 402 code: -2.

§

IntegratedLimitSwitchPos

Drive’s integrated positive limit switch. CiA 402 code: 18.

§

IntegratedLimitSwitchNeg

Drive’s integrated negative limit switch. CiA 402 code: 17.

§

IntegratedHomeSensorPosRt

Drive’s integrated home sensor, positive direction, rising edge. CiA 402 code: 19.

§

IntegratedHomeSensorNegRt

Drive’s integrated home sensor, negative direction, rising edge. CiA 402 code: 21.

§

IntegratedHomeSensorPosFt

Drive’s integrated home sensor, positive direction, falling edge. CiA 402 code: 22.

§

IntegratedHomeSensorNegFt

Drive’s integrated home sensor, negative direction, falling edge. CiA 402 code: 20.

§

CurrentPosition

Current position as home (no motor movement). CiA 402 code: 37.

§

Integrated(i8)

Arbitrary CiA 402 homing method code (vendor-specific or non-standard).

§

LimitSwitchPosRt

Move positive, home on rising edge of positive limit switch.

§

LimitSwitchNegRt

Move negative, home on rising edge of negative limit switch.

§

LimitSwitchPosFt

Move positive, home on falling edge of positive limit switch.

§

LimitSwitchNegFt

Move negative, home on falling edge of negative limit switch.

§

HomeSensorPosRt

Move positive, home on rising edge of home sensor.

§

HomeSensorNegRt

Move negative, home on rising edge of home sensor.

§

HomeSensorPosFt

Move positive, home on falling edge of home sensor.

§

HomeSensorNegFt

Move negative, home on falling edge of home sensor.

Implementations§

Source§

impl HomingMethod

Source

pub fn is_integrated(&self) -> bool

True if the drive handles this method internally (hardware-delegated).

Source

pub fn cia402_code(&self) -> i8

CiA 402 method code for hardware-delegated methods.

§Panics

Panics if called on a software-implemented method. Check is_integrated() first.

Source

pub fn requires_motion(&self) -> bool

True if this method involves motor movement.

Trait Implementations§

Source§

impl Clone for HomingMethod

Source§

fn clone(&self) -> HomingMethod

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for HomingMethod

Source§

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

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

impl PartialEq for HomingMethod

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for HomingMethod

Source§

impl Eq for HomingMethod

Source§

impl StructuralPartialEq for HomingMethod

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<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> Same for T

Source§

type Output = T

Should always be Self
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V