0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

電子設(shè)計(jì) ? 來(lái)源:郭婷 ? 作者:電子設(shè)計(jì) ? 2018-12-30 10:04 ? 次閱讀

引言

Profibus-DP是由西門子公司推出的一種開放式現(xiàn)場(chǎng)總線標(biāo)準(zhǔn),用于現(xiàn)場(chǎng)級(jí)分布式自動(dòng)化外設(shè)之間的高速數(shù)據(jù)傳輸。Profibus在2007年4月突破2000萬(wàn)節(jié)點(diǎn)大關(guān)。據(jù)PI(世界性的現(xiàn)場(chǎng)總線Profibus用戶組織)稱現(xiàn)在已經(jīng)超過2 500萬(wàn)個(gè)節(jié)點(diǎn),并希望在2012年突破5 000萬(wàn)個(gè)節(jié)點(diǎn),年銷售芯片450萬(wàn)個(gè)。

目前國(guó)內(nèi)業(yè)界對(duì)于Profibus-DP的研究和相關(guān)產(chǎn)品的開發(fā)都是基于國(guó)外提供的專用協(xié)議芯片(主站多數(shù)采用西門子推出的ASPC2,從站多采用SPC3等智能通信芯片),而沒有協(xié)議芯片樣機(jī)開發(fā)的相關(guān)報(bào)道。對(duì)于主站的開發(fā),國(guó)內(nèi)一些科研院所(北航706教研室、中科院、浙大等)也曾利用可編程邏輯器件配合MCU設(shè)計(jì)出簡(jiǎn)單主站的試驗(yàn)產(chǎn)品,但是這些產(chǎn)品僅能實(shí)現(xiàn)單主站的功能,對(duì)于組成強(qiáng)大的Profibu-DP網(wǎng)絡(luò)還望塵莫及。為了打破國(guó)外芯片的壟斷,推動(dòng)國(guó)內(nèi)相關(guān)芯片及產(chǎn)品的開發(fā),本文提出了一種FPGAARM相結(jié)合的方式解決Profibu-DP 1類主站的主主通信及主從通信問題,實(shí)現(xiàn)了比較完整的主站研制方案。

1 Profibus-DP主站通信機(jī)理及技術(shù)特性

1.1 Profibus-DP主站通信協(xié)議

Profibus協(xié)議的結(jié)構(gòu)以O(shè)SI為參考模型,DP使用第1層、第2層和用戶接口,第3層到第7層未加以描述。一個(gè)DP系統(tǒng)既可以是一個(gè)單主站結(jié)構(gòu),也可以是一個(gè)多主站結(jié)構(gòu),本文涉及的是多主站結(jié)構(gòu)。多主站結(jié)構(gòu)使用混合的總線訪問控制機(jī)制,主站之間采取令牌控制方式;令牌在主站之間傳遞,擁有令牌的主站擁有總線訪問控制權(quán);主站與從站之間采取主從的控制方式。

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

令牌是一種特殊的報(bào)文,如下所示:

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

SD為開始分界符,DA為目的地址,SA為源地址。令牌環(huán)是所有主站的組織鏈,按照主站的地址構(gòu)成邏輯環(huán)。在這個(gè)環(huán)中,令牌在規(guī)定的時(shí)間內(nèi)按照地址的升序在各主站間依次傳遞,用戶通過編寫令牌傳遞程序保證每個(gè)主站在一個(gè)確切規(guī)定的時(shí)問內(nèi)得到令牌,之后該主站就可以在規(guī)定的時(shí)間內(nèi)與所屬?gòu)恼就ㄐ?,也可與所有主站通信。其中主站與所屬?gòu)恼鹃g的數(shù)據(jù)通信由主站按已確定的循環(huán)順序自動(dòng)地進(jìn)行處理。

1.2 令牌循環(huán)時(shí)間分析

最壞情況下令牌循環(huán)時(shí)間為:

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

其中,TTH為站點(diǎn)令牌保持時(shí)間,TTS為令牌的整體傳輸延遲,TMA為令牌維護(hù)時(shí)間。在不考慮出錯(cuò)重發(fā)的前提下,N個(gè)主站令牌的整體傳輸延遲TTS=N·TTK,TTk是發(fā)送令牌PDU(協(xié)議數(shù)據(jù)單元)需要的時(shí)間。高優(yōu)先級(jí)報(bào)文的傳送時(shí)間為THMS,報(bào)文數(shù)量為M;低優(yōu)先級(jí)報(bào)文的傳送時(shí)間為TLMS,報(bào)文數(shù)量為L(zhǎng)。

2.2 ARM控制器部分程序設(shè)計(jì)

