HF-TMC9660 Driver
Hardware Agnostic C++ Driver for the TMC9660
Loading...
Searching...
No Matches
TMC9660::Protection Struct Reference

Subsystem for motor protection features. More...

#include <TMC9660.hpp>

Collaboration diagram for TMC9660::Protection:

Public Member Functions

bool configureVoltage (uint16_t overVoltThreshold, uint16_t underVoltThreshold) noexcept
 Configure overvoltage and undervoltage protection thresholds.
 
bool configureTemperature (float warningDegC, float shutdownDegC) noexcept
 Configure over-temperature protection thresholds.
 
bool setOvercurrentEnabled (bool enabled) noexcept
 Enable or disable overcurrent protection on the driver outputs.
 
bool configureI2t (uint16_t timeConstant1_ms, float continuousCurrent1_A, uint16_t timeConstant2_ms, float continuousCurrent2_A) noexcept
 Configure the two I²t monitoring windows for motor current.
 
bool resetI2tState () noexcept
 Reset the integrated I²t sum accumulators.
 

Private Member Functions

 Protection (TMC9660 &parent) noexcept
 

Private Attributes

TMC9660driver
 

Friends

class TMC9660
 

Detailed Description

Subsystem for motor protection features.

Constructor & Destructor Documentation

◆ Protection()

TMC9660::Protection::Protection ( TMC9660 parent)
inlineexplicitprivatenoexcept

Member Function Documentation

◆ configureI2t()

bool TMC9660::Protection::configureI2t ( uint16_t  timeConstant1_ms,
float  continuousCurrent1_A,
uint16_t  timeConstant2_ms,
float  continuousCurrent2_A 
)
noexcept

Configure the two I²t monitoring windows for motor current.

Parameters
timeConstant1_msTime constant for first window in milliseconds.
continuousCurrent1_AContinuous current limit for first window in amps.
timeConstant2_msTime constant for second window in milliseconds.
continuousCurrent2_AContinuous current limit for second window in amps.
Returns
true if configuration was successful.

◆ configureTemperature()

bool TMC9660::Protection::configureTemperature ( float  warningDegC,
float  shutdownDegC 
)
noexcept

Configure over-temperature protection thresholds.

The TMC9660 has an internal temperature sensor and supports an external analog temperature sensor. This function sets warning and shutdown thresholds for the internal sensor.

Parameters
warningDegCWarning threshold in °C for chip temperature.
shutdownDegCShutdown (fault) threshold in °C for chip temperature.
Returns
true if set successfully.

◆ configureVoltage()

bool TMC9660::Protection::configureVoltage ( uint16_t  overVoltThreshold,
uint16_t  underVoltThreshold 
)
noexcept

Configure overvoltage and undervoltage protection thresholds.

Parameters
overVoltThresholdOver-voltage warning threshold in units of 0.1V.
underVoltThresholdUnder-voltage warning threshold in units of 0.1V.
Returns
true if thresholds were set successfully.

◆ resetI2tState()

bool TMC9660::Protection::resetI2tState ( )
noexcept

Reset the integrated I²t sum accumulators.

Returns
true if reset was successful.

◆ setOvercurrentEnabled()

bool TMC9660::Protection::setOvercurrentEnabled ( bool  enabled)
noexcept

Enable or disable overcurrent protection on the driver outputs.

This controls the internal gate driver overcurrent detection (e.g., comparators) for various FETs.

Parameters
enabledTrue to enable overcurrent protection (shut down drivers on overcurrent), false to disable.
Returns
true if command was sent successfully.

Friends And Related Symbol Documentation

◆ TMC9660

friend class TMC9660
friend

Member Data Documentation

◆ driver

TMC9660& TMC9660::Protection::driver
private

The documentation for this struct was generated from the following files: