超碰激情 I 成人福利网站 I 淫国产 I 曰批视频免费30分钟成人 I 刘亦菲裸体视频一区二区三区 I 午夜久 I 尤物综合 I 亚洲一区av在线观看 I 欧美亚洲国产精品久久高清 I 欧美老熟妇乱子伦视频 I 无码中出人妻中文字幕av I 久久美女福利视频 I 精品无人区乱码1区2区3区在线 I 性饥渴的农村熟妇 I 色综合综合色 I 少妇人妻88久久中文字幕 I 久久夜色精品国产噜噜av I 老熟妇仑乱视频一区二区 I 男女做爰猛烈叫床视频动态图 I 日本大片一区二区 I 人成午夜免费视频在线观看 I 激情婷婷av I 男女下面一进一出免费视频网站 I 久久影视一区 I 午夜污网站 I 先锋人妻无码av电影 I 久久久久久久岛国免费网站 I 又粗又大又黄又硬又爽免费看 I 人妻无码免费一区二区三区 I www.色成人100 I 欧美高清网站 I 精品国产第一页 I 国产suv一区二区三区88区 I 橹图极品美女无圣光 I 午夜宅男欧美

產品分類

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

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

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

發布日期:2022-04-26 點擊率:62 品牌:三菱_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

推薦產品

更多