|
HF-TMC9660 Driver 0.1.0-dev
Hardware Agnostic C++ Driver for the TMC9660
|
Configuration structure for auto-configuring current sensing. More...
#include <tmc9660.hpp>
Public Attributes | |
| float | shuntResistance_mOhm |
| Nominal shunt resistor value in milliohms (e.g. 3.0 for 3 mΩ) | |
| float | expectedPeakCurrent_A |
| Expected peak phase current in amperes (e.g., 3.0 for 3A) | |
| tmc9660::tmcl::MotorType | motorType |
| Motor type (used for default ADC inversion settings) | |
| bool | usePeakScaling |
| If true, use peak scaling (recommended for FOC/BLDC). If false, use RMS. | |
| tmc9660::tmcl::AdcShuntType | shuntType |
| Shunt type configuration. | |
| tmc9660::tmcl::CsaFilter | csaFilter |
| CSA filter time constant. | |
| float | actualShuntR_adc0_mOhm |
| Actual shunt resistance for ADC_I0 in mΩ | |
| float | actualShuntR_adc1_mOhm |
| Actual shunt resistance for ADC_I1 in mΩ | |
| float | actualShuntR_adc2_mOhm |
| Actual shunt resistance for ADC_I2 in mΩ | |
| float | actualShuntR_adc3_mOhm |
| Actual shunt resistance for ADC_I3 in mΩ | |
| std::optional< tmc9660::tmcl::AdcMapping > | phaseU_adcMapping |
| ADC mapping for phase U (UX1). Default: ADC_I0. | |
| std::optional< tmc9660::tmcl::AdcMapping > | phaseV_adcMapping |
| ADC mapping for phase V (VX2). Default: ADC_I1. | |
| std::optional< tmc9660::tmcl::AdcMapping > | phaseW_adcMapping |
| ADC mapping for phase W (WY1). Default: ADC_I2. | |
| std::optional< tmc9660::tmcl::AdcMapping > | phaseY2_adcMapping |
| ADC mapping for phase Y2. Default: ADC_I3. | |
| std::optional< tmc9660::tmcl::AdcInversion > | adc0_inverted |
| Inversion for ADC_I0. Default: based on motor type. | |
| std::optional< tmc9660::tmcl::AdcInversion > | adc1_inverted |
| Inversion for ADC_I1. Default: based on motor type. | |
| std::optional< tmc9660::tmcl::AdcInversion > | adc2_inverted |
| Inversion for ADC_I2. Default: based on motor type. | |
| std::optional< tmc9660::tmcl::AdcInversion > | adc3_inverted |
| Inversion for ADC_I3. Default: based on motor type. | |
| bool | autoCalibrate |
| If true, automatically calibrate ADC offsets after configuration. | |
| uint32_t | calibrationTimeoutMs |
| Timeout in milliseconds for auto-calibration verification. | |
Configuration structure for auto-configuring current sensing.
This struct contains all parameters needed to configure the TMC9660 current sensing system. Most fields have sensible defaults based on the motor type and datasheet recommendations.
| float tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::actualShuntR_adc0_mOhm |
Actual shunt resistance for ADC_I0 in mΩ
| float tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::actualShuntR_adc1_mOhm |
Actual shunt resistance for ADC_I1 in mΩ
| float tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::actualShuntR_adc2_mOhm |
Actual shunt resistance for ADC_I2 in mΩ
| float tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::actualShuntR_adc3_mOhm |
Actual shunt resistance for ADC_I3 in mΩ
| std::optional<tmc9660::tmcl::AdcInversion> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::adc0_inverted |
Inversion for ADC_I0. Default: based on motor type.
| std::optional<tmc9660::tmcl::AdcInversion> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::adc1_inverted |
Inversion for ADC_I1. Default: based on motor type.
| std::optional<tmc9660::tmcl::AdcInversion> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::adc2_inverted |
Inversion for ADC_I2. Default: based on motor type.
| std::optional<tmc9660::tmcl::AdcInversion> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::adc3_inverted |
Inversion for ADC_I3. Default: based on motor type.
| bool tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::autoCalibrate |
If true, automatically calibrate ADC offsets after configuration.
| uint32_t tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::calibrationTimeoutMs |
Timeout in milliseconds for auto-calibration verification.
| tmc9660::tmcl::CsaFilter tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::csaFilter |
CSA filter time constant.
| float tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::expectedPeakCurrent_A |
Expected peak phase current in amperes (e.g., 3.0 for 3A)
| tmc9660::tmcl::MotorType tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::motorType |
Motor type (used for default ADC inversion settings)
| std::optional<tmc9660::tmcl::AdcMapping> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::phaseU_adcMapping |
ADC mapping for phase U (UX1). Default: ADC_I0.
| std::optional<tmc9660::tmcl::AdcMapping> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::phaseV_adcMapping |
ADC mapping for phase V (VX2). Default: ADC_I1.
| std::optional<tmc9660::tmcl::AdcMapping> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::phaseW_adcMapping |
ADC mapping for phase W (WY1). Default: ADC_I2.
| std::optional<tmc9660::tmcl::AdcMapping> tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::phaseY2_adcMapping |
ADC mapping for phase Y2. Default: ADC_I3.
| float tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::shuntResistance_mOhm |
Nominal shunt resistor value in milliohms (e.g. 3.0 for 3 mΩ)
| tmc9660::tmcl::AdcShuntType tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::shuntType |
Shunt type configuration.
| bool tmc9660::TMC9660< CommType >::CurrentSensing::AutoConfig::usePeakScaling |
If true, use peak scaling (recommended for FOC/BLDC). If false, use RMS.