Engee documentation
Notebook

Parameterization of an asynchronous motor with a closed rotor

In this example, using the passport data of an asynchronous motor with a closed-loop rotor, we calculate and simulate an asynchronous motor from the "Electricity" section of the block library.

Introduction

An example of parameterization of an asynchronous motor (AD) with a closed-loop rotor (KZR) was given earlier for constructing a vector диаграммы. Here is a slightly improved code with the passport data of another engine. Subsequent modeling in Engee is performed using the block Asynchronous machine with a short circuit ротором from the Electricity section of the [Physical Modeling] Block library(https://engee.com/helpcenter/stable/ru/getting-started-physmod.html ).

Initial data

For an example of calculation and simulation, let's take the AIR132 S4 engine with a rotation speed of 1455 rpm. His passport details are easy to find on the Internet. Let's write them into the corresponding variables of the code cell below.:

In [ ]:
Pₙ = 7.5e3; Uₙ = 380; f₁ = 50;           # Номинальная мощность [Вт], линейное напряжение [В], частота [В]
nₙ = 1455; p = 2; η = 0.87;              # Номинальная частота вращения [об/мин], число пар полюсов, КПД
cosϕ = 0.83; Iₙ = 15.8;       # Номинальный коэффициент мощности, номинальный ток [А], ток холостого хода [А]
ki = 7; mₚ = 2.3; mₘ = 2.3; J = 0.02;   # Коэффициенты максимального тока, пускового и максимального момента, момент инерции двигателя [кг·м²]

We will make intermediate calculations:

In [ ]:
# Расчёт параметров схемы замещения
U₁ = Uₙ/sqrt(3);                           # Номинальное фазное напряжение статора [В]
n₀ = 60*f₁/p;                             # Синхронная частота вращения [об/мин]
sₙ = (n₀-nₙ)/n₀; sₖ = sₙ*(mₘ+sqrt(mₘ^2-1)); # Номинальное и критическое скольжение
ω₀ = 2π*f₁/p; ωₙ = π*nₙ/30;                # Синхронная и номинальная углова скорость ротора [рад/с]
Mₙ = Pₙ/ωₙ; Mₘ = Mₙ*mₘ; Mₚ = Mₙ*mₚ;           # Номинальный, максимальный и пусковой момент [Н·м]
pₘ = 0.05*Pₙ;                              # Механические потери (5% от Pₙ) [Вт]

R₂ = 1/3*(Pₙ+pₘ)/(Iₙ^2*(1-sₙ)/sₙ);              # Приведённое активное сопротивление роторной обмотки [Ом]

C = 1.02;                   # Конструктивный коэффициент (предварительный)
    
R₁ = U₁*cosϕ*(1-η)/Iₙ - C^2*R₂ - pₘ/(3*Iₙ^2);  # Активное сопротивление статорной обмотки [Ом]

L₁σ = L₂σ = U₁/(4π*f₁*(1+C^2)*ki*Iₙ);          # Индуктивности рассеивания статора и приведённое ротора [Гн]
L₁ = L₂ = U₁/(2π*f₁*Iₙ*sqrt(1-cosϕ^2)-2/3*(2π*f₁*Mₘ*sₙ)/(p*U₁*sₖ)); # Индуктивности статора и приведённое ротора [Гн]
Lₘ = L₁ - L₁σ;                                 # Индуктивность магнитной цепи [Гн]

Let's perform several iterations to refine the design coefficient.:

In [ ]:
for i in 1:5

    C = 1 + L₁σ/Lₘ                             # Конструктивный коэффициент (уточнённый)
    
    R₁ = U₁*cosϕ*(1-η)/Iₙ - C^2*R₂ - pₘ/(3*Iₙ^2);  # Активное сопротивление статорной обмотки [Ом]

    L₁σ = L₂σ = U₁/(4π*f₁*(1+C^2)*ki*Iₙ);          # Индуктивности рассеивания статора и приведённое ротора [Гн]
    L₁ = L₂ = U₁/(2π*f₁*Iₙ*sqrt(1-cosϕ^2)-2/3*(2π*f₁*Mₘ*sₙ)/(p*U₁*sₖ)); # Индуктивности статора и приведённое ротора [Гн]
    Lₘ = L₁ - L₁σ;                                 # Индуктивность магнитной цепи [Гн]

    println("Итерация №$i: Уточнённый конструктивный коэффициент C равен $C")
end

    X₁σ = 2π*f₁*L₁σ;    X₂σ = 2π*f₁*L₂σ        # Реактивные сопротивления рассеивания статора и приведённое ротора [Ом]
    Xₘ = 2π*f₁*Lₘ;
Итерация №1: Уточнённый конструктивный коэффициент C равен 1.0198238619091926
Итерация №2: Уточнённый конструктивный коэффициент C равен 1.0198274225000148
Итерация №3: Уточнённый конструктивный коэффициент C равен 1.0198273505169178
Итерация №4: Уточнённый конструктивный коэффициент C равен 1.0198273519721697
Итерация №5: Уточнённый конструктивный коэффициент C равен 1.0198273519427494

All the necessary parameters for modeling the ADCZR in Engee have been calculated, let's move on to modeling.

The network, load, and engine parameters defined above are also written in reverse вызовах example models. This allows you to run the model with the "default" parameters without first calculating them.

The example model

The example model is a simple chain with a KZR control unit - the motor is connected directly to the network, the ends of the stator winding are connected to a "star", the mechanical load is represented by a source of torque and a moment of inertia.

image.png

Let's run the model using software modeling control and pre-prepared functions for ease of working with the model and simulation results:

In [ ]:
example_path = @__DIR__; # Получаем абсолютный путь к директории, содержащей текущий скрипт
cd(example_path); # Переходим в директорию примера
include("useful_functions.jl"); # Подключаем скрипт Julia со вспомогательными функциями
In [ ]:
simout = get_sim_results("im_parametrization.engee", example_path) #запускаем моделирование
Out[0]:
SimulationResult(
    "Ток статора" => WorkspaceArray{Float64}("im_parametrization/Ток статора")
,
    "Обороты (у.е)" => WorkspaceArray{Float64}("im_parametrization/Обороты (у.е)")

)

We get the variables of the signals recorded in the model:

In [ ]:
t = get_sim_data(simout, "Ток статора", 1, "time");
Is = get_sim_data(simout, "Ток статора", 1, "value");
n = get_sim_data(simout, "Обороты (у.е)", 1, "value");

Let's plot these variables:

In [ ]:
gr(aspectratio=:auto, xlims=:auto, ylims=:auto, size = (900,400))
I_graph = plot(t, Is; label = "I(t)", title = "Ток статора", ylabel = "I [A]", xlabel = "t [с]")
n_graph = plot(t, n; label = "n(t)", title = "Частота вращения ротора", ylabel = "n [у.е.]", xlabel = "t [с]")
plot(I_graph, n_graph)
Out[0]:

In conclusion, we will construct an electromechanical characteristic:

In [ ]:
gr(aspectratio=:auto, xlims=:auto, ylims=:auto, size = (900, 400))
plot(Is, n.*nₙ; label = "n(I)", title = "Электромеханическая харк-ка", ylabel = "n [об/мин]", xlabel = "I [А]")
Out[0]:

Conclusion

In the example, we looked at an example of parameterizing an asynchronous motor model based on passport data from open sources, conducting BP modeling and data collection. Next, you can proceed to the development of an engine control system or simulation of a technological unit with this engine.