久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: VB開發的串口與三菱FX PLC通訊源碼 [打印本頁]

作者: jay_0218    時間: 2017-9-13 10:17
標題: VB開發的串口與三菱FX PLC通訊源碼
VB開發的串口與三菱FX PLC通訊源碼


vb源程序如下:

  1. Private Sub fraComm2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  2.         lblTopic = "設置連接PLC的通信端口以及PLC的站號(應與D8121相同)"
  3. End Sub

  4. Private Sub Frame1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  5.         lblTopic = "實時監控/設置PLC的XYMTCD設備值"
  6. End Sub

  7. Private Sub OptionD_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  8.         lblTopic = "數據以十進制方式返回或設置"
  9. End Sub

  10. Private Sub OptionH_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  11.         lblTopic = "數據以十六進制方式返回或設置"
  12. End Sub

  13. Private Sub SETRST_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  14.         lblTopic = "對位元件(X,Y,M,T,C)線圈置位與復位"
  15. End Sub

  16. Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
  17.     SETRST.Enabled = False
  18.     start = False
  19.     fraComm1.Visible = True
  20.     fraComm2.Visible = True
  21. End Sub

  22. Private Sub Text1_KeyPress(KeyAscii As Integer)
  23.     char = Chr(KeyAscii)
  24.     setaddr = Text1.Text
  25.     If Len(setaddr) > 1 Then: setad = Right(setaddr, Len(setaddr) - 1)
  26.     KeyAscii = Asc(UCase(char)) '轉換為大寫
  27.    
  28.     If KeyAscii = 13 Then '按回車鍵
  29.         Device = Left(setaddr, 1)
  30.         Text1.SelStart = 0
  31.         Text1.SelLength = Len(setaddr)
  32.         Text2.Enabled = True
  33.         If (Device = "X" Or Device = "Y" And Oct(Val("&o" + setad)) = setad And Val(setad) < 178) Or (Device = "M" And CStr(Val(setad)) = setad And (Val(setad) < 1536 Or Val(setad) > 7999 And Val(setad) < 8256)) Then
  34.             DevAdd = Right(("0000" + setad), 4)
  35.             DevDat = cboStation.Text + "FFBR0" + Device + DevAdd + "01"
  36.             DevType = "XYM"
  37.             Text2.Enabled = False
  38.             SETRST.Enabled = True
  39.             start = True
  40.         End If
  41.         If Device = "D" And CStr(Val(setad)) = setad And (Val(setad) < 1000 Or Val(setad) > 7999 And Val(setad) < 8256) Then
  42.             DevAdd = Right(("0000" + setad), 4)
  43.             If Check1.Value = 0 Then
  44.                 DevDat = cboStation.Text + "FFWR0" + Device + DevAdd + "01" '使用WR命令讀16bit數據
  45.                 DevType = "D"
  46.             Else
  47.                 DevDat = cboStation.Text + "FFWR0" + Device + DevAdd + "02" '使用WR命令讀32bit數據
  48.                 DevType = "2D"
  49.             End If
  50.             SETRST.Enabled = False
  51.             start = True
  52.         End If
  53.         If Device = "T" And CStr(Val(setad)) = setad And Val(setad) < 256 Then
  54.             DevAdd = Right(("000" + setad), 3)
  55.             DevDatTC = cboStation.Text + "FFBR0" + Device + "S" + DevAdd + "01" 'T的線圈狀態
  56.             DevDat = cboStation.Text + "FFWR0" + Device + "N" + DevAdd + "01" 'T的數據值
  57.             DevType = "D"
  58.             SETRST.Enabled = True
  59.             start = True
  60.         End If
  61.         If Device = "C" And CStr(Val(setad)) = setad And Val(setad) < 256 Then
  62.             DevAdd = Right(("000" + setad), 3)
  63.             DevDatTC = cboStation.Text + "FFBR0" + Device + "S" + DevAdd + "01" 'C的線圈狀態
  64.             If Val(setad) > 199 Then
  65.                 DevDat = cboStation.Text + "FFWR0" + Device + "N" + DevAdd + "01" 'C200以上的數據值
  66.                 DevType = "2D"
  67.             Else
  68.                 DevDat = cboStation.Text + "FFWR0" + Device + "N" + DevAdd + "01" 'C200以下的數據值
  69.                 DevType = "D"
  70.             End If
  71.             SETRST.Enabled = True
  72.             start = True
  73.         End If
  74.         fraComm1.Visible = False
  75.         fraComm2.Visible = False
  76.     Else
  77.         start = False
  78.         fraComm1.Visible = True
  79.         fraComm2.Visible = True

  80.     End If
  81. End Sub
  82.    
  83. Private Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  84.         lblTopic = "輸入要監控或設置的地址回車確定,如D0,T10,Y7等"
  85. End Sub

  86. Private Sub Text2_KeyDown(KeyCode As Integer, Shift As Integer)
  87.         If KeyCode <> 13 Then
  88.             start = False
  89.         End If
  90. End Sub

  91. Private Sub Text2_KeyPress(KeyAscii As Integer)
  92.     char = Chr(KeyAscii)
  93.     KeyAscii = Asc(UCase(char))
  94.     If Device = "D" And CStr(Val(setad)) = setad And Val(setad) < 1000 Then
  95.         start = False
  96.     End If
  97.     If (Device = "T" Or Device = "C") And CStr(Val(setad)) = setad And Val(setad) < 256 Then
  98.         start = False
  99.     End If
  100.     If KeyAscii = 13 Then
  101.       If Val(DevAdd) > 7999 Then
  102.          If MsgBox("改變系統參數可能對系統造成破壞,是否寫入?", vbOKCancel + vbCritical) = vbCancel Then Exit Sub
  103.       ElseIf MsgBox("改變當前值可能對運行造成危險,是否寫入?", vbOKCancel + vbExclamation) = vbCancel Then Exit Sub
  104.       End If
  105.             If Device = "D" And Check1.Value = 0 Then
  106.                 DevAdd = Right(("0000" + setad), 4)
  107.             ElseIf Device = "D" And Check1.Value = 1 Then
  108.                 DevAdd = Right(("0000" + setad), 4)
  109.             Else
  110.                 DevAdd = Right(("000" + setad), 3)
  111.             End If
  112.             If OptionD.Value Then '十進制方式
  113.                 If Device = "C" And Val(setad) > 199 Then 'C200以上寫入
  114.                     If Val(Text2.Text) > 2847483647# Then: GoTo this
  115.                     DevDat1 = cboStation.Text + "FFWW0" + Device + "N" + DevAdd + "01" + Right("00000000" + Hex(Val(Text2.Text)), 8)
  116.                 ElseIf Device = "D" And Check1.Value = 1 Then '雙字節D寫入
  117.                     If Val(Text2.Text) > 2847483647# Then: GoTo this
  118.                     DevDat1 = Right("00000000" + Hex(Val(Text2.Text)), 8)
  119.                     DevDat1 = Right(DevDat1, 4) + Left(DevDat1, 4)
  120.                     DevDat1 = cboStation.Text + "FFWW0" + Device + DevAdd + "02" + DevDat1
  121.                 Else
  122.                     If Val(Text2.Text) > 32767 Then: GoTo this
  123.                     If Device = "D" Then '單字節D寫入
  124.                         DevDat1 = cboStation.Text + "FFWW0" + Device + DevAdd + "01" + Right("0000" + Hex(Val(Text2.Text)), 4)
  125.                     Else 'C200以下寫入
  126.                         DevDat1 = cboStation.Text + "FFWW0" + Device + "N" + DevAdd + "01" + Right("0000" + Hex(Val(Text2.Text)), 4)
  127.                     End If
  128.                 End If
  129.             Else '十六進制方式
  130.                 If Device = "C" And Val(setad) > 199 Then 'C200以上寫入
  131.                     If Val("&H" + Text2.Text) > 2847483647# Then: GoTo this
  132.                     DevDat1 = cboStation.Text + "FFWW0" + Device + "N" + DevAdd + "01" + Right("00000000" + Text2.Text, 8)
  133.                 ElseIf Device = "D" And Check1.Value = 1 Then '雙字節D寫入
  134.                     If Val("&H" + Text2.Text) > 2847483647# Then: GoTo this
  135.                     DevDat1 = Right("00000000" + Text2.Text, 8)
  136.                     DevDat1 = Right(DevDat1, 4) + Left(DevDat1, 4)
  137.                     DevDat1 = cboStation.Text + "FFWW0" + Device + DevAdd + "02" + DevDat1
  138.                 Else
  139.                     If Val("&H" + Text2.Text) > 32767 Then: GoTo this
  140.                     If Device = "D" Then '單字節D寫入
  141.                         DevDat1 = cboStation.Text + "FFWW0" + Device + DevAdd + "01" + Right("0000" + Text2.Text, 4)
  142. ……………………

  143. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
