# State space model problem

Hi,
Maybe this is a straightforward problem/question, but i am not sure about how to proceed in the modeling of the following problem.
Let's consider the following two-dimensional control problem. There are two objects, one larger one (M) and a smaller one (m). The large object is placed at a horizontal surface with the assumption there is no friction. The smaller object is on top of the larger object and again friction is zero. However, the smaller mass is connected to the large mass through a spring and a damper which are in the horizontal plane. The initial position where also spring force is zero is when the vertical center of the small mass is aligned with the center of the large mass. Now, there are only four parameters which define this system. The absolute position of big mass (M), let's call it (x1), the absolute position of the small mass (m), which is( x2), the spring coefficient (k) and the damping coefficient (d). The input of the system we can control is position x1 and the objective is to control the absolute position of x2. The problem is how to write the state space representation and more specifically what to do with x1, because this is the input to the system. In case of most of these simple problems which are presented in text books, the input is NOT position, but force. This would indeed make the state space representation easy, but in reality (my experimental setup) this is not the case. I can only feed a position signal to the linear motor (which is the big mass M in this problem). If I write the input vector u=[ x1 d/dt(x1)], I also have to control the input speed d/dt(x1). But is this correct?
I appreciate all input!
Ewoud
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
On Sun, 09 Mar 2008 22:39:34 -0700, westef wrote:

You're confused, and I'm not sure just what you need to hear to make you less so, so I'm going to shot-gun some impressions for you to consider.
If you really control just the position of the big mass, then it's velocity is immaterial. Just crack open your physics book, make a free body diagram of your little mass, and write the equations with x1 as an input.
If you want to take the linear motor's controller into account then you have to understand its dynamics, or make an educated guess, and include those into your state-space model.
If you want to limit the big mass's velocity by ramping its position command, then you get a bit beyond basic state space modeling. Once you settle on a controller that takes your desired big-mass position and limits it's rate of change you can include that controller's dynamics into your state space model, but if you are using a hard velocity limit then your model will have some hard linearities in it that will be nearly impossible to analyze in a sensible manner using linear systems techniques.
--
Tim Wescott
Control systems and communications consulting
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
On Mar 9, 10:39�pm, snipped-for-privacy@gmail.com wrote:

There must be more than that.

You are right to question this. It should be obvious that you can 't just change the M's location instantly by changing x1. Moving mass M instantly through space between two locations is what happens in star trek transporters. That would require infinite power. Always remember that is takes force/energy to move something. Positions don't move linear motors. You are obviously missing something in your problem. There must be more between the input position and the position of mass M. There must be a control signal to a drive or power unit that creates the force you are talking about. This control signal could be open loop but if the input is a position then there must be a closed loop controller in system. The error between the target and actual position creates the control signal which controls the power or the force depending on how the drive or power unit is set up. If the drive just converts the voltage to current and the force is proportional to the current then you have something like M*x1''+D*x1'=Kpowerunit*u(t). u(t)=Kcontroller*(r(t)-x1(t)). r(t) is the reference or target position, velocity, acceleration.... r(t) can now change instantly between two locations but x1 will have to follow the laws of physics to get to the destination.
This must be a student question. I can see why there are so many confused people out there if this is how control is taught in college. Ewoud, I would at least give you a passing grade for questioning the validity of the problem. Many just do the math without concern for reality.
Peter Nachtwey
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Dear Tim and Peter,
Thank you very much for this nice reply. Indeed i am a student and i was confused by making the transition from theory to practice. In all schoolbook examples, input is force, but for my linear motor, the (reference) input is position, which confused me. To keep things simple i wanted to ignore the dynamics and control of the linear motor, which is clearly a mistake. Indeed there is a closed loop controller present in the linear motor. However, the manual of the linear motor does not provide good details of both controller and working principle. Your answers cleared up the mystery eventhough i still wish the reality of star trek transporters would be available to us :). I guess I still have some work laid out for me.
Warm regards,
Ewoud
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Dear Tim and Peter,
Thank you very much for this nice reply. Indeed i am a student and i was confused by making the transition from theory to practice. In all schoolbook examples, input is force, but for my linear motor, the (reference) input is position, which confused me. To keep things simple i wanted to ignore the dynamics and control of the linear motor, which is clearly a mistake. Indeed there is a closed loop controller present in the linear motor. However, the manual of the linear motor does not provide good details of both controller and working principle. Your answers cleared up the mystery eventhough i still wish the reality of star trek transporters would be available to us :). I guess I still have some work laid out for me.
Warm regards,
Ewoud