亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種can總線主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法

文檔序號:7777111閱讀:559來源:國知局
一種can總線主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法
【專利摘要】本發(fā)明公開一種CAN總線主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法,是針對CAN總線網(wǎng)絡(luò)中采用主從應(yīng)答模式應(yīng)用協(xié)議進(jìn)行網(wǎng)絡(luò)通訊的消息調(diào)度。此調(diào)度算法在構(gòu)造時間觸發(fā)調(diào)度表時,通過采用請求與應(yīng)答消息間隔放置、調(diào)度表同行相鄰列不放置相同目的ID的請求消息作為約束條件進(jìn)行間隔式裝箱算法構(gòu)造調(diào)度表。提出改進(jìn)遺傳算法優(yōu)化調(diào)度表獨(dú)占時間窗,以提高總線利用率。周期性統(tǒng)計(jì)網(wǎng)絡(luò)中節(jié)點(diǎn)消息,動態(tài)更新調(diào)度表實(shí)現(xiàn)資源合理利用。利用本發(fā)明能夠提高網(wǎng)絡(luò)總線的利用率,減少消息等待延時,合理調(diào)度消息,解決采用主從應(yīng)答模式時現(xiàn)有網(wǎng)絡(luò)調(diào)度算法存在的不足。
【專利說明】一種CAN總線主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及CAN總線分布式網(wǎng)絡(luò)技術(shù)控制領(lǐng)域,更具體地說,尤其是在涉及到CAN總線網(wǎng)絡(luò)中采用主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法。
【背景技術(shù)】
[0002]控制器局部網(wǎng)(Controller Area Network,CAN)由于其高性能、高可靠性、實(shí)時性等優(yōu)點(diǎn)現(xiàn)已廣泛應(yīng)用于工業(yè)自動化、多種控制設(shè)備、交通工具、醫(yī)療儀器以及建筑、環(huán)境控制、太陽能充電系統(tǒng)等眾多領(lǐng)域。
[0003]傳統(tǒng)CAN總線本質(zhì)上屬于事件觸發(fā)機(jī)制,截止訪問采用CSMA的方式,當(dāng)網(wǎng)絡(luò)中總線發(fā)生沖突時,CAN總線利用非破壞性仲裁機(jī)制對消息優(yōu)先級進(jìn)行仲裁,優(yōu)先級最高的消息獲得總線進(jìn)行發(fā)送消息。為確保可預(yù)知的消息通信及減少消息傳輸?shù)难訒r,時間觸發(fā)協(xié)議(Time Triggered CAN, TTCAN)對CAN協(xié)議進(jìn)行了會話層的擴(kuò)展。TTCAN采用TDMA的方式實(shí)現(xiàn)了對周期性消息的調(diào)度,TTCAN已被接受為ISOl 1898-4標(biāo)準(zhǔn)協(xié)議。TTCAN所構(gòu)建的調(diào)度表中包含同步窗、獨(dú)占窗和仲裁窗,同步窗用于實(shí)現(xiàn)網(wǎng)絡(luò)時鐘的同步;獨(dú)占窗用于調(diào)度網(wǎng)絡(luò)周期性消息;仲裁窗用于仲裁事件消息傳輸。
[0004]由于CAN總線只定義了物理層和鏈路層,應(yīng)用層則留給用戶自行定義。在TTCAN調(diào)度中,并沒有針對網(wǎng)絡(luò)中采用主從應(yīng)答模式的應(yīng)用協(xié)議進(jìn)行說明。因此在實(shí)際采用主從應(yīng)答模式的協(xié)議作為CAN總線網(wǎng)絡(luò)協(xié)議時,存在兩個不足:
[0005](I)當(dāng)主站發(fā)送請求消息至從節(jié)點(diǎn)后,從節(jié)點(diǎn)可能由于某些處理而延時了返回主站的應(yīng)答消息,由于在統(tǒng)計(jì)網(wǎng)絡(luò)信息時用戶可能將請求和應(yīng)答信息合并作為一條信息進(jìn)行調(diào)度,但這種情況下,主站必須等待從站,此時存在很大的時間窗浪費(fèi)。
[0006](2)采用傳統(tǒng)裝箱算法生成的調(diào)度表,由于裝箱算法是一個NDP (非確定性多項(xiàng)式)問題,即多項(xiàng)式時間內(nèi)無法精確求解,因此生成的調(diào)度表并非是最優(yōu)的,會引起多處時間窗的分配存在時間單元浪費(fèi)的問題,此時總線為空閑態(tài)而無法用于其他信息傳輸。針對這一狀況,目前已有采用遺傳算法進(jìn)行優(yōu)化,但是遺傳算法存在某些弊端。

