Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

ENG2009

FACULTY OF ENVIRONMENT, SCIENCE AND ECONOMY

ENGINEERING

2023/2024

Modelling of Engineering Systems Coursework

Date Set: 21st  September 2023

Date Due: 15th December 2023, 12:00 (noon) (TBC)

Method of submission and file type: ELE2 (zip)

Answer all questions.

The actual number of marks associated with this coursework is 100, which translates to 50% of the overall module assessment.

This coursework tests your understanding of modelling and simulation of engineering systems.

Instructions

•  This coursework has two parts:

1)  A PDF file for Question (1) to (7).

2)  A Python program (py file) to implement simulations for Question (8).

•  Both files (PDF and py) must be zipped and must be submitted as a single zip, using ELE2 (seehereandherefor detail).

•  Submission must be made by 12:00 (noon) on the date indicated.

•  Hand written work must be on lined A4 paper, scanned and converted into PDF.

•  Your solutions must include neatly drawn labelled diagrams (where applicable), correct use of mathematical notation, sufficient comments and workings for the

marker(s) to easily follow your process. Where practicable, you should also show how you have checked your answers.

•  Python program must be clearly described with sufficient comments to explain the steps in the program.

•  Marks are awarded for clear, legible presentation of work.

System description: Mechanical mass-spring-damper system

The coursework deals with modelling and analysis of the mechanical mass-spring- damper system shown inFigure 1.

 

Figure 1: Nonlinear mass-spring-damper system

The variables x1 (t) and x2 (t) represent the positions of mass m1  and m2. The force f(t) is the system input, whilst the output is the position x2 (t) .

Here the masses are m1  =  1 kg and m2   = 1 kg and the damper b  =  1 Ns/m. The spring is nonlinear, and the force (N), Fs (t), required to stretch the spring is:

Fs (t) = 2x1(2)(t)                                                                     Eq.(1)

PART A (Modelling)

Question 1 (2 marks)

Provide a real-life example where a general mass-spring-damper system can be found.

Question 2 (10 marks)

Using a free-body-diagram, show that the differential equations representing the system inFigure 1are given by:

 +  + 2x1(2)(t)  = 0                                          Eq.(2)

d2x2 (t) dt2


  

= f(t)

Eq.(3)

Question 3 (10 marks)

Linearise the system for the point x1 (0) =  1, x2 (0) = 0 , f(0) = 0, and show that the linearised differential equations are given by:

d2 δx1 (t)     dδx1 (t)                                        dδx2 (t)                                       Eq.(4)

dt2         +      dt      + 2(1 + 2δx1 (t))       dt       = 0

d2 δx2 (t) dt2

  

δf(t)

Eq.(5)

Note: δx1 (t) = x1 (t)  1, where 1 is the linearisation point.

PART B (Analytical and numerical methods)

Remark: The remaining questions will be based on the linearised system given in Equation Eq.(6)and EquationEq.(7).

For the remaining questions, replace the linear variable δx1 (t) with x1 (t), δx2 (t) in

Eq.(4)and Eq.(5)with x2 (t) and δf(t) with f(t) (i.e. ignoring the linearisation point). In other words, the remaining questions are based on the result of the linearisation

process, which is given

d2x1 (t)

dt2

 + 2(1 + 2x1 (t))  = 0

 +   = f(t)

Eq.(6)

Eq.(7)

Question 4 (6 marks)

Apply Laplace transform on the linearised system in equationsEq.(6)-Eq.(7). Assume

zero initial conditions, i.e. x1 (0) = 0,̇(x)1 (0) = 0, x2 (0) = 0,̇(x)2 (0) = 0.

Question 5 (7 marks)

Using the results from Question (4),

a)  Obtain the transfer function for the linearised system (i.e. equations Eq.(6)and Eq.(7)). Note that the input of the system is f(t) and the output is x2 (t). (5 marks)

b)  What is the order of the system? Justify your answer. (2  marks)

Question 6 (12 marks)

Using the transfer function from Question (5)

a)  Obtain and clearly list all the poles and zeros of the linearised system.

(Remark: there should be two zeros and four poles. Two of the poles are at   s =  −0.3522  ± 1.7214i and one at s = 0. You need to find the other one real pole. You can use calculator to find these values.)

(Remark 2: the location of the remaining pole is between -2 and 0). (4 marks)

b)  Determine if the system is stable. Justify your answer.(3 marks)

c)  Draw the “s-plane” . (5  marks)

Question 7 (3 marks)

Use Final Value Theorem to predict the value of x2 (t) (if available) when the input is a unit impulse. Justify your answer.

Question 8 (50 marks)

Using Equation (6) and Equation (7), create a simulation of the system using both: a)  Euler method, and

b)  Heun (Runge-Kutta second order) method

Assume that the input force f(t) is a unit impulse (duration of 0.1 sec from t  = 0).

For each method (25 marks × 2 = 50 marks):

i.     Write your own Python code that creates the simulation of the system (10 marks)

ii.     Select an appropriate step size ℎ  = Δt. Explain your reasoning.

(Remark: As a guidance, this value must be chosen (iteratively?) such that the steady state error is less than 1%). (7 marks)

iii.     Select an appropriate end time for the simulation. Explain your reasoning. (2 marks)

iv.     Calculate the error (Et ) and percentage error (|Et |%) and discuss the results.   Remark: Use the final value from Question (7) as the exact numerical solution (3 marks)

v.     Plot the output responses (i.e. plot the output position x2 (t) against time in   seconds) and discuss the results in terms of general system behaviour (e.g. underdamped or overdamped etc). (3 marks)

Important remark for Question 8:

-    Write your own Python code to implement both numerical methods to simulate the system.

-    Python program must be clearly described with sufficient comments to explain

the steps in the program, especially addressing items (i) to (v) from Question (8).

-    Use a single Python file to implement both methods.

-    You can use an existing/example program to check your solution.

-    However, do not submit the existing/example program as your submission.

-    To avoid compatibility issues when marking the Python code, please use Spyder   4.2.5 (Python 3.8). (You can download Spyder through Anaconda navigator - see the webpage:https://www.anaconda.com/products/individual).