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

📄 frmcontrol.frm

📁 用于电机控制界面。此界面能控制三维方向上的走架运动自如
💻 FRM
字号:
VERSION 5.00
Begin VB.Form frmControl 
   Caption         =   "车体监测系统"
   ClientHeight    =   3150
   ClientLeft      =   165
   ClientTop       =   495
   ClientWidth     =   4680
   LinkTopic       =   "Form1"
   ScaleHeight     =   10710
   ScaleWidth      =   15240
   StartUpPosition =   2  '屏幕中心
   WindowState     =   2  'Maximized
   Begin VB.TextBox SendText 
      Height          =   495
      Left            =   12720
      MultiLine       =   -1  'True
      ScrollBars      =   2  'Vertical
      TabIndex        =   11
      Top             =   5160
      Width           =   1215
   End
   Begin VB.TextBox ReceiveText 
      Height          =   735
      Left            =   12600
      MultiLine       =   -1  'True
      ScrollBars      =   2  'Vertical
      TabIndex        =   10
      Top             =   360
      Width           =   1575
   End
   Begin VB.Frame framaction 
      Caption         =   "参数设置"
      Height          =   3975
      Left            =   11400
      TabIndex        =   0
      Top             =   6480
      Width           =   3375
      Begin VB.CommandButton cmdrun 
         Caption         =   "执行"
         Height          =   375
         Left            =   960
         TabIndex        =   9
         Top             =   3240
         Width           =   975
      End
      Begin VB.TextBox xText 
         Height          =   375
         Left            =   1080
         TabIndex        =   4
         Text            =   "0.0"
         Top             =   480
         Width           =   1455
      End
      Begin VB.TextBox yText 
         Height          =   375
         Left            =   1080
         TabIndex        =   3
         Text            =   "0.0"
         Top             =   1080
         Width           =   1455
      End
      Begin VB.TextBox pText 
         Height          =   375
         Left            =   1080
         TabIndex        =   2
         Text            =   "0.0"
         Top             =   2280
         Width           =   1455
      End
      Begin VB.TextBox zText 
         Height          =   375
         Left            =   1080
         TabIndex        =   1
         Text            =   "0.0"
         Top             =   1680
         Width           =   1455
      End
      Begin VB.Label labx 
         Caption         =   "x"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   10.5
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   480
         TabIndex        =   8
         Top             =   600
         Width           =   255
      End
      Begin VB.Label laby 
         Caption         =   "y"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   10.5
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   480
         TabIndex        =   7
         Top             =   1200
         Width           =   255
      End
      Begin VB.Label labp 
         Caption         =   "p"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   10.5
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   375
         Left            =   480
         TabIndex        =   6
         Top             =   2400
         Width           =   375
      End
      Begin VB.Label labz 
         Caption         =   "z"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   10.5
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   480
         TabIndex        =   5
         Top             =   1800
         Width           =   135
      End
   End
   Begin VB.Menu Tzero 
      Caption         =   "调零"
   End
   Begin VB.Menu CSet 
      Caption         =   "设置"
      Begin VB.Menu ModSel 
         Caption         =   "模式选择"
         Begin VB.Menu Mod0 
            Caption         =   "模式0"
         End
         Begin VB.Menu Mod1 
            Caption         =   "模式1"
         End
         Begin VB.Menu Mod2 
            Caption         =   "模式2"
         End
      End
      Begin VB.Menu CommSet 
         Caption         =   "通信设置"
      End
   End
   Begin VB.Menu Exit 
      Caption         =   "退出"
   End
End
Attribute VB_Name = "frmControl"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Public blnAutoSendFlag As Boolean
Public blnReceiveFlag As Boolean
Public intOutMode As Integer
Public strSendText As String
Public x_Dir As String
Public y_Dir As String
Public z_Dir As String
Public p_Dir As String
Public serial As String
Public data_flag As Integer

Dim dir_flag As String '电机转动方向
Dim test_flag As String '回传指令测试
Dim databuf As Single

