国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

現(xiàn)場總線系統(tǒng)實(shí)時(shí)性的MAC機(jī)制研究※

2015-09-12 06:42頡新春田康李忠虎
關(guān)鍵詞:令牌實(shí)時(shí)性總線

頡新春,田康,李忠虎

(內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,包頭014010)

頡新春(副教授),主要從事現(xiàn)場總線與FPGA 等技術(shù)的研究;田康(碩士研究生),主要研究方向?yàn)閱纹瑱C(jī)通信;李忠虎(教授),主要研究方向?yàn)閭鞲衅骷夹g(shù)、過程參數(shù)檢測與處理、智能儀器。

引 言

近年來,嵌入式微處理器在生產(chǎn)生活中的應(yīng)用發(fā)展迅速。許多實(shí)際應(yīng)用以51 系列單片機(jī)為設(shè)計(jì)平臺(tái)得以實(shí)現(xiàn)。本文利用32 位微控制器STM32F103 作為核心芯片,在Profibus協(xié)議下實(shí)現(xiàn)了現(xiàn)場總線水位監(jiān)控系統(tǒng)?,F(xiàn)場總線的拓?fù)浣Y(jié)構(gòu)決定了總線上各節(jié)點(diǎn)只能通過一個(gè)信道收發(fā)數(shù)據(jù),即各節(jié)點(diǎn)需要競爭同一介質(zhì)收發(fā)數(shù)據(jù),從而導(dǎo)致數(shù)據(jù)傳輸不穩(wěn)定。本文在不改變MAC 機(jī)制的前提下,通過應(yīng)用層調(diào)度算法提高了現(xiàn)場總線水位監(jiān)控系統(tǒng)的實(shí)時(shí)性。

1 MAC機(jī)制

1.1 MAC機(jī)制對實(shí)時(shí)性的影響

MAC機(jī)制即一種能夠解決因多個(gè)終端設(shè)備同時(shí)發(fā)送通信請求而產(chǎn)生爭用通信介質(zhì)問題的協(xié)議??刂茀f(xié)議所采用的介質(zhì)訪問控制方法與控制系統(tǒng)的實(shí)時(shí)性關(guān)系密切,共享相同通信介質(zhì)的總線結(jié)構(gòu)是當(dāng)前多數(shù)控制網(wǎng)絡(luò)的選擇。總線使用權(quán)的調(diào)度方式?jīng)Q定了節(jié)點(diǎn)通信的快慢,介質(zhì)訪問控制機(jī)制就是在最大程度上利用通信信道,優(yōu)化MAC機(jī)制是提高控制系統(tǒng)實(shí)時(shí)性的關(guān)鍵所在。

1.2 基于MAC機(jī)制的調(diào)度方法

令牌環(huán)即令牌沿著節(jié)點(diǎn)組成的環(huán)狀總線循環(huán)。各站均沒有數(shù)據(jù)發(fā)送時(shí),令牌為空令牌;當(dāng)有數(shù)據(jù)需要發(fā)送的節(jié)點(diǎn)迎來令牌時(shí),令牌改為忙令牌,此時(shí)其他節(jié)點(diǎn)不能發(fā)送數(shù)據(jù),必須等待。信息負(fù)載量小時(shí),效率較低,反之較高。把每個(gè)節(jié)點(diǎn)需要傳輸?shù)男畔磿r(shí)間要求分為實(shí)時(shí)信息和非實(shí)時(shí)性信息兩個(gè)隊(duì)列,即把一個(gè)節(jié)點(diǎn)分為兩個(gè)虛擬節(jié)點(diǎn)。當(dāng)令牌傳輸?shù)焦?jié)點(diǎn)時(shí),先執(zhí)行實(shí)時(shí)性要求高的隊(duì)列通信,然后再執(zhí)行實(shí)時(shí)性低的隊(duì)列,并且兩隊(duì)信息執(zhí)行不同的協(xié)議策略。虛擬節(jié)點(diǎn)通信模型如圖1所示。

圖1 虛擬節(jié)點(diǎn)通信系統(tǒng)模型

