91美女视频-亚洲免费观看视频-欧美a∨-久热在线视频-日韩黄网站-成av人片在线观看www-久操综合-超碰av在线播放-性欧美欧美巨大69-婷婷二区-av男人的天堂网-中文字幕一区在线播放-玖草在线观看-国产网址在线观看-免费在线不卡av

趙云龍
級別: 正式會員
精華主題: 0
發帖數量: 7 個
工控威望: 55 點
下載積分: 264 分
在線時間: 10(小時)
注冊時間: 2023-11-23
最后登錄: 2025-10-08
查看趙云龍的 主題 / 回貼
樓主  發表于: 2024-09-17 16:49
Option Explicit

Private Sub Form_Load()

  '設置本地任意可用端口,這樣系統會自動分配一個未被占用的端口

  Winsock1.LocalPort = 0

  Winsock2.LocalPort = 0

  '設置通信協議為 TCP 協議

  Winsock1.Protocol = sckTCPProtocol

  Winsock2.Protocol = sckTCPProtocol

  '開始監聽,等待客戶端連接

  Winsock1.Listen

  Winsock2.Listen

  '初始化PLC地址,IP,端口數據

  Open App.Path & "\data\add.ini" For Binary As #1

  Add = StrConv(InputB$(LOF(1), 1), vbUnicode)

  Close #1

  Open App.Path & "\data\ip.ini" For Binary As #1

  ip = StrConv(InputB$(LOF(1), 1), vbUnicode)

  Close #1

  Open App.Path & "\data\port.ini" For Binary As #1

  port = StrConv(InputB$(LOF(1), 1), vbUnicode)

  Close #1

  reg.Text = "0"

  high.Text = "0"

  low.Text = "0"

End Sub



Private Sub SendData_Click()

  '如果 Winsock 處于已連接狀態

  If Winsock1.State = sckConnected Then

    '構造 Modbus TCP 請求數據

    Dim PLC_Add As Long

    Dim dataToSend As Integer

    Dim dataToSend1 As Integer

    Dim dataToSend2 As Integer

    'Add PLC起始地址,reg:寄存器地址,high/low高低字節位(數據)。

    PLC_Add = Val(Add.Text)

    To_reg = Val(reg.Text)

    To_high = Val(high.Text)

    To_low = Val(low.Text)

    'MODBUSTCP報文

     Dim request As String

    request = Chr(&H0) & Chr(&H1) & Chr(&H0) & Chr(&H0) & Chr(&H0) & Chr(&H6) & Chr(&H1) & Chr(&H6) & Chr(PLC_Add - 40001) & Chr(To_reg) & Chr(To_high) & Chr(To_low)

      '發送構造好的請求數據給 PLC

      Winsock1.SendData request

    Exit Sub

  

  Else

    '如果未連接到 PLC,彈出消息提示

    MsgBox "Not connected to PLC."

  End If

  

End Sub


Private Sub Timer1_Timer()

  '定時器事件,用于周期性檢查連接狀態并更新界面

  If Winsock1.State = sckConnected Then

    '如果連接成功,將標簽的背景色設置為綠色(十六進制顏色值 &HC000&)

    connection.BackColor = &HC000&

  Else

    '如果未連接,將標簽的背景色設置為紅色(十六進制顏色值 &HFF&)

    connection.BackColor = &HFF&

  End If

    

End Sub



Private Sub Timer2_Timer()

  '定時器事件,用于周期性檢查連接狀態并重新連接

  If connection.BackColor = &HFF& Then

  '檢查 Winsock 的狀態,如果不是已關閉狀態

  If Winsock1.State <> sckClosed Then

    '關閉當前連接,以便重新連接到 PLC

    Winsock1.Close

    '確認連接IP地址及端口

    Timer3.Interval = 1

  End If

  If Winsock2.State <> sckClosed Then

    '關閉當前連接,以便重新連接到 PLC

    Winsock2.Close

    '確認連接IP地址及端口

    Timer3.Interval = 1

  End If

  

    '變量

    Dim plc_ip As String

    Dim plc_port As Integer

    '讀取IP及端口參數

    plc_ip = ip.Text

    plc_port = port.Text

    '連接到指定的 PLC IP 地址和端口號,這里需替換為實際的 PLC IP 和端口

    Winsock1.Connect plc_ip, plc_port

    Winsock2.Connect plc_ip, plc_port

    '停止IP地址及端口確認

    Timer3.Interval = 0

  End If

End Sub



Private Sub Command1_Click()

    '打開通訊設置窗口

    Form2.Show

End Sub



Private Sub ConnectToPLC_Click()

  '判斷通訊是否啟動連接

  If Timer2.Interval = 0 Then

     '開始連接

    Timer2.Interval = 1

  ElseIf Timer2.Interval = 1 Then

    '判斷通訊是否啟動連接

    If Winsock1.State <> sckClosed Then

    '停止連接

    Timer2.Interval = 0

    '斷開連接

    Winsock1.Close

    Winsock2.Close

    

    End If

    

  End If



End Sub



Private Sub Timer3_Timer()

    '讀取起始地址

    Open App.Path & "\data\add.ini" For Binary As #1

    '更新起始地址

    Add = StrConv(InputB$(LOF(1), 1), vbUnicode)

    Close #1

    '讀取IP地址

    Open App.Path & "\data\ip.ini" For Binary As #1

    '更新IP地址

    ip = StrConv(InputB$(LOF(1), 1), vbUnicode)

    Close #1

    '讀取端口

    Open App.Path & "\data\port.ini" For Binary As #1

    '更新端口

    port = StrConv(InputB$(LOF(1), 1), vbUnicode)

    Close #1

    '停止更新

    Timer3.Interval = 0