【發(fā)明內(nèi)容】

[0007]為克服現(xiàn)有技術(shù)中的不足,本發(fā)明的目的在于提出一種CAN總線主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法,旨在提高網(wǎng)絡(luò)總線的利用率,減少響應(yīng)等待時延,實(shí)現(xiàn)消息的合理調(diào)度。
[0008]本發(fā)明解決其技術(shù)問題所提出方案是:
[0009]本發(fā)明在TTCAN所提及的構(gòu)建調(diào)度表的步驟中,針對消息采用傳統(tǒng)的裝箱算法生成調(diào)度表的過程中,提出一種“間隔式裝箱算法”代替?zhèn)鹘y(tǒng)的裝箱算法構(gòu)造主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度表。此算法實(shí)現(xiàn)的依據(jù)是:請求消息MQi在發(fā)送后,由于應(yīng)答具有一定的截止時間Di (—般等于其周期Ti),只要在Di之前從節(jié)點(diǎn)返回應(yīng)答消息即可。因此,在構(gòu)造調(diào)度表時,請求消息MQi和應(yīng)答消息MRi可分開處理。實(shí)現(xiàn)的原理是:考慮到MQi發(fā)送后,由于從節(jié)點(diǎn)需要解包等處理某些任務(wù)而不能及時返回應(yīng)答信息,因此并不立刻安排MRi的發(fā)送,而是在生成調(diào)度表時,分配MQJi置的相鄰下一列時間窗分配給其余的消息,然后緊接著再安排MRi的發(fā)送,這樣可以充分利用總線,避免造成總線不必要的等待浪費(fèi)。
[0010]本發(fā)明的技術(shù)方案,包括如下步驟:
[0011]步驟一:網(wǎng)絡(luò)中所有節(jié)點(diǎn)廣播競爭主節(jié)點(diǎn),標(biāo)識符最低(優(yōu)先級最低)的節(jié)點(diǎn)將成為網(wǎng)絡(luò)主節(jié)點(diǎn); [0012]步驟二:網(wǎng)絡(luò)主節(jié)點(diǎn)廣播統(tǒng)計(jì)信息,所有節(jié)點(diǎn)返回本節(jié)點(diǎn)的請求和應(yīng)答消息;
[0013]步驟三:網(wǎng)絡(luò)主節(jié)點(diǎn)根據(jù)統(tǒng)計(jì)的所有消息,采用“間隔式裝箱算法”構(gòu)造調(diào)度表;
[0014]步驟四:網(wǎng)絡(luò)主節(jié)點(diǎn)采用遺傳算法優(yōu)化已構(gòu)造的調(diào)度表;
[0015]步驟五:網(wǎng)絡(luò)主節(jié)點(diǎn)將優(yōu)化后的調(diào)度表信息發(fā)送至網(wǎng)絡(luò)中的每個節(jié)點(diǎn)后,再廣播參考消息開始網(wǎng)絡(luò)消息調(diào)度;
[0016]步驟六:網(wǎng)絡(luò)主節(jié)點(diǎn)在開始調(diào)度一段時間后,再次重復(fù)步驟二至步驟五,根據(jù)網(wǎng)絡(luò)中節(jié)點(diǎn)運(yùn)行情況及時更新調(diào)度表。
[0017]本發(fā)明技術(shù)方案步驟二中統(tǒng)計(jì)的消息包括網(wǎng)絡(luò)節(jié)點(diǎn)的請求信息和對應(yīng)應(yīng)答節(jié)點(diǎn)的應(yīng)答信息,包括的消息屬性有:消息的傳輸時間長度、消息的周期、消息的編號。步驟三中,構(gòu)造調(diào)度表時,需要滿足的約束條件:請求和相應(yīng)的應(yīng)答消息必須間隔放置。
[0018]間隔式裝箱算法構(gòu)造調(diào)度表的過程如下:
[0019](I)主節(jié)點(diǎn)根據(jù)收集的所有消息,計(jì)算調(diào)度表的周期、基本周期、調(diào)度表行數(shù);
[0020](2)從存儲的消息中取出消息MQi和MRi,遍歷調(diào)度表,判斷調(diào)度表中的某行是否能同時放下消息MQi和MRi,不能則繼續(xù)遍歷調(diào)度表,尋找可同時放下消息MQi和MRi的位置;[0021 ] (3)重復(fù)過程(2),直至所有的信息均放入調(diào)度表中。
[0022]本發(fā)明技術(shù)方案步驟五種,調(diào)度表信息包括:調(diào)度基本周期、調(diào)度表周期、調(diào)度表行數(shù)、調(diào)度表列數(shù)、調(diào)度表每列時間窗寬度、調(diào)度表每行每列分配發(fā)送的消息標(biāo)識符。
[0023]本發(fā)明遺傳算法主要針對獨(dú)占窗中總線利用率非最優(yōu)的時間窗進(jìn)行優(yōu)化,采以提高總線利用率,實(shí)現(xiàn)調(diào)度表的最優(yōu)化。相比傳統(tǒng)的遺傳算法,遺傳算法的改進(jìn)之處主要體現(xiàn)在:
[0024](I)將步驟三構(gòu)造的調(diào)度表采用實(shí)數(shù)編碼后作為初始個體,剩余個體隨機(jī)產(chǎn)生;
[0025](2)構(gòu)造適應(yīng)度函數(shù),適應(yīng)度函數(shù)由每個個體解碼后表示的總線利用率和懲罰因子組成;
[0026](3)在每次進(jìn)行選擇、交叉、變異三個操作之前,均需先計(jì)算所有個體的適應(yīng)度函數(shù),并保留最優(yōu)個體不參與選擇、交叉和變異三個操作;
[0027](4)選擇采用輪盤賭算法進(jìn)行選擇,采用單點(diǎn)交叉和兩點(diǎn)交叉的混合交叉算法,隨機(jī)數(shù)(0,I)的方式選擇交叉算法,隨機(jī)數(shù)為O采用單點(diǎn)交叉算法,隨機(jī)數(shù)為I采用兩點(diǎn)交叉算法;變異則采用隨機(jī)概率的方式進(jìn)行隨機(jī)位的變異。
[0028]本發(fā)明提出的遺傳算法改進(jìn)之處(3)中最優(yōu)個體的選擇依據(jù)的是所有個體的適應(yīng)度值,適應(yīng)度值最高的為最優(yōu)個體,不參與選擇、交叉、變異操作;。
[0029]本發(fā)明提出的遺傳算法改進(jìn)之處(4)中,混合交叉算法的單點(diǎn)交叉和兩點(diǎn)交叉是采用隨機(jī)數(shù)(0,I)的方式選擇交叉算法,隨機(jī)數(shù)為O采用單點(diǎn)交叉算法,隨機(jī)數(shù)為I采用兩點(diǎn)交叉算法。若兩個染色體基因表示為apt..an_!an和Id1Id2...1v1Iv則交叉形成的兩個新個體可能為:
[0030]Stl:£1ι£?2...£1讓—ibk...bn_^bn 矛口 bibg...bk—i£lk...£ln—i£ln
[0031 ] st2 !bib。...bk £ik,+i...£1讓”—山讓”...bn—ibn 矛口 £ii£i2...£ik,bk,+1...bk”—i£ik”...Bn_^£in
[0032]stl為單點(diǎn)交叉算法形成的兩個新個體,st2為兩點(diǎn)交叉形成的兩個新個體。其中k為單點(diǎn)交叉算法在基因長度范圍內(nèi)產(chǎn)生的隨機(jī)數(shù);k’和k’’表示兩點(diǎn)交叉算法隨機(jī)產(chǎn)生的基因長度范圍內(nèi)兩個位置,且k’〈k’’。混合交叉算法結(jié)合了單點(diǎn)交叉算法和兩點(diǎn)交叉算法的優(yōu)點(diǎn),增強(qiáng)了對最優(yōu)個體的搜索能力。
[0033]本發(fā)明提出的遺傳算法改進(jìn)之處(2)中,個體r適應(yīng)度函數(shù)f,表示為:
【權(quán)利要求】
1.一種CAN總線主從應(yīng)答模式協(xié)議的網(wǎng)絡(luò)調(diào)度算法,其特征在于,包括以下步驟: 步驟一:網(wǎng)絡(luò)中所有節(jié)點(diǎn)廣播競爭主節(jié)點(diǎn),標(biāo)識符最低的節(jié)點(diǎn)將成為網(wǎng)絡(luò)主節(jié)點(diǎn); 步驟二:網(wǎng)絡(luò)主節(jié)點(diǎn)廣播統(tǒng)計(jì)信息,所有節(jié)點(diǎn)返回本節(jié)點(diǎn)的請求和應(yīng)答消息,存至主節(jié)點(diǎn)內(nèi)存中; 步驟三:網(wǎng)絡(luò)主節(jié)點(diǎn)根據(jù)統(tǒng)計(jì)收集的所有消息,采用“間隔式裝箱算法”構(gòu)造調(diào)度表; 步驟四:網(wǎng)絡(luò)主節(jié)點(diǎn)采用遺傳算法優(yōu)化已構(gòu)造的調(diào)度表; 步驟五:網(wǎng)絡(luò)主節(jié)點(diǎn)將優(yōu)化后的調(diào)度表信息發(fā)送至網(wǎng)絡(luò)中的每個節(jié)點(diǎn)后,再廣播參考消息開始網(wǎng)絡(luò)消息調(diào)度; 步驟六:網(wǎng)絡(luò)主節(jié)點(diǎn)在開始調(diào)度一段時間后,重復(fù)步驟二至步驟五,根據(jù)網(wǎng)絡(luò)中節(jié)點(diǎn)運(yùn)行情況及時更新調(diào)度表。
2.如權(quán)利要求1所述的方法,其特征在于,在所述步驟二中統(tǒng)計(jì)信息包括每個節(jié)點(diǎn)的請求消息和對應(yīng)的應(yīng)答消息,這些消息的屬性包括消息個數(shù)、消息傳輸時間長度和消息傳輸周期。
3.如權(quán)利要求1所述的方法,其特征在于,在所述步驟三中間隔式裝箱算法在構(gòu)造調(diào)度表時,放置請求消息MQi后需要將對應(yīng)的應(yīng)答消息MRi進(jìn)行間隔一列放置,而間隔的空閑列則用于下一個消息的分配。間隔式裝箱算法構(gòu)造調(diào)度表的過程如下: (O主節(jié)點(diǎn)根據(jù)收集的所有消息,計(jì)算調(diào)度表的周期、基本周期、調(diào)度表行數(shù); (2)從存儲的消息中取出消息MQi和MRi,遍歷調(diào)度表,判斷調(diào)度表中的某行長度是否能同時容下消息MQi和MRi,能則放置消息MQi和MRi ;不能則繼續(xù)遍歷調(diào)度表,尋找可同時放下消息MQi和MRi的位置;` (3)重復(fù)過程(2),直至所有的消息均放入調(diào)度表中。
4.如權(quán)利要求1所述的方法,其特征在于,在所述步驟四中的遺傳算法,步驟如下: (1)將步驟三構(gòu)造的調(diào)度表采用實(shí)數(shù)編碼后作為初始個體,剩余個體隨機(jī)產(chǎn)生; (2)構(gòu)造適應(yīng)度函數(shù),適應(yīng)度函數(shù)由每個個體解碼后表示的總線利用率和懲罰因子組成; (3)在每次進(jìn)行選擇、交叉、變異三個操作之前,均需先計(jì)算所有個體的適應(yīng)度函數(shù),并保留最優(yōu)個體不參與選擇、交叉和變異三個操作; (4)選擇采用輪盤賭算法進(jìn)行選擇,采用單點(diǎn)交叉和兩點(diǎn)交叉的混合交叉算法,隨機(jī)數(shù)(0,1)的方式選擇交叉算法,隨機(jī)數(shù)為O采用單點(diǎn)交叉算法,隨機(jī)數(shù)為I采用兩點(diǎn)交叉算法;變異則采用隨機(jī)概率的方式進(jìn)行隨機(jī)位的變異。
5.如權(quán)利要求4所述的方法,其特征在于,個體r的適應(yīng)度函數(shù)f;由總線利用率和懲


k罰因子組成,表示為:L = ψ-;其中為個體r的懲罰因子,針對遺傳算法優(yōu)化過


J=I程中產(chǎn)生的某些個體解碼后列數(shù)可能超過原調(diào)度表列數(shù)總數(shù)的限制,若超過則個體為不合理,否則為合理,而引入的懲罰因子就是根據(jù)這些個體解碼后的調(diào)度表是否合理來影響該個體遺傳至下一代的概率;若個體r解碼后對應(yīng)的調(diào)度表是合理的,則h為O,否則為一個很大的常數(shù)α, α選取為
6.如權(quán)利要求1所述的方法,其特征在于,在所述步驟五所述優(yōu)化后發(fā)送調(diào)度表信息,發(fā)送的調(diào)度表信息包括調(diào)度基本周期、調(diào)度表周期、調(diào)度表行數(shù)、調(diào)度表列數(shù)、調(diào)度表每列時間窗寬度和調(diào)度表每行每列分配發(fā)送的消息標(biāo)識符。
【文檔編號】H04L12/40GK103634184SQ201310585751
【公開日】2014年3月12日 申請日期:2013年11月19日 優(yōu)先權(quán)日:2013年7月29日
【發(fā)明者】孫本新 申請人:北京匯能精電科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1