I am trying to use InstaSPIN-Motion to control a IPMSM to drive a small vehicle. The motor is connected to a gearbox that connects to the drive wheels. I've gotten it mostly working, but I am seeing 2 problems at this point that I think may be related. First, when I accelerate from zero speed, or when I go from driving at a constant speed to a reference speed of zero I am getting a lot of loud chatter from the motor/gearbox. When I finally do get moving there is a very noticable speed oscillation for the first 5 seconds or so that dies out as long as the load and Vref don't change. If either of those change the process seems to start over again.
I tried increasing the SpinTAC bandwidth to deal with the speed oscillation, but that made the chatter at startup even worse. Also this only happens when there is a significant load (The vehicle and I together probably weigh 400lbs+ and we are driving on flat ground). If I put it up on blocks I don't seem to have any problems.
My newest theory is that the problem has something to do with the inertia estimate. I first estimated the inertia with the vehicle up on blocks, with the motor attached to the gearbox. (Inertia = 0.45544, Friction = 1.2742).
I thought the speed oscillation might be because of the large increase in inertia when the vehicle was loaded. I decided instead to do the inertia estimation under normal load (vehicle and passenger weight). When I used these values (Inertia = 40.244544, Friction = 21.8908) the system became unstable at 0 speed with a lot of loud chatter.
I then tried the estimate with the motor not connected to anything (Inertia = 0.159, Friction = 0.8607) This seems to be the best result for the start up chatter, but the speed oscillation in steady state seems to be more pronounced.
One last point, the linkage in the gearbox is such that for the first 1/4 mechanical rotation, until the gears mesh the motor sees almost no load, and on reversal it would be the same thing, there would be 1/4 turn that would see no resistance and then the entire momentum of the system.
I'm thinking that I'm going to need to control the inertia (and possibly bandwidth) setting dynamically due to this "play" in the gears.
Has anyone come across a similar situation before? I'd like to know if I'm heading down the right road before I waste too much more time.
Any insight is welcome.