dis Edit

I wonder if anyone could please help me with my OSMC controller. I am a student at the University of Michigan. We're working on a project to virtually link two steering wheels wirelessly. However, instead of the controller acting smoothly, we get a weird rough zone. For example, I command the controller to center the steering wheel by applying a centering torque proportional to how far the wheel is off center. When I grab the wheel and pull it to one side the motor pulls it back and pulls harder as I turn the wheel more. But I get a "rough, vibration" spot at a very specific, consistent angle. Then it goes away when I pass that angle. Almost like the motor controller doesn't like a particular PMW. Any idea what would cause this? Also, when I turn the steering wheel far to one side or the other, the controller just seems to shut off for a few seconds. Does it have built in thermal or current protection?

There is an issue with the driver chip in the OSMC where @ ~ 96-99% PWM is has a drop off in the drive. 95% is ok. 100% is ok. Some where in the middle it looses boots for the high side FETs. OTOH If it's angle related I'd check you position sensor.

If you are using a brushed motor, you may wish to check the commutator change-over point(s). Or, as suggested by Rob, the position sensor (assuming that you are using one). Or, a play in one of the links. Seems to me you first have to determine if this is an artifact of your software, the feedback pot, or the OSMC.

96% issue Edit

If you are using an Arduino you must increase the PWM frequency from the default for smooth operation. Change the Timer divider to 8 for a 4kHz PWM frequency which is fine for most applications but give an audible sound from the motor. Change to divider to 1 with a 9-bit PWM on Timer1 to get a 16kHz freq. You must then watch for the dreaded 96% dead-zone on the HIP4081A.