Закон Ома для цепи переменного тока

 

Public R, XL, L, XC, C, U0, Amp, Pi, TT, OM

 

Public Function Z()

Z = Sqr(R * R + (XL - XC) ^ 2)

End Function

 

Public Function Fi()

Fi = Atn((XL - XC) / R)

End Function

 

Private Sub Form_Activate()

Pi = 3.141592

TT = 400

OM = 2 * Pi / TT

'L = 1000

'C = 50

'R = 0.5

R = HScroll1.Value

Amp = 1500

'XL = OM * L

'XC = 1 / (OM * C)

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / Z) * Sin(OM * i - Fi) + 2040

YYY1 = -(Amp / Z) * Sin(OM * (i - 1) - Fi) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

Picture8.Line (100, 0)-(100, 5000)

For i = 0 To 400

Picture8.Line (60, -390 + 60 * i)-(100, -390 + 60 * i)

If ((i \ 10) * 10 = i) Then Picture8.Line (0, -390 + 60 * i)-(100, -390 + 60 * i)

If ((i \ 5) * 5 = i) Then Picture8.Line (30, -390 + 60 * i)-(100, -390 + 60 * i)

Next i

End Sub

 

Private Sub HScroll1_Change()

If Option1.Value = True Then

Picture2.BackColor = RGB(230, 220, 230)

R = HScroll1.Value

Ff = 0

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / R) * Sin(OM * i - Ff) + 2040

YYY1 = -(Amp / R) * Sin(OM * (i - 1) - Ff) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

End If

End Sub

 

Private Sub HScroll4_Change()

If Option4.Value = True Then

Picture2.BackColor = RGB(230, 220, 230)

L = HScroll4.Value

XL = OM * L

C = 150

XC = 1 / (OM * C)

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / Z) * Sin(OM * i - Fi) + 2040

YYY1 = -(Amp / Z) * Sin(OM * (i - 1) - Fi) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

Label12.Caption = HScroll4.Value / 10

End If

End Sub

 

Private Sub HScroll2_Change()

If Option2.Value = True Then

Picture2.BackColor = RGB(230, 220, 230)

L = HScroll2.Value

XL = OM * L

Ff = Pi / 2

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / XL) * Sin(OM * i - Ff) + 2040

YYY1 = -(Amp / XL) * Sin(OM * (i - 1) - Ff) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

End If

End Sub

 

Private Sub HScroll3_Change()

If Option3.Value = True Then

Picture2.BackColor = RGB(230, 220, 230)

C = HScroll3.Value

XC = 1 / (OM * C)

Ff = -Pi / 2

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / XC) * Sin(OM * i - Ff) + 2040

YYY1 = -(Amp / XC) * Sin(OM * (i - 1) - Ff) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

End If

End Sub

 

Private Sub Option1_Click()

Picture1.Visible = True

Picture3.Visible = False

Picture5.Visible = False

Picture6.Visible = False

Picture2.BackColor = RGB(230, 220, 230)

XL = 0

XC = 0

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / Z) * Sin(OM * i - Fi) + 2040

YYY1 = -(Amp / Z) * Sin(OM * (i - 1) - Fi) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

End Sub

 

Private Sub Option2_Click()

Picture3.Visible = True

Picture1.Visible = False

Picture5.Visible = False

Picture6.Visible = False

Ff = Pi / 2

Picture2.BackColor = RGB(230, 220, 230)

L = HScroll1.Value

XL = OM * L

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / XL) * Sin(OM * i - Ff) + 2040

YYY1 = -(Amp / XL) * Sin(OM * (i - 1) - Ff) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

End Sub

 

Private Sub Option3_Click()

Picture5.Visible = True

Picture6.Visible = False

Picture3.Visible = False

Picture1.Visible = False

Picture2.BackColor = RGB(230, 220, 230)

C = HScroll3.Value

XC = 1 / (OM * C)

Ff = -Pi / 2

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / XC) * Sin(OM * i - Ff) + 2040

YYY1 = -(Amp / XC) * Sin(OM * (i - 1) - Ff) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

End Sub

 

Private Sub Option4_Click()

Picture6.Visible = True

Picture5.Visible = False

Picture3.Visible = False

Picture1.Visible = False

Picture2.BackColor = RGB(230, 220, 230)

L = HScroll4.Value

XL = OM * L

C = 150

XC = 1 / (OM * C)

For i = 0 To 6500

YY = -Amp * Sin(OM * i) + 2040

YY1 = -Amp * Sin(OM * (i - 1)) + 2040

YYY = -(Amp / Z) * Sin(OM * i - Fi) + 2040

YYY1 = -(Amp / Z) * Sin(OM * (i - 1) - Fi) + 2040

Picture2.Line (i - 1, YY)-(i, YY1), RGB(0, 0, 200)

Picture2.Line (i - 1, YYY)-(i, YYY1), RGB(200, 0, 0)

Next i

Label12.Caption = HScroll4.Value * 10 \ 100

End Sub

 

Private Sub Option5_Click()

TT = 400

OM = 2 * Pi / TT

End Sub

 

Private Sub Option6_Click()

TT = 1000

OM = 2 * Pi / TT

End Sub

 

Private Sub Option7_Click()

TT = 2000

OM = 2 * Pi / TT

End Sub

 

Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 1 Then Picture8.Left = X

End Sub

 

Private Sub Picture2_Mousedown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 1 Then Picture8.Left = X

End Sub