upd
BIN
course2/sem3/labs/lab3.02_done/assets/1.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
16
course2/sem3/labs/lab3.02_done/assets/1.svg
Normal file
@@ -0,0 +1,16 @@
|
||||
<svg width="236" height="64" viewBox="0 0 236 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_145_1646)">
|
||||
<path d="M61.8346 28.1432H79.1647V63.5715H91.8565V28.1432H109.512V16.809H61.8346V28.1432Z" fill="#1D1D1B"/>
|
||||
<path d="M57.7332 16.7128H44.927V63.5715H57.7332V16.7128Z" fill="#1D1D1B"/>
|
||||
<path d="M0.338501 16.7128V63.5715H13.1447V16.7128H0.338501Z" fill="#1D1D1B"/>
|
||||
<path d="M32.455 16.7128L13.1445 63.5715H26.3468L44.9179 16.7128H39.8219H32.455Z" fill="#1D1D1B"/>
|
||||
<path d="M169.979 16.7128H168.28H160.904L148.195 47.5584L135.486 16.7128H128.119H123.023H113.605V63.5715H126.411V25.2659L141.594 63.5715H154.796L169.979 25.2659V63.5715H182.785V16.7128H173.367H169.979Z" fill="#1D1D1B"/>
|
||||
<path d="M51.3257 -3.83679e-06C50.088 0.024117 48.885 0.410962 47.8677 1.11198C46.8504 1.813 46.0642 2.79696 45.6076 3.94038C45.1511 5.0838 45.0446 6.33573 45.3015 7.53906C45.5584 8.7424 46.1673 9.84353 47.0518 10.7043C47.9363 11.565 49.0569 12.147 50.273 12.3771C51.4891 12.6073 52.7465 12.4755 53.8875 11.9982C55.0285 11.5208 56.0022 10.7192 56.6864 9.69404C57.3705 8.66884 57.7347 7.4657 57.7332 6.23558C57.7147 4.56475 57.0294 2.96955 55.828 1.80038C54.6266 0.631208 53.0073 -0.0163285 51.3257 -3.83679e-06Z" fill="#1D1D1B"/>
|
||||
<path d="M222.919 40.7991C222.752 48.0054 217.894 52.8417 210.844 52.8417H210.58C206.786 52.7717 203.662 51.5561 201.541 49.3435C199.419 47.1309 198.328 43.86 198.398 39.977C198.316 38.3586 198.58 36.7412 199.173 35.2317C199.767 33.7223 200.676 32.3553 201.841 31.221C203.006 30.0868 204.399 29.2112 205.93 28.6521C207.461 28.0931 209.094 27.8633 210.721 27.9781C212.342 27.9213 213.959 28.1928 215.472 28.7761C216.985 29.3594 218.363 30.2424 219.522 31.3714C220.695 32.6415 221.6 34.1327 222.182 35.7567C222.764 37.3807 223.012 39.1043 222.911 40.8253L222.919 40.7991ZM223.914 19.9934C219.994 17.7426 215.538 16.5769 211.011 16.6176C209.835 16.6204 208.659 16.6876 207.49 16.8187C200.616 17.5709 195.089 20.4219 191.058 25.2932C187.273 29.8671 185.636 35.4468 186.059 42.3295C186.217 47.0961 187.932 51.6821 190.944 55.3954C195.784 61.2724 202.386 64.0797 211.812 64.2284H211.918H212.023L213.247 64.071C214.89 63.8888 216.519 63.5966 218.123 63.1964C222.931 62.0028 227.227 59.3047 230.374 55.5004C233.437 51.6638 235.166 46.9446 235.303 42.0497C235.717 32.0185 231.888 24.5586 223.923 19.9934" fill="#1D1D1B"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_145_1646">
|
||||
<rect width="235" height="64" fill="white" transform="translate(0.338501)"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.4 KiB |
BIN
course2/sem3/labs/lab3.02_done/assets/2.png
Normal file
|
After Width: | Height: | Size: 71 KiB |
BIN
course2/sem3/labs/lab3.02_done/assets/3.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
course2/sem3/labs/lab3.02_done/assets/4.png
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
course2/sem3/labs/lab3.02_done/assets/5.png
Normal file
|
After Width: | Height: | Size: 76 KiB |
7249
course2/sem3/labs/lab3.02_done/report.pdf
Normal file
178
course2/sem3/labs/lab3.02_done/report.typ
Normal file
@@ -0,0 +1,178 @@
|
||||
#import "@preview/tablex:0.0.9": tablex, colspanx, rowspanx
|
||||
#set text(size: 1.3em)
|
||||
#set page(footer: context {
|
||||
if counter(page).get().first() > 1 [
|
||||
#align(left)[
|
||||
#counter(page).display("1")
|
||||
]
|
||||
]
|
||||
})
|
||||
#table(stroke: none, fill: none, columns: 2, gutter: 70pt)[#text(size: 0.7em)[#align(bottom)[#align(center)[*Университет ИТМО \ Физико-технический мегафакультет \ Физический факультет*]]]][#image("assets/1.svg")]
|
||||
|
||||
#line(length: 100%)
|
||||
|
||||
#align(center)[
|
||||
#table(stroke: none, fill: none, columns: 2, column-gutter: 50pt)[
|
||||
#align(left)[Группа: _К3221_]
|
||||
][
|
||||
#align(left)[К работе допущен: ]
|
||||
][
|
||||
#align(left)[Студент: _Дощенников Никита_]
|
||||
][
|
||||
#align(left)[Работа выполнена: ]
|
||||
][
|
||||
#align(left)[Преподаватель: _Попов Антон Сергеевич_]
|
||||
][
|
||||
#align(left)[Отчет принят: ]
|
||||
]
|
||||
]
|
||||
|
||||
#align(center)[= Рабочий протокол и отчет по \ лабораторной работе №3.02]
|
||||
|
||||
#line(length: 100%)
|
||||
#line(length: 100%)
|
||||
|
||||
=== Цель работы
|
||||
|
||||
1. Исследовать зависимость полной мощности, полезной мощности, мощности потерь, падения напряжения во внешней цепи и КПД источника от силы тока в цепи.
|
||||
2. Найти значения параметров источника: электродвижущей силы и внутреннего сопротивления, оценить их погрешность.
|
||||
|
||||
=== Введение
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
image("assets/1.png"),
|
||||
caption: [Принципиальная электрическая схема лабораторной установки],
|
||||
supplement: [Рис.]
|
||||
) <p1>
|
||||
]
|
||||
|
||||
=== Основные формулы
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
table(columns: 2, inset: 7pt)[*Формула*][*Пояснение*][$U = cal(E) - I r$][Закон Ома для замкнутой цепи][$I_K = cal(E)/r$][Сила тока короткого замыкания цепи][$P = I^2 R + I^2 r$][Полная мощность тока][$P_R = cal(E) I - I^2 r$][Полезная мощность тока][$P_(R max) = frac(cal(E)^2, 4 r) $][Максимум полезной мощности в нагрузке][$eta = P_R/P = frac(U I, cal(E) I) = U/cal(E)$][КПД тока][$eta = frac(cal(E) - I r, cal(E)) = 1 - frac(I r, cal(E))$][КПД тока][$R = frac(I_K, cal(E))$][Внутреннее сопротивление источника ЭДС],
|
||||
supplement: [Табл.],
|
||||
caption: [Основные формулы]
|
||||
) <t1>
|
||||
]
|
||||
|
||||
=== Обработка результатов
|
||||
|
||||
===== График зависимости $U(I)$
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
image("assets/2.png"),
|
||||
supplement: [Рис.],
|
||||
caption: [График зависимости $U(I)$]
|
||||
) <p2>
|
||||
]
|
||||
|
||||
По графику на @p2 видно, что зависимость действительно имеет линейный характер.
|
||||
|
||||
===== Поиск параметров зависимости
|
||||
|
||||
Так как зависимость имеет линейный характер, ее можно представить в виде $y = A x + B$, где:
|
||||
|
||||
- $|A| = r$
|
||||
- $B = cal(E)$
|
||||
|
||||
С помощью метода наименьших квадратов нашел параметры полученной зависимости:
|
||||
|
||||
- $r = 663.583$
|
||||
- $cal(E) = 9.921$
|
||||
|
||||
Найдем погрешности.
|
||||
|
||||
- погрешность $r$.
|
||||
|
||||
$
|
||||
Sigma r eq sqrt(frac(N, N sum I_i^2 - (sum I_i)^2) dot frac(sum(U_i - (cal(E) - r I_i))^2, N - 2))
|
||||
$
|
||||
|
||||
Где $N eq 16, space sum I_i$ - сумма всех измеренных токов, $sum I_i^2$ - сумма квадратных токов, $sum (U_i - (cal(E) - r I_i))^2$ - сумма квадратов отклонений между экспериментальными $U_i$ и рассчитанными по модели
|
||||
|
||||
$
|
||||
r eq 663.583 plus.minus 2.1 "Oм"
|
||||
$
|
||||
|
||||
- погрешность $cal(E)$
|
||||
|
||||
$
|
||||
Delta cal(E) eq sqrt(frac(sum I_i^2, N sum I_i^2 - (sum I_i)^2) dot frac(sum(U_i - (cal(E) - r I_i))^2, N - 2))
|
||||
$
|
||||
|
||||
$
|
||||
cal(E) eq 9.921 plus.minus 0.05 "B"
|
||||
$
|
||||
|
||||
|
||||
===== Полная, полезная, мощность потерь используя результаты измерения напряжений
|
||||
|
||||
$U$ и силы тока $I$ и найденные величины $cal(E)$ и $r$, вычислил и внес в @t2 значения полезной $P_R = U I$, полной $P = cal(E) I$ мощности, а также мощность потерь $P_S = I^2 r$
|
||||
|
||||
===== Графики зависимостей всех мощностей
|
||||
|
||||
Построили графики зависимостей всех мощностей от силы тока на одном графическом поле (@p3)
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
image("assets/3.png"),
|
||||
supplement: [Рис.],
|
||||
caption: [График зависимостей $P = P(I), P_R = P_R (I), P_S = P_S (I)$]
|
||||
) <p3>
|
||||
]
|
||||
|
||||
С помощью графика $P_R = P_R (I)$ нашел значение силы тока $I^* = 0.0075 "A"$ (@p4)
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
image("assets/4.png"),
|
||||
supplement: [Рис.],
|
||||
caption: [Значение силы тока $I^*$ на графике $P_R = P_R (I)$]
|
||||
) <p4>
|
||||
]
|
||||
|
||||
Найдем $P_(R max)$ по @p4:
|
||||
|
||||
- $P_(R max)$ - вершина параболы функции $P_R (I)$.
|
||||
- $P_(R max) = 0.037 "Вт"$
|
||||
|
||||
Найдем сопротивление $R$, подставив $P_(R max)$ и $I^*$ в формулу $P_R = I^2 R$:
|
||||
|
||||
- $P_(R max) = (I^*)^2 R arrow.double R = frac(P_(R max), (I^*)^2) = frac(0.037, 0.0075^2) = 656.644 "Ом"$
|
||||
|
||||
- $r = 663.583 "Ом"$
|
||||
|
||||
Сопротивления примерно равны между собой.
|
||||
|
||||
$
|
||||
R / r approx 0.99, space.quad "разница 1%"
|
||||
$
|
||||
|
||||
=== КПД
|
||||
|
||||
Найдем значения КПД как функции силы тока $eta = eta(I)$, построив соответствующий график. Также продолжим график до пересечения с осями координат.
|
||||
|
||||
Воспользуемся формулой $eta = frac(P_R, P)$ для вычисления КПД.
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
image("assets/5.png"),
|
||||
supplement: [Рис.],
|
||||
caption: [Значения КПД как функции $eta = eta(I)$]
|
||||
) <p5>
|
||||
]
|
||||
|
||||
Проведем горизонтальную на @p5 линию $eta = 0.5$. Видно, что она пересекает линию графика примерно в $I = 0.007 "A" approx I^* = 0.0075 "A"$.
|
||||
|
||||
=== Приложение
|
||||
|
||||
#align(center)[
|
||||
#figure(
|
||||
table(columns: 7)[№][$U, "В"$][$I, "мА"$][$P_R, "мВт"$][$P_S, "мВт"$][$P, "мВт"$][$eta$][1][ 0.100][ 15.000][ 1.500][ 149.306][ 148.809][ 0.010][2][ 0.000][ 15.000][ 0.000][ 149.306][ 148.809][ 0.000][3][ 1.700][ 12.000][ 20.400][ 95.556][ 119.047][ 0.171][4][ 2.600][ 11.000][ 28.600][ 80.294][ 109.126][ 0.262][5][ 3.400][ 10.000][ 34.000][ 66.358][ 99.206][ 0.343][6][ 4.000][ 9.000][ 36.000][ 53.750][ 89.285][ 0.403][7][ 4.600][ 8.000][ 36.800][ 42.469][ 79.365][ 0.464][8][ 5.000][ 7.000][ 35.000][ 32.516][ 69.444][ 0.504][9][ 5.400][ 7.000][ 37.800][ 32.516][ 69.444][ 0.544][10][ 5.700][ 6.000][ 34.200][ 23.889][ 59.524][ 0.575][11][ 6.000][ 6.000][ 36.000][ 23.889][ 59.524][ 0.605][12][ 6.300][ 5.000][ 31.500][ 16.590][ 49.603][ 0.635][13][ 6.500][ 5.000][ 32.500][ 16.590][ 49.603][ 0.655][14][ 6.700][ 5.000][ 33.500][ 16.590][ 49.603][ 0.675][15][ 6.900][ 5.000][ 34.500][ 16.590][ 49.603][ 0.696][16][ 6.900][ 5.000][ 34.500][ 16.590][ 49.603][ 0.696],
|
||||
supplement: [Табл.],
|
||||
caption: [Результаты прямых измерений и их обработка]
|
||||
) <t2>
|
||||
]
|
||||
BIN
course2/sem3/labs/lab3.02_done/scripts/3.png
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
course2/sem3/labs/lab3.02_done/scripts/4.png
Normal file
|
After Width: | Height: | Size: 76 KiB |
731
course2/sem3/labs/lab3.02_done/scripts/Lab_3_02.ipynb
Normal file
145
course2/sem3/labs/lab3.02_done/scripts/lab_3_02.py
Normal file
@@ -0,0 +1,145 @@
|
||||
from matplotlib import pyplot as plt
|
||||
import numpy as np
|
||||
|
||||
N = 16
|
||||
|
||||
Rs = np.arange(0,1600,100)
|
||||
print(Rs)
|
||||
|
||||
Us = np.array([
|
||||
0.1, 0.0, 1.7, 2.6, 3.4, 4.0, 4.6, 5.0, 5.4, 5.7, 6.0, 6.3, 6.5, 6.7, 6.9, 6.9
|
||||
])
|
||||
Is = np.array([
|
||||
.015, .015, .012, .011, .010, .009, .008, .007, .007, .006, .006, .005, .005, .005, .005, .005
|
||||
])
|
||||
len(Us), len(Is)
|
||||
|
||||
plt.grid()
|
||||
plt.scatter(Is, Us, marker="d", color="brown", s=6)
|
||||
plt.xlabel("$I$")
|
||||
plt.ylabel("U(I)")
|
||||
|
||||
coeffs_U = np.polyfit(Is, Us, 1) # линейная аппроксимация
|
||||
approx_Is = np.linspace(min(Is), max(Is), 100)
|
||||
approx_Us = np.polyval(coeffs_U, approx_Is)
|
||||
plt.plot(approx_Is, approx_Us, '--', color="black", label="Аппроксимация")
|
||||
plt.legend()
|
||||
|
||||
|
||||
# plt.title("График зависимости U(I)")
|
||||
# plt.show()
|
||||
plt.savefig("1.png", bbox_inches="tight", dpi=300)
|
||||
plt.show()
|
||||
|
||||
|
||||
r, Epsilon = np.polyfit(Is, Us, 1)
|
||||
r *= -1
|
||||
print(f"r = {r}\tEpsilon = {Epsilon}")
|
||||
|
||||
P = Epsilon*Is
|
||||
Pr = Us*Is
|
||||
Ps = Is*Is*r
|
||||
|
||||
arr = (np.vstack((Us, Is, Pr, Ps, P))).T
|
||||
np.set_printoptions(precision=3)
|
||||
print(
|
||||
arr
|
||||
)
|
||||
|
||||
arr[:, 1:] *= 1000
|
||||
for i in range(arr.shape[0]):
|
||||
for j in range(arr.shape[1]):
|
||||
print(f"[{arr[i, j]: .3f}]", end=', ')
|
||||
print()
|
||||
|
||||
|
||||
plt.scatter(Is, Pr, s=5, color="purple", marker="d", label="$P_R=P_R(I)$")
|
||||
plt.scatter(Is, Ps, s=5, color="red", marker="s", label="$P_S=P_S(I)$")
|
||||
plt.scatter(Is, P, s=5, color="blue", marker="o", label="$P=P(I)$")
|
||||
plt.legend()
|
||||
|
||||
coeffs_Pr = np.polyfit(Is, Pr, 2) # квадратичная аппроксимация
|
||||
approx_Pr = np.polyval(coeffs_Pr, approx_Is)
|
||||
plt.plot(approx_Is, approx_Pr, '--', color="purple", alpha=0.3, label="Аппроксимация $P_R(I)$")
|
||||
plt.legend()
|
||||
|
||||
|
||||
# plt.title("Графики зависимости мощностей $P, P_R, P_S$ от силы тока")
|
||||
plt.xlabel("$I$")
|
||||
|
||||
plt.grid()
|
||||
# plt.show()
|
||||
plt.savefig("2.png", bbox_inches="tight", dpi=300)
|
||||
plt.show()
|
||||
|
||||
I_star = Epsilon/(2*r)
|
||||
print(f"I* = {I_star:.4f}")
|
||||
|
||||
i = np.polyfit(Is, Pr, 2)
|
||||
approx_Is = np.linspace(min(Is), max(Is))
|
||||
approx = np.polyval(i, approx_Is)
|
||||
|
||||
|
||||
plt.scatter(Is, Pr, s=5, color="purple", marker="d", label="$P_R=P_R(I)$")
|
||||
plt.plot(approx_Is, approx, color="purple", alpha=.2, linestyle='--', label="Аппроксимация $P_r(I)$")
|
||||
plt.grid()
|
||||
|
||||
|
||||
plt.axvline([I_star], color="grey", linestyle='--', linewidth=1, alpha=.5, label="$X=I^*=0.0075$")
|
||||
plt.legend()
|
||||
|
||||
# plt.show()
|
||||
plt.savefig("3.png", bbox_inches="tight", dpi=300)
|
||||
plt.show()
|
||||
|
||||
i = np.polyfit(Is, Pr, 2)
|
||||
P_Rmax = np.polyval(i, I_star)
|
||||
print(f"P_Rmax = {P_Rmax:.3f}")
|
||||
|
||||
plt.scatter(Is, Pr)
|
||||
# plt.plot(np.linspace(Is[0], Is[-1]), )
|
||||
|
||||
R = P_Rmax / I_star**2
|
||||
print(f"R = {R:.3f}")
|
||||
|
||||
plt.show()
|
||||
|
||||
eta = Pr / P
|
||||
|
||||
print(eta)
|
||||
|
||||
plt.scatter(Is, eta, s=5, color="blue", label="$\eta=\eta(I)$")
|
||||
plt.xlabel("$I$")
|
||||
plt.ylabel("$\eta (I)$")
|
||||
# plt.title("Значения КПД")
|
||||
|
||||
plt.axhline([0.5], label="$\eta=0.5$", color="grey", linestyle="--", alpha=.5)
|
||||
|
||||
plt.xlim(0, 0.017)
|
||||
# plt.ylim(0, 0.7)
|
||||
|
||||
approx_x = np.linspace(0, 0.0155)
|
||||
i = np.polyfit(Is, eta, 1)
|
||||
approx = np.polyval(i, approx_x)
|
||||
|
||||
plt.plot(approx_x, approx, color="blue", linestyle='--', alpha=.2, label="Аппроксимация $\eta=\eta (I)$")
|
||||
|
||||
|
||||
plt.legend()
|
||||
plt.grid()
|
||||
|
||||
# plt.show()
|
||||
plt.savefig("4.png", bbox_inches="tight", dpi=300)
|
||||
plt.show()
|
||||
|
||||
eta = np.reshape(eta, (16, 1))
|
||||
eta
|
||||
|
||||
arr
|
||||
|
||||
arr = np.hstack((arr, eta))
|
||||
|
||||
for i in range(arr.shape[0]):
|
||||
for j in range(arr.shape[1]):
|
||||
print(f"[{arr[i, j]: .3f}]", end=', ')
|
||||
print()
|
||||