⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.frm

📁 游动微型机器人动力学特性仿真研究,本软件编制了机器人动力学性能计算软件,研究了微型机器人的游动速度、推进力与微型机器人结构参数和游动参数的关系
💻 FRM
📖 第 1 页 / 共 2 页
字号:
fx = L1 * (L0 - X) / L0 * Tan(α) * X * Sin(2 * PI * X / λ)
Case 2  '抛物线
a1 = -0.0025
c = 3
fx = 2 * (a1 * X ^ 2 + c) * Tan(α) * X * Sin(2 * PI * X / λ)
End Select
End Function

Private Sub Combo1_Click()
If Combo1.Text = "矩形" Then
o = 4 '矩形
Text3.Enabled = True
Text4.Enabled = False
ElseIf Combo1.Text = "三角形" Then
o = 5 '三角形
Text3.Enabled = False
Text4.Enabled = True
Else
o = 6 'juxing
Text3.Enabled = False
Text4.Enabled = False
End If
End Sub

Private Sub Command1_Click()
If Text1.Text = "" Or Text2.Text = "" Or Text3.Text = "" Then
MsgBox "输入不能为空,请重新输入!", 16, "错误"
ElseIf Text1.Text = 0 Or Text2.Text = 0 Or Text3.Text = 0 Then
MsgBox "输入正确的数值!", 16, "错误"
Else
If o = 0 Then
MsgBox "选择关系选项!", 16, "错误"
End If


Select Case o
Case 1
Label1.Caption = "游动速度和摆幅的关系图"
ρ = 0.001
M0 = 0.8
f = Text2.Text
L0 = Text1.Text
k = 1
λ = L0 / k
Pic1.Scale (-2, 12)-(34, -1)
Pic1.Line (-1, 0)-(32, 0)
Pic1.Line (0, -0.5)-(0, 11)
Pic1.Line (31.5, -0.4)-(32, 0)
Pic1.Line (31.5, 0.4)-(32, 0)
Pic1.Line (-0.3, 10.7)-(0, 11)
Pic1.Line (0.3, 10.7)-(0, 11)
Pic1.CurrentX = 31
Pic1.CurrentY = -0.5
Pic1.Print "α(°)"
Pic1.CurrentX = 0.2
Pic1.CurrentY = 11
Pic1.Print "V(mm/s)"
Pic1.DrawStyle = 2
Pic1.CurrentY = -0.2
Pic1.CurrentX = 0
Pic1.Print 0
For i = 1 To 15
Pic1.CurrentY = -0.2
Pic1.CurrentX = 2 * i - 0.5
Pic1.Print 2 * i
Pic1.Line (2 * i, 0)-(2 * i, 10)
Next
For i = 1 To 10
Pic1.CurrentX = -1
Pic1.CurrentY = i
Pic1.Print i
Pic1.Line (0, i)-(30, i)
Next
Pic1.DrawStyle = 0
Pic1.CurrentX = 14
Pic1.CurrentY = 5
Pic1.Print "ρ = 0.001,M0 = 0.8,f = 2, k = 1 "
For α = 0 To 30 Step 0.001
M1 = Romberg(0, 0, λ / 2, 0.000001) '矩形
M1 = M1 - Romberg(0, λ / 2, λ, 0.000001)
M1 = M1 * ρ * Tan(α * PI / 180)
V1 = f * λ * M1 / (M0 + M1)
If V1 <= 10 Then
Pic1.PSet (α, V1), QBColor(4)
End If
Next