ARM控制器程序?qū)?yīng)于Profibus通信協(xié)議數(shù)據(jù)鏈路層之上的DDLM直接數(shù)據(jù)鏈路映射程序、主站通信狀態(tài)機(jī)、應(yīng)用層數(shù)據(jù)接口及應(yīng)用層。

本設(shè)計(jì)對(duì)Profibus-DP協(xié)議按層次封裝為函數(shù),層層調(diào)用。

2.2.1 Slave_Handler狀態(tài)機(jī)

Slave_Handler狀態(tài)機(jī)功能塊負(fù)責(zé)實(shí)現(xiàn)主從通信功能,根據(jù)從站狀態(tài)做出相應(yīng)處理,有固定的處理次序,每次調(diào)用Slave_Handler狀態(tài)機(jī)產(chǎn)生一個(gè)DDLM請(qǐng)求,從而控制從站進(jìn)入相應(yīng)的通信狀態(tài)。Slave_Handler狀態(tài)轉(zhuǎn)換圖如圖2所示。

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

2.2.2 Scheduler和FDL_Controller狀態(tài)機(jī)

Scheduler狀態(tài)機(jī)功能塊負(fù)責(zé)實(shí)現(xiàn)對(duì)Slave_Handler狀態(tài)機(jī)的控制。它向Slave_Handler狀態(tài)機(jī)發(fā)送從站輪詢控制信號(hào),控制其逐步與從站建立數(shù)據(jù)交換關(guān)系。

FDL_Controller狀態(tài)機(jī)由10個(gè)FDL狀態(tài)組成并在這些狀態(tài)間轉(zhuǎn)換,如圖3所示。

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

邏輯令牌環(huán)的建立主要工作是對(duì)LAS和GAPL的初始化。LAS和GAPL的具體初始化流程如圖4所示。

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

LAS的形成標(biāo)志著邏輯令牌環(huán)初始化的完成。接下來(lái)就是邏輯令牌環(huán)運(yùn)轉(zhuǎn)的維護(hù)階段,令牌將按照LAS進(jìn)行循環(huán)傳遞,得到令牌的主站有權(quán)進(jìn)行對(duì)其所屬?gòu)恼镜妮喸?。傳遞過程中主站將以固定的時(shí)間間隔,通過Request FDLStatus主動(dòng)幀來(lái)詢問自己GAP范圍內(nèi)的所有地址,并根據(jù)詢問結(jié)果修改LAS和GAPL。在主站活動(dòng)表生成之后,前驅(qū)站詢問ReqtJest FDL Starus,主站回復(fù)準(zhǔn)備進(jìn)入邏輯令牌環(huán),并從Listen_Token狀態(tài)進(jìn)入Active_Idle狀態(tài)(主站的前驅(qū)站會(huì)修改自己的GAP和LAS,并把該主站作為自己的后繼站)。主站在Active_Idle狀態(tài)*總線,能夠?qū)ぶ纷约旱闹鲃?dòng)幀作應(yīng)答,但沒有發(fā)起總線活動(dòng)的權(quán)力,直到前驅(qū)站傳送令牌給它,它保留令牌并進(jìn)入U(xiǎn)se_Token狀態(tài),在此狀態(tài)下驅(qū)動(dòng)Scheduler狀態(tài)機(jī)工作。主站持有令牌后,首先計(jì)算上次令牌獲得時(shí)刻到本次令牌獲得時(shí)刻經(jīng)過的時(shí)間(即實(shí)際輪轉(zhuǎn)時(shí)間tRR),并與用戶設(shè)定的目標(biāo)輪轉(zhuǎn)時(shí)間tTR比較,如果tRR小于tTR,則主站開始處理傳輸任務(wù)。首先處理高優(yōu)先級(jí)傳輸服務(wù),所有高優(yōu)先級(jí)服務(wù)處理完畢后處理低優(yōu)先級(jí)服務(wù)。在這個(gè)過程中,每一個(gè)完整的報(bào)文循環(huán)之后,主站就重新計(jì)算tTR—tTH。若結(jié)果小于0,主站進(jìn)入PassToken狀態(tài),將令牌傳遞給后繼站,未完成的任務(wù)留到下一次令牌持有的時(shí)候再執(zhí)行。所有傳輸服務(wù)都完成后,不管是否有時(shí)間剩余,主站都交出令牌。如果主站接到令牌時(shí)發(fā)現(xiàn)tTR—tTH

3 系統(tǒng)工作過程