對實(shí)時(shí)性信息采用空竭式服務(wù),即對每個(gè)節(jié)點(diǎn)每次連續(xù)發(fā)送的數(shù)據(jù)數(shù)目設(shè)置上限,若令牌傳遞到此節(jié)點(diǎn),且節(jié)點(diǎn)需要發(fā)送的實(shí)時(shí)性數(shù)據(jù)數(shù)目少于設(shè)定上限,則所有信息都能被傳送;若數(shù)據(jù)數(shù)目多于此上限,則上限數(shù)目個(gè)實(shí)時(shí)性數(shù)據(jù)被服務(wù)后,剩余信息需等到下一個(gè)輪詢周期才能被服務(wù)。

對非實(shí)時(shí)性信息采用限量式服務(wù),即每個(gè)節(jié)點(diǎn)服務(wù)時(shí)間為一個(gè)信息的服務(wù)時(shí)間,此協(xié)議下,既能保證為其他節(jié)點(diǎn)的實(shí)時(shí)性信息縮短等待時(shí)間,也能保證在實(shí)時(shí)信息不多或沒有的條件下,各節(jié)點(diǎn)非實(shí)時(shí)性信息有均等機(jī)會(huì)及時(shí)被服務(wù)。

2 調(diào)度算法在Profibus中的應(yīng)用

2.1 Profibus的MAC機(jī)制

Profibus是一種國際性的開放式現(xiàn)場總線,使用的是MAC機(jī)制中的令牌傳遞。在此機(jī)制中,地址最低的節(jié)點(diǎn)上電后創(chuàng)建令牌,令牌的接收者在協(xié)議內(nèi)有權(quán)限訪問總線,持有令牌的節(jié)點(diǎn)傳送數(shù)據(jù)后,將令牌傳遞到下一個(gè)節(jié)點(diǎn)??偩€節(jié)點(diǎn)包括主站和從站兩種類型,主站通過總線形成的環(huán)為邏輯環(huán),令牌在邏輯環(huán)內(nèi)循環(huán)輪轉(zhuǎn),這種機(jī)制使主站和從站在確定的最大時(shí)間內(nèi)擁有總線接入權(quán)。令牌循環(huán)模型如圖2所示。

圖2 令牌循環(huán)模型

Profibus總線通信通過報(bào)文循環(huán)實(shí)現(xiàn),從主站發(fā)送數(shù)據(jù)的動(dòng)作幀到接收到從站的響應(yīng)幀為一個(gè)報(bào)文循環(huán),一個(gè)報(bào)文循環(huán)必須完整進(jìn)行。數(shù)據(jù)鏈路層的FD 提供SDA、SRD、SDN、CSRD四種服務(wù)來實(shí)現(xiàn)數(shù)據(jù)傳輸,且每種服務(wù)都有對應(yīng)的一種幀格式。經(jīng)計(jì)算分析得知:TSRD傳輸時(shí)間最長,TSDN傳輸時(shí)間最短,兩者相差約50.25%~52.92%。主從站數(shù)據(jù)交換過程如圖3所示。

圖3 主從站數(shù)據(jù)交換過程

動(dòng)作幀前需加入3字節(jié)同步幀TSYN(為33Tbit),此外接收到報(bào)文最后一位時(shí)需等待一定時(shí)間TIDL,其值需大于TSYN,典型值為75Tbit。主站發(fā)送數(shù)據(jù)幀的最后一位到接收到響應(yīng)幀的第一位之間的時(shí)間間隔定義為Slot-time,TSL是Slot-time被允許的最大值。時(shí)間超過TSL后主站還未接收到響應(yīng),則認(rèn)為出錯(cuò),此時(shí)主站重新發(fā)送請求幀,或?qū)㈠e(cuò)誤上傳FDL層交給上層軟件處理。

2.2 計(jì)算令牌周期

令牌循環(huán)時(shí)間TTR的定義對系統(tǒng)實(shí)時(shí)性影響重大,相關(guān)參考文獻(xiàn)給出過如何設(shè)置參數(shù)TTR的最小值,但在同一個(gè)Profibus總線中工作的節(jié)點(diǎn)設(shè)備往往來自不同生產(chǎn)商,因此找到一個(gè)對系統(tǒng)整體最合適的TTR值就特別重要。這里需要考慮負(fù)載和TTR值之間存在的量化關(guān)系。