Public Function pulseTrans(data As String)
databuf = Val(data)
If (databuf > 1 Or databuf < -1) Then
MsgBox "参数错误!", vbOKOnly, "错误警告!" '设置参数在正负1米
frmCommSet.Timer1.Enabled = False
Exit Function
End If
If databuf >= 0 Then
dir_flag = "4" 'X/Y/Z/P轴正方向
databuf = databuf
Else
dir_flag = "5" 'X/Y/Z/P轴负方向
databuf = -databuf
End If
pulseTrans = Trim(Str(databuf * 5000)) '一厘米为500个脉冲
End Function
Public Function back_test() '回显测试,返回0则执行完毕,接着执行下面动作;返回为则仍执行当前动作
Dim inputbuff As String
inputbuff = Mid(frmCommSet.comm1.Input, 3, 1)
Select Case inputbuff
Case "0"
back_test = "0"
Case "1"
MsgBox "电机忙!", vbOKOnly, "状态报告"
back_test = "1"
Case "2"
MsgBox "失步错!", vbOKOnly, "状态报告"
back_test = "2"
Case "3"
MsgBox "运动失步错!", vbOKOnly, "状态报告"
back_test = "3"
Case "4"
MsgBox "紧急停止!", vbOKOnly, "状态报告"
back_test = "4"
Case "5"
MsgBox "运动EMS启动!", vbOKOnly, "状态报告"
back_test = "5"
Case "6"
MsgBox "失步错,EMS启动!", vbOKOnly, "状态报告"
back_test = "6"
Case "7"
MsgBox "运动失步错,EMS启动!", vbOKOnly, "状态报告"
back_test = "7"
Case "8"
MsgBox "无效命令!", vbOKOnly, "状态报告"
back_test = "8"
Case "9"
MsgBox "电机忙,无效命令!", vbOKOnly, "状态报告"
back_test = "9"
Case "A"
MsgBox "失步错,无效命令!", vbOKOnly, "状态报告"
back_test = "A"
Case "B"
MsgBox "运动失步错,无效命令!", vbOKOnly, "状态报告"
back_test = "B"
Case "C"
MsgBox "EMS启动,无效命令!", vbOKOnly, "状态报告"
back_test = "C"
Case "D"
MsgBox "运动EMS启动,无效命令!", vbOKOnly, "状态报告"
back_test = "D"
Case "E"
MsgBox "运动EMS启动,无效命令!", vbOKOnly, "状态报告"
back_test = "E"
MsgBox "失步错,EMS启动,无效命令!", vbOKOnly, "状态报告"
Case "F"
MsgBox "运动失步错,EMS启动,无效命令!", vbOKOnly, "状态报告"
back_test = "F"
End Select
End Function
Public Function coder1_int()
frmCommSet.comm1.Output = "$1E1" & vbCrLf
frmCommSet.comm1.Output = "$1EC1" & vbCrLf
frmCommSet.comm1.Output = "$1PA4" & vbCrLf
frmCommSet.comm1.Output = "$1PB19" & vbCrLf
frmCommSet.comm1.Output = "$1QE9" & vbCrLf
frmCommSet.comm1.Output = "$1QS11" & vbCrLf
frmCommSet.comm1.Output = "$1QJ11" & vbCrLf
frmCommSet.comm1.Output = "$1QET300" & vbCrLf
frmCommSet.comm1.Output = "$1OX300" & vbCrLf
frmCommSet.comm1.Output = "$1OL1500" & vbCrLf
frmCommSet.comm1.Output = "$1OS1500" & vbCrLf
End Function
Public Function coder2_int()
frmCommSet.comm1.Output = "$1E1" & vbCrLf
frmCommSet.comm1.Output = "$1EC1" & vbCrLf
frmCommSet.comm1.Output = "$1PA1" & vbCrLf
frmCommSet.comm1.Output = "$1PB9" & vbCrLf
frmCommSet.comm1.Output = "$1QE9" & vbCrLf
frmCommSet.comm1.Output = "$1QS11" & vbCrLf
frmCommSet.comm1.Output = "$1QJ11" & vbCrLf
frmCommSet.comm1.Output = "$1QET30" & vbCrLf
frmCommSet.comm1.Output = "$1OX300" & vbCrLf
frmCommSet.comm1.Output = "$1OL1500" & vbCrLf
frmCommSet.comm1.Output = "$1OS1500" & vbCrLf
End Function
Public Function coder3_int()
frmCommSet.comm1.Output = "$2E1" & vbCrLf
frmCommSet.comm1.Output = "$2EC1" & vbCrLf
frmCommSet.comm1.Output = "$2PA1" & vbCrLf
frmCommSet.comm1.Output = "$2PB2" & vbCrLf
frmCommSet.comm1.Output = "$2QE9" & vbCrLf
frmCommSet.comm1.Output = "$2QS11" & vbCrLf
frmCommSet.comm1.Output = "$2QJ11" & vbCrLf
frmCommSet.comm1.Output = "$2QET50" & vbCrLf
frmCommSet.comm1.Output = "$2OX300" & vbCrLf
frmCommSet.comm1.Output = "$2OL1500" & vbCrLf
frmCommSet.comm1.Output = "$2OH1500" & vbCrLf
frmCommSet.comm1.Output = "$2OS1000" & vbCrLf
End Function
Public Function coder4_int()
frmCommSet.comm1.Output = "$2E1" & vbCrLf
frmCommSet.comm1.Output = "$2EC1" & vbCrLf
frmCommSet.comm1.Output = "$2PA1" & vbCrLf
frmCommSet.comm1.Output = "$2PB2" & vbCrLf
frmCommSet.comm1.Output = "$2QE9" & vbCrLf
frmCommSet.comm1.Output = "$2QS11" & vbCrLf
frmCommSet.comm1.Output = "$2QJ11" & vbCrLf
frmCommSet.comm1.Output = "$2QET30" & vbCrLf
frmCommSet.comm1.Output = "$2OX300" & vbCrLf
frmCommSet.comm1.Output = "$2OS1000" & vbCrLf
End Function
Private Sub MoveSet_Click()

