无码中文字幕色专区_91av俱乐部_无码人妻h动漫_26uuu成人_91九色丨porny丨国产jk_青青视频在线播放_国内自拍第二页_国产又粗又长又爽又黄的视频_色哟哟免费网站_久久出品必属精品_a级黄色一级片_99日在线视频

首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
首頁 | 公司簡介 | 聯系方式 | 公司動態 | 產品 | 供應 | 應用實例 | 下載 | 文摘 | 誠聘
基于VB的臺達PLC與監控計算機的串行通信實現

中達電通股份有限公司
收藏本文     查看收藏
----中達電通上海機電PLC產品處 王乃全


Implementation of Serial Communication Between Monitoring Computer and Delta PLC Based on Visual Basic
Wang Naiquan

摘要:PLC直接與現場控制層的檢測儀器儀表設備連接,是底層控制網絡的組成部分,是工廠自動化系統的基石,因此實現與監控層計算機的通信對系統的優化運行有重要意義。文章基于VB討論臺達DVP PLC與監控計算機的通信問題。

關鍵詞:VB 通信協議 可編程控制器

Abstract: The PLC is a composing part of Infranet, it links to the measuring instrument and device in field control layer directly, and is the footstone of factory automation system. Therefore it is very important to realize the communication between PLC and monitoring layer computer for optimization of syste running. The paper discussed the related communication problems between Delta DVP PLC and monitoring computer based on Visual Basic.
Key Words: Visual Basic Communication protocal Programable logic controller

[中圖分類號] TP273 [文獻標識碼] B 文章編號

1 引 言
現場設備層中的設備種類繁多,有傳感器、啟動器、驅動器、I/O部件、變送器、閥門等等,當然也包括現場檢測儀器儀表設備。PLC是現場設備控制層不可缺少的部分,已經非常普及,如何簡便地實現與PLC的交互已經成為眾多廠商新的競爭戰場。由此產生了人機界面等軟件產品,這些產品的出現簡化了對PLC的控制、操作,使PLC的應用更加方便;但也有其共同的缺點,價格普遍偏高和可二開發性較差。VB作為“原始”的編程語言在這兩方面無疑有著明顯優勢的,本文結合一個簡單的案例,用比較基礎的概念討論如何通過VB實現PC與PLC之間的通信問題,這對剛涉步控制領域的工程師或許是有幫助的。在現場設備層中各式各樣的設備都可以和計算機聯機,而最簡單的自動化聯機方式就是使用串行通信,VB提供了串行通信控件可以讓開發者開發出串行通信的系統程序,以下是對相關問題的粗略討論。

2 串行通信基本概念
數據通訊中有兩種類型的通信形式,即并行通信(Parallel Communication)和串行通信(Serial Communication)。例如,如果有8位數據需要傳送,那么并行通信一次就可以完成8位的傳輸量;而串行一次只能傳送1位。圖1表示了兩種不同的通信模式,常用的串行通信也有兩種,分別為RS-232和RS-485。

按此在新窗口瀏覽圖片

按此在新窗口瀏覽圖片

2.1 RS-232 串行通信
RS-232的信號準位是參考地線而言的,如圖2所示。相對于參考接地端1傳輸端傳送數據;接收端則相對于參考接地端2復現出傳送端的傳送的數據。

按此在新窗口瀏覽圖片
圖2 RS-232 串行通信示意圖

由圖2可知,由于兩個接地端準位不一定一樣,而且很容易受到干擾,所以信號在RS-232線路傳輸時,很容易產生錯誤。

2.2 RS-485串行通信
RS-485的信號傳輸方式如圖3所示。

按此在新窗口瀏覽圖片

RS-485的信號被傳送出去時會分成正負兩條線路,當到達接收端后,在將信號相減還原成原來的信號;如果將原始的信號表示成(DT),而被分成的信號分別標示成(D+)及(D-),則DT=(D+)-(D-)。同理,接收端在接收到信號后,也依據上式還原成原來的樣子。如果線路受到干擾,兩條線路的信號分別為(D+)+Noise與(D-)+Noise。接收端還原信號為(DT)= [(D+)+Noise]-[(D-)+Noise],與先前結果一樣,所以RS-485可以有效的防止噪聲的干擾。

3 VB的基本概念
VB(Visual Basic)是微軟的窗口軟件,提供了很多接口成員,對象、屬性、事件、方法就是4個重要的接口,VB提供了許多常用的控件。
3.1卷標控件
卷標控件如圖4(a)所示,該控件專用于顯示文字、數字用,顯示如圖4(b)所示

按此在新窗口瀏覽圖片