VB開發的串口與三菱FX PLC通訊源碼.rar (19.54 KB, 下載次數: 140)





作者: xiao8289739    時間: 2018-1-5 19:48
感謝樓主分享
作者: zwk34    時間: 2018-5-24 21:10
謝謝分享。
作者: jxsunyinwu    時間: 2018-6-20 14:37
謝謝分享,無遠程連接是怎么回事?
作者: 赤發鬼李逵    時間: 2018-7-24 18:17

感謝樓主分享
作者: han912xue    時間: 2018-8-15 13:40
樓主高人
作者: errorboy    時間: 2018-9-10 10:50
支持,支持分享
作者: lizhendong    時間: 2018-10-18 23:45
太好了,謝謝了
作者: 大飛0011    時間: 2018-10-20 08:42
太好了,謝謝了!!!
作者: jzylcj    時間: 2019-10-29 19:12

感謝樓主分享
作者: gaoii6    時間: 2019-11-21 16:32


感謝樓主分享  試試看
作者: GANRCJY    時間: 2020-4-11 21:53
下載了不是你說的這個呢??
有原件嗎發給我好嗎?
作者: zxc7891    時間: 2020-5-13 03:43
謝謝分享~剛好可以用來最近在研究的
作者: 790546684    時間: 2020-6-27 17:11
感謝樓主分享
作者: robter    時間: 2020-7-6 06:56
很好很好,感謝樓主的好資料,下載學習了
作者: wangshoujue    時間: 2021-9-4 08:47
已下載,多謝樓主分享1~




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美在线观看一区 | 日韩欧美国产精品综合嫩v 一区中文字幕 | 亚洲色欧美另类 | 亚洲福利 | 午夜精品久久久久久 | 天天操天天天干 | 亚洲高清一区二区三区 | 精品麻豆剧传媒av国产九九九 | 在线视频成人 | 欧美国产日韩精品 | 国产精品日韩在线观看一区二区 | 91精品国产乱码久久久久久久久 | 99久久夜色精品国产亚洲96 | 日本中出视频 | 91精品久久久久久综合五月天 | 久久亚洲一区二区三区四区 | 久久国产一区 | 天天躁日日躁狠狠躁白人 | 亚洲不卡在线观看 | 日韩在线免费播放 | 亚洲精品一区二区在线 | 欧美久久久久久久 | 精品不卡 | 九九热在线视频 | 国产网站在线免费观看 | 午夜免费电影院 | 99爱视频| 国产精品国产a | 欧美日韩精品亚洲 | 精品视频在线一区 | 免费黄色大片 | 国产一二三区在线 | 国产精品欧美一区喷水 | 麻豆精品国产免费 | 免费久久视频 | 亚洲精品一区二区三区中文字幕 | 日本在线精品视频 | 色欧美综合 | 日韩在线成人 | 国产欧美日韩一区 | 亚洲欧洲国产视频 |