End Sub





Private Sub TCP0_Click(Index As Integer)

  '對齊寄存器地址

  If reg.Text <> 0 Then

    reg.Text = 0

  End If

  '開關量轉換

  If reg.Text = 0 Then

    If low.Text = 0 Then

      low.Text = 1

      SendData_Click

    ElseIf low.Text = 1 Then

      low.Text = 0

      SendData_Click

    End If

  End If



End Sub



Private Sub TCP1_Click(Index As Integer)

  '對齊寄存器地址

  If reg.Text <> 1 Then

    reg.Text = 1

  End If

  '開關量轉換

  If reg.Text = 1 Then

    If low.Text = 0 Then

      low.Text = 1

      SendData_Click

    ElseIf low.Text = 1 Then

      low.Text = 0

      SendData_Click

    End If

  End If



End Sub



Private Sub TCP2_Click(Index As Integer)

  '對齊寄存器地址

  If reg.Text <> 2 Then

    reg.Text = 2

  End If

  '開關量轉換

  If reg.Text = 2 Then

    If low.Text = 0 Then

      low.Text = 1

      SendData_Click

    ElseIf low.Text = 1 Then

      low.Text = 0

      SendData_Click

    End If

  End If



End Sub



Private Sub TCP3_Click(Index As Integer)

  '對齊寄存器地址

  If reg.Text <> 3 Then

    reg.Text = 3

  End If

  '開關量轉換

  If reg.Text = 3 Then

    If low.Text = 0 Then

      low.Text = 1

      SendData_Click

    ElseIf low.Text = 1 Then

      low.Text = 0

      SendData_Click

    End If

  End If



End Sub



Private Sub TCP4_Click(Index As Integer)

  '對齊寄存器地址

  If reg.Text <> 4 Then

    reg.Text = 4

  End If

  '開關量轉換

  If reg.Text = 4 Then

    If low.Text = 0 Then

      low.Text = 1

      SendData_Click

    ElseIf low.Text = 1 Then

      low.Text = 0

      SendData_Click

    End If

  End If



End Sub



Private Sub TCP5_Click(Index As Integer)

  '對齊寄存器地址

  If reg.Text <> 5 Then

    reg.Text = 5

  End If

  '開關量轉換

  If reg.Text = 5 Then

    If low.Text = 0 Then

      low.Text = 1

      SendData_Click

    ElseIf low.Text = 1 Then

      low.Text = 0

      SendData_Click

    End If

  End If


End Sub



Private Sub end_Click()

End

End Sub



主站蜘蛛池模板: 99视频国产精品免费观看a | 99精品小视频 | 男生草女生视频 | 日日干天天射 | 国产超级av | 美女又爽又黄又免费 | 天天夜夜久久 | 日韩xxxxxxxxx| 亚洲第一av在线 | 久久乐国产精品 | 九九精品免费 | 黄色小说视频网站 | 天天色棕合合合合合合合 | 国产高清视频一区二区 | 免费在线黄| 中国美女洗澡免费看网站 | 亚洲国产av一区 | 无码人妻少妇伦在线电影 | 老师的肉丝玉足夹茎 | 国产福利久久久 | 亚洲大片在线观看 | 999av视频 | 欧美久久视频 | 伊人色图 | 九色91在线 | 色玖玖综合 | 日韩av网址大全 | 91精品啪| 视频在线观看 | 成人亚洲在线 | 91在线观看免费视频 | 91激情网 | 六月婷婷网| 日韩黄色影院 | 黄色私人影院 | 一卡二卡三卡四卡五卡 | 久久男女视频 | 久久久久久久久国产精品 | av中文在线播放 | www.国产精品.com | 海角国产乱辈乱精品视频 | 黑鬼巨鞭白妞冒白浆 | 国产精品乱码久久久 | 久久影视大全 | 日韩中文字幕一区二区三区 | 欧美成人三区 | 黄页网站视频在线观看 | 国产毛片a级 | 无码粉嫩虎白一线天在线观看 | 青青草视频在线免费观看 | 国产亚洲一区二区三区在线观看 | 色香蕉网 | 国产69xx| 久久人妻免费视频 | 91污网站| 日韩成人在线免费观看 | 天堂va欧美va亚洲va老司机 | 性欧美巨大| 中文久久乱码一区二区 | 免费看aaaaa级少淫片 | 日本一区二区免费电影 | 99色播| 欧美一区二区三区成人 | 最新高清无码专区 | 91免费福利 | 欧美色图13p | 国产又粗又猛又爽又黄91精品 | 狠狠干在线视频 | 中文字幕av一区二区三区谷原希美 | 91高跟黑色丝袜呻吟在线观看 | 欧美一区日韩一区 | 色姐 | 香蕉久久国产av一区二区 | 日日夜夜综合网 | xxxxwwww在线观看 | 黄频在线看 | 亚洲av成人无码一二三在线观看 | 免费看裸体网站视频 | 中文字幕网站在线观看 | 久久中文字幕人妻 | av首页在线 | 国产一级片视频 | 男女性杂交内射妇女bbwxz | 97自拍视频 | 亚洲天堂aaa| 丰满人妻熟女aⅴ一区 | 久久精品中文 | 成人毛片在线 | 狠狠干免费视频 | 日日夜夜91 | 三点尽露的大尺度国产 | 国产综合色视频 | 久久露脸国语精品国产91 | 欧美另类v | 日韩一区二区影视 | 黄色香蕉视频 | 91一区二区三区在线观看 | 亚洲天堂成人在线 | 啪啪网站大全 |