Case 2
ρ = 0.001
k = 1
f = Text2.Text
α = 20 * PI / 180
L0 = Text1.Text
Label1.Caption = "游动速度和机器人质量M(0)的关系图"
Pic1.Scale (-1, 26)-(9, -2)
Pic1.Line (-0.5, 0)-(8, 0)
Pic1.Line (0, -1)-(0, 25)
Pic1.Line (7.6, -0.4)-(8, 0)
Pic1.Line (7.6, 0.4)-(8, 0)
Pic1.Line (-0.15, 24)-(0, 25)
Pic1.Line (0.15, 24)-(0, 25)
Pic1.CurrentX = 8
Pic1.CurrentY = -0.5
Pic1.Print "M(g)"
Pic1.CurrentX = 0.2
Pic1.CurrentY = 25
Pic1.Print "V(mm/s)"
Pic1.DrawStyle = 2
For i = 1 To 8
Pic1.CurrentY = -0.5
Pic1.CurrentX = i - 1
Pic1.Print i - 1
Pic1.Line (i - 1, 0)-(i - 1, 24)
Next
For i = 1 To 12
Pic1.CurrentX = -0.5
Pic1.CurrentY = 2 * i
Pic1.Print 2 * i
Pic1.Line (0, 2 * i)-(7, 2 * i)
Next
Pic1.DrawStyle = 0
Pic1.DrawStyle = 0
Pic1.CurrentX = 3
Pic1.CurrentY = 10
Pic1.Print "ρ = 0.001,α=20°,f = 2, k = 1 "
λ = L0 / k
M1 = Romberg(0, 0, λ / 2, 0.000001) '矩形
M1 = M1 - Romberg(0, λ / 2, λ, 0.000001) '矩形
M1 = M1 * ρ * Tan(α)
For M0 = 0.001 To 7 Step 0.0001
V1 = f * λ * M1 / (M0 + M1)
If V1 <= 24 Then
Pic1.PSet (M0, V1), QBColor(4)
End If
Next



Case 3
ρ = 0.001
f = Text2.Text
α = 20 * PI / 180
L0 = Text1.Text
M0 = 0.8
Label1.Caption = "游动速度与参数k的关系图"
Pic1.Scale (-0.2, 8)-(1.2, -1)
Pic1.Line (-0.1, 0)-(1.1, 0)
Pic1.Line (1.05, 0.2)-(1.1, 0)
Pic1.Line (1.05, -0.2)-(1.1, 0)
Pic1.Line (0, -0.5)-(0, 7)
Pic1.Line (-0.02, 6.7)-(0, 7)
Pic1.Line (0.02, 6.7)-(0, 7)
Pic1.DrawStyle = 2
For i = 0.1 To 1 Step 0.1
Pic1.CurrentX = i - 0.11
Pic1.CurrentY = 0
Pic1.Print i + 1 - 0.1
Pic1.Line (i, 0)-(i, 6)
Next
Pic1.CurrentX = 1
Pic1.CurrentY = 0
Pic1.Print "2"
Pic1.CurrentX = 1.1
Pic1.CurrentY = -0.2
Pic1.Print "k"
For i = 1 To 6
Pic1.Line (0, i)-(1, i)
Pic1.CurrentX = -0.05
Pic1.CurrentY = i - 1
Pic1.Print i + 4
Next
Pic1.CurrentX = -0.04
Pic1.CurrentY = 6
Pic1.Print "11"
Pic1.CurrentX = 0.02
Pic1.CurrentY = 7
Pic1.Print "V(mm/s)"
Pic1.DrawStyle = 0
Pic1.CurrentX = 0.35
Pic1.CurrentY = 3.5
Pic1.Print "ρ = 0.001,f = 2,α = 20°,M0=0.8"
For k = 0.001 To 0.5 Step 0.001
λ = L0 / (k + 1)
M1 = Romberg(0, 0, λ / 2, 0.000001) '矩形
M1 = M1 - Romberg(0, λ / 2, λ, 0.000001)
M1 = M1 + Romberg(0, λ, L0, 0.000001)
M1 = M1 * ρ * Tan(α)
V1 = f * λ * M1 / (M0 + M1) - 5
If V1 <= 6 Then
Pic1.PSet (k, V1), QBColor(4)
End If
Next
For k = 0.5001 To 1 Step 0.001
λ = L0 / (k + 1)
M1 = Romberg(0, 0, λ / 2, 0.000001) '矩形
M1 = M1 - Romberg(0, λ / 2, λ, 0.000001)
M1 = M1 + Romberg(0, λ, 1.5 * λ, 0.000001)
M1 = M1 - Romberg(0, 1.5 * λ, L0, 0.000001)
M1 = M1 * ρ * Tan(α)
V1 = f * λ * M1 / (M0 + M1) - 5
If V1 <= 6 Then
Pic1.PSet (k, V1), QBColor(4)
End If
Next