令牌持有時(shí)間TTH為目標(biāo)令牌設(shè)定循環(huán)時(shí)間TTR與令牌實(shí)際循環(huán)時(shí)間TRR之差,即:

因此目標(biāo)令牌TTR設(shè)定值決定了TTH的大小。若TTH≤0,則節(jié)點(diǎn)只能發(fā)送一個(gè)高優(yōu)先級報(bào)文;若TTH>0,依次發(fā)送高低優(yōu)先級報(bào)文。

設(shè)系統(tǒng)含有N 個(gè)主站,系統(tǒng)負(fù)荷為P,任一主站負(fù)荷為Pi,一次數(shù)據(jù)交換時(shí)間為TD,令牌總傳遞時(shí)間為u,主站間令牌時(shí)間均為ui,Pih為高優(yōu)先級隊(duì)列負(fù)荷,k為低優(yōu)先級隊(duì)列允許服務(wù)的最大數(shù)量,則

閾值k與目標(biāo)令牌循環(huán)時(shí)間關(guān)系如圖4所示。

圖4 閾值k與目標(biāo)令牌循環(huán)時(shí)間關(guān)系

此時(shí),根據(jù)實(shí)時(shí)信息要求選定適當(dāng)?shù)膋值,從而計(jì)算出合適的令牌循環(huán)周期。

3 硬件設(shè)計(jì)

3.1 系統(tǒng)設(shè)計(jì)

設(shè)計(jì)采用多主站節(jié)點(diǎn)系統(tǒng),選用兩個(gè)節(jié)點(diǎn)的簡單系統(tǒng)模型進(jìn)行研究。數(shù)據(jù)傳輸采用SRD 服務(wù),通信數(shù)據(jù)長度最長為8字節(jié),波特率為187.5kbps,即每個(gè)位時(shí)間Tbit=5.33μs,TSRD設(shè)定為11Tbit。節(jié)點(diǎn)系統(tǒng)圖如圖5所示。

圖5 節(jié)點(diǎn)系統(tǒng)圖

系統(tǒng)主要通過令牌傳遞和調(diào)度算法實(shí)現(xiàn)實(shí)時(shí)性的分散控制,采用STM32F103 單片機(jī)和智能接口芯片SPC3為核心開發(fā)方案。硬件整體結(jié)構(gòu)主要包括STM32F103微控制器及外圍電路、SPC3工作電路、Profibus總線通信接口電路、壓力采集電路及供電電路,系統(tǒng)各部分由地址總線和數(shù)據(jù)總線相連。

3.2 信號采集處理部分

本設(shè)計(jì)中,STLP液位傳感器將輸出4~20mA 標(biāo)準(zhǔn)電流信號,送到單片機(jī)測量顯示,需要將電流信號轉(zhuǎn)換為電壓信號,采用電流/電壓轉(zhuǎn)換器來實(shí)現(xiàn)電流到電壓的轉(zhuǎn)換。此處采用ISO EM 系列隔離放大器,壓力采集電路如圖6所示。

圖6 壓力采集電路

本系統(tǒng)中,采用ISO EM-A4-P3-O4型號的直流電壓/電流信號隔離放大器,可實(shí)現(xiàn)4~20mA/0~5V 的線性轉(zhuǎn)換,模塊電源電壓為5V。單片機(jī)讀取0~5V 電壓模擬信號,可采用8位A/D轉(zhuǎn)換芯片ADC0805CN實(shí)現(xiàn)。

3.3 主電路模塊

單片機(jī)模塊電路核心選用STM32F103,晶振頻率選用11.059 2 MHz,采用手動(dòng)復(fù)位和上電復(fù)位兩種方式。具體電路設(shè)計(jì)如圖7所示。

圖7 核心模塊電路

4 調(diào)度算法設(shè)計(jì)