3.2 按鈕控件
按鈕控件如圖5(a)所示,該控件使用率很高,提供一個供系統用戶操作用的按鈕,如圖5(b)所示。

按此在新窗口瀏覽圖片

3.3 定時器控件
定時器控件如圖6所示,該控件的最大作用在固定的時間內可執行所設置的程序代碼一次。


按此在新窗口瀏覽圖片
VB提供了大量的控件,在此不再多述。

4 基于MScomm控件的串行通信
要完成VB與PLC等設備的串行通信要用到MScomm控件, 在此有必要對該控件作較詳細的說明。Mscomm是一個非標準控件,需要要手動添加許多項目,其步驟如下。
1) 選擇菜單的【工程】
2) 選擇【部件】
3) 在彈出的對話框中做如圖7的選擇。

按此在新窗口瀏覽圖片
圖7 對話框界面


4)如圖8所示,在部件選項卡就會出現MScomm控件。

按此在新窗口瀏覽圖片
圖8 MScomm控件

5)基本屬性

按此在新窗口瀏覽圖片

4.1 MODBUS ASCII
Modbus 分為ASCII和RTU兩種,ASCII采用的格式和校驗相對簡單,本文采用ASCII格式,并僅對使用的功能碼進行說明,更多的信息,請參看協議的詳細說明。
1)通信格式

按此在新窗口瀏覽圖片

LRC算法:ADR H+CMD H+DATA H,然后取2的補碼。
2)功能碼
05,寫入線圈

按此在新窗口瀏覽圖片

01,讀線圈狀態

按此在新窗口瀏覽圖片


06,寫入單個字寄存器

按此在新窗口瀏覽圖片

4.2 VB與PLC通信的實現
以下舉例說明現場設備與PLC通信的實現。
1)控制要求:控制PLC的起動、停止,并顯示運行狀態(綠色為運行,紅色為停止);能夠用交替型按鈕控制Y0,Y1,并用指示燈顯示Y0,Y1狀態(綠色為運行,紅色為停止);能夠對D256,D512兩個寄存器進行數值寫入的操作。
2)實現思路:PLC起動停止的標志位為M1072,查DVP協議,知道地址為H0C30,按功能碼01操作; 同樣Y0,Y1的地址分別為H0500,H0501。寫入FF00為ON,0000為OFF,按功能碼05操作;D256,D512地址分別為H1100,H1200,按功能碼06操作即可。
3)VB接口的設計如圖10所示。


按此在新窗口瀏覽圖片
圖10 監控程序界面

用按鈕控制PLC的起動停止,Y0、Y1的ON/OFF及D256、D512寫完數據的發送;用Shape組件做指示燈,表示PLC的運行狀態和Y的狀態;用timer組件不停的讀取M1072的狀態,以判斷PLC的運行情況;用MScomm控件實現PC與PLC的通信。
4)編程實現的代碼構成
(1) LRC算法校驗的實現
Public Function LRC(str As String) As String
c = 0
l = Len(str)
For c = c + 1 To l
c_data = Mid$(str, c, 2)
d_lrc = d_lrc + Val("&H" + c_data)
c = c + 1
Next c
If d_lrc > &HFF Then
d_lrc = d_lrc Mod &H100
End If
h_lrc = Hex(&HFF - d_lrc + 1)
If Len(h_lrc) > 2 Then
h_lrc = Mid(h_lrc, Len(h_lrc) - 1, 2)
End If
LRC = h_lrc
End Function
(2) 運行的開始就判斷PLC的狀態并設置標志位
'初次運行打開串口,并顯示PLC運行狀態
Private Sub Form_Load()
Dim s1 As String
Dim s2 As String
Dim s22 As String
Dim s3 As String
Dim s4 As String
MSComm1.PortOpen = True
s2 = "01010C300001"
s22 = LRC(s2)
s1 = ":" + s2 + s22 + Chr$(13) + Chr$(10)
MSComm1.Output = s1
s3 = MSComm1.Input
s4 = Mid$(s, 6, 8)
If s4 = "0C30FF00" Then
plc = 1 'PLC為運行標志
Else
plc = 0 'PLC為停止標志
End If
End Sub
(3) 下面一段為用指示燈表示PLC的運行狀態
Private Sub Timer5_Timer()
Dim s1 As String
Dim s2 As String
Dim s22
Dim s3 As String
Dim s4 As String
s2 = "01010C300001"
s22 = LRC(s2)
s1 = ":" + s2 + s22 + Chr$(13) + Chr$(10)
MSComm1.Output = s1
s3 = MSComm1.Input
s4 = Mid$(s3, 8, 2)
If s4 = "31" Then
plc = 1 'PLC為運行標志
Else: If s4 = "30" Then plc = 0 'PLC為停止標志
End If
If plc = 1 Then
Label2.Caption = "PLC正在運行......"
Shape1.FillColor = RGB(0, 255, 0) 'green
Else
Label2.Caption = "PLC已經停止"
Shape1.FillColor = RGB(255, 0, 0) 'red
End If
End Sub
(4) PLC的起動與停止
'起動PLC
Private Sub start_Click()
Dim strout As String
Timer5.Enabled = False
str = "00050C30FF00" 'M1072 為PLC起動停止標志位。查地址表,M1072為OC30.FF00為置
ON,0000為置OFF。
'以上都是固定格式,要牢記。
LRCC = LRC(str) '計算 str的lrc校驗碼。
strout = ":" + str + LRCC + Chr$(13) + Chr$(10) '欲傳送之數據。13為D,10為A
MSComm1.Output = strout
Timer5.Enabled = True
End Sub
'停止PLC
Private Sub stop_Click()
Dim strout As String
Timer5.Enabled = False
str = "00050C300000"
LRCC = LRC(str)
strout = ":" + str + LRCC + Chr$(13) + Chr$(10)
MSComm1.Output = strout
Timer5.Enabled = True
End Sub
Y0、Y1的ON/OFF與PLC起動/停止的控制方式相同,指示燈的表示方式也相同。D256,D512數據寫入的操作類似,限于篇幅其它代碼就不再列出了。

