日本在线www-日本在线播放一区-日本在线不卡免费视频一区-日本在线不卡视频-成人影院久久久久久影院-成人影院一区二区三区

ABB
關(guān)注中國自動(dòng)化產(chǎn)業(yè)發(fā)展的先行者!
橫河電機(jī)25年9月
工業(yè)智能邊緣計(jì)算2025年會(huì)
2025工業(yè)安全大會(huì)
CAIAC 2025
OICT公益講堂
當(dāng)前位置:首頁 >> 案例 >> 案例首頁

案例頻道

基于串口的OPC通訊問題淺析
  • 企業(yè):     領(lǐng)域:工廠信息化     行業(yè):網(wǎng)絡(luò)通訊    
  • 點(diǎn)擊數(shù):370     發(fā)布時(shí)間:2011-03-18 16:19:23
  • 分享到:

    (交通運(yùn)輸部水運(yùn)科學(xué)研究院,北京 100088)原向東,亓 偉
                             
    原向東(1983-)男,碩士,現(xiàn)就職于交通運(yùn)輸部水運(yùn)科學(xué)研究所電氣自動(dòng)與通訊工程部,任研究實(shí)習(xí)員,主要從事港口碼頭自動(dòng)控制系統(tǒng)的開發(fā)研究工作。

    摘要:OPC是一個(gè)通用的工業(yè)標(biāo)準(zhǔn),為多種多樣的自動(dòng)化控制設(shè)備之間進(jìn)行通訊提供了公用的接口。基于串口的OPC通訊在一些特定情況實(shí)際應(yīng)用中遇到了數(shù)據(jù)丟失的情況,為了解決基于串口的OPC通訊問題,提出了幾點(diǎn)建議,并在實(shí)際應(yīng)用中檢驗(yàn),滿足控制系統(tǒng)要求。

    關(guān)鍵詞:OPC;串口;數(shù)據(jù)優(yōu)化

    Abstract: The OPC is a general industrial standard,and provides a communal communication interface among kinds of automatic control devices. However,data loss may appear in some of its specific practical applications. In order to solve the serial port based communication problem, some ideas are presented and applied in the practical system, which can meet the basic requirements of the control system.

    Key words: OPC; Serial Port; Data Optimization

    OPC全稱是OLE for Process Control,是過程控制業(yè)的新興標(biāo)準(zhǔn),它的出現(xiàn)為基于Windows平臺的應(yīng)用程序和現(xiàn)場過程控制應(yīng)用建立了橋梁。OPC以O(shè)LE/COM/DCOM機(jī)制作為應(yīng)用程序級的通訊標(biāo)準(zhǔn),采用客戶/服務(wù)器模式,把開發(fā)訪問接口的任務(wù)放在硬件生產(chǎn)廠家或第三方廠家,以O(shè)PC服務(wù)器的形式提供給用戶,解決了軟、硬件廠商的矛盾,完成了系統(tǒng)的集成,提高了系統(tǒng)的開放性和可互操作性。目前,OPC通訊廣泛應(yīng)用于工業(yè)控制系統(tǒng)中。港口電氣控制系統(tǒng)也廣泛采用OPC通訊,使系統(tǒng)集成更加方便快捷。

    OPC通訊一般基于工業(yè)以太網(wǎng)等速率較快的網(wǎng)絡(luò),在快速網(wǎng)絡(luò)中的通訊速度也比較快,實(shí)時(shí)性基本可以滿足要求[1]。但是在實(shí)際應(yīng)用中,有可能會(huì)出現(xiàn)通訊網(wǎng)絡(luò)接口采用串口的情況,由于串口速率相對比較低,在一些特定情況下,由此會(huì)導(dǎo)致出現(xiàn)OPC通訊故障的現(xiàn)象,例如讀寫數(shù)據(jù)出錯(cuò)。本文以實(shí)際港口工程中的一個(gè)通訊系統(tǒng)為例,淺析基于串口的OPC通訊問題,并提出幾點(diǎn)解決問題建議。

    1 OPC通訊協(xié)議簡介

    OPC通訊采用客戶服務(wù)器模型,建立了一套在硬件供應(yīng)商和軟件開發(fā)商之間相互遵循的標(biāo)準(zhǔn)。只要遵循這套標(biāo)準(zhǔn),數(shù)據(jù)交換對于硬件和軟件雙方來說都是透明的,硬件供應(yīng)商無需考慮應(yīng)用程序的多種需求和傳輸協(xié)議,軟件開發(fā)商也無需了解硬件的實(shí)質(zhì)和操作過程。不管現(xiàn)場設(shè)備以何種方式存在,客戶端都以統(tǒng)一的方式去訪問,從而保證軟件客戶端的透明性,使得用戶完全從底層的開發(fā)中脫離出來[2]。下圖描述了使用OPC技術(shù)后,工業(yè)系統(tǒng)的開發(fā)過程。
                      
                               圖1  基于OPC客戶/服務(wù)器模型的工業(yè)控制系統(tǒng)結(jié)構(gòu)圖
    2 基于串口的OPC通訊

    本文以某港口實(shí)際工程中的一個(gè)通訊系統(tǒng)為例,介紹在該工程中遇到的基于串口OPC通訊應(yīng)用過程中遇到的問題和解決方案。

    該控制系統(tǒng)由上位監(jiān)控系統(tǒng)和下位現(xiàn)場控制系統(tǒng)組成。下位機(jī)采用AB 1769-L35CR PLC控制器及其相應(yīng)I/O模塊,與上位機(jī)聯(lián)系的通訊模塊是AB 1761-ENI-NET,該通訊模塊實(shí)現(xiàn)串口轉(zhuǎn)以太網(wǎng)功能。上位機(jī)監(jiān)控系統(tǒng)采用Cimplicity組態(tài)軟件6.0版本和AB RSLinx通訊軟件。上位機(jī)監(jiān)控系統(tǒng)主要由3臺計(jì)算機(jī)組成,通過以太網(wǎng)交換機(jī)連接到通訊模塊1761-ENI-NET,再經(jīng)過串口連接到PLC控制器通訊端口。整個(gè)控制系統(tǒng)的通訊網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示。上位機(jī)與下位機(jī)控制器通過OPC通訊協(xié)議互相交換數(shù)據(jù)。
                        
                                      圖2  通訊網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)圖
      該控制系統(tǒng)的通訊功能實(shí)現(xiàn)需要以下幾個(gè)步驟。首先,在上位計(jì)算機(jī)上安裝的RSLinx軟件中,配置相應(yīng)的OPC服務(wù)器,使其與下位機(jī)控制器相對應(yīng)。其次,在Cimplicity中定義一個(gè)端口(Ports),協(xié)議選擇OPC Client(OPC客戶),定義一個(gè)設(shè)備(Devices),選擇之前定義的OPC通訊端口,設(shè)置地址為“rslinx opc server”,Cimplicity會(huì)自動(dòng)找到與其通訊的控制器,具體操作如圖3所示。經(jīng)過上述相應(yīng)操作,上位機(jī)與下位機(jī)的OPC通訊系統(tǒng)已經(jīng)建立起來。
                    
                                    圖3  定義端口和設(shè)備示意圖
    3 基于串口的OPC通訊問題的引出

    該控制系統(tǒng)有兩個(gè)通訊接口:以太網(wǎng)口和串口,通過轉(zhuǎn)換模塊1761-ENI-NET實(shí)現(xiàn)連接。該轉(zhuǎn)換模塊兩端通訊速率有較大差別,以太網(wǎng)口的速率在100Mbps,而串口的通訊速率最高為幾十kbps。由此可見,整個(gè)系統(tǒng)通訊的瓶頸在串口。

    在OP C通訊中,傳輸?shù)臄?shù)據(jù)包括變量的名稱、數(shù)值以及校驗(yàn)位等。對于變量名來說,一般一個(gè)變量名至少要包括3-7個(gè)字符,用以顯示變量的含義并區(qū)別于其他變量。而在數(shù)據(jù)傳輸中,變量名的一個(gè)字符要占據(jù)一個(gè)字節(jié)的數(shù)據(jù)量。這樣,變量名稱的傳輸要占據(jù)3-5個(gè)字節(jié)的數(shù)據(jù)量,甚至超過了真正所用數(shù)值所占用的數(shù)據(jù)量。該系統(tǒng)中所傳輸數(shù)值類型為BOOL型和DINT型。一個(gè)BOOL型數(shù)值傳輸所占數(shù)據(jù)量為1個(gè)字節(jié),一個(gè)DINT型數(shù)值傳輸所占數(shù)據(jù)量為4個(gè)字節(jié)。由此可見,當(dāng)所傳輸?shù)臄?shù)據(jù)增加時(shí),傳輸?shù)臄?shù)據(jù)量在成倍增大。

    為了驗(yàn)證基于串口OPC通訊的穩(wěn)定性,對該通訊系統(tǒng)進(jìn)行試驗(yàn)。當(dāng)OPC通訊傳輸數(shù)據(jù)量很小時(shí),上位機(jī)監(jiān)控系統(tǒng)讀寫數(shù)據(jù)正常;當(dāng)系統(tǒng)傳輸?shù)臄?shù)據(jù)量逐漸增大時(shí),上位機(jī)監(jiān)控系統(tǒng)會(huì)偶爾出現(xiàn)寫數(shù)據(jù)失敗的現(xiàn)象;當(dāng)傳輸?shù)臄?shù)據(jù)量增大到一定值后,上位機(jī)監(jiān)控系統(tǒng)寫數(shù)據(jù)一直失敗,讀取數(shù)據(jù)也很慢。在該試驗(yàn)中,數(shù)據(jù)變量名統(tǒng)一為5個(gè)字符,所測得通訊數(shù)據(jù)量極限值為3810個(gè)字節(jié),超過此通訊數(shù)據(jù)量,通訊就會(huì)出現(xiàn)故障,上位機(jī)往下位機(jī)寫數(shù)據(jù)值失敗。在rslinx里的通訊事件記錄里可以查看到相應(yīng)故障。如圖4所示。
                 
                                 圖4  rslinx通訊事件記錄
    由于通訊故障是傳輸?shù)臄?shù)據(jù)量增加引起的,而整個(gè)網(wǎng)絡(luò)的通訊瓶頸在于串口。因此,對該控制系統(tǒng)的串口設(shè)置進(jìn)行重新檢查,轉(zhuǎn)換模塊1761-ENI-NET的串口設(shè)置為與PLC控制器自適應(yīng),這樣,只需檢查PLC控制器的串口設(shè)置狀態(tài)即可。PLC控制器1769-L35CR的串口設(shè)置窗口如圖5所示,默認(rèn)狀態(tài)下通訊波特率為19.2kbps,通訊方式為無握手方式。該串口的波特率最高可設(shè)為38.4 kbps,通訊方式還有半雙工和全雙工兩種方式可以選擇。

    針對本控制系統(tǒng)中通訊數(shù)據(jù)量大,且需要雙向傳輸?shù)奶攸c(diǎn),該串口應(yīng)設(shè)置為38.4kbps和全雙工方式。但是,將串口設(shè)置修改后,整個(gè)控制系統(tǒng)的通訊問題仍然存在。由于實(shí)際中工程的工期很緊,為了能盡快解決通訊問題,決定在軟件編制方面尋求解決的方法。
                    
                                   圖5  PLC控制器串口設(shè)置窗口
    4 基于串口OPC通訊問題的解決方案

    由以上分析可知,當(dāng)通訊傳輸?shù)臄?shù)據(jù)量減少到一定值后,基于串口的OPC通訊狀態(tài)即可恢復(fù)正常。因此,解決基于串口的OPC通訊問題,方法是在保證通訊信息完整的前提下,盡量減少通訊數(shù)據(jù)量。結(jié)合兩方面的考慮,嘗試采用通訊數(shù)據(jù)優(yōu)化的方法。

    (1)數(shù)組優(yōu)化

    OPC數(shù)據(jù)傳輸時(shí)要進(jìn)行數(shù)據(jù)打包。對于零散的數(shù)據(jù)要分別打包,這樣傳輸?shù)臅r(shí)候會(huì)占用額外的網(wǎng)絡(luò)資源。如果把數(shù)據(jù)分門別類,按類組建數(shù)組,OPC數(shù)據(jù)傳輸時(shí)數(shù)組數(shù)據(jù)是按整體打包,這樣占用網(wǎng)絡(luò)資源少。因此首先要做好數(shù)據(jù)規(guī)劃,盡量將數(shù)據(jù)分類,組成數(shù)組,提高通訊效率。

    (2)BOOL型變量轉(zhuǎn)換

    BOOL型變量占用1個(gè)字節(jié),所表示的數(shù)值為0或1,實(shí)際上采用用DINT型變量中的某一位也可以實(shí)現(xiàn)數(shù)據(jù)傳輸功能。32個(gè)BOOL型數(shù)據(jù)占用32個(gè)字節(jié),其所表示的含義用1個(gè)DINT型數(shù)據(jù)就可以代替,而1個(gè)DINT數(shù)據(jù)只占用4個(gè)字節(jié),占用資源大大減少。32個(gè)BOOL型數(shù)據(jù)占用32個(gè)變量名,轉(zhuǎn)換為1個(gè)DINT數(shù)據(jù)后只占用1個(gè)變量名,由變量名所占用的資源也將顯著減少。因此,可以將大量的BOOL數(shù)據(jù)先轉(zhuǎn)換成DINT數(shù)據(jù),再進(jìn)行傳輸,減少網(wǎng)絡(luò)資源占用。

    (3)避免使用不兼容的數(shù)據(jù)

