> On Thu, 23 Jul 2020 at 09:22, John Dammeyer <jo...@autoartisans.com> wrote: > > > Not ignoring you at all. Just waiting for an idea for the math that leads > > to calculating MAX_ACCELERATION in the ini file given the parameters I've > > mentioned before. > > I think that the problem is treating the motor as an ideal torque > source. It has inertia, it has inductance, it has a non-linear > current-torque graph and it has back-emf.
Agree but think current-torque graph usually is rather linear for electric motors used for servos. It will be non linear then stator iron start to saturate due to high flux density. > I think that the approach most likely to yield success here is a > discrete time-stepping approach, starting with calculating the motor > current. > > At any time dI/dt = (Vs - Vb) / L where Vs is supply voltage, Vb is > back-emf and L is the motor inductance. > We can calculate Vb from the nameplate: Vb = rated-voltage * ( > actual-rpm / rated-rpm ) > > Start from time=0: > Time (t) = 0, current (I) = 0, Vi = 180, motor speed, revs per sec(R) > = 0, Vb = 0, torque (T) = 0 > > I += L * (Vs - Vb) dt Agree. Vs could be changed instantly so jerk could be changed instantly and then there are limitations on all variables. > Use the motor torque rating graph to calculate torque for the new I. > Or calculate proportionally from rated torque / rated current. > > We now know the instantaneous torque from the motor. Part of this goes > to overcome rotary inertia, part goes to overcome linear inertia. > Ideally you match these (which is why servo motors come in low, medium > and high inertia variants) > > Generally speaking, with W = speed in radians/sec > (1) dW/dt = 2pi dR/dt = T/J, so we need an equivalent J (moment of > inertia) for the table linear motion. for a table speed V and > leadscrew pitch P (in mm or in, not tpi): > > (2) dR/dt = dV/dt / P > Inertial force = M.dV/dt > As already derived F/T = 2pi/P > (https://en.wikipedia.org/wiki/Screw_(simple_machine)#Frictionless_mechanical_advantage) > So > M dV/dt / T = 2pi/P > Substitute dV/dt (2) => M P dR/dt = 2pi T / P > Re-arrange to look like (1) > M P dW/dt / 2pi = 2pi T / P > dW/dt = T (4 pi^2 / M P^2) => T / (M P^2 / 4 pi^2) ....... I am > unhappy with this, you rarely see a pi^2 term. > > So now we can say that the equivalent moment of inertia of the table > (Je) = M P^2 / 4pi^2 > > Combining motor inertia (Jm) and table inertia (Je) > > dW / dt = T / (Jm + Je) > > R += (T / 2pi(Jm + Je) ) dt ...... There is an 8 pi ^ 3 in there > now, I think I got something wrong... > > V = PR > > And loop back, calculating the new Vb, the new I, new T and so on. > > I am confident in the physics here, less so in my algebraic > manipulations, specifically the 2pi which I feel should have cancelled > rather than squared somewhere. It might be better to re-work in > radians/sec throughout. > I am a little surprised to see P^2, but that has to be a factor. I had > that cancel and re-thought (2) Consider a pitch of zero..... > > -- > atp > "A motorcycle is a bicycle with a pandemonium attachment and is > designed for the especial use of mechanical geniuses, daredevils and > lunatics." > — George Fitch, Atlanta Constitution Newspaper, 1912 > > > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users