<rt id="m4md3"></rt>
  • <bdo id="m4md3"><meter id="m4md3"></meter></bdo>
  • <label id="m4md3"></label>
      <center id="m4md3"><optgroup id="m4md3"></optgroup></center>
      產品分類

      當前位置: 首頁 > 工業控制產品 > 自動化控制 > PLC可編程控制器

      類型分類:
      科普知識
      數據分類:
      PLC可編程控制器

      利用VB的MSComm控件編程實現PC與三菱PLC FX系列通信

      發布日期:2022-04-26 點擊率:60 品牌:三菱_Mitsubishi

          編寫PC的通信程序可采用匯編語言編寫,或采用各種高級語言編寫,或采用工控組態軟件,或直接采用PLC廠家的通信軟件(如三菱的MELSE MEDOC等)

          下面利用VB6.0以一個簡單的例子來說明編寫通信程序的要點。假設PC要求從PLC中讀入從D123開始的4個字節的數據(D123、D124),其傳輸應答過程及報文如圖7-16所示。


      圖7-16  傳輸應答過程及命令報文

          命令報文中10F6H為D123的地址,04H表示要讀入4個字節的數據。校驗和SUM=30H+31H+30H+46H+36H+30H+34H+03 H=174H,溢出部分不計,故SUMH=7,SUAIL=4,相應的ASCⅡ碼為“37H”,“34H”。應答報文中4個字節的十六進制數,其相應的ASCⅡ碼為8個字節,故應答報文長度為12個字節。

          根據PC與FX系列PLC的傳輸應答過程,利用VB的MSComm控件可以編寫如下通信程序實現PC與FX系列PLC之間的串行通信,以完成數據的讀取。MSComm控件可以采用輪詢或事件驅動的方法從端口獲取數據。在這個例子中使用了輪詢方法。

         1)通信口初始化

          Private Sub Initialize()

          MSComm1.CommPort =1

          MSComm1.Settings = “9600,E,7,1”

          MSComm1.InBufferSize = 1024

          MSComml.OutBuffersize = 1024

          MSComm1.InputLen = 0

          MSComml.InputMode = comInputText

          MSComm1.Handshaking = comNone

          MSComm1.PortOpen = True

          End Sub

          2)請求通信與確認

          Private Function MakeHandshaking()As Boolean

          Dim InPackage As String

          MSComml.OutBufferCount = 0

      MSComml.InBufferCount = 0

      MSComml.OutPut = Chr(&H5)

      Do

      DoEvents

      Loop Until MSComml.InBufferCount = 1

      InPackage = MSComml.Input

      If InPackage = Chr(&H6) Then

      MakeHandShaking = True

      Else

      MakeHandshaking = False

      End If

      End Function

      3)發送命令報文

      Private Sub Sendframe ()

      Dim Outstring As String

      MSComml.OutBufferCount = 0

      MSComml.InBufferCount = 0

      Outstrin = Chr(&H2)+″on″+″10F604″+Chr(&H3)+″74″

      MSComml.Output = Outstring

      End Sub

      4)讀取應答報文

      Private Sub Receiveframe()

      Dim Instring As String

      Do

      DoEvents

      Loop Until MSComml.InBufferCount = 12

      InString = MSComml.Inpult

      End Sub

       

      下一篇: PLC、DCS、FCS三大控

      上一篇: 索爾維全系列Solef?PV

      推薦產品

      更多
      主站蜘蛛池模板: 亚洲综合av一区二区三区不卡 | 国产综合成人久久大片91| 五月婷婷综合在线| 日韩亚洲国产综合久久久| 一本大道道无香蕉综合在线| 中文字幕色综合久久| 亚洲综合视频在线观看| 国产精品亚洲综合专区片高清久久久| 激情五月激情综合网| 色综合小说天天综合网| 亚洲婷婷天堂在线综合| 激情综合色五月六月婷婷| 天天躁夜夜躁狂狂躁综合| 亚洲国产成人久久综合区| 亚洲人成综合网站7777香蕉| 久久99精品久久久久久综合| 六月婷婷综合激情| 亚洲熟女综合一区二区三区| 久久综合噜噜激激的五月天| 久久综合色之久久综合| 婷婷丁香五月天综合东京热 | 情人伊人久久综合亚洲| 国产综合久久久久鬼色| 亚洲 欧洲 日韩 综合在线| 狠狠色丁香婷综合久久| 伊人久久大香线焦AV综合影院| 三级韩国一区久久二区综合| 国产成人综合野草| 国产成人99久久亚洲综合精品| 青青草原综合久久大伊人导航| 亚洲AV综合永久无码精品天堂| 亚洲色偷偷综合亚洲av78| 色婷婷天天综合在线| 久久久久久久综合综合狠狠| 国产成人亚洲综合一区| 亚洲人成人伊人成综合网无码| 99久久综合精品五月天| 狠狠人妻久久久久久综合蜜桃| 亚洲中文字幕无码久久综合网| 亚洲国产综合专区电影在线| 久久婷婷色香五月综合激情|