国产精品久久久久久久久软件,国产成人久久久精品二区三区,国产成人无码一区二区三区在线 ,大又大粗又爽又黄少妇毛片,国产精品成人aaaaa网站

首頁(yè) 新聞 工控搜 論壇 廠商論壇 產(chǎn)品 方案 廠商 人才 文摘 下載 展覽
首 頁(yè) 新聞動(dòng)態(tài) 產(chǎn)品中心 方案與應(yīng)用 技術(shù)文摘 資料下載 關(guān)于我們 臺(tái)達(dá)網(wǎng)站 在線視頻
VB與臺(tái)達(dá)觸摸屏通信的實(shí)現(xiàn)

中達(dá)電通股份有限公司
收藏本文     查看收藏
中達(dá)電通PLC產(chǎn)品處 王乃全
摘要:本文重點(diǎn)討論MODBUS ASCII通信協(xié)議及通過(guò)VB如何實(shí)現(xiàn)與臺(tái)達(dá)觸摸屏的通信。對(duì)于Visual Basic6編程語(yǔ)言亦有簡(jiǎn)要的介紹。
關(guān)鍵詞:Visual Basic    MODBUS ASCII   HMI
1 引言
    在自動(dòng)化工程集成中經(jīng)常遇到VB與觸摸屏通信問(wèn)題。對(duì)于不同的MODBUS通信協(xié)議觸摸屏產(chǎn)品,無(wú)論是通信協(xié)議和VB中的編程原理都是一樣的,所不同的僅是MODBUS在PLC和HMI中的地址映射不一樣。為了集中解決這個(gè)問(wèn)題,本文以臺(tái)達(dá)觸摸屏通訊案例為背景,采用了一個(gè)比較簡(jiǎn)單的實(shí)例描述如何建立雙方的通信,不涉及到更為復(fù)雜的VB與HMI的操作和編程技巧。
2 串行通信基本概念
2.1通信的種類
    通常通信的形式可以分為兩種,并行通信(Parallel Communication)和串行通信(Serial Communication)。所謂并行,既是一次傳輸量為8位;而串行一次只傳1位。這兩種不同的通信模式如圖1所示。

2.2串行通信
    常用的串行通信也有兩種,分別位RS-232和RS-485。
(1)RS-232通訊。RS-232的信號(hào)準(zhǔn)位乃是參考地線而來(lái)的,如圖2所示,傳輸端參考接地端1來(lái)傳送數(shù)據(jù);接收端則參考接地端2還原出傳送端的信號(hào)準(zhǔn)備。

    由圖2可知,由于兩個(gè)接地端準(zhǔn)位不一定一樣,而且很容易受到干擾,所以信號(hào)在RS-232線路傳輸時(shí),很容易產(chǎn)生錯(cuò)誤。
 
(2)RS-485通訊。RS-485的信號(hào)傳輸方式如圖3所示。

    RS-485的信號(hào)將被傳送出去時(shí)會(huì)分成正負(fù)兩條線路,當(dāng)?shù)竭_(dá)接收端后,在將信號(hào)相減還原成原來(lái)的信號(hào);如果將原始的信號(hào)表示成(DT),而被分成的信號(hào)分別標(biāo)示成(D+)及(D-),則DT= (D+)-(D-)
同樣地,接收端在接收到信號(hào)后,也依據(jù)上式還原成原來(lái)的樣子。如果線路受到干擾,兩條線路的信號(hào)分別為(D+)+Noise   (D-)+Noise。接收端還原信號(hào)為
(DT)= [(D+)+Noise]-[ (D-)+Noise]
與先前結(jié)果一樣,所以RS-485可以有效的防止噪聲的干擾。
3 Visual Basic控件
    VB是微軟的窗口軟件,提供了很多接口成員。對(duì)象、屬性、事件、方法就是四個(gè)重要的接口。
3.1卷標(biāo)控件
    此控件專用于顯示文字,數(shù)字用,顯示如圖4所示。

3.2按鈕控件
    此控件使用率很高,提供一個(gè)供系統(tǒng)用戶操作用的按鈕,如圖5所示。