5 結束語
VB語言易于編程使用,為與串行設備的通信提供了很大的方便。臺達PLC采用標準的目前廣為流行的MODBUS協議,為實現PLC與監控計算機的通信提供了簡化的平臺。由于臺達所有的機電產品都支持MODBUS協議,所以,掌握了VB與PLC通信過程,也就等于掌握了PC與臺達所有機電產品的通信。

參考文獻[略]

作者簡介
王乃全(1978-),男,自動化設備工程師,主要從事PLC控制系統的開發與技術支持。

 
 
中達電通相關解決方案:
臺達堆垛機方案:精準是王道 平穩更高效
不負期望 強大性能 | 臺達ASDA-A3伺服高端應用面面說
云端漫游智能制造 低碳方案盡在眼前!
看臺達三招化解數據中心升級難
云課堂 | 聽數據中心專家開講新一代綠色微模塊
建設低碳綠色智能工廠,從優化冷水機開始!
臺達在這個智慧園區上展現的“硬功夫“和”軟實力”
臺達澆鑄控制解決方案 助力發泡橡膠制程大升級
臺達為數據托管跨國公司提供 28 MW 關鍵電力解決方案
低碳模式 綠色主張 臺達方案與你分享
臺達LED直流智能照明解決方案,點亮家門口的“指路燈”
深化“雙碳”牽引目標 臺達為智能廠務增加綠色助力
更多中達電通解決方案...
通過中華工控網在線留言中達電通股份有限公司:
用戶名: 密碼: 免費注冊為中華工控網會員
請留下您的有效聯系方式,以方便我們及時與您聯絡
 
