Thanks for the reply
And you have to copy-paste the calculation of flux_linkage from the MXLEMMINGObserverSensor contructor,
Does this mean I need to copy this to the main code?
The motor is an OEM Technics so I used this code to measure R and L which was different to what was measured with my LCR bridge . KV I measured the BEMF by manually spinning the motor to 33rpm
#include <SimpleFOC.h>
// Stepper motor & BLDC driver instance
BLDCMotor motor = BLDCMotor(11);
// SimpleFOCShield
BLDCDriver3PWM driver = BLDCDriver3PWM(A7, A6, A5, A3); // STM32
// inline current sensor instance
// ACS712-05B has the resolution of 0.185mV per Amp
LowsideCurrentSense current_sense = LowsideCurrentSense(185.0f, PA1, PA2);
void setup() {
// use monitoring with serial
Serial.begin(115200);
// enable more verbose output for debugging
// comment out if not needed
SimpleFOCDebug::enable(&Serial);
// driver config
// power supply voltage [V]
driver.voltage_power_supply = 20;
driver.init();
// link driver
motor.linkDriver(&driver);
// link current sense and the driver
current_sense.linkDriver(&driver);
// current sense init and linking
current_sense.init();
motor.linkCurrentSense(¤t_sense);
// initialise motor
motor.init();
// find the motor parameters
motor.characteriseMotor(3.5f);
_delay(1000);
}
void loop() {
// do nothing
_delay(1000);
}
I’ll try MotionControlType Torque