Case 4
Pic1.Scale (-1, 24)-(9, -2)
Pic1.Line (-0.5, 0)-(8, 0)
Pic1.Line (0, -1)-(0, 23)
Pic1.Line (7.6, -0.4)-(8, 0)
Pic1.Line (7.6, 0.4)-(8, 0)
Pic1.Line (-0.15, 22)-(0, 23)
Pic1.Line (0.15, 22)-(0, 23)
Pic1.CurrentX = 8
Pic1.CurrentY = -0.5
Pic1.Print "f(Hz)"
Pic1.CurrentX = 0.2
Pic1.CurrentY = 23
Pic1.Print "V(mm/s)"
Pic1.DrawStyle = 2
For i = 1 To 8
Pic1.CurrentY = -0.5
Pic1.CurrentX = i - 1
Pic1.Print i - 1
Pic1.Line (i - 1, 0)-(i - 1, 22)
Next
For i = 1 To 11
Pic1.CurrentX = -0.5
Pic1.CurrentY = 2 * i
Pic1.Print 2 * i
Pic1.Line (0, 2 * i)-(7, 2 * i)
Next
Pic1.DrawStyle = 0
Label1.Caption = "尾部形状为矩形时游动速度V与摆动频率f的关系"
ρ = 0.001
L0 = Text1.Text
k = 1
M0 = 0.8
α = 20 * PI / 180
λ = L0 / k
M1 = Romberg(0, 0, λ / 2, 0.000001) '矩形
M1 = M1 - Romberg(0, λ / 2, L0, 0.000001)
M1 = M1 * ρ
For f = 0 To 7 Step 0.001
V1 = f * λ * M1 / (M0 + M1)
If V1 <= 22 Then
Pic1.PSet (f, V1), QBColor(4)
End If
Next
Pic1.CurrentX = 1.5
Pic1.CurrentY = 1.5 * λ * M1 / (M0 + M1)
Pic1.Print "矩形"
Pic1.CurrentX = 2
Pic1.CurrentY = 8
Pic1.Print "ρ = 0.001,a=-0.0025,c=3,k=1,M=0.8,α=20"


Case 5
Pic1.Scale (-1, 24)-(9, -2)
Pic1.Line (-0.5, 0)-(8, 0)
Pic1.Line (0, -1)-(0, 23)
Pic1.Line (7.6, -0.4)-(8, 0)
Pic1.Line (7.6, 0.4)-(8, 0)
Pic1.Line (-0.15, 22)-(0, 23)
Pic1.Line (0.15, 22)-(0, 23)
Pic1.CurrentX = 8
Pic1.CurrentY = -0.5
Pic1.Print "f(Hz)"
Pic1.CurrentX = 0.2
Pic1.CurrentY = 23
Pic1.Print "V(mm/s)"
Pic1.DrawStyle = 2
For i = 1 To 8
Pic1.CurrentY = -0.5
Pic1.CurrentX = i - 1
Pic1.Print i - 1
Pic1.Line (i - 1, 0)-(i - 1, 22)
Next
For i = 1 To 11
Pic1.CurrentX = -0.5
Pic1.CurrentY = 2 * i
Pic1.Print 2 * i
Pic1.Line (0, 2 * i)-(7, 2 * i)
Next
Pic1.DrawStyle = 0
Label1.Caption = "尾部形状为三角形时游动速度V与摆动频率f的关系"
ρ = 0.001  '水的密度
L0 = Text1.Text
k = 1
M0 = 0.8
α = 20 * PI / 180
λ = L0 / k
M1 = Romberg(1, 0, λ / 2, 0.000001) '三角形
M1 = M1 - Romberg(1, λ / 2, λ, 0.000001)
M1 = M1 * ρ
For f = 0 To 7 Step 0.001
V1 = f * λ * M1 / (M0 + M1)
If V1 <= 22 Then
Pic1.PSet (f, V1), QBColor(4)
End If
Next
Pic1.CurrentX = 4.2
Pic1.CurrentY = 4.2 * λ * M1 / (M0 + M1)
Pic1.Print "三角形"
Pic1.CurrentX = 2
Pic1.CurrentY = 8
Pic1.Print "ρ = 0.001,a=-0.0025,c=3,k=1,M=0.8,α=20"