系統(tǒng)工作過程主要是ARM控制器和FPGA的通信交互過程,如圖5所示。從系統(tǒng)安全性上考慮,F(xiàn)PGA和ARM建立通信必須有雙方的確認(rèn)信號(hào),雖然Altera Cyclone系列FP-GA從上電到穩(wěn)定之前引腳沒有輸出,從系統(tǒng)安全性角度考慮還是不夠的。

Profibus-DP主站通信平臺(tái)的設(shè)計(jì)方案

這里FPGA_READY信號(hào)的設(shè)計(jì)是考慮到FPGA內(nèi)部鎖相環(huán)模塊PLL穩(wěn)定工作之前需要建立時(shí)間,而其未穩(wěn)定時(shí)是不能對(duì)其進(jìn)行操作的。通信的狀態(tài)通過ARM控制器上的狀態(tài)機(jī)(FDL控制狀態(tài)機(jī)、調(diào)度狀態(tài)機(jī)和主從通信狀態(tài)機(jī))進(jìn)行轉(zhuǎn)換,根據(jù)定時(shí)要求、從站響應(yīng)幀給出的信息,以及錯(cuò)誤檢查等信息,狀態(tài)機(jī)能夠應(yīng)付一般的異常并自行恢復(fù)到正常的通信之中。

4 結(jié)論

Profibus-DP協(xié)議用任何微處理器都能實(shí)現(xiàn),只要微處理器配有內(nèi)部或外部的異步串行接口(UART),但當(dāng)數(shù)據(jù)傳輸速率較快(超過500 kb/s)時(shí),用ASIC芯片來(lái)實(shí)現(xiàn)更安全可靠。本文充分利用了FPGA實(shí)時(shí)性好和ARM核微控制器便于開發(fā)的優(yōu)點(diǎn),實(shí)現(xiàn)了Profibus-DP 1類主站,經(jīng)過搭建簡(jiǎn)單測(cè)試環(huán)境進(jìn)行測(cè)試,能和市場(chǎng)上的成品主從站建立通信連接并進(jìn)行基本的主主、主從通信。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21769

    瀏覽量

    604634
  • 芯片
    +關(guān)注

    關(guān)注

    456

    文章

    51019

    瀏覽量

    425335
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9121

    瀏覽量

    368228
  • 西門子
    +關(guān)注

    關(guān)注

    94

    文章

    3055

    瀏覽量

    116136
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    具有PROFIBUS-DP通信功能的接口設(shè)計(jì)解決方案

    論述了一種PROFIBUS-DP從站開發(fā)方案,為自主開發(fā) 具有PROFIBUS-DP通信功能產(chǎn)品的用戶,以O(shè)EM方式提供PROFIBUS-DP
    的頭像 發(fā)表于 12-12 08:21 ?7805次閱讀
    具有<b class='flag-5'>PROFIBUS-DP</b><b class='flag-5'>通信</b>功能的接口設(shè)計(jì)解決<b class='flag-5'>方案</b>

    基于PROFIBUS-DP的電能管理及電力監(jiān)控系統(tǒng)

    基于PROFIBUS-DP的電能管理及電力監(jiān)控系統(tǒng)安科瑞 蔡昀羲摘 要:設(shè)計(jì)了基于PROFIBUSDP的電能管理及電力監(jiān)控系統(tǒng),描述了該系統(tǒng)的結(jié)構(gòu)組成和實(shí)現(xiàn)原理,給出了
    發(fā)表于 12-16 20:57

    MPI和PROFIBUS-DP的區(qū)別

    RS-485中繼器擴(kuò)展。MPI允許通信-從通信。PROFIBUS-DP允許構(gòu)成單
    發(fā)表于 06-17 05:00

    如何實(shí)現(xiàn)集成PROFIBUS-DP接口的軟PLC控制器?

    MULTIPROG Expresss的功能特點(diǎn)有哪些?如何實(shí)現(xiàn)集成PROFIBUS-DP接口的軟PLC控制器?
    發(fā)表于 07-15 08:02

    如何實(shí)現(xiàn)集成PROFIBUS-DP接口的軟PLC控制器

    如何實(shí)現(xiàn)集成PROFIBUS-DP接口的軟PLC控制器?
    發(fā)表于 09-29 06:50

    怎樣去解決ARM與PROFIBUS-DP通信問題呢

    我需要做個(gè)控制器,要用arm S3C2410 與PLC通信,由于PLC可以與PROFIBUS-DP通信,所以要解決ARM 與PROFIBUS-DP
    發(fā)表于 06-13 16:27

    PROFIBUS-DP通信卡的研發(fā)

    介紹了由Windows CE.NET 操作系統(tǒng)和SAMSUNG SMDK 2410 組成的嵌入式監(jiān)控系統(tǒng),并且將其運(yùn)用于基于PROFIBUS-DP 現(xiàn)場(chǎng)總線協(xié)議的搭建。詳細(xì)介紹了自行開發(fā)的
    發(fā)表于 09-01 09:43 ?25次下載

    PROFIBUS-DP通訊模塊

    DPM-S PROFIBUS嵌入式從模塊適用于自主開發(fā)PROFIBUS-DP設(shè)備,且不需要掌握PROFIBUS-DP相關(guān)理論知識(shí),通過
    發(fā)表于 11-02 14:35 ?78次下載

    基于VC的Profibus-DP通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

    針對(duì)采用WinCC等通用軟件建立Profibus-DP網(wǎng)絡(luò)不能滿足大型系統(tǒng)中數(shù)據(jù)處理和監(jiān)視的特定需求,提出一種基于VC的Profibus-DP通信系統(tǒng)的設(shè)計(jì)方案。采用VC++6.0編寫
    發(fā)表于 02-10 16:13 ?46次下載

    PROFIBUS-DP通信卡的研發(fā)

    介紹了由Windows CE.NET操作系統(tǒng)和SAMSUNG SMDK 2410組成的嵌入式監(jiān)控系統(tǒng),并且將其運(yùn)用于基于PROFIBUS-DP現(xiàn)場(chǎng)總線協(xié)議的搭建。詳細(xì)介紹了自行開發(fā)的PRO
    發(fā)表于 07-21 09:18 ?32次下載

    Profibus-DP通信系統(tǒng)的設(shè)計(jì)

    針對(duì)采用WinCC等通用軟件建立Profibus-DP網(wǎng)絡(luò)不能滿足大型系統(tǒng)中數(shù)據(jù)處理和監(jiān)視的特定需求,提出一種基于VC的Profibus-DP通信系統(tǒng)的設(shè)計(jì)方案。采用VC++6.0編寫
    發(fā)表于 12-31 17:54 ?34次下載

    Linux和S3C2410的PROFIBUS-DP平臺(tái)設(shè)計(jì)

    針對(duì)標(biāo)準(zhǔn)PROFIBUSDP站在國(guó)內(nèi)研究較少,自主研發(fā)產(chǎn)品的功能有限、智能化不足的現(xiàn)狀,進(jìn)行了基于Linux操作系統(tǒng)的PROFIBUSDP
    發(fā)表于 06-21 11:52 ?1567次閱讀
    Linux和S3C2410的<b class='flag-5'>PROFIBUS-DP</b><b class='flag-5'>主</b><b class='flag-5'>站</b><b class='flag-5'>平臺(tái)</b>設(shè)計(jì)

    PROFIBUS-DP模塊

      本手冊(cè)中,除了特別說明以外,使用的總稱與略稱來(lái)闡述關(guān)于QJ71PB92V型PROFIBUS-DP模塊的有關(guān)內(nèi)容。
    發(fā)表于 09-25 16:52 ?6次下載
    <b class='flag-5'>PROFIBUS-DP</b><b class='flag-5'>主</b><b class='flag-5'>站</b>模塊

    Profibus-DP現(xiàn)場(chǎng)總線結(jié)構(gòu)、技術(shù)特性及實(shí)現(xiàn)應(yīng)用設(shè)計(jì)

    詳細(xì)探討ProfIbus-DP協(xié)議結(jié)構(gòu)、通信機(jī)理廈技術(shù)特性,并將Profihus-DP技術(shù)與嵌入式技術(shù)相結(jié)合,研制高開放性、實(shí)時(shí)性和可靠性的Profibus-DP
    的頭像 發(fā)表于 05-28 09:15 ?9769次閱讀
    <b class='flag-5'>Profibus-DP</b>現(xiàn)場(chǎng)總線結(jié)構(gòu)、技術(shù)特性及實(shí)現(xiàn)應(yīng)用設(shè)計(jì)

    PROFIBUS-DP轉(zhuǎn)ETHERNET/IP網(wǎng)關(guān)ethernet和tcp/ip的區(qū)別

    遠(yuǎn)創(chuàng)智控YC-DPM-EIP是自主研發(fā)的一款PROFIBUS-DP功能的通訊網(wǎng)關(guān)。該產(chǎn)品主要功能是將各種PROFIBUS-DP接入到
    的頭像 發(fā)表于 07-19 16:18 ?1303次閱讀
    <b class='flag-5'>PROFIBUS-DP</b><b class='flag-5'>主</b><b class='flag-5'>站</b>轉(zhuǎn)ETHERNET/IP網(wǎng)關(guān)ethernet和tcp/ip的區(qū)別