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

        ?

        基于隨機(jī)數(shù)發(fā)生器的設(shè)備地址自動分配方法

        2018-01-04 06:19:34楊啟帆
        自動化與儀表 2017年11期
        關(guān)鍵詞:延遲時間命令數(shù)據(jù)包

        張 壘,楊啟帆

        (1.江蘇大學(xué) 電氣信息工程學(xué)院,鎮(zhèn)江 212013;2.上汽大眾汽車有限公司 質(zhì)保部,上海 201800)

        基于隨機(jī)數(shù)發(fā)生器的設(shè)備地址自動分配方法

        張 壘1,楊啟帆2

        (1.江蘇大學(xué) 電氣信息工程學(xué)院,鎮(zhèn)江 212013;2.上汽大眾汽車有限公司 質(zhì)保部,上海 201800)

        總線通訊常用于工業(yè)控制系統(tǒng),系統(tǒng)常為一個主機(jī)、多個從機(jī)的結(jié)構(gòu)。該文傳統(tǒng)的總線通訊網(wǎng)絡(luò)多采用撥碼等手工方法設(shè)置設(shè)備地址,系統(tǒng)的自動組網(wǎng)及地址的自動分配一直是個難題。提出了一種新的基于隨機(jī)數(shù)發(fā)生器的自動組網(wǎng)與設(shè)備地址分配方法,實現(xiàn)了設(shè)備的自動組網(wǎng)與地址的自動分配。該方法適用于無主機(jī)的控制系統(tǒng),可自動選出主機(jī),上電即可自動組網(wǎng)與分配地址,且所需時間更短,分配效率更高。實踐證明,該方法穩(wěn)定可靠,具有良好的應(yīng)用和推廣價值。

        總線通訊;自動組網(wǎng);地址分配;隨機(jī)數(shù)

        隨著計算機(jī)、網(wǎng)絡(luò)技術(shù)的發(fā)展,自動控制技術(shù)廣泛地應(yīng)用于工業(yè)、交通、服務(wù)等領(lǐng)域,控制的形式也由點對點通信逐步擴(kuò)展到點對多的通信模式。串行通信作為一種簡單、廉價的通信方式在工業(yè)控制中廣泛應(yīng)用,由于實現(xiàn)成本低、傳輸距離遠(yuǎn)、抗干擾能力強(qiáng)的特點,使總線型多CPU網(wǎng)絡(luò)控制系統(tǒng)得到了推廣與發(fā)展。

        在以往的總線通信系統(tǒng)設(shè)計中,通常使用撥碼開關(guān)或者人工輸入方式逐一對從機(jī)地址進(jìn)行設(shè)置。在目前的一些自動組網(wǎng)的算法中,通常需要指定主機(jī),且主機(jī)故障后無法繼續(xù)組網(wǎng)。另外,現(xiàn)有的一些隨機(jī)時隙算法采用機(jī)號生成隨機(jī)數(shù),生成的隨機(jī)數(shù)重復(fù)率高且無法改變,地址無法一次分配成功。在此,提出一種新的基于隨機(jī)數(shù)發(fā)生器的自動組網(wǎng)與設(shè)備地址分配方法,將從機(jī)ID與系統(tǒng)時間t通過CRC計算生成隨機(jī)種子,可充分利用每個二進(jìn)制位的信息,生成唯一最小隨機(jī)數(shù)的概率趨向于1,極大地提高了地址分配效率。該方法適用于無主機(jī)的工控系統(tǒng),并且在系統(tǒng)運行過程中如果主機(jī)出現(xiàn)故障也能重新組網(wǎng),原理是在無主機(jī)的系統(tǒng)中隨機(jī)選出1臺設(shè)備成為主機(jī),通過隨機(jī)生成從機(jī)答復(fù)時間,盡量使從機(jī)的回復(fù)信號不沖突[1],從而使得從機(jī)的信息能夠快速識別,以實現(xiàn)其地址的快速分配。這一算法的優(yōu)勢在于上電即可自動組網(wǎng)與分配地址,速度快且穩(wěn)定,所有過程均自動完成。

        1 總線通訊網(wǎng)絡(luò)的結(jié)構(gòu)特點

        以RS-485通訊網(wǎng)絡(luò)為例,鑒于需要實現(xiàn)多節(jié)點通訊,RS-485通訊網(wǎng)絡(luò)使用共享總線的半雙工傳送方式,即在同一時刻主機(jī)和從機(jī)只能有1個發(fā)送數(shù)據(jù)而其他的只能接收數(shù)據(jù)。網(wǎng)絡(luò)結(jié)構(gòu)上,采用主從結(jié)構(gòu)方式實現(xiàn)通訊,主機(jī)和從機(jī)通過RS-485總線連接在一起。本算法適用的無主機(jī)工控系統(tǒng),上電后所有從機(jī)生成1個隨機(jī)數(shù)和延遲時間,延遲時間最短的從機(jī)自動成為主機(jī)。系統(tǒng)拓?fù)浣Y(jié)構(gòu)簡圖如圖1所示。

        圖1 系統(tǒng)拓?fù)浣Y(jié)構(gòu)Fig.1 System topology diagram

        主機(jī)的作用是發(fā)送命令與分配地址;從機(jī)實現(xiàn)具體的業(yè)務(wù)需求,不主動發(fā)送命令或數(shù)據(jù)。系統(tǒng)中所有的單元都可以收到通信鏈路上的數(shù)據(jù)包,各從機(jī)根據(jù)通信數(shù)據(jù)包的目的地址進(jìn)行識別:如果數(shù)據(jù)包中的目的地址與本單元的設(shè)備地址相同,則處理該數(shù)據(jù)包;否則丟棄該數(shù)據(jù)包。

        2 自動組網(wǎng)與設(shè)備地址分配方法

        2.1 基于隨機(jī)數(shù)發(fā)生器的算法設(shè)計思想

        在自動組網(wǎng)時,將面臨系統(tǒng)有無、主機(jī)兩種情況。系統(tǒng)上電后,主機(jī)將立即發(fā)送地址分配命令,所有從機(jī)設(shè)定等待時間為1 s,并生成1個隨機(jī)數(shù)x,由x生成延遲時間T2。若在1 s內(nèi)從機(jī)收到主機(jī)的地址分配命令,則進(jìn)入地址自動分配環(huán)節(jié);若1 s內(nèi)從機(jī)未內(nèi)收到主機(jī)的命令包,表示系統(tǒng)無主機(jī),則在1 s等待時間到后進(jìn)入延遲環(huán)節(jié),第1個到達(dá)T2的從機(jī)成為主機(jī),并將本機(jī)地址設(shè)為00,廣播地址分配命令進(jìn)入地址自動分配環(huán)節(jié),其他從機(jī)取消成為主機(jī)的進(jìn)程。

        在地址分配時,各從機(jī)設(shè)定1個基于本機(jī)時間和生產(chǎn)序列號ID的隨機(jī)數(shù)xi,由xi生成延遲回復(fù)時間2,主機(jī)收到第1個回復(fù)后,其他從機(jī)不再回復(fù),主機(jī)開始分配第1個地址。第1個地址設(shè)置完成后,未分配地址的從機(jī)生成1個新的隨機(jī)數(shù),主機(jī)分配第2個地址,如此往復(fù),直至各從機(jī)地址全部分配完畢。

        如果在地址分配的過程中,主機(jī)發(fā)生故障無法通訊或自動組網(wǎng),此時需要在從機(jī)中重新選出主機(jī)并重新進(jìn)行地址分配。方法是在主機(jī)發(fā)送地址分配命令后由從機(jī)設(shè)置1個適當(dāng)?shù)难舆t時間2 s,若2 s后從機(jī)未收到主機(jī)發(fā)送的數(shù)據(jù)包,則生成延遲時間T2,第1個到達(dá)T2的從機(jī)成為主機(jī)。

        地址分配完畢后,系統(tǒng)將正常工作。每隔2 s,如果主機(jī)沒有發(fā)送正常的命令,則廣播1條“心跳”命令,該命令不含任何內(nèi)容,從機(jī)在5 s時間內(nèi)未收到主機(jī)發(fā)送的正?;颉靶奶泵畋硎局鳈C(jī)故障,此時將開始重新組網(wǎng),方法同上。

        2.2 隨機(jī)數(shù)的產(chǎn)生

        隨機(jī)數(shù)x是延遲回復(fù)時間2的重要組成部分,因此生成適當(dāng)?shù)碾S機(jī)數(shù)對于各從機(jī)的隨機(jī)延時應(yīng)答至關(guān)重要。計算機(jī)不會產(chǎn)生絕對隨機(jī)的隨機(jī)數(shù),而只能產(chǎn)生偽隨機(jī)數(shù)。所謂偽隨機(jī)數(shù)通常由數(shù)學(xué)公式產(chǎn)生,如果生成隨機(jī)數(shù)的算法確定了,那么這個隨機(jī)數(shù)序列也就確定了。從數(shù)學(xué)意義上講,偽隨機(jī)數(shù)某種對應(yīng)映射的產(chǎn)物是完全不隨機(jī)的,只要知道隨機(jī)數(shù)的種子以及相應(yīng)的參數(shù),就可以預(yù)測下一狀態(tài)的隨機(jī)數(shù)。但是,只要偽隨機(jī)數(shù)通過一系列測試檢驗,而且其有足夠長的周期,那么在一定范圍內(nèi),還是可以把它當(dāng)作真隨機(jī)數(shù)來使用[3]。對偽隨機(jī)數(shù)而言,其實現(xiàn)算法顯得尤為重要。因此,為了使各從機(jī)生成的隨機(jī)數(shù)盡量分散,本算法選用從機(jī)ID和系統(tǒng)時間t通過CRC碼編排為隨機(jī)種子,再通過線性同余法生成隨機(jī)數(shù)。

        隨機(jī)種子x0由從機(jī)ID和系統(tǒng)時間t采用CRC公式生成,長度為2 B。其中,t為讀取的系統(tǒng)時間,s,長度為 1 B;ID 為 6 B,由高到低分別為年(2 B)、月、日、機(jī)號(2 B)。加入系統(tǒng)時間t的目的在于使每次的隨機(jī)種子都不同,降低了產(chǎn)生相同隨機(jī)數(shù)的概率,即使產(chǎn)生了重復(fù)的隨機(jī)數(shù),由于下次生成隨機(jī)數(shù)時的時間已變,隨機(jī)數(shù)也將改變。

        本算法借用線性同余法的思想生成隨機(jī)數(shù),其公式為

        式中:x為隨機(jī)數(shù);x0為隨機(jī)種子;a為乘子;b為增量;M為模;變量a,b,M均為常量。通過選取適當(dāng)?shù)腶,b,M可使x充分隨機(jī),產(chǎn)生的隨機(jī)數(shù)具有均勻性好、獨立性好等特點[4]。 在此,取 a=31,b=23,M=101,其中模M可隨著從機(jī)數(shù)Y的減少而適當(dāng)減小。M過大會造成隨機(jī)數(shù)x和延遲回復(fù)時間T2變大,M過小則會導(dǎo)致隨機(jī)數(shù)的重復(fù)率過高。模M一般取約為初始從機(jī)數(shù)Y的3倍的質(zhì)數(shù)。最終的隨機(jī)數(shù)生成公式為

        2.3 通信協(xié)議說明

        本協(xié)議采用異步串行,半雙工傳輸方式。在同一時刻主機(jī)和從機(jī)只能有1個發(fā)送數(shù)據(jù)而其他的只能接收數(shù)據(jù)。數(shù)據(jù)在串行異步通信過程中,是以報文的形式一幀一幀發(fā)送[5]。拓?fù)浣Y(jié)構(gòu)為單主多從,從機(jī)地址的設(shè)定范圍為1~247,0為主機(jī)地址。主機(jī)對所有從機(jī)廣播發(fā)布信息,每個從機(jī)都要反饋響應(yīng)給主機(jī)。

        本協(xié)議包括接收地址ADR,命令碼CMD,數(shù)據(jù)內(nèi)容DATA,校驗碼CRC。由于主機(jī)采用廣播方式,故接收地址ADR只有2種,00(主機(jī))和FF(廣播輪詢)。命令碼CMD為1 B,首位為0:下行報文;8:上行報文。ID共6 B,從高到低依次為年(2 B)、月、日、機(jī)號(2 B)。例舉一典型的地址自動分配協(xié)議,如表1所示。

        表1 地址分配協(xié)議Tab.1 Address allocation protocol

        2.4 算法步驟

        步驟1所有設(shè)備生成相應(yīng)的隨機(jī)數(shù)xi(i=1,2,…,Y;xi∈[1,Y]),延遲時間 T2=xik,其中系數(shù)為主機(jī)發(fā)送最長數(shù)據(jù)包到從機(jī)接收所需時間。系統(tǒng)規(guī)定所有設(shè)備同時延時,并在延遲時間到后廣播一條地址分配命令。如果在延時期間內(nèi),設(shè)備收到了其他設(shè)備發(fā)來的地址分配命令,本機(jī)取消延時進(jìn)程。因此,生成最小隨機(jī)數(shù)的設(shè)備將成為主機(jī),并將本機(jī)地址設(shè)為0。

        步驟2主機(jī)廣播地址分配命令,并設(shè)定接收數(shù)據(jù)等待定時時間T1=(Y+1)k。從機(jī)收到地址分配命令后開始定時2 s,并判斷本機(jī)是否已經(jīng)分配地址。若已分配地址,則不應(yīng)答;若沒有分配,則生成相應(yīng)的隨機(jī)數(shù)xi和延遲時間T2,達(dá)到延遲時間后從機(jī)向主機(jī)發(fā)送含有本機(jī)ID的應(yīng)答包。

        步驟3主機(jī)檢測T1時間內(nèi)有無應(yīng)答包。若有應(yīng)答且校驗碼正確,主機(jī)廣播含有從機(jī)ID和地址ADR的數(shù)據(jù)包;如果校驗碼出錯,表示生成了2個相同的最小隨機(jī)數(shù),則轉(zhuǎn)至步驟2。若無應(yīng)答,判斷是否N=20,若不等則轉(zhuǎn)至步驟2;若相等,表示連續(xù)20次無應(yīng)答,地址分配完畢,算法結(jié)束退出。

        從機(jī)檢測2 s內(nèi)有無主機(jī)發(fā)送的數(shù)據(jù)包,若無數(shù)據(jù)包,表示主機(jī)故障,轉(zhuǎn)至步驟1;若收到數(shù)據(jù)包,則檢測數(shù)據(jù)包中ID與本機(jī)ID是否匹配。若ID不匹配,則丟棄數(shù)據(jù)包;若匹配成功,則保存地址ADR并設(shè)置,向主機(jī)回復(fù)握手包表示一次地址分配成功,轉(zhuǎn)至步驟2。(主機(jī)收到握手包則將Y-1)

        需要說明的是,若在步驟1中生成了2個相同的最小隨機(jī)數(shù),將會出現(xiàn)2臺“臨時”主機(jī),而從機(jī)接收到的校驗碼會出錯,主機(jī)也無法收到從機(jī)回復(fù)的應(yīng)答包。故約定主機(jī)發(fā)送地址分配命令后(與從機(jī)檢測校驗碼出錯同時),各設(shè)備定時2 s,2 s內(nèi)各設(shè)備收不到主機(jī)的命令,將重新完成步驟1。

        2.5 算法流程

        上電啟動后,各個設(shè)備遵循的算法流程如圖2所示。

        3 算法試驗

        本算法選用30臺從機(jī)數(shù)進(jìn)行仿真試驗,記錄每次生成的最小隨機(jī)數(shù)xi即可得到自動分配地址所需的總時間T,即

        圖2 算法流程Fig.2 Algorithm flow chart

        試驗中,RS-485總線的波特率設(shè)置為9600 b/s,程序中設(shè)置Y=30,k=50ms,N=5;模M初始值選為101,Y 每減少 5,模 M 分別替換為 71,61,41,22,11。

        試驗選用2017年2月10日1~10號、2015年5月5日21~30號、2010年9月1日101~110號等3個批次的設(shè)備。機(jī)號n為1~30的設(shè)備,其中1~10號機(jī)的ID分別為07E1020A0001—07E1020A000A,11~20號機(jī)的ID分別為07DF05050015—07DF0505001E,21 ~30 號 機(jī) 的 設(shè) 備 ID 為07DA09010065—07DA0901006E。表2為具體的試驗數(shù)據(jù)。

        試驗中,第1個最小的隨機(jī)數(shù)是0,由17號機(jī)產(chǎn)生,因此17號機(jī)成為主機(jī)開始發(fā)送地址分配命令。試驗未出現(xiàn)最小隨機(jī)數(shù)相同的情況,表明a,b,M的選取適當(dāng)。求得總時間T=7.95 s。

        分別選取連續(xù)和完全隨機(jī)的從機(jī)ID作為隨機(jī)種子,各運行20次,均實現(xiàn)了自動組網(wǎng)及從機(jī)地址的自動分配,平均完成時間約8 s。另外,將本算法與采用隨機(jī)時隙思想的方法進(jìn)行對比,后者雖然也能實現(xiàn)地址的地址分配并避免地址沖突,但平均完成時間需要9 min,效率遠(yuǎn)低于基于隨機(jī)數(shù)發(fā)生器的地址分配算法。由此可見,本算法具有執(zhí)行效率高、穩(wěn)定性好等優(yōu)點。

        表2 試驗數(shù)據(jù)Tab.2 Experimental data

        4 結(jié)語

        本文為了解決基于總線通訊的無主機(jī)工控系統(tǒng)中自動組網(wǎng)與從機(jī)地址不方便設(shè)置的問題,提出了基于隨機(jī)數(shù)發(fā)生器的自動組網(wǎng)與設(shè)備地址分配方法。對該算法進(jìn)行了詳細(xì)的分析,通過試驗驗證了該算法,并與其他地址自動分配算法對比,基于隨機(jī)數(shù)發(fā)生器的算法所需時間更短,分配效率更高。實踐證明,該算法對總線通訊網(wǎng)絡(luò)是可行的。

        [1] 馬慶功,莫玉華,鄭恩興.基于RS485多機(jī)通信系統(tǒng)設(shè)計[J].電子世界,2012,33(1):132-133.

        [2] Tanenbaurn Andrew S.計算機(jī)網(wǎng)絡(luò)[M].潘愛民,譯.北京:清華大學(xué)出版社,2004.

        [3] 楊自強(qiáng),魏公毅.綜述:產(chǎn)生偽隨機(jī)數(shù)的若干新方法[J].數(shù)值計算與計算機(jī)應(yīng)用學(xué)報,2001,22(3):201-215.

        [4] 林國順,黃梯云.模擬隨機(jī)數(shù)統(tǒng)計性質(zhì)比較[J].數(shù)理統(tǒng)計與管理,2000,19(2):30-34.

        [5] 彭娜,黎英,林慶超,等.基于RS-485總線主從通信協(xié)議及其實現(xiàn)[J].云南大學(xué)學(xué)報(自然科學(xué)版),2007,29(s2):259-262.

        Automatic Allocation Method of Device Address Based on Random Number Generator

        ZHANG Lei1,YANG Qi-fan2
        (1.School of Electrical and Information Engineering,Jiangsu University,Zhenjiang 212013,China;2.Quality assurance department SAIC FAW-Volkswagen Automobile Co.,Ltd.,Shanghai 201800,China)

        Bus communication is commonly used in industrial control systems,which is often a mainframe and a slave structure.The traditional bus communication network usually uses the manual method such as dialing code to set the address of the equipment.The automatic organization of the system and the automatic distribution of the address has always been a difficult problem.A new method of automatic network and device address allocation based on random number generator is proposed,which realizes the automatic distribution of the address.The method is applicable to the control system without host,which can automatically select the host,and can automatically organize and distribute the address on power supply,and the required time is shorter and the distribution efficiency is higher.Practice has proved that this method is stable and reliable,and has good application and popularization value.

        bus communication;automatic networking;address allocation;random number

        TP336

        B

        1001-9944(2017)11-0036-04

        10.19557/j.cnki.1001-9944.2017.11.009

        2017-06-05;

        2017-09-03

        張壘(1993—),男,在讀碩士研究生,研究方向為控制工程。

        猜你喜歡
        延遲時間命令數(shù)據(jù)包
        只聽主人的命令
        二氧化碳對乙烷燃燒著火延遲時間的影響
        煤氣與熱力(2021年3期)2021-06-09 06:16:22
        LTE 系統(tǒng)下行鏈路FDRX 節(jié)能機(jī)制研究
        基于分層COX模型的跟馳反應(yīng)延遲時間生存分析
        SmartSniff
        移防命令下達(dá)后
        延遲時間對氣輔注射成型氣體穿透行為影響的數(shù)值模擬和實驗研究
        中國塑料(2016年8期)2016-06-27 06:35:02
        這是人民的命令
        基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實現(xiàn)
        視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
        在线亚洲免费精品视频| 一道久在线无码加勒比| 中文字幕久久久久人妻无码| 在线免费观看亚洲毛片| 国产毛片av一区二区| 亚洲av无码成人网站在线观看| 亚洲中久无码永久在线观看软件 | 国产成人精品一区二区三区视频 | 日日麻批免费40分钟无码| 日日噜狠狠噜天天噜av| 97SE亚洲国产综合自在线不卡| 亚洲国产av午夜福利精品一区| 欧美性猛交xxx嘿人猛交| 亚洲 精品 综合 精品 自拍| 国产资源精品一区二区免费| 美女射精视频在线观看| 婷婷四虎东京热无码群交双飞视频 | 久久99热只有频精品8国语| 少妇被粗大的猛烈进出免费视频| 久久久久这里只有精品网| 成人黄网站免费永久在线观看| 丰满精品人妻一区二区| 少妇愉情理伦片丰满丰满午夜| 国产精品99久久久精品免费观看| 精品国产一区二区三区九一色 | 亚洲人成精品久久熟女| 免费国产a国产片高清网站| 久久天天躁狠狠躁夜夜爽| 狠狠亚洲超碰狼人久久老人| 亚洲丝袜美腿在线视频| 亚洲av无码xxx麻豆艾秋| 欧美日韩亚洲一区二区精品| aa日韩免费精品视频一| 欧美人与禽z0zo牲伦交| 久久精品国产四虎| 午夜一区二区在线视频| 欧美性高清另类videosex| 久久中文字幕人妻熟av女蜜柚m | 第九色区Aⅴ天堂| 国产精品福利高清在线| 全球中文成人在线|