欧美成人黄色网_欧美精品久久_国产在线一区二区三区_免费视频久久久_亚洲二区视频_欧美大片免费高清观看

產品分類

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

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

Vb6.0 實現計算機和三菱PLC的通信

發布日期:2022-04-22 點擊率:78 品牌:信捷_XINJIE

一、引言

    在工業生產中,人們常常面臨著數據采集與管理。作為工廠自動化的三大支柱可編程控制器PLCProgrammable Logic Controller),由于其安全可靠,廣泛的用于數據采集與控制。生產過程中,要監視PLC內部的數據與運行狀況,選用市場上的人機界面或組態軟件,雖然功能豐富,但大都價格昂貴,在一些中小規模的生產場合,人們希望能自己用高級語言開發一個簡易實用的通信程序。微軟公司推出的Visual Basic 6.0,開發串行通信程序時,有兩種方法,一種是用WINOOWs API函數,另一種是用VB支持的通信控件MSCOMM.OCX。利用WINOOWs API函數是通過調用讀寫等函數來操作串口。兩種比較,使用MSCOMM.OCX控件編程方便,具有更完善的發送和接收功能。這里采用了MSCOMM.OCX控件。

本文根據杭州某包裝材料公司原料配料控制系統為背景,簡述實現計算機與三菱FX系列PLC通信的實現過程。

 

二、硬件與選型

日本三菱公司是國際著名的工廠自動化設備制造商,工業可編程控制器在國內市場占有率一直保持前列。項目選用三菱FX2N-64MRPLCSC-09電纜作為計算機與PLC通信的連線。連接電纜的9針端連接在計算機串口上,另一端連接在PLCRS-422編程口。

三、軟件編程

    軟件設計主要包括PLC梯形圖設計和計算機VB程序、數據庫設計。計算機操作系統為WINOOWs98,編程語言用Visual Basic 6.0,數據庫選用Access97,梯形圖程序在三菱PLC編程軟件GPPWIN 軟件環境設計。上位機軟件實現計算機對PLC內部數據讀取、寫入參數和保存數據到數據庫。

三菱FX2NPLC編程口通信協議如下:

命令

命令字

控制元件

     備注

讀元件

0

X,Y,M,S,T,C,D

讀字/位元件狀態

寫元件

1

X,Y,M,S,T,C,D

寫字/位元件狀態

置位

7

X,Y,M,S,T,C

位元件置位

復位

8

X,Y,M,S,T,C

位元件復位

      通信格式:

 起始符

命令字

首地址

數據區

結束符

和校驗

      波特率9600,偶校驗,8位數據位,一位停止位。

   在新建工程的表單上添加MSCOMM.OCX控件,初始化程序:

     Private Sub Form_Load()

     MSComm1.CommPort = 1 '選擇COM1

     MSComm1.Settings = "9600,e,7,1" 

     End Sub

    數據讀取子程序:

Public Function GetData(ByVal StartAddress As String, ByVal GetBytes As Integer, ByVal Hex_Bytes As String) As String

  MSComm1.InputLen = GetBytes * 2 + 4

  MSComm1.Output = STX + CMD_Read + StartAddress + Hex_Bytes + ETX + GetSumChk(CMD_Read + StartAddress + Hex_Bytes + ETX)

   ‘傳送數據組成:起始符+命令+首地址+數據位+結束符+和檢驗碼

  GetData = MSComm1.Input

  MSComm1.InBufferCount = 0

  MSComm1.InputLen = 0

End Function

    如需讀取數據,通過調用GetData子程序。

    參數設置程序可參考讀取子程序,只是改變命令而已。

Access97數據庫中包含三個表單,包括參數表、記錄表、報警記錄表。

通過如下子程序是將實際稱量值(記錄表)更新到數據庫:

 

Private Sub SaveData()

Dim i As Integer

Dim valid As Boolean

On Error Resume Next

valid = True

Data1.Recordset.AddNew

Data1.Recordset.Fields("dtime") = TimeSerial(OnHour, OnMinute, OnSecond)

Data1.Recordset.Fields("systime") = Time      ‘系統時間

Data1.Recordset.Fields("get_xl") = LF(1)      ‘小料當前稱量值

Data1.Recordset.Fields("get_fjs") = LF(2)       ‘方解石當前稱量值

Data1.Recordset.Fields("get_cs") = LF(3)      ‘長石當前稱量值

Data1.Recordset.Fields("get_sys") = LF(4)      ‘石英砂當前稱量值

Data1.Recordset.Fields("get_cj") = LF(5)        ‘純堿當前稱量值

On Error Resume Next

Data1.Recordset.Update                    ‘更新數據庫記錄

Data1.Recordset.MovePrevious

End Sub

程序中,LF(i)變量對應為圖二系統參數表單中實稱值。

保存參數子程序只是對數據庫操作,程序結構可參考以上子程序。

上位機與PLC通信質量的好壞,對系統的安全可靠運行影響極大,因此,編寫程序時,除了在兩者之間的通信協議上保持絕對一致和采取相應的容錯技術外,還要考慮系統的整體容錯技術,防止系統的不正常。

四、結束語

    串行通信是目前計算機與其他設備之間通信廣泛采用的方式之一,傳送數據準確,程序穩定運行是系統開發的主要目的。本設計中充分利用計算機和PLC的資源,在幾乎不增加設備開支的情況下成功的實現上位機與PLC之間的通信

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

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

推薦產品

更多
主站蜘蛛池模板: 久久久国产精品亚洲一区 | 午夜精品一区二区三区免费视频 | 久久精品国产一区二区小说 | 欧美激情一区二区三区免费观看 | 最新中文字幕在线播放 | 涩色婷婷狠狠第四四房社区奇米 | 97国产精华最好的产品亚洲 | www.国产精品 | 色成人综合 | 久久青草国产免费观看 | 精品久久亚洲中文无码 | 在线a人片免费观看不卡 | 色婷婷av99xx | 草草在线免费视频 | 久久se精品一区精品二区 | 亚洲日韩中文无码久久 | 亚洲欧美综合在线观看 | 亚洲国产成人久久99精品 | 女教师淫辱の教室在线 | 亚洲国产精品乱码在线观看97 | 粉嫩呦福利视频导航大全 | 国产97视频在线观看 | 亚洲综合久久精品无码色欲 | 成人福利免费在线观看 | 日韩高清国产一区在线 | 亚洲一区二区三区中文字幕 | 免费无码av片在线观看播放 | 99热久久国产这里是精品 | 国产精品久久久久久久久久日本 | 欧美精品 在线观看 | 国产裸拍裸体视频在线观看 | 99v久久综合狠狠综合久久 | 久久久久久久亚洲av无码 | 杨幂视频 国产在线 | 久久久久久久性高清毛片 | 久久日韩精品中文字幕网 | 人妻妺妺窝人体色www聚色窝 | 国语对白嫖老妇胖老太 | 国产在线视频www色 国产在线视频第一页 | 91成人精品 | 欧美极品jizzhd欧美 |