Hello. I was working on Odrive Arduino interface and I ran into a problem in velocity control: The motor stops after running for a couple seconds. Usually, if the velocity counts is really high, like 100000 counts, motor only runs for 3-5 seconds; it runs a little longer if speed is lower, but will eventually stop.
This problem also exist when I run velocity_control_mode in Anaconda Prompt. There is no error at all. Could someone help me solve this issue? Thank you
In [2]: dump_errors(odrv0)
Axis0:
axis: no error
motor: no error
encoder: no error
controller: no error
Axis1:
axis: no error
motor: no error
encoder: no error
controller: no error
This also happens in current control. The motor runs and stops, no error. I still cannot find the reason.
It is weird you’re not getting any errors when the motor stops after running for a while.
maybe try this in odrivetool console and see if either shadow_count jumps or stops changing.
Also I think if you provide more information about the motor and the encoder you are using (maybe picture of your setup) then someone might be able to help.
Old thread but @KEVIN_HAN did you ever figure this out? I’m running into a similar problem with a 10.5" scooter motor, 15 pole pairs, external encoder. I can get position and trapezoidal moves working flawlessly and smoothly forever, but velocity and ramp velocity yield at best a second or two of motion. Shadow_count seems to reflect movement. vel_estimate, though, seems to be flatlined, but that may just be a scale problem in this chart; I did see numbers from a print statement. On the chart below you see the beginning of a smooth motion and then it just sort of peters out.
I’ll try to upload some of the other values as soon as I can. Sorry for the uninformative chart, I use a mac so I had to prepare a VM in order to use the live plotter and I’m just learning to use it.