jzylcj
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 67 個
工控威望: 315 點
下載積分: 493 分
在線時間: 118(小時)
注冊時間: 2010-03-10
最后登錄: 2024-10-28
查看jzylcj的 主題 / 回貼
樓主  發(fā)表于: 2010-04-11 16:26
引言

    在工業(yè)生產中,人們常常面臨著數(shù)據(jù)采集與管理。作為工廠自動化的三大支柱可編程控制器PLC(Programmable Logic Controller),由于其安全可靠,廣泛的用于數(shù)據(jù)采集與控制。生產過程中,要監(jiān)視PLC內部的數(shù)據(jù)與運行狀況,選用市場上的人機界面或組態(tài)軟件,雖然功能豐富,但大都價格昂貴,在一些中小規(guī)模的生產場合,人們希望能自己用高級語言開發(fā)一個簡易實用的通信程序。使用Visual Basic 6.0,開發(fā)串行通信程序時,有兩種方法,一種是用Windows API函數(shù),另一種是用VB支持的通信控件MSCOMM。以下介紹使用通信控件方式實現(xiàn)通訊
1.硬件



    采用SC-09編程電纜,連接PC串口與PLC編程口實現(xiàn)通訊。




2.PLC編程口的通信協(xié)議簡介
    
    通信格式:
    
    波特率9600,偶校驗,8位數(shù)據(jù)位,一位停止位。 具體請參考有關資料,以下舉例說明其通訊格式 PLC資料網(wǎng) http://www.plcclub.com

    1)、DEVICE READ(讀出軟設備狀態(tài)值)

    計算機向PLC發(fā)送:
    

3.具體程序說明


    MSComm控件簡介用來提供簡單的串行端口通信功能,也可以用來創(chuàng)建功能完備、事件驅動的高級通信工具。Mscomm控件提供了一系列標準通信命令的使用界面。使用它可以建立與串行端口的連接,通過串行端口再連接到其它設備(如調制解調器、PLC),發(fā)出命令,交換數(shù)據(jù),以及監(jiān)視和響應串行連接中發(fā)生的事件和錯誤。

    數(shù)據(jù)讀與寫采用函數(shù)input和output

(1)窗口加載程序
    Private Sub Form_Load()
    MSComm1.CommPort = 1 ‘選擇COM1口
    MSComm1.Settings = "9600,e,7,1"
    If mscomm1.portopen=false then mscomm1.portopen=true
    End Sub

(2)數(shù)據(jù)讀取子程序:

    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)
    ‘傳送數(shù)據(jù)組成:起始符+命令+首地址+數(shù)據(jù)位+結束符+和檢驗碼
    GetData = MSComm1.Input
    MSComm1.InBufferCount = 0


    MSComm1.InputLen = 0
    End Function

)
libzch
級別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看libzch的 主題 / 回貼
1樓  發(fā)表于: 2010-11-15 17:05
學習了,好東西
劉長城
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 173 個
工控威望: 287 點
下載積分: 2377 分
在線時間: 116(小時)
注冊時間: 2009-08-27
最后登錄: 2021-04-29
查看劉長城的 主題 / 回貼
2樓  發(fā)表于: 2010-11-15 19:12
路過 頂一下
lljwtt
級別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 450 個
工控威望: 565 點
下載積分: 6331 分
在線時間: 230(小時)
注冊時間: 2008-11-14
最后登錄: 2024-09-23
查看lljwtt的 主題 / 回貼
3樓  發(fā)表于: 2010-11-16 22:35
清晰命了,學習了
趙新洲
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 169 個
工控威望: 214 點
下載積分: 19569 分
在線時間: 39(小時)
注冊時間: 2021-08-11
最后登錄: 2024-10-27
查看趙新洲的 主題 / 回貼
4樓  發(fā)表于: 2021-08-28 21:58
謝謝樓主威武
加勒比海帶
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 2272 個
工控威望: 1837 點
下載積分: 6902 分
在線時間: 64(小時)
注冊時間: 2021-07-19
最后登錄: 2024-08-05
查看加勒比海帶的 主題 / 回貼
5樓  發(fā)表于: 2021-10-22 17:08
謝謝樓主分享,
加勒比海帶
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 2272 個
工控威望: 1837 點
下載積分: 6902 分
在線時間: 64(小時)
注冊時間: 2021-07-19
最后登錄: 2024-08-05
查看加勒比海帶的 主題 / 回貼
6樓  發(fā)表于: 2021-11-05 09:13
感謝樓主無私分享