中華工控網 GKong.com制作發布 廣告聯系
无码中文字幕色专区_91av俱乐部_无码人妻h动漫_26uuu成人_91九色丨porny丨国产jk_青青视频在线播放_国内自拍第二页_国产又粗又长又爽又黄的视频_色哟哟免费网站_久久出品必属精品_a级黄色一级片_99日在线视频
亚洲欧美日韩一区在线观看| 正在播放日韩精品| 亚洲三级精品| 99精品在线观看| 老司机久久99久久精品播放免费| 欧美中文字幕一区二区| 国产精品毛片在线| 亚洲日韩视频| 国产精品精品| 99视频精品| 国产模特精品视频久久久久| 日韩av二区在线播放| 91亚洲自偷观看高清| 亚洲影视一区| 国产91一区| 亚洲成人va| 青青国产精品| 欧美日韩精品免费观看视频完整| 99久久激情| 蜜桃精品视频| 香蕉久久一区| 国产日韩一区| 国产精品毛片aⅴ一区二区三区| 日韩在线成人| 日本不卡一区二区| 丝袜亚洲另类欧美| 麻豆91在线播放| zzzwww在线看片免费| av免费不卡国产观看| 国模精品一区| 日韩欧美精品| 欧美日韩一区二区三区四区在线观看 | 91精品在线观看国产| 不卡中文字幕| 成人免费网站www网站高清 | 国产一区日韩欧美| 国产精品www.| 激情中国色综合| 久久亚洲专区| 亚洲在线电影| 天堂va在线高清一区| 日韩国产欧美在线播放| 国产福利亚洲| 亚洲九九精品| 国产亚洲一区二区手机在线观看| 另类av一区二区| 麻豆精品在线播放| 视频一区中文| 日本一区二区高清不卡| 丝瓜av网站精品一区二区| 久久男人av| 久久久精品五月天| 亚洲一区二区免费看| 国产日韩欧美三级| 伊人久久大香线蕉av不卡| 国产精品日本一区二区三区在线| 高潮一区二区| 国产精品流白浆在线观看| 美女精品网站| 国产精品黑丝在线播放| 国产精品亚洲综合色区韩国| 黄色免费成人| 久久影院午夜精品| 国产不卡精品| 国产精品对白久久久久粗| 日韩不卡在线观看日韩不卡视频| se01亚洲视频| 精品少妇一区| 综合日韩av| 天堂√中文最新版在线| 色一区二区三区四区| 麻豆成人91精品二区三区| 久久99视频| 91欧美日韩| 日韩欧美综合| 欧美激情网址| 久久精品超碰| 青青伊人久久| 国产精品嫩模av在线| 国产精品极品| 国产精品1区| 三级欧美韩日大片在线看| 久久精品观看| 欧美日韩国产在线观看网站| 日韩理论视频| 精品三级久久| 日韩中文字幕无砖| 欧美国产另类| 欧美高清不卡| 日韩成人在线看| 日韩精品首页| 日本成人在线一区| 岛国精品一区| 在线亚洲欧美| 国产精品毛片aⅴ一区二区三区| 国产精品尤物| 免费av一区| 水野朝阳av一区二区三区| 国产黄大片在线观看| 中文字幕一区二区三区日韩精品 | 免费日韩一区二区| 亚洲一区观看| 久久在线免费| 久草精品视频| 国产毛片精品| 亚洲精品影院在线观看| 久久国产精品免费一区二区三区| 久久精品国产在热久久| 久久久噜噜噜| 美女国产精品久久久| www成人在线视频| 欧美日韩在线网站| 美女精品一区| 国产精品中文字幕制服诱惑| 国产二区精品| 国产精品久久久久久久久妇女| 国产欧美一区二区三区精品酒店 | 黄色亚洲大片免费在线观看| 91亚洲自偷观看高清| 亚洲久久视频| 国产精品xxx| 99热精品久久| 日韩av在线播放中文字幕| 国产视频一区三区| 日本欧美不卡| 欧美一区久久| 亚洲三级av| 一区二区精品| 国产欧美自拍一区| 黄色亚洲大片免费在线观看| 精品一区二区三区在线观看视频| 国产亚洲一级| 日韩一区网站| 日韩欧美精品一区| 精品捆绑调教一区二区三区| 日韩欧美中文字幕一区二区三区| 国产精品igao视频网网址不卡日韩| 欧美理论视频| 午夜在线精品| 91九色精品国产一区二区| 国产精品成人国产| 青草综合视频| 国产成人精品一区二区三区在线| 久久在线91| 亚洲国产福利| 亚洲激情中文在线| 国产调教精品| 国产精品久久久久久久久妇女| 色乱码一区二区三区网站| 亚洲精品网址| 视频一区二区中文字幕| 综合欧美精品| 久久精品毛片| 一区在线视频观看| 欧美日韩伊人| 欧美日韩视频| 国产精品1区在线| 日韩午夜电影| a天堂资源在线| 日本天堂一区| 久久国产精品亚洲77777| 高清一区二区三区av| 日韩视频久久| 日韩综合在线| 蜜乳av另类精品一区二区| 91av一区| 日韩精品一二三四| 亚洲啊v在线| 精品视频网站| 国产情侣久久| 久久精品999| 日韩激情av在线| 久久电影一区| 久久国产精品99国产| 蜜臀91精品国产高清在线观看| 精品国产午夜| 日本久久黄色| 亚洲美女久久精品| 久久久久免费| 黄色在线网站噜噜噜| 国产一区二区亚洲| 久久久久九九精品影院| 免费久久99精品国产自在现线| 黄色日韩精品| 伊人久久成人| 少妇久久久久| 精品视频91| 精品国内亚洲2022精品成人| 91亚洲成人| 国产日产精品_国产精品毛片 | 欧美精品91| 欧美日韩国产高清| 日韩精品亚洲aⅴ在线影院| 日韩精品欧美大片| 日韩综合小视频| 欧美日韩在线观看视频小说| 高清不卡亚洲| 日韩中文字幕1| 人人爽香蕉精品| 日韩高清不卡一区|