Mathematically modelling a mechanical system

In summary: I think the octave was mentioned somewhere else. In summary, the conversation discusses modeling a gear system and writing equations for it to extract information about the system. They consider using programming languages and various methods of modeling, such as visual or mathematical. The goal is to determine information such as gear positions, torque, and rpm. Suggestions are made for using programming or Excel to model the system.
  • #1
y33t
107
0
Hi all,

Consider a simple gear system. I want to learn to model this system and write equation for it that any information/state regarding system can be extracted from.

thanks
 
Engineering news on Phys.org
  • #3
I want mathematical modeling not visual. That indicates gear positions, speeds, radius and every other possible variable.
 
  • #4
y33t said:
Hi all,

Consider a simple gear system. I want to learn to model this system and write equation for it that any information/state regarding system can be extracted from.

thanks

Good luck.
What have you considered so far?

To model absolutely any system you want would be quite a tall order.
 
Last edited:
  • #5
Can you do what you want in Excel? Simple and easy to learn basic modelling techniques.
 
  • #6
From the description - to extract any information content of any kind - I doubt it.
Though one could, in principle, make a spreadsheet that complicated.
 
  • #7
I would start by defining a Gear class in some OO language which is created with # of teeth in the gear where you could increment a gear by one gear tooth and be able to connect other gears to it via PropertyEvents to it so that when it turns it one tooth it can notify connected gears so they can increment by one tooth and propagate the chain through all connected gears.

Code:
Gear a = new Gear(5);  // has 5 teeth
Gear b = new Gear(10);

b.connectedTo(a);

while(1) {
    a.increment();     // a is the first gear in the chain so we drive the chain from it by incrementing by one tooth

    print a.currentPos(), b.currentPos();
}
...

The implementation is left to the OP.

Also you'll have to consider the different way gears are connected like tooth to tooth or with a big gear/little gear spindle.
 
  • #8
Simon Bridge said:
Good luck.
What have you considered so far?

To model absolutely any system you want would be quite a tall order.

I considered trying to write lagrangian of it but no luck.

jedishrfu said:
I would start by defining a Gear class in some OO language which is created with # of teeth in the gear where you could increment a gear by one gear tooth and be able to connect other gears to it via PropertyEvents to it so that when it turns it one tooth it can notify connected gears so they can increment by one tooth and propagate the chain through all connected gears.

Code:
Gear a = new Gear(5);  // has 5 teeth
Gear b = new Gear(10);

b.connectedTo(a);

while(1) {
    a.increment();     // a is the first gear in the chain so we drive the chain from it by incrementing by one tooth

    print a.currentPos(), b.currentPos();
}
...

The implementation is left to the OP.

Also you'll have to consider the different way gears are connected like tooth to tooth or with a big gear/little gear spindle.

Programming is easy no problem,i want to write equations to describe the system(continious not discrete).
 
  • #9
So what is your goal? to understand the force needed to drive the system of gears? or the torque output?
 
  • #10
jedishrfu said:
So what is your goal? to understand the force needed to drive the system of gears? or the torque output?

Goal is to determine information such as gear positions,torque and rpm.
 
  • #11
Okay, if you're not going to simulate it via computer then my help will be limited here.

I think you will have to custom derive the equations based on your design and knowledge of the masses, number of teeth... for each gear. You will have to step through the gear train to understand the relationships of how one gear turns another.

You have a few cases to consider in your model:
- the common case of one gear turning another
- the case of one gear stacked onto another
- the case of specialty gearing using chains or slipping gears...

You might be able to model this via a spread sheet using gear angles and gear circumferences ir as one gear moves one tooth it moves a certain angular distance which translates to a distance on the circumference of the gear which means the next gear moves by the same circumference distance and translated back to an equivalent angular distance. (kind of muddled sorry)
 
  • #12
I think you're looking for a state-space model:

x_dot = Ax + Bu
y = Cx + Du

where x is the vector of the system state, u is the vector of inputs, y is the vector of outputs and A, B, C, and D are matrices of system parameters. Have a look here: http://en.wikipedia.org/wiki/State_space_representation. You can also look for a book on system modelling / system dynamics or control systems.

There are other ways to model your system(s). A system of ODE's comes to mind, or transfer function(s). These are just variations on the theme, where the state-space model is a system of ODE's reduced to first order, and the transfer function(s) is a system of ODE's after a Laplace transform.

However, if you're looking to be able to pull any output from your model, the state-space model seems to be most appropriate. The output equation can be set up to provide whatever outputs you want.
 
  • #13
y33t said:
Goal is to determine information such as gear positions,torque and rpm.
What do you have so far?

That information can be defined pretty easily for a simple system. After that it's a matter of scaling it up.

What equations are you using for each? You can find them in any basic mechanical design book (e.g. Shigley's).

Personally, because it would be easier for me, I'd model it simply in Excel, and extend with VBA if needed. Any more than that and I'd probably hop to Matlab or NumPy.
 
  • #14
dawin said:
What do you have so far?

That information can be defined pretty easily for a simple system. After that it's a matter of scaling it up.

What equations are you using for each? You can find them in any basic mechanical design book (e.g. Shigley's).

Personally, because it would be easier for me, I'd model it simply in Excel, and extend with VBA if needed. Any more than that and I'd probably hop to Matlab or NumPy.

Thanks for all suggestions and sorry for late reply. State model will require very high amounts of sampling points to reach a certain precision but it seems that it's the only way of doing actual calculation. Rather then defining/generating each point I want the output derived from a time dependent mathematical description with fixed intervals. Still looking into this.
 
  • #15
y33t said:
Thanks for all suggestions and sorry for late reply. State model will require very high amounts of sampling points to reach a certain precision but it seems that it's the only way of doing actual calculation. Rather then defining/generating each point I want the output derived from a time dependent mathematical description with fixed intervals. Still looking into this.

I don't understand what you mean by needing sampling points, etc. to achieve an accurate description of this system. Could you explain more clearly?

My understanding is that you have some arbitrary gear system that you'd like to mathematically model so that at any point in time, call it [itex]t[/itex], you could define what the position of some gear, [itex]X[/itex], it's present rpm, and the torque it's producing.

This shouldn't be too complex, in theory. How deep into this are you trying to go (i.e., power at shaft vs power at wheels vs. power at...?)? Is this not what you wanted?
 

FAQ: Mathematically modelling a mechanical system

What is mathematical modelling?

Mathematical modelling is the process of creating a mathematical representation of a real-world system. This allows scientists to study and predict the behavior of the system without having to conduct physical experiments.

Why is mathematical modelling important in mechanical systems?

Mathematical modelling is important in mechanical systems because it allows engineers to design and analyze complex systems before physically building them. This saves time, resources, and can help identify potential issues before they arise.

How is a mechanical system mathematically modelled?

A mechanical system is mathematically modelled by using equations and mathematical concepts such as Newton's laws of motion, conservation of energy, and differential equations. These equations are then solved using numerical methods to predict the behavior of the system.

What are some challenges in mathematically modelling a mechanical system?

Some challenges in mathematically modelling a mechanical system include accurately representing all the components and their interactions, choosing appropriate equations and assumptions, and validating the model with experimental data.

What are the benefits of using mathematical modelling in mechanical systems?

The benefits of using mathematical modelling in mechanical systems include improved design and efficiency, cost savings, and the ability to predict and prevent potential failures. It also allows for virtual testing and optimization of systems before physical implementation.

Back
Top