Case 6 '抛物线
Pic1.Scale (-1, 24)-(9, -2)
Pic1.Line (-0.5, 0)-(8, 0)
Pic1.Line (0, -1)-(0, 23)
Pic1.Line (7.6, -0.4)-(8, 0)
Pic1.Line (7.6, 0.4)-(8, 0)
Pic1.Line (-0.15, 22)-(0, 23)
Pic1.Line (0.15, 22)-(0, 23)
Pic1.CurrentX = 8
Pic1.CurrentY = -0.5
Pic1.Print "f(Hz)"
Pic1.CurrentX = 0.2
Pic1.CurrentY = 23
Pic1.Print "V(mm/s)"
Pic1.DrawStyle = 2
For i = 1 To 8
Pic1.CurrentY = -0.5
Pic1.CurrentX = i - 1
Pic1.Print i - 1
Pic1.Line (i - 1, 0)-(i - 1, 22)
Next
For i = 1 To 11
Pic1.CurrentX = -0.5
Pic1.CurrentY = 2 * i
Pic1.Print 2 * i
Pic1.Line (0, 2 * i)-(7, 2 * i)
Next
Pic1.DrawStyle = 0
Label1.Caption = "尾部形状为抛物线时游动速度V与摆动频率f的关系"
ρ = 0.001  '水的密度
L0 = Text1.Text
k = 1
M0 = 0.8
α = 20 * PI / 180
λ = L0 / k
M1 = Romberg(2, 0, λ / 2, 0.000001) '抛物线
M1 = M1 - Romberg(2, λ / 2, λ, 0.000001)
M1 = M1 * ρ
For f = 0 To 7 Step 0.001
V1 = f * λ * M1 / (M0 + M1)
If V1 <= 22 Then
Pic1.PSet (f, V1), QBColor(4)
End If
Next
Pic1.CurrentX = 2.3
Pic1.CurrentY = 2.3 * λ * M1 / (M0 + M1)
Pic1.Print "抛物线"
Pic1.CurrentX = 2
Pic1.CurrentY = 8
Pic1.Print "ρ = 0.001,a=-0.0025,c=3,k=1,M=0.8,α=20"

End Select

End If
End Sub
Private Sub Command2_Click()
Call xin
Combo1.Text = "形状选择"
o = 0
Text2.Enabled = True
Text3.Enabled = True
Text4.Enabled = True
Option1.Value = False
Option2.Value = False
Option3.Value = False
Option4.Value = False
Option1.Enabled = True
Option2.Enabled = True
Option3.Enabled = True
Option4.Enabled = True
Combo1.Enabled = False
End Sub
Private Sub Command3_Click()
Unload Form1
Load formain
formain.Show
End Sub
Private Sub Command4_Click()
Unload Form1
Load Form3
Form3.Show
End Sub
Private Sub HScroll1_Change()
Frame1.Left = 960 - HScroll1.Value
End Sub
Private Sub Option1_Click()
Text3.Enabled = False
Text4.Enabled = False
o = 1
Option2.Enabled = False
Option3.Enabled = False
End Sub
Private Sub Option2_Click()
Text3.Enabled = False
Text4.Enabled = False
o = 2
Option1.Enabled = False
Option3.Enabled = False
Option4.Enabled = False
End Sub
Private Sub Option3_Click()
Text3.Enabled = False
Text4.Enabled = False
o = 3
Option2.Enabled = False
Option1.Enabled = False
Option4.Enabled = False
End Sub
Private Sub Option4_Click()
Combo1.Enabled = True
Text2.Enabled = False
Option1.Enabled = False
Option2.Enabled = False
Option3.Enabled = False
End Sub
Private Sub VScroll1_Change()
Frame1.Top = 480 - VScroll1.Value / 2
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -