I’m using d5065 odirve bldc motor
I have reduced the gains of motor
odrv0.axis1.controller.config.pos_gain = 13
odrv0.axis1.controller.config.vel_gain = 0.12
odrv0.axis1.controller.config.vel_integrator_gain = 0
still there is a small vibration when holding a position(axle is not standing still)
i tried to tune the motor according to the method given in the tuning section , but according to that vel integrator gain is coming different which is causing oscillation of axle in position control mode at pos 0 and 0.5
but at other
therefore i reduced the vel integrator gain
now in these gain values the vibration of axle is minimum
I guess that the oscillation in position control mode might means your gain is still high. Did you tried set a small pos_gain and vel_gain with vel_integrator_gain as 0.
additionally, I suggest you to check the motor type setting.
motor type high current
is there any calibration needed in encoder ?
I have seen when i search index it goes to a certain position, when i run in position control mode then it stops its rotation just little before then index
did you do any of the following command:
1.
odrv0.axis0.requested_state = AXIS_STATE_MOTOR_CALIBRATION
odrv0.axis0.motor.config.pre_calibrated = True
odrv0.axis0.requested_state = AXIS_STATE_ENCODER_OFFSET_CALIBRATION
odrv0.axis0.requested_state = AXIS_STATE_FULL_CALIBRATION_SEQUENCE
Pretty typical. Is it a slow vibration or fast vibration? For slow vibration, that’s probably cogging. Set the gains higher. For fast or aggressive vibration, set the gains lower.
i tried the anti cogging calibration test, then motor does not complete the full rotation, it either starts and stucks somewhere(oscillates to n fro at certain posotion) or stucks from the begining.
Now i have attached second d5065 motor and applied same parameters but its not working except full calibration sequence and closd loop control.
while doing the anticogging calibration for the second motor according to the steps mentioned in this video
motor almost completed the calibration then jumped.