在應(yīng)用程序中采用的float 和int、 char和 varchar、 binary和barbinary相互之間是不兼容的,因此要保證上位機(jī)監(jiān)控軟件所用變量類型要和下位機(jī)的變量類型相一致。

    (4)簡化通訊傳輸?shù)淖兞棵Q

    在保證不影響變量名稱含義及識別的基礎(chǔ)上,變量名稱盡量縮短、簡化,以減少通訊的數(shù)據(jù)量。比如,變量名control在保證不影響識別的基礎(chǔ)上,可以縮寫為ctr,這樣,變量名減少了四個(gè)字符,數(shù)據(jù)傳輸量就減少了4個(gè)字節(jié),有效的減少了通訊的數(shù)據(jù)量。

    經(jīng)過數(shù)據(jù)傳輸?shù)膬?yōu)化調(diào)整,整個(gè)系統(tǒng)的OP C通訊正常,達(dá)到了控制應(yīng)用要求。為了保證上位機(jī)監(jiān)控避免出現(xiàn)遺漏操作的現(xiàn)象,在上位機(jī)Cimplicity程序中編寫腳本,如果有通訊故障發(fā)生時(shí),彈出報(bào)警提示對話框,要求操作人員重新操作。腳本如下所示。

    Sub OnMouseUp(x As Long, y As Long, flags As Long)

    On Error GoTo errorhandle ‘通訊故障診斷

    PointSet "KEY_S_NUMB1",&H00000000&

    PointSet "KEY_S_NUMB2",&H00000000&

    r%=answerbox("確定要啟動(dòng)電機(jī)?","確定","取消")

    If r%=1 Then

    PointSet "KEY_S_NUMB3",&H00080000&

    PointSet "KEY_S_START",1

    PointSet "KEY_S_START",0

    End If

    Exit Sub

    errorhandle: ‘通訊故障處理

    msgbox "出錯(cuò)!請重新操作!",ebOKOnly Or ebExclamation,

    "提示框"

    Exit Sub

    End Sub

    5 結(jié)語

    經(jīng)工程實(shí)際應(yīng)用驗(yàn)證,通過采用上述幾種方法,基于串口的OPC通訊問題得到了有效的解決,可以滿足控制系統(tǒng)要求。OPC通訊已經(jīng)在工控行業(yè)中廣泛應(yīng)用[3],OPC通訊問題,尤其是OPC通訊數(shù)據(jù)優(yōu)化問題需要引起工控人員的注意,做好更進(jìn)一步的研究。

    參考文獻(xiàn):

    [1] 李宏宇. OPC技術(shù)在工控組態(tài)軟件中的研究及應(yīng)用[D]. 大連理工大學(xué),2005.

    [2] 汪輝. OPC技術(shù)實(shí)現(xiàn)及應(yīng)用[D]. 合肥工業(yè)大學(xué),2003.

    [3] 盧宏,汪金良,曾青云. 基于OPC技術(shù)的WinCC實(shí)時(shí)數(shù)據(jù)采集[J]. 自動(dòng)化博覽,2006,(8).

     摘自《自動(dòng)化博覽》2010年第六期 

