Quantcast
Channel: Reprap Forum - Stepper Motors, Servo Motors, DC Motors
Viewing all articles
Browse latest Browse all 549

Vibration at low speed (3 replies)

$
0
0
Hi, I'm in need of some advice for how to reduce vibration on my stepper motor when rotating at slow speeds. My circuitry can only provide on/off control using LM298, so I only have a 12V square wave signal. I have a timer interrupting every 600us and then a speed control divider that will increase/decrease time between phase changes. This is the C routine that will perform the step. TOP_SPEED is 40, and at speed 37 it spins perfectly. Lower speeds start introducing vibration, I guess because of some resonance, but I cannot find a frequency that will reduce them. I tried changing timer interval to other values (550, 575, 625, 650, etc) and I also tried doubling the frequency and adding a free state inbetween, so that phase changes have 1 step pulse with no coils energized and allow a smoother settling of each phase, but It also didn't work.
// Private Functions
void StepperMove(tStepperMotor* Motor)
{
	// TMR2 interrumpts every 50us. 
	// StepperMotor_Update is called every ~600us (from main)
	int speed = (TOP_SPEED - Motor->Speed);
	if (++Motor->SpeedCounter >= speed)
	{
		Motor->SpeedCounter = 0;
		
		if (Motor->PendingSteps > 0)
		{
			Step(Motor, FORWARD);
		}
		else if (Motor->PendingSteps < 0)
		{
			Step(Motor, BACKWARD);
		}
		else
		{
			Motor->Moving = NO;
			Motor->Hold.Status = ShouldRelease;
		}
	}
}
A third option I thought would be to energize using a PWM (simulated using Timer) with an increasing Duty Cycle, starting with a very small duty and then increasing it up to 100%. At speed 10, that would mean (40-10)x600us = 18ms between steps. Slowly energizing the phase using a duty cycle would mean slower current build-up and less transitory...? At higher speeds that would not matter because I'd be stepping faster than what the inertia overshoot might affect my rotation and phase changes. (?)

Any ideas about this? Thank you for any help!

Viewing all articles
Browse latest Browse all 549

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>