3.3定時(shí)器控件
    此控件的最大作用在于固定的時(shí)間內(nèi)會(huì)執(zhí)行所設(shè)置的程序代碼一次,如圖6所示。VB還提供了大量的控件,在此不一一敘述。

3.4MScomm控件
    要完成VB與PLC等串行設(shè)備的通信,MScomm控件是一個(gè)很好用的控件。所以在此有必要對(duì)MScomm控件做一個(gè)較為詳細(xì)的說(shuō)明。MScomm非標(biāo)準(zhǔn)控件,要手動(dòng)添加,步驟如下:選擇菜單的【工程】;選擇【部件】;在彈出的對(duì)話框中做如圖選擇,在部件選項(xiàng)卡就會(huì)出現(xiàn)MScomm控件,如圖7所示。MScomm控件基本屬性如圖8所示。

4 MODBUS ASCII通訊協(xié)議(案例)
    Modbus總線通訊協(xié)議 分為ASCII和RTU兩種。ASCII采用的格式和校驗(yàn)相對(duì)簡(jiǎn)單,本文采用ASCII格式,并僅對(duì)使用的功能碼進(jìn)行說(shuō)明,更多的信息,請(qǐng)參看協(xié)議的詳細(xì)說(shuō)明。
4.1 通信格式
STX
起始字符 “:”(3AH)
ADR 1
通信地址(站號(hào))采用2個(gè)字符
 
ADR 0
CMD 1
功能碼。采用2個(gè)字符
CMD 0
DATA(0)
數(shù)據(jù)項(xiàng)
DATA(1)
……….
DATA(n-1)
LRC CHK 1
LRC 校驗(yàn)碼。采用2個(gè)字符
 
LRC CHK 0
END 1
結(jié)束字符。采用2個(gè)字符。
END 1 = CR(0DH),END 0 = LF(0AH)
4.2LRC算法
    ADR H+CMD H+DATA H,然后取2的補(bǔ)碼
4.3 功能碼

05, 寫(xiě)入線圈

格式
例子(十六進(jìn)制)
字頭
3A
站號(hào)
01
功能碼
05
地址
05
 
00
寫(xiě)入狀態(tài)
FF
 
00
LRC 碼
F6

01, 讀線圈狀態(tài)

格式
例子 (十六進(jìn)制)
字頭
3A
站號(hào)
01
功能碼
01
起始地址
06
 
14
讀取數(shù)目
00
 
25
LRC 碼
BF

06, 寫(xiě)入單個(gè)字寄存器
格式
例子(十六進(jìn)制)
字頭
3A
站號(hào)
01
功能碼
06
寄存器地址
06
 
00
寫(xiě)入的資料
12
 
34
LRC 校驗(yàn)碼
AD
5 VB與臺(tái)達(dá)HMI通信的實(shí)現(xiàn)(案例)
5.1 控制要求
   (1)PC能控制HMI中某個(gè)位地址的啟動(dòng)、停止。
   (2)在HMI上對(duì)某個(gè)內(nèi)部寄存器進(jìn)行數(shù)值修改操作,在PC上能同步顯示。
5.2設(shè)計(jì)思路
   (1)PC控制的內(nèi)部地址為$2000.0,查看映射表,知道為MODBUS地址為B00001。在PC上按功能碼05操作。
   (2)HMI上寫(xiě)入的寄存器地址為$0,查看映射表,知道為MODBUS地址為W40001。在PC上按功能碼03操作。
   HMI內(nèi)部地址與MODBUS地址映射表   