End Sub

Private Sub cmdrun_Click()

serial = frmCommSet.Comboserial.Text
If serial = "COM1" Then
frmCommSet.comm1.PortOpen = False
frmCommSet.comm1.CommPort = 1
frmCommSet.comm1.PortOpen = True
End If
If serial = "COM2" Then
frmCommSet.comm1.PortOpen = False
frmCommSet.comm1.CommPort = 2
frmCommSet.comm1.PortOpen = True
End If
If serial = "COM3" Then
frmCommSet.comm1.PortOpen = False
frmCommSet.comm1.CommPort = 3
frmCommSet.comm1.PortOpen = True
End If
frmCommSet.comm1.Settings = "9600,n,8,1"
frmCommSet.Timer1.Interval = Val(frmCommSet.timeText.Text)
frmCommSet.Timer1.Enabled = True
End Sub

Private Sub comm1_OnComm()

End Sub

Private Sub CommSet_Click()
frmCommSet.Show
End Sub

Private Sub Exit_Click()
frmCommSet.comm1.PortOpen = False

Unload frmControl
Unload frmCommSet
Unload frmMultiData
End Sub

Private Sub Form_Load()

frmCommSet.Comboserial.AddItem ("COM1")
frmCommSet.Comboserial.AddItem ("COM2")
frmCommSet.Comboserial.AddItem ("COM3")

frmCommSet.comm1.InputLen = 0
frmCommSet.comm1.InBufferSize = 512
frmCommSet.comm1.InBufferCount = 0
frmCommSet.comm1.OutBufferSize = 512
frmCommSet.comm1.OutBufferCount = 0
frmCommSet.comm1.RThreshold = 1
frmCommSet.comm1.RThreshold = 1
frmCommSet.comm1.PortOpen = True
End Sub

Private Sub Mod0_Click()
frmMultiData.Show

End Sub



Private Sub pText_Change()
p_Dir = frmControl.pText.Text
End Sub


Private Sub xText_Change()
x_Dir = frmControl.xText.Text
End Sub

Private Sub yText_Change()
y_Dir = frmControl.yText.Text
End Sub

Private Sub zText_Change()
z_Dir = frmControl.zText.Text
End Sub





⌨️ 快捷键说明

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