系統(tǒng)硬件平臺(tái)上的各節(jié)點(diǎn)按照預(yù)先設(shè)定的參數(shù)(包括周期、優(yōu)先級、所傳送數(shù)據(jù)等)對傳送的信息進(jìn)行預(yù)訂。接收端節(jié)點(diǎn)收到來自發(fā)送端節(jié)點(diǎn)的信息時(shí),對所接收信息的性能指標(biāo)進(jìn)行相關(guān)計(jì)算處理。

如果有順序排列的A、B、C 三個(gè)節(jié)點(diǎn),A 節(jié)點(diǎn)取得信道使用權(quán)后,首先判斷其是否有需要發(fā)送的高優(yōu)先級數(shù)據(jù),若有,則A 節(jié)點(diǎn)在令牌持有時(shí)間內(nèi)進(jìn)行高優(yōu)先級數(shù)據(jù)傳輸。如果在持有令牌時(shí)間內(nèi)數(shù)據(jù)發(fā)送完畢,再按FCFS原則發(fā)送固定位低優(yōu)先級數(shù)據(jù);如果高優(yōu)先級數(shù)據(jù)不能在令牌持有時(shí)間內(nèi)發(fā)送完,則在達(dá)到持有時(shí)間邊緣狀態(tài)時(shí)停止高優(yōu)先級數(shù)據(jù)發(fā)送,繼續(xù)發(fā)送固定位低優(yōu)先級數(shù)據(jù),最后將令牌恢復(fù)為空令牌傳給下一節(jié)點(diǎn)。

數(shù)據(jù)發(fā)送流程如圖8所示。

結(jié) 語

本文建立了Profibus多節(jié)點(diǎn)現(xiàn)場總線系統(tǒng),結(jié)合對Profibus協(xié)議內(nèi)容的分析,提出了在不改變原有MAC機(jī)制前提下設(shè)計(jì)新型調(diào)度算法,結(jié)合傳統(tǒng)現(xiàn)場總線拓?fù)浣Y(jié)構(gòu),來實(shí)現(xiàn)實(shí)時(shí)性分散控制。根據(jù)對實(shí)時(shí)信息接收的不同要求,計(jì)算出對應(yīng)的令牌循環(huán)周期設(shè)定值,從而使通信信道達(dá)到最好的分配利用,實(shí)時(shí)性結(jié)果驗(yàn)證圖略——編者注。

圖8 節(jié)點(diǎn)數(shù)據(jù)發(fā)送流程圖

可以得出結(jié)論:信息負(fù)載量越高,此設(shè)計(jì)系統(tǒng)的優(yōu)勢越明顯。

編者注:本文為期刊縮略版,全文見本刊網(wǎng)站www.mesnet.com.cn。

[1]周立功單片機(jī)發(fā)展有限公司.周立功RS-485選型及應(yīng)用指南,2009.

[2]陳鑫林.現(xiàn)代通信中的排隊(duì)論[M].北京:電子工業(yè)出版社,2000.

[3]顧洪軍,張佐,吳秋峰.網(wǎng)絡(luò)控制系統(tǒng)中周期性通信的實(shí)時(shí)性充分條件[J].測控技術(shù),2001,20(6):1-4.

[4]朱琴躍.列車通信網(wǎng)絡(luò)實(shí)時(shí)性理論與方法研究[D].上海:同濟(jì)大學(xué),2008:32-33.

[5]Tovar E,Vasques F.Setting target rotation time in PROFIBUS based real-time distributed applications[C]//IFAC,1998.

猜你喜歡
令牌實(shí)時(shí)性總線
稱金塊
基于路由和QoS令牌桶的集中式限速網(wǎng)關(guān)
基于PCI Express總線的xHC與FPGA的直接通信
機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計(jì)
動(dòng)態(tài)令牌分配的TCSN多級令牌桶流量監(jiān)管算法
航空電子AFDX與AVB傳輸實(shí)時(shí)性抗干擾對比
計(jì)算機(jī)控制系統(tǒng)實(shí)時(shí)性的提高策略
CAN總線并發(fā)通信時(shí)下位機(jī)應(yīng)用軟件設(shè)計(jì)
多通道ARINC429總線檢查儀
一種車載Profibus總線系統(tǒng)的實(shí)時(shí)性分析