trimming motor current

Home Forums TinyG TinyG Support trimming motor current

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #7421

    I am trying to just spin one (each) motor slowly and individually in order to trim the current using the trimpots. I’m using coolterm and connecting ok but i’m not sure how to command one motor at a time to run

    is there a way i can like say :
    motor1: spin 400 steps speed: 8rps
    then
    motor2: spin 400 steps speed: 8rps
    then
    motor3: spin 400 steps speed: 8rps

    … to test each motor? i’m trying with

    G0 X10 and motor 1 moves
    g0 z10 and motor 2 moves (shouldn’t this be motor three? )
    and g0 x-10 and nothing happens

    i’m setting my parameters as follows which i think is correct (my motors are 400 steps per rev).

    $1ma=1
    $2ma=2
    $3ma=3
    $1sa=0.9
    $2sa=0.9
    $3sa=0.9
    $1tr=62.83185
    $2tr=62.83185
    $3tr=62.83185
    $1mi=1
    $2mi=1
    $3mi=1
    $1po=0
    $2po=0
    $3po=0
    $1pm=1
    $2pm=1
    $3pm=1
    #7453
    cmcgrath5035
    Moderator

    Sorry, I missed your question in the queue.

    Motor settings should look like:
    (hint – developers use MACOS, zero indexing)
    [1ma] m1 map to axis 0 [0=X,1=Y,2=Z…]
    [2ma] m2 map to axis 1 [0=X,1=Y,2=Z…]
    [3ma] m3 map to axis 2 [0=X,1=Y,2=Z…]

    Are you sure you sure physical motors are wired as you report?

    I know of no easy way to get a particular rotational speed , such as 8rps.

    If you just want to slow them down, Try
    G1 X10 F800
    and keep lowering F800 until you get the speed you want.

    G0 moves are made at $xvm (for x axis)
    G1 moves are made at “F” speed (usually specked in the Gcode ), Fspeed is the desired machining speed,
    Same for G2 and G3 (arc) moves.

    Note – these are big moves for a typical machine. Your motors are not connected, just spinning in air, correct?

    If you really want 8rps, then do some calculations
    1 rev = 62.83 (mm?) (are you sure, implies a rather large pulley?)
    8 revs = 8*62.83 mm = 502.64mm
    So G1 X502.64 F30158 [F is in mm/min (502.64*60)]
    Should cause X motor to rotate 8 times in one second.

    In one second, you won’t notice tinyG jerk and third order control.
    But if you issue
    G1 X502.64 F3015.8
    it should take 10 seconds to move 8 revolutions.
    You should see tinyG ramp the motor up and ramp motor down (3rd order motion rather than on-off linear)

    Hope this helps

    • This reply was modified 9 years, 7 months ago by cmcgrath5035.
    #7504

    hi – thanks –
    i dont care what speed it spins,

    I’m just trying to use coolterm to pipe in a value so 1 motor can spin individually or all at once in order to trim the current pots.

    I can’t get any motor to spin at a constant speed through cool terminal

    I CAN send a text file over from the sample g code examples.

    but when I type in : “G1 X502.64 F3015.8” through CoolTerm :

    “{“r”:{},”f”:[1,0,19,78]}” is returned but nothing spins.

    #7506
    cmcgrath5035
    Moderator

    Hmmmm, a couple things.
    First, if you are curious, you can decode the “{“r”:{},”f”:[1,0,19,78]}” to say the Gcode command sent was executed with status=0, == OK.
    The “f” structure is discussed here:

    Perhaps it would help if you posted a set of your parameters, rather than do Q&A one at a time. Posting this way is easier on my end:

    Please clarify your comment:

    I can’t get any motor to spin at a constant speed through cool terminal

    Do motors move at all? You used the term ‘constant’; a G1 X500 F200 command should cause the x motor to ramp up to F200 rotation speed then ramp down to zero speed after it computes that the Xaxis has moved 500mm.
    I would call that movement, but not ‘constant speed’.
    Or do you mean ‘I want the motor to start up and keep spinning until I stop it…?’

    When you send the sample G Code file using CoolTerm, does anything happen?
    Do you see green LEDs flicker near the motor connectors?
    Do you see streaming position updates coming back via Coolterm as the G code runs?

    Do you have your Axes disable by chance?
    $xam, $yam and $Zam should all be = 1 [standard]

    Have you reviewed

    I sort of think so, based on your questions, but just checking.
    Having just re-read that, I see it as assuming that the motors are connected to your machine. If you run the exercise of trimming current with the motors free spinning, you will want to rerun the procedure once the motors are under machine load.
    But, free spinning experiments is a good way to get some experience with minimal downside (like driving an axis into a side rail with an incorrect command)

    #7510
    alden
    Member

    Try a series of moves going back and forth, like
    g1 f1000 x1000
    g1 f1000 x0

    Or simply
    g1 f1000 x1000
    x0
    y1000
    y0
    z1000
    z0

    …etc

    You can enter them individually or in the Coolterm “Send String” dialog in the Communications menu item. Do you get any movement?

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.