Close



Results 1 to 10 of 255

Threaded View

  1. #11
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,437
    Add printbus on Thingiverse
    Not much point to responding, but since the thread was reactivated...

    It hasn't helped that MakerFarm typically isn't open with specifications for motors they use, or very helpful in explaining how the suggested 0.39 to 0.5V Vref stepper motor driver setting correlated to a motor current value. People were left to figure that out for themselves. Colin's position on the old motors was that users shouldn't worry about how hot the motors got, since stepper motors are designed to run hot (typically 100 degrees C). Unfortunately, the extruder motor in particular was troublesome since it was just a matter of print duration before the printed motor mount or the shaft-mounted small Greg's Wade extruder gear would start to soften.

    For the MakerFarm subforum here, the first news I remember regarding the 9V 0.5A specifications for the old motors was from clough42 in thread MakerFarm Prusa i3 and i3v 66 oz. in. Stepper Motor Specifications

    For those older 0.5A motors, the theoretical optimal Vref adjustment on a stepper motor driver based on the Allegro A4988 chip with the typical 0.05 ohm current sense resistors is I * 0.4 or 0.2V. So, one *might* argue that the build guides (at least older ones; I don't know of current ones still suggest the 0.39v to 0.5v setting) do have the proper value for dual Z motors on one driver, but are overdriving the single motors on X, Y and the extruder.

    However, it's arguably almost impossible to over drive those old motors with too much current. The 18 ohm (I measure about 18.5 ohms on one of my old motors) coil resistance will itself limit the current to 0.66 amps for a 12V source (12V / 18 ohms). Factor in any voltage drop in the wiring from the power supply to the electronics, voltage drop in the 5A polyfuse (RAMPS assumed), and voltage drop in the stepper motor drivers themselves and you're going to be running even closer to that 0.5A motor spec, even though the driver may actually be set to a higher current than that.

    Then there's another major limiting factor with those old motors that applies when you're actually trying to step them, not just letting them sit in holding mode. The unusually high inductance of those motors meant they were slow to respond. Inductance in a circuit limits the rate that current can change; a high motor inductance hinders the ability to instantaneously step the motor current to the set value. I never attempted cranking through the math or monitoring the motor drive with an oscilloscope, but I always figured we had a real bad combination on the Z-motors, with high inductance motors and a high step frequency driven by wanting to adjust Z as fast as we could while being burdened with a ridiculously high 4000 steps per mm for the M5 threaded Z-rods and level 16 microstepping. Here, that inductance is probably kicking in as a limitation even more than the coil DC resistance. For all I know, the stepper driver turned off the step pulse or moved to the next step before the motor current had actually reached what it was intended to.

    Until I put together gcode scripts to specifically test motor movements for the brain-busting thread Marlin Motion Related Configuration.h Settings for MakerFarm i3v, I never felt the stepper motor driver adjustments really did much. Perhaps the adjustment was being overcome by the limitations of either the motor coil resistance or inductance. It took those test scripts to reveal what my motor limitations were.

    I'm aware of at least three different methods for adjusting the motor current limit setting. So far, we've been talking about setting the voltage adjustment for the motor current specification. Some argue that gives you the most torque and the best positional accuracy, especially if you run without microstepping. But I've also seen a position from Pololu (originator of the stepper driver concept) that the voltage adjustment isn't very accurate, and a better way is to actually measure the motor current and set the trimpot as needed to obtain the desired motor current, ignoring the actual voltage. Then there's the camp that suggests ingoring the value and just adjusting the motor currents empirically by how the printer actually works.

    While I was running Marlin and MEGA2560/RAMPS, I ended up in that latter camp. I found that adjusting the motor currents for what were actually quite low values still kept the motors from skipping, would still give me good prints, and coincidentally eliminate resonances and belt flutter that made the printer sound like a crappy toy. I don't remember what the voltage values were on the settings, but I do remember they were quite a bit lower than what they would have normally been set to for a theoretical limit.

    When I migrated to running Smoothieware on Smoothieboard , I don't recall having the issues with resonances and belt flutter like I had with Marlin/Ramps, even with my Kysan motors driven to their limit of 1.5 amps. None the less, I did back off the digital motor current settings to 1.0A as part of some initial futzing and I've just left them set to that for over a year now. I also have my Smoothieboard configured to dedicate a driver for each Z motor, so I don't need to worry about the issue of shared driver current for the dual Z-motors. As mentioned in a prior post, I can always revisit that should I want to use that 5th motor driver for another extruder.
    Last edited by printbus; 07-09-2016 at 06:55 PM. Reason: detail

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •