當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]Linux和S3C2410的PROFIBUS-DP主站平臺設計

摘要:針對標準PROFIBUS—DP主站在國內研究較少,自主研發(fā)產品的功能有限、智能化不足的現(xiàn)狀,進行了基于Linux操作系統(tǒng)的PROFIBUS—DP主站的設計和研究,實現(xiàn)了PROFIBUS—DP1類主站的主從通信功能。采用模塊化設計思想,從防錯設計、糾錯設計、故障恢復設計等方面對設計方案中軟硬件可靠性進行了詳細分析。從響應時間的角度闡述了影響系統(tǒng)實時性的關鍵問題,同時對本平臺的實時性進行了詳細分析,并通過實驗測試了該主站的性能參數(shù)。實驗結果表明,對于多從站通信,使用Linux操作系統(tǒng)后,性能更優(yōu)越,運行更穩(wěn)定。
關鍵詞:主站;實時性;模塊化;Linux操作系統(tǒng)

引言
    PROFIBUS是面向工廠自動化、流程自動化的一種國際性的現(xiàn)場總線標準,是一種具有廣泛適用范圍的、開放的數(shù)字通信系統(tǒng),適用于快速、時間要求嚴格和可靠性要求高的各種通信任務。PROFIBUS現(xiàn)場總線分3種:PROFIBUS—FMS、PROFIBUS—DP和PROFIBUS—PA。其中,PROF-IBUS—DP是一種高速的低成本通信連接,用于設備級通信系統(tǒng)與分散式通信。
    PROFIBUS—DP現(xiàn)場總線由主站和從站組成。對于從節(jié)點的研究,國內科研院所很早就開始研究,現(xiàn)已有多家企業(yè)能夠自主研制從站產品。但是對于主站,由于其技術復雜、開發(fā)難度大,目前國內只有北京和利時技術有限公司、浙大中控等少數(shù)幾家公司開展相關的技術研究與開發(fā),并只實現(xiàn)了部分子集功能。大部分產品主要由國外幾家大公司壟斷。同時,隨著PROFIBUS在國內市場上的迅速推廣,許多企業(yè)和科研單位開始了對PROFIBUS協(xié)議的研究,并展開了使用PROFIBUS通信協(xié)議的智能節(jié)點的研究。但是,目前國內業(yè)界對于PROFIBUS—DP的研究和相關產品的開發(fā)都是基于國外提供的專用協(xié)議芯片(主站多數(shù)采用西門子推出的ASPC2,從站多采用SPC3等智能通信芯片),即集中在從站設計領域,而沒有主站樣機開發(fā)的相關報道。對于主站的開發(fā),國內一些科研院所(北航、中科院、浙大等)也曾利用可編程邏輯器件配合MCU設計出簡單主站的試驗產品,但是這些產品僅能實現(xiàn)簡單的主站功能,對于組成強大的PROFIBUS—DP網(wǎng)絡還望塵莫及。
    本文正是針對上述的問題,為避免采用協(xié)議芯片、增加主站智能功能和后續(xù)擴展性研究的需要,設計了基于Linux操作系統(tǒng)的PROFISBUS —DP主站。在硬件上采用ARM9內核的處理器S3C2410,同時將Linux操作系統(tǒng)移植到此硬件平臺上,在此基礎上,完全由軟件編程實現(xiàn)了整個PROFIBUS—DP的主站功能,能夠與標準PROD—IBUS—DP從站設備進行通信。

1 PROFIBUS—DP主站通信機制
    PROFIBUS—DP的主要目的是在功能強大的主站與若干簡單的從站之間進行循環(huán)的數(shù)據(jù)交換。因此系統(tǒng)主要使用主-從類型通信服務。
    PRIFIBUS—DP總線系統(tǒng)設備包括主站和從站,而主站則包括1類主站和2類主站。1類主站能夠對從站設置參數(shù),檢查從站的通信接口配置,讀取從站診斷報文,并根據(jù)已經(jīng)定義好的算法與從站進行用戶數(shù)據(jù)交換,同時,1類主站還能用一組功能與2類主站進行通信。2類主站則是一個編程器或一個管理設備,可以執(zhí)行一組DP系統(tǒng)的管理與診斷功能。由于2類主站不能單獨作為一個主站對從站進行管理,加上本系統(tǒng)采用的是單主站結構,所以本系統(tǒng)設計的是一個1類主站。
    PROFIBUS—DP的1類主站主從通信過程,大致分為以下幾個階段:詢問從站是否在線,主站對從站的第一次診斷,參數(shù)化從站,通信接口配置從站,主站對從站的第二次診斷和主站與從站之間的循環(huán)數(shù)據(jù)交換。
    為了保證幀在總線上的正確傳輸,PROFIBUS—DP對幀的結構及相應的時序關系做了嚴格的規(guī)定,且定義了12個參數(shù)以限定及保證幀間隔時間和可允許的最大等待時間等。一次典型的主從站數(shù)據(jù)交換過程在發(fā)出每一個幀前,須有一個同步期TSYN,即在每一報文幀發(fā)出前加入一段總線休息時間,其長度固定為33Tbit時間。
    在TSYN后,通信的發(fā)起方發(fā)出請求幀到響應者(從站)。接收方從接到該請求到產生響應數(shù)據(jù)的間隔時間定義為TSDR,該參數(shù)的大小反映了該響應方從站的計算能力大小和資源多少。有些站點沒有采用專用的通信ASIC芯片,或者宿主MPU的計算能力較低都會使響應時間較長。  PROFIBUS—DP協(xié)議中規(guī)定了響應時間的上、下限值即:min TSDR,max TSDR。其中:min TSDR=11Tbit,maxTSDR=60Tbit~850Tbit。
    在通信的發(fā)起方(主站)一側,從主站發(fā)出請求幀的最后一位到收到響應幀的第一位之間的時間間隔被定義為Slot Time,它從另一個方面反映了一個系統(tǒng)的實時性能的好壞。此設計中定義了一個重要的參數(shù)TSL,即為允許的最大的Slot Time,如果通信的發(fā)起方主站在超過TSL后,還未收到接收方的響應,則認為系統(tǒng)出錯,或重發(fā)請求幀(重發(fā)請求數(shù)不超過Max Retry Limit參數(shù)限制),或上交此錯誤給FDL層。

2 硬件系統(tǒng)設計
    本PROFIBUS—DP主站硬件平臺由于目標是完全采用自主技術,不依靠國外的產品和技術,所以本系統(tǒng)選用的是第一種方案(即由處理器運行完整的協(xié)議來實現(xiàn));同時,基于S3C2410芯片的強大功能,本平臺不但移植了Linux操作系統(tǒng),并且還編寫了網(wǎng)絡接口和USB口的驅動,這對于平臺的多功能性和以后性能的擴展都有一定的意義,其總體結構如圖1所示。


    此硬件平臺以S3C2410處理器為核心,通過編程實現(xiàn)DP協(xié)議棧的功能,完成與上位機和DP從站設備的通信功能。同時,針對S3C2410處理器的功能,使用外圍芯片DM9000實現(xiàn)了以太網(wǎng)通信功能,并根據(jù)USB的特點,以特定的I/O口實現(xiàn)USB的從設備功能。由于需要移植Linux操作系統(tǒng),所以需要用外圍芯片擴展內存。在本試驗平臺中,通過串口1實現(xiàn)了DP通信,通過串口2實現(xiàn)了該硬件平臺與上位機的通信。[!--empirenews.page--]

3 系統(tǒng)軟件設計
    為了提高該試驗平臺的可靠性,軟件設計方面將本系統(tǒng)分為兩個子系統(tǒng),一個子系統(tǒng)負責與上位機進行通信,另一個子系統(tǒng)則負責PROFIBUS—DP的通信。其中,與上位機通信的程序流程如圖2所示。DP網(wǎng)絡通信程序流程如圖3所示。


    DP網(wǎng)絡通信模塊和上位機通信接口模塊是兩個獨立的模塊,他們共享硬件相關的函數(shù)庫和從站相關數(shù)據(jù)結構。這兩個模塊還互為生產者和消費者的關系,上位機通信模塊為DP網(wǎng)絡通信模塊提供從站相關的組態(tài)(GSD文件相關)信息和從站輸出數(shù)據(jù);DP網(wǎng)絡通信模塊為用戶通信模塊提供從站輸入數(shù)據(jù)及從站運行狀態(tài)相關信息。

4 系統(tǒng)可靠性分析
    軟件的穩(wěn)定性和抗干擾性是衡量系統(tǒng)可靠性的重要指標。本主站在軟件實現(xiàn)中所采取的保證可靠性措施主要有防錯設計、糾錯設計、故障恢復設計等。
    防錯設計:主要體現(xiàn)在系統(tǒng)程序自檢技術及數(shù)據(jù)封裝方面。系統(tǒng)軟件設計過程中采用分層結構,與硬件操作相關的層的通信采用單獨通信模塊完成,這些層次之間通過層間接口進行通信,層間接口在設計過程中對輸入的參數(shù)全部進行有效性檢查(指針有效性、數(shù)值有效性、邏輯有效性檢查等)。在數(shù)據(jù)封裝方面,對與上位機通信和DP網(wǎng)絡通信兩個子系統(tǒng)分別進行編程,分別提供各個子系統(tǒng)的私有數(shù)據(jù),私有數(shù)據(jù)供模塊內部調用,并提供模塊間訪問接口實現(xiàn)相關數(shù)據(jù)的共享,這樣便可以防止出現(xiàn)模塊間數(shù)據(jù)重名以及編程過程中誤修改產生的問題。
    糾錯設計:網(wǎng)關通信過程中不管是和上位機的通信還是DP網(wǎng)絡的通信,采用的都是半雙工的RS485通信。相關通信能否順利進行,取決于數(shù)據(jù)的正確性和時間兩個方面。無論是與上位機通信,還是DP網(wǎng)絡的通信,每次對于傳輸進來的數(shù)據(jù)都有專門的數(shù)據(jù)校驗模塊進行校驗,這就避免了在數(shù)據(jù)有誤的情況下仍然進行通信。同時,針對接收超時等問題,也有專門的模塊進行處理。
    故障恢復設計:采用看門狗技術。系統(tǒng)軟件在運行過程中開啟硬件看門狗,軟件必須在一定的時間內“喂狗”,否則就會導致看門狗對系統(tǒng)的復位。這樣防止了因程序跑飛而導致無法恢復的錯誤。

5 系統(tǒng)實時性
    PROFIBUS—DP現(xiàn)場總線作為應用在設備的公共總線,必須解決各節(jié)點的網(wǎng)絡使用權競爭問題,同時保證通信的實時性。PORFIBUS—DP系統(tǒng)的實時響應時間依賴于max TSDR、采用的傳輸速率、要交換的數(shù)據(jù)長度和數(shù)量、min_slave_Interval(某一個從站前后2次被主站輪詢的最小間隔時間)4個參數(shù)。系統(tǒng)的測控周期(又稱訪問周期)是指控制系統(tǒng)周期性訪問網(wǎng)絡上同一個節(jié)點的時間間隔,是衡量PORFIBUS—DP實時性能的一個重要指標。[!--empirenews.page--]
    一次典型的主從數(shù)據(jù)交換過程如圖4所示。


    其中,Tbit表示在總線上傳輸1位所耗用的時間,是其他時間參數(shù)的計量單位。由于PROFIBUS—DP采用UART編碼方式,每個字符由11位組成,所以傳輸一個字符需要11Tbit。
    TID1定義了一個發(fā)送節(jié)點在獲得相應信號后的再次發(fā)送下一個信息幀所需的最短時間。
    從圖4可知,一個報文循環(huán)由主動幀(請求或發(fā)送/請求幀)和回答幀組成。循環(huán)時間由幀傳輸時間、傳輸延遲時間和站延遲時間組成。
   
    其中:TReq=a×11Tbit,a為請求/發(fā)送幀中的字符個數(shù);TRes=b×11Tbit,b為應答幀中的字符個數(shù);TAsk=1×11Tbit,短應答幀;TS-DR為站延遲時間,指接收方從接到請求到產生響應數(shù)據(jù)的時間間隔;TTD為傳輸間隔時間,指一個幀在傳輸時在發(fā)送器和接收器之間的傳輸介質上經(jīng)過的最大時間。
    本硬件平臺中PROFIBUS—DP總線傳輸速率設置為9.6 kbps,由于是近距離傳輸,所以TTD=OTbit,Tsdr=11Tbit,TID1=37Tbit,和主站通信的從站最多有244個數(shù)據(jù)(根據(jù):PROFIBUS—DP協(xié)議規(guī)定)輸入/輸出,請求幀中有11個字符數(shù)據(jù),則報文循環(huán)時間最長為:
   
    可見,在傳輸速率為9.6 kbps的情況下,一次報文循環(huán)的最長時間為297.3ms;從上面這些參數(shù)中可以發(fā)現(xiàn),只有TID1能夠由主站平臺的性能決定,普通的MPU調度所需時間為24.66μs。而在移植Linux操作系統(tǒng)后,由于采用的2.6版本的Linux操作系統(tǒng)使用了新的0(1)的調度算法,大大提高了進程調度能力,同時對于多從站的通信的任務能進行很好的管理和調度,大大增強了主站平臺的功能。

5 主站平臺性能分析及調試
    PROFIBUS—DP主站的主從通信性能主要體現(xiàn)在主從通信速度的快慢和支持的從站數(shù)目上。由于本實驗室的從站數(shù)目有限,搭建的測試平臺目前只有3個PROFIBUS—DP從站(ET200S、MM420和自主設計的從站),如圖5所示。


    本次測試的傳輸速率選定為9.6 kbps,同時對3個從站進行組態(tài),分別測試移植Linux操作系統(tǒng)前主站從接收到數(shù)據(jù)到有數(shù)據(jù)發(fā)出之間的時間ttop,到移植Linux操作系統(tǒng)后主站的響應時間tend;通過實驗,從示波器上的測試的圖形可以看出ttop的寬度是大于tend的寬度的,具體測量后可知無操作系統(tǒng)下ttop≈4 015.4μs,Linux操作系統(tǒng)tend≈70μs。可見移植Linux操作系統(tǒng)后能使主站的響應時間大大縮短,提高對從站的管理效率。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