亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        提高PLC程序中Modbus通信效率的方法

        2014-04-29 06:41:36梅奕
        電子世界 2014年21期

        【摘要】針對PLC程序設(shè)計中Modbus通信存在數(shù)據(jù)丟失和通信效率低的問題,提出了一種兼顧重要數(shù)據(jù)和通信效率的優(yōu)化方法,包括劃分數(shù)據(jù)優(yōu)先級和定時中斷控制發(fā)送周期兩個部分,實踐表明,此方法有利于保證重要數(shù)據(jù)的實時性和提高通信帶寬利用率。

        【關(guān)鍵詞】PLC;Modbus;數(shù)據(jù)丟失;通信效率;定時中斷

        引言

        PLC是一種專為在工業(yè)環(huán)境應用而設(shè)計的數(shù)字運算電子系統(tǒng),它將計算機技術(shù)、自動控制技術(shù)和通訊技術(shù)融為一體,成為實現(xiàn)單機、車間、工廠自動化的核心設(shè)備,具有可靠性高、抗干擾能力強、組合靈活、編程簡單、維修方便等諸多優(yōu)點[1]。隨著控制技術(shù)的不斷發(fā)展,控制系統(tǒng)的規(guī)模也在逐步擴大,通訊技術(shù)成為大規(guī)??刂葡到y(tǒng)的一個支撐。在大規(guī)??刂葡到y(tǒng)或分散式控制系統(tǒng)中,多個主機之間或者主機與分機之間有大量數(shù)據(jù)進行通信[2]。

        在PLC的通信中,Modbus協(xié)議是一種常用的通信協(xié)議。Modbus最早由Modicon公司提出,由于其簡單、可靠,被廣大現(xiàn)場技術(shù)人員廣泛接受。當前市場中多數(shù)PLC產(chǎn)品都支持Modbus協(xié)議。Modbus協(xié)議是主從式協(xié)議,通信由主站發(fā)起,從站根據(jù)主站的命令進行數(shù)據(jù)應答,從站不能發(fā)起通信。Modbus的這種特點決定了其通信實時性低于CAN等多主協(xié)議,但其單次通信數(shù)據(jù)量大的特點在一定程度上可以彌補這一不足。在實際操作中,如果主站是PLC,其通信的數(shù)據(jù)和發(fā)起通信的時間是由控制程序決定的,是隨機的,在控制程序的循環(huán)運行中,在某些時刻可能通信數(shù)據(jù)量大,而在其他時刻可能沒有數(shù)據(jù),這會造成帶寬資源利用不均勻,在數(shù)據(jù)量大的時候通信擁擠,導致數(shù)據(jù)丟失和通信不穩(wěn)定。為了解決這一問題,本文提出了一種在PLC程序設(shè)計中提高Modbus通信效率的優(yōu)化方法。

        1.Modbus協(xié)議簡介

        Modbus通信協(xié)議具有開放性好、易實現(xiàn)、擴展性好、可靠性高等優(yōu)點, 因而具有廣闊的應用前景,被越來越多的設(shè)備廠商所支持。不同廠商生產(chǎn)的控制設(shè)備可以連成Modbus工業(yè)網(wǎng)絡,由Modbus通信的主站對 現(xiàn)場設(shè)備和儀表進行遠程監(jiān)控,實現(xiàn)非常好的監(jiān)控效果和系統(tǒng)性能[3]。

        Modbus沒有規(guī)定物理層,它只規(guī)定了可以被通信節(jié)點識別的數(shù)據(jù)結(jié)構(gòu)。Modbus規(guī)定了數(shù)據(jù)的結(jié)構(gòu)、命令和應答的形式,數(shù)據(jù)通信采用主從方式,主站可以向特定的從站發(fā)起讀寫命令,也可以向所有從站發(fā)起廣播命令。在同一個通信網(wǎng)絡中,所有通信節(jié)點(包括主站和從站)都必須設(shè)置相同的通信參數(shù),包括波特率、數(shù)據(jù)位、停止位和校驗位,而字符超時、回復超時等保護參數(shù)每個通信節(jié)點可以不盡相同。

        Modbus通信模式分為ASCII和RTU兩種,兩者的不同主要在于數(shù)據(jù)格式,兩者的數(shù)據(jù)格式分別如表1和表2所示。

        表1

        位置 起始位 設(shè)備地址 功能碼 數(shù)據(jù) LRC校驗 結(jié)束符

        字符

        個數(shù) 1 2 3 n 2 2

        表2

        位置 起始位 設(shè)備地址 功能碼 數(shù)據(jù) CRC校驗 結(jié)束符

        位數(shù) 靜止時段 8bit 8bit N*8bit 2*8bit 靜止時段

        Modbus功能碼可以是1-255范圍內(nèi)任何整數(shù)值,有些功能碼適用于所有的通信設(shè)備,有些則只適用于特定的控制器,還有一些用于功能的擴展。

        2.PLC程序中Modbus通信存在的問題

        (1)數(shù)據(jù)丟失

        數(shù)據(jù)丟失,也就是通常說的丟幀現(xiàn)象。PLC程序按照循環(huán)掃描方式執(zhí)行,對于同一個Modbus物理通信接口,在同一個掃描周期內(nèi)只能執(zhí)行一個Modbus命令,即便控制程序在同一個掃描周期發(fā)起了多個Modbus命令,也只有一個被執(zhí)行,當然,這也與每個PLC廠家的通信處理機制有關(guān),有的廠家提供了比較大的通信緩存,但如果通信幀數(shù)超出了緩存的范圍,也會丟幀。PLC特定的開發(fā)方式是造成這種問題的主要原因,PLC程序的編寫調(diào)試屬于在PLC編程軟件平臺下的二次開發(fā),不像單片機可以進行底層代碼級的開發(fā),因此,用戶只能利用PLC編程軟件提供的操作命令對Modbus進行操作,而無法監(jiān)視通信底層的狀態(tài),在很大程度上存在不確定性。必須建立適用于PLC程序的Modbus通信策略,以保證Modbus通信的確定性。

        (2)帶寬利用率低

        在PLC程序掃描周期長、Modbus通信數(shù)據(jù)量大、通信速率高的情況下,這種情況尤為突出。以掃描周期為40ms,通信速率為115.2kbps(串口數(shù)據(jù)無校驗),每次通信讀取60個字,采用RTU模式為例來說明。由于讀取數(shù)據(jù)的命令數(shù)據(jù)相對少,主要數(shù)據(jù)量在于從站的回復數(shù)據(jù),因此只計算回復的數(shù)據(jù)來說明問題,以表2中的數(shù)據(jù)格式進行估算。總數(shù)據(jù)量為:8+8+120*8+2*8=992bit,除以通信速率得到所用時間為8.6ms。在這種情況下,帶寬利用情況如圖1所示。從圖1中可以看出,由于掃描周期長、而每個掃描周期只能處理一個Modbus命令,導致Modbus總線看似空閑,實際上有大量重要數(shù)據(jù)沒有被及時發(fā)送出來。

        圖1 通信帶寬利用情況

        綜上,如果不對PLC程序中的Modbus通信優(yōu)化處理,會對通信的穩(wěn)定性和通信效率造成大的影響。

        3.提高PLC程序Modbus通信效率的方法

        針對PLC程序設(shè)計中存在的Modbus通信不確定和帶寬利用率低等問題,本文提出一種程序優(yōu)化方法,分為兩個部分。

        (1)劃分數(shù)據(jù)優(yōu)先級

        Modbus通信可能包含多幀數(shù)據(jù),根據(jù)實際需求,每個幀用途各不相同,有讀取設(shè)備信息的,有控制設(shè)備啟停的,有控制設(shè)備急停的,用戶可以根據(jù)用途的不同,區(qū)分各個數(shù)據(jù)幀的發(fā)送優(yōu)先級。以表3為例,從安全第一的角度考慮,讀取設(shè)備狀態(tài)的數(shù)據(jù)優(yōu)先級最低,控制設(shè)備啟停的數(shù)據(jù)優(yōu)先級中等,控制設(shè)備急停的數(shù)據(jù)優(yōu)先級最高,在程序設(shè)計中,應保證高優(yōu)先級的數(shù)據(jù)優(yōu)先發(fā)送。

        表3

        數(shù)據(jù)含義 優(yōu)先級

        讀取設(shè)備狀態(tài) 低

        控制設(shè)備啟停 中

        控制設(shè)備急停 高

        (2)利用中斷控制發(fā)送周期。

        實際應用中,總共需要發(fā)送的數(shù)據(jù)幀可能會有幾十個甚至更多,每個數(shù)據(jù)幀都要分配一個優(yōu)先級,在一個掃描周期中,即便是最高優(yōu)先級的數(shù)據(jù)發(fā)送成功了,但次高優(yōu)先級的數(shù)據(jù)就可能出現(xiàn)延遲發(fā)送的情況,同樣會影響系統(tǒng)的實時性。因此,控制數(shù)據(jù)發(fā)送周期是必要的。采用PLC中的定時中斷功能,定時按照優(yōu)先級的高低發(fā)送數(shù)據(jù),定時中斷不受掃描周期的影響。例如,在40ms的掃描周期下,采用10ms的定時中斷,每個掃描周期可以發(fā)送4幀數(shù)據(jù),相比較優(yōu)化之前,大大提高了通信效率。

        4.結(jié)語

        針對PLC程序設(shè)計中Modbus通信存在數(shù)據(jù)丟失和通信效率低的問題,本文提出了一種優(yōu)化方法,首先對數(shù)據(jù)幀劃分優(yōu)先級,保證重要數(shù)據(jù)優(yōu)先發(fā)送,其次采用定時中斷控制數(shù)據(jù)發(fā)送周期,保證通信效率。此方法已在實際應用中得到驗證,對于PLC編程有一定的參考意義。

        參考文獻

        [1]鄧高壽,潘宏俠.PLC在工業(yè)自動化控制領(lǐng)域中的應用及發(fā)展[J].機械管理開發(fā),2006(3):99-100.

        [2]鄧志君,梁松峰. 基于RS485接口Modbus協(xié)議的PLC與多機通訊[J].單片機開發(fā)與應用,2010,26(3-2):107-108.

        [3]何志勇,張茂青,錢偉清.PLC主站對Modbus網(wǎng)絡的監(jiān)控方法[J].計算機網(wǎng)絡與通信,2007,29(2):26-28.

        作者簡介:梅奕(1973—),女,江蘇常州人,碩士,助理實驗師,主要研究方向:電氣自動化技術(shù)。

        久久一区av蜜桃人妻| 国产不卡精品一区二区三区| 亚洲精品成人无限看| 少妇人妻在线无码天堂视频网| 国产福利酱国产一区二区 | 久久不见久久见免费视频6| 亚洲第一se情网站| 亚洲V日韩V精品v无码专区小说| 亚洲国产AⅤ精品一区二区不卡| 中文字幕精品一区二区三区av| 欧美群妇大交群| 玩弄放荡人妻少妇系列| 亚洲色大成在线观看| 亚洲一区二区三区久久久| 日韩亚洲无吗av一区二区| 免费va国产高清大片在线| 性夜夜春夜夜爽aa片a| 人妻中文字幕一区二区二区| 亚洲日本高清一区二区| 欧洲熟妇色| 国产精品久久久av久久久| 高潮社区51视频在线观看| 午夜视频一区二区三区四区| 国产亚洲美女精品久久久2020| 国产精品无码不卡一区二区三区| 国内精品久久久久久久亚洲| 精品国产三区在线观看| 国产成人精品亚洲日本在线观看| 久久精品亚洲中文字幕无码网站| 国产三级精品美女三级| 91精品国产自拍视频| 超碰色偷偷男人的天堂| 亚洲中久无码永久在线观看软件| 亚洲国产精品国自产拍av在线| 中国一级黄色片久久久| 桃花色综合影院| 99久久亚洲国产高清观看| 国产一级一区二区三区在线播放| 亚洲熟妇久久国产精品| 精品国产一区二区三区AV小说| 麻豆三级视频网站在线观看 |