熱點(diǎn)新聞

推薦產(chǎn)品

x
  • 在線反饋
1.我有以下需求:



2.詳細(xì)的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 欧美人成在线视频-欧美人成一本免费观看视频-欧美人xxxxxbbbb-欧美区在线-在线不卡免费视频-在线播放周妍希国产精品 | 国产在线观看 完整版-国产在线高清不卡免费播放-国产在线不卡一区-国产在线不卡视频-亚洲国产精品影院-亚洲国产精品一区二区三区在线观看 | 国产三级在线观看视小说-国产三级在线观看视频不卡-国产三级在线观看视频-国产三级在线观看免费-西瓜视频网页版-西瓜视频全部免费观看大全 | 日韩在线观看网站-日韩在线观看视频网站-日韩在线观看视频免费-日韩在线观看视频黄-日韩在线观看免费完整版视频-日韩在线观看免费 | 国产精品jlzz视频-国产精品jizz在线观看直播-国产精品jizz在线观看网站-国产精品jizz在线观看软件-日日爽夜夜操-日日爽天天干 | 亚洲欧洲在线视频-亚洲欧洲在线观看-亚洲欧洲一区二区三区-亚洲欧洲一区二区-久久国产精品最新一区 | 夜夜操狠狠操,99在线观看精品免费99,亲爱的妈妈2,色婷婷亚洲十月十月色天,精品福利一区二区在线观看,久久国产精品99精品国产 | 五月天婷婷基地,久久精品1,中文字幕第一页亚洲,99精品国产高清一区二区三区香蕉,国产视频观看,日韩精品在线第一页 | 九九国产在线视频-九九国产在线观看-九九国产在线-九九国产视频-亚洲夜色夜色综合网站-亚洲羞羞视频 | 涩涩视频www在线观看入口-涩涩涩涩爱网站-涩涩免费网站-涩涩免费视频软件-高h gl肉文-港台三级大全 | 在线日韩亚洲-在线日韩视频-在线日韩欧美一区二区三区-在线日韩欧美-久久精品嫩草影院-久久精品免视看国产盗摄 | 亚洲综合在线观看视频-亚洲综合在线观看一区-亚洲综合在线观看一区www-亚洲综合在线视频-亚洲综合在线网-亚洲综合在线一区 | 九九国产在线视频-九九国产在线观看-九九国产在线-九九国产视频-亚洲夜色夜色综合网站-亚洲羞羞视频 | 久久久久综合网久久-久久久久亚洲精品影视-久久久久久久久66精品片-久久久久久久999-阿v天堂2022在线观看-а中文在线天堂 | 国产精品1024永久免费视频-国产精品1-国产精品 视频一区 二区三区-国产精品 色-四虎1515hhh co m-四虎1515hhcom | 欧美精品久久久亚洲,欧美国产第一页,亚欧成人一区二区,久久精品一区二区影院,国产成人精品综合久久久,亚洲国产精品一区 | 成人a毛片手机免费播放-成人a毛片在线看免费全部播放-成人a视频高清在线观看-成人a视频片在线观看免费-欧美三级中文字幕hd-欧美三极 | 欧美黄色网址-欧美黄色特级视频-欧美黄色片在线播放-欧美黄色片免费观看-99看片网-99看片 | 91导航在线-91岛国-91第一页-91短视频在线高清hd-91粉嫩萝控精品福利网站-91粉色视频在线观看 | 亚洲欧美激情另类,国产成人一区二区三区免费观看,一区二区三区在线视频观看,亚洲一区二区三区精品视频,国产乱了真实在线观看,国产播放器一区 | 奇米影视一区二区三区-奇米影视一区-奇米影视久久-奇米影视777四色米奇影院-国产高清视频免费-国产高清日韩 | 热血影院-热热99-热久在线-热久久最新网址-成人毛片一区二区三区-成人毛片视频免费网站观看 | 亚洲 欧美 日韩 在线,97热久久免费频精品99国产成人,另类激情亚洲,久久99九九精品免费,久久综合精品国产一区二区三区,2020精品极品国产色在线观看 | 欧美一区二区三区香蕉视-欧美一区二区三区网站-欧美一区二区三区四区在线观看-欧美一区二区三区四区五区六区-欧美一区二区三区四区视频-欧美一区二区三区视视频 欧美性xxxxxx性,国产精彩视频在线观看,亚洲欧美视屏,久艹网,国产日韩欧美中文,亚洲欧美经典 | 国产福利自产拍在线观看-国产福利资源网在线观看-国产福利资源-国产福利专区精品视频-双性少爷受糙汉攻h-双性肉文高h | 黄色片网站免费观看-黄色片网站观看-黄色片网站大全-黄色片视频网-色偷偷网址-色偷偷网站 | 欧美综合亚洲,欧美激情91,亚洲 欧美 成人日韩,国产亚洲精品成人婷婷久久小说,国内精品久久久久影院不卡,曰韩在线 | 国产真实乱对白精彩-国产真实露脸乱子伦-国产真实夫妇交换视频-国产这里有精品-亚洲第一国产-亚洲第一成年网站视频 | 日韩成人A片一区二区三区-日韩成人黄色片-日韩成人在线视频-日韩吃奶摸下AA片免费观看-日韩大片免费看-日韩大片在线观看 | 麻豆91在线-麻豆91在线视频-麻豆99一区二区在线观看-麻豆ⅴ传媒在线播放免费观看-麻豆aⅴ精品无码一区二区-麻豆app2.24.15.15安卓版下载 | 国产激情对白一区二区三区四-国产或人精品日本亚洲77美色-国产黄站-国产黄在线免费观看-日韩中文字幕网-日韩中文字幕视频在线观看 | 五月天婷婷缴情五月免费观看,久久综合热,高清中国一级毛片免费,国产一级高清免费观看,普通话对白国产精品一级毛片,日韩在线不卡视频 | 国产夜色福利院在线观看免费-国产夜趣福利免费视频-国产野花视频天堂视频免费-国产亚洲综合一区二区在线-日韩精品在线观看免费-日韩精品在线电影 | 午夜欧美福利-午夜欧美成人香蕉剧场-午夜欧美成人久久久久久-午夜久久网-国产亚洲男人的天堂在线观看-国产亚洲免费观看 | 日本欧美大码aⅴ在线播放-日本欧美不卡一区二区三区在线-日本女同在线观看-日本女同在线-国产日韩在线-国产日韩视频一区 | 免费一区在线-免费一区视频-免费一区区三区四区-免费一区二区视频-97dyy影院理论片-97caoporn | 天堂视频在线观看免费-天堂视频在线-天堂视频免费-天堂色区-国产精品一区二区欧美视频-国产精品一区二区免费 | 久久re这里视频只有精品首页-久久re这里视频只精品首页-久久re这里视频精品8-久久re这里视频精品15-一本道色综合手机久久-一本道色播 | 国产精品jlzz视频-国产精品jizz在线观看直播-国产精品jizz在线观看网站-国产精品jizz在线观看软件-日日爽夜夜操-日日爽天天干 | 五月天婷婷缴情五月免费观看,久久综合热,高清中国一级毛片免费,国产一级高清免费观看,普通话对白国产精品一级毛片,日韩在线不卡视频 | 日韩精品在线视频观看-日韩精品在线播放-日韩精品影视-日韩精品一区在线观看-日韩精品一区二区亚洲AV观看-日韩精品一区二区三区在线观看l |