MODBUS ADDRESS
HMI ADDRESS
描述
W40001~W41024
$0~$1023
內(nèi)部寄存器
W42001~W43024
$M0~$M1023
斷電保持內(nèi)部寄存器
W44001
RCPNO
配方編號(hào)寄存器
W45001~……..
RCP0~RCPn
配方寄存器
B00001~B01024
$2000.0~$2063.15
內(nèi)部寄存器(bit)
B01025~B02048
$M200.0~$M263.15
斷電保持內(nèi)部寄存器(bit)
5.3 VB接口的設(shè)計(jì)
用按鈕控制$2000.0的啟動(dòng)停止;
用timer組件不停的讀取$0的顯示值(十六進(jìn)制顯示,可以轉(zhuǎn)換為十進(jìn)制);
用MScomm控件實(shí)現(xiàn)PC與PLC的通信。
5.4代碼構(gòu)成
   (1)LRC算法校驗(yàn)的實(shí)現(xiàn):
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)讀取$0,也就是W40001數(shù)值:
Private Sub Timer1_Timer()
MSComm1.Output = ":" + "010300000001" + LRC("010300000001") + Chr$(13) + Chr$(10)
'MSComm1.Output = ":" + "00050500FF00" + LRC("00050500FF00") + Chr$(13) + Chr$(10)
inputstring = MSComm1.Input
Text1.Text = Mid(inputstring, 8, 4)
End Sub
(3)控制$2000.0 ON:
Private Sub Command1_Click()
MSComm1.Output = ":" + "00050000FF00" + LRC("00050000FF00") + Chr$(13) + Chr$(10)
End Sub
(4)控制$2000.0 OFF:
Private Sub Command2_Click()
MSComm1.Output = ":" + "000500000000" + LRC("000500000000") + Chr$(13) + Chr$(10)
End Sub
 
(5)HMI中的程序與設(shè)置如圖9所示(要注意【人機(jī)站號(hào)】與【控制器】的設(shè)置):

6 結(jié)束語(yǔ)
    VB語(yǔ)言使用的簡(jiǎn)易為眾多工程技術(shù)人員與串行設(shè)備的通信提供了很大的方便。
    臺(tái)達(dá)觸摸屏采用標(biāo)準(zhǔn)的MODBUS協(xié)議,這一協(xié)議目前廣為流行,為大家所熟知,也為大家最終實(shí)現(xiàn)通信提供了簡(jiǎn)化的平臺(tái)。由于臺(tái)達(dá)所有的機(jī)電產(chǎn)品都支持MODBUS協(xié)議,所以,掌握了VB與觸摸屏通信過(guò)程,也就等于掌握了PC與臺(tái)達(dá)所有機(jī)電產(chǎn)品的通信。
參考文獻(xiàn)
[1]VB與RS-232通信實(shí)例.
[2]VB6從入門到精通.
[3]DOP系列人機(jī)界面應(yīng)用技術(shù)手冊(cè).
[4]DVP-Protocal.

 
 
臺(tái)達(dá)相關(guān)文摘:
臺(tái)達(dá)電梯一體機(jī)IED電梯一體化控制系統(tǒng)設(shè)計(jì)
臺(tái)達(dá)機(jī)電產(chǎn)品在晶體切斷機(jī)上的應(yīng)用
臺(tái)達(dá)AH10SCM通訊擴(kuò)展模塊的Modbus高級(jí)功能詳解
臺(tái)達(dá)第三代無(wú)功補(bǔ)償裝置SVG的推廣價(jià)值
臺(tái)達(dá)CP2000高效節(jié)能穩(wěn)戰(zhàn)供熱前線
靜止無(wú)功發(fā)生器SVG技術(shù)說(shuō)明
基于臺(tái)達(dá)PLC和HMI的換熱站系統(tǒng)設(shè)計(jì)
臺(tái)達(dá)PLC強(qiáng)化船舶安全性
中達(dá)電通新型模塊化箱體及安裝的LCD液晶顯示單元
璀璨靚麗的中達(dá)電通LED電子顯示屏系統(tǒng)
噴墨印花--建陶印刷技術(shù)的一大革新
臺(tái)達(dá)A2伺服常用術(shù)語(yǔ)大解析
更多臺(tái)達(dá)文摘...
通過(guò)中華工控網(wǎng)在線留言中達(dá)電通股份有限公司:
用戶名: 密碼: 免費(fèi)注冊(cè)為中華工控網(wǎng)會(huì)員
請(qǐng)留下您的有效聯(lián)系方式,以方便我們及時(shí)與您聯(lián)絡(luò)
 
中華工控網(wǎng) GKong.com制作發(fā)布 廣告聯(lián)系