您好, 歡迎來到化工儀器網(wǎng),! 登錄| 免費(fèi)注冊| 產(chǎn)品展廳| 收藏商鋪|
提供商
潯之漫智控技術(shù)(上海)有限公司資料大小
141.7KB資料圖片
查看下載次數(shù)
0次資料類型
JPG 圖片瀏覽次數(shù)
59次西門子ET200 IO模塊6ES7141-6BF00-0AB0現(xiàn)貨供應(yīng)
計算機(jī)通信論文計算機(jī)算論文:
基于VB通信控件MSComm實(shí)現(xiàn)計算機(jī)與歐姆龍PLC串行通信編程的研究與應(yīng)用
摘要:主要闡述了如何在VB(Visual Basic)編程環(huán)境下利用MSComm通信控件實(shí)現(xiàn)計算機(jī)與歐姆龍PLC進(jìn)行串行通信的編程技術(shù)。
關(guān)鍵詞:MSComm控件,;串行通信
0引言
計算機(jī)串行通信是計算機(jī)與控制設(shè)備(PLC)進(jìn)行數(shù)據(jù)傳送的一種通信方式,,也是實(shí)現(xiàn)工業(yè)自動控制經(jīng)常用到的通信模式。每一種通信方式都嚴(yán)格約定了與其對應(yīng)的通信協(xié)議,。要確保計算機(jī)與P L C之間能正常通信,,就必須遵照PLC通信協(xié)議編寫通信程序。本文將圍繞如何使用VisualBasic(簡稱VB)的MSComm通信控件編寫計算機(jī)與歐姆龍PLC串行通信程序進(jìn)行闡述,。
1串行通信
串行通信在工業(yè)系統(tǒng)控制的范疇中一直占據(jù)著極其重要的地位,,串行端口(RS-232)是計算機(jī)上的標(biāo)準(zhǔn)配置,常用于連接調(diào)制解調(diào)器來傳輸數(shù)據(jù),,在計算機(jī)的硬件設(shè)備管理器中可以看到,,定義為COM1,、COM2等。常用的串行通信方式有兩種,,分別是RS-232和RS-485,,本文以RS-232方式為例進(jìn)行介紹。
2 VB集成開發(fā)環(huán)境中MSComm通信控件的使用與設(shè)置
2.1 Visual Basic集成開發(fā)環(huán)境
V B采用了面向?qū)ο蟮某绦蛟O(shè)計思想,。它的基本思路是把復(fù)雜的程序設(shè)計問題分解為一個個能夠完成獨(dú)立功能的相對簡單的對象集合,,所謂“對象"就是一個可操作的實(shí)體,如窗體,、窗體中的命令按鈕,、標(biāo)簽、文本框等,。面向?qū)ο蟮木幊叹秃孟翊罘e木一樣,,程序員可根據(jù)程序和界面設(shè)計要求,直接在屏幕上“畫\"出窗口,、菜單,、按鈕等不同類型的對象,并為每個對象設(shè)置屬性,。
2.2串行通信控件MSComm的使用和設(shè)置
VB提供了支持串行通信的可編程組件MSComm,,用戶只需要將其加載到應(yīng)用程序中,對其進(jìn)行簡單的屬性設(shè)置即“可使用?,F(xiàn)將控件的加載及屬性設(shè)置方法進(jìn)行介紹,。
2.2.1將MSComm控件加載到應(yīng)用程序中
在VB集成開發(fā)環(huán)境(IDE)中選擇“工程"選項卡中的“部件"子菜單進(jìn)入控件選擇頁面。
在控件選擇頁面中選上Microsoft Comm Cotrol 6.0控件加載項,,單擊“確定"按鈕完成MSComm控件的加載,。
當(dāng)完成MSComm控件的加載后,在IDE中的常規(guī)控件欄即可看到MSComm控件,,此時就可使用此控件了,。
2.2.2 MSComm控件屬性設(shè)置
當(dāng)應(yīng)用程序成功添加MSComm控件后,就可在其屬性設(shè)置頁面完成其屬性的設(shè)置,,如圖4所示,。在一般的串行通信應(yīng)用程序中只需要對MSComm控件的如下幾個屬性進(jìn)行設(shè)置。
CommPort:通信程序使用的串口序號,,根據(jù)計算機(jī)的串口硬件配置進(jìn)行選擇,,可以為1、2等,。
Settings:屬性設(shè)置字符串,,屬性有:波特率、奇偶校驗(yàn)、字節(jié)數(shù)據(jù)位數(shù),、字節(jié)停止位數(shù),。可以為9600,、e,、7、2,。也可在程序中動態(tài)設(shè)置,,屬性設(shè)置程序代碼如下:
3 PLC通信數(shù)據(jù)幀介紹
計算機(jī)與P L C通信時,按應(yīng)答方式進(jìn)行,。由計算機(jī)發(fā)給PLC一組ASCII碼字符數(shù)據(jù),,這一組數(shù)據(jù)成為命令幀。P L C對收到的命令幀進(jìn)行校驗(yàn),,并將校驗(yàn)結(jié)果返回給計算機(jī),,P L C返回給計算機(jī)的這一組數(shù)據(jù)稱為響應(yīng)幀,只有當(dāng)校驗(yàn)正確時P L C才按照命令執(zhí)行,。計算機(jī)和P L C通信時,,PLC是被動的,必須先由計算機(jī)給PLC發(fā)出命令幀,,PLC再給計算機(jī)發(fā)出響應(yīng)幀,每幀最多由1 3 1個字符組成,。下面將命令幀與響應(yīng)幀的組成結(jié)構(gòu)介紹如下:
3.1命令幀
幀結(jié)構(gòu)解析:
@:在起始處必須放置,;
節(jié)點(diǎn)號:有效值為00~31,表示PC機(jī)最多可同32臺PLC通信,;
頭代碼:PLC的命令代碼,;
發(fā)送文本:P C機(jī)發(fā)送的命令參數(shù);
FCS(Frame Check Sequence):
幀檢查順序代碼(幀校驗(yàn)碼),;幀校驗(yàn)碼是2位(Bit)十六進(jìn)制數(shù),。它是由幀數(shù)據(jù)包含的所有字符的ASCII碼進(jìn)行位異或運(yùn)算的結(jié)果。
終止符:“*"號和回車符“CR",。
3.2響應(yīng)幀
幀結(jié)構(gòu)解析:
@:返回命令頭,;
節(jié)點(diǎn)號:有效值為00—31,返回數(shù)據(jù)的PLC節(jié)點(diǎn)號
頭代碼:PLC的命令代碼,;
尾代碼:返回命令完成狀態(tài)碼,;
接收文本:在有數(shù)據(jù)時返回的數(shù)據(jù);
FCS:幀檢查順序代碼,;
終止符:“*"號和回車符“CR",。
3.3 FCS(幀數(shù)據(jù)冗余校驗(yàn)碼)的計算
為了降低串行通信的誤碼率,在接收和發(fā)送端都必須對數(shù)據(jù)進(jìn)行校驗(yàn),,常用的方法是進(jìn)行F C S校驗(yàn),。對幀數(shù)據(jù)進(jìn)行冗余校驗(yàn)計算時,,應(yīng)對幀數(shù)據(jù)中各個字符的ASCII碼進(jìn)行位異或運(yùn)算,然后將結(jié)果轉(zhuǎn)為2位十六進(jìn)制字符,。
請輸入賬號
請輸入密碼
請輸驗(yàn)證碼
以上信息由企業(yè)自行提供,,信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性由相關(guān)企業(yè)負(fù)責(zé),,化工儀器網(wǎng)對此不承擔(dān)任何保證責(zé)任,。
溫馨提示:為規(guī)避購買風(fēng)險,建議您在購買產(chǎn)品前務(wù)必確認(rèn)供應(yīng)商資質(zhì)及產(chǎn)品質(zhì)量,。