Я пытаюсь смоделировать лебедку как двигатель с регулируемой скоростью, который работает через коробку передач, чтобы поднять массу. Выход редуктора представляет собой барабан, который вращается для накопления троса.
Я чувствую себя комфортно, преобразовывая массу в момент инерции, и мне также удобно преобразовывать этот момент инерции (выходная сторона) в момент инерции, "видимый" двигателем (входная сторона), с передаточным отношением коробки передач . С простой симуляцией у меня нет проблем с написанием уравнений движения.
Мое осложнение наступает, когда я хочу моделировать «растяжение» в кабеле. Я думал, что смогу сделать это, просто вставив пружину произвольной жесткости между барабаном лебедки и массой, как показано ниже.
С этой моделью, ради симуляции, я предполагаю, что знаю «высоту барабана», которая будет означать, насколько далеко повернутый барабан умножается на радиус барабана и высоту нагрузки. Усилие пружины будет , но как мне применить это к двигателю ?
У меня есть модель двигателя:
The interaction I'm interested in studying occurs when the PI controller is tuned to the anticipated load inertia , which would be found with the motor, gearbox, drum, and load mass, but the system actually "sees" the springy-mass.
Simplification is done by setting the ratio equal to , giving:
(Note I can leave as variable because the ratio can be set to whatever I want via as long as isn't zero.)
So, in an ideal world, where the value of "total" inertia is known in advance, the pole cancels, and the entire system reduces to:
Finally, , so, with algebra:
So, kind of sorry to shotgun so much detail, but I wanted to impress on anyone reading that I feel confident with all of my steps so far and that I have spent considerable effort working on this problem. Now, again to my question - I want to simulate stretch in the cable between the drum and the load, but I'm not sure how to use the spring force to modulate load inertia.
One thought I had was to try to fake an "equivalent mass", by assuming:
but this doesn't feel right, and I'm not sure what I would use for acceleration .
I'm frustrated to be this far along on the problem and getting stumped by what seems like should be an easy issue, but I really can't think of a way to approach this problem. I think if I could frame it correctly I could work out the mechanics, but it's the force-to-inertia conversion I feel like needs to be made that has me stumped.
Finally, for the record, I have also tried back-tracking my motor model to include the load torque. This gives seemingly-reasonable results, but in the end I subtract the load torque from the motor torque to get net torque, then apply that net torque to the total inertia to get motor acceleration. That feeds on down the line and, again, I'm not sure that I'm treating total inertia correctly.
Ответы:
Let's first compute the model. The control design is a separate effort.
The torque applied to the drum isnTM , where n is the gear ratio and TM is the output produced by the motor. TM=KTi(t) , where KT is a proportionality constant and i(t) is the motor current.
Now we can write the equations for the mechanical system:
Here m is the mass and k is the spring constant.
To write the motor equation, we need to determine the back emf. The back emf is proportional to the motor speed and to write it in terms of the drum speed we multiply it also with the gear ratio n.
HereV(t) is the applied voltage, L is the inductance, R is the resistance, and Kb is the proportionality constant.
These three equations haveV(t) as the input and i(t) ,θ(t) , and y(t) as states/outputs. This can be used to obtain the state-space model or transfer-function model. (The following were obtained using Mathematica)
Now the control design can begin...
Update
Since there has been some confusion about the inertia to be used, let me clarify the answer. I am going to assume one set of gears in the gearbox - a gear with inertiaJ1 on the drum side and a gear with inertia J2 on the motor side.
In the answer above I neglected the inertia of the gears. The only change that needs to be done now is modify the second equation as follows.
If the equation to describe the transient dynamics of the motor shaft is also desired then it is an additional equation involvingθM (rotation of the motor shaft), the inertia J2 , etc. However, this is not necessary if the objective is to control the drum position.
источник
Stretch in the spring deltaY=A.sin(ω.t)=A.sin(√k/m).t
So the delta Y is not constant but if you are interested in delt Y_max
deltaYmax=m/k , by Hooks law.
−ω2.t
ω=(√k/m)
Because your system doesn't accelerate except at the beginning and end assuming the pulley starts and stops suddenly that's you maximum. Any gradual start/stop acceleration will have to be subtracted from the acceleration of spring which is
looking at free body diagram of massK(ϕ.r−y)
As you noted force is
divide both sides by K we get:
I hope this will help.
источник
I realize this is an old thread, and I am not sure how deep of a dive you finally took on this, but one thing I don't see accounted for in your equations is drum/cable friction. This will be small, and like the accumulated mass of the wound steel wire rope you did not include, it may not be on your list. The cable could be pre-stretched and pre-loaded, however any movement between the cable and drum due to cable stretch will also encounter friction. In my industry (theater rigging, stage machinery design), the groove contacts a greater area than a flat drum application, and we usually have additional friction along the redirect sheaves and mules in the lineset to account for especially in 2:1 or 4:1 mechanical advantage systems.
источник
I think the approach of Suba Thomas gives a good model: start with the sum of forces at the load and the sum of moments at the drum. Then determine the needed motor model.
The initial motor model of chuck needs a stiff system where a single value for the moment of inertia can be calculated, while the goal of the model is:
One note about the inertia in the drum moment equation of Suba Thomas: Do not forget the inertia of the motor increased to the drum. Depending on the chosen motor, its influence can be significant. So I would chooseJ=Jmotor∗i2+Jdrum
источник