摘 要:論述了一種PROFIBUS-DP從站開發(fā)方案,為自主開發(fā) 具有PROFIBUS-DP通信功能產品的用戶,以OEM方式提供PROFIBUS-DP從站通信接口。
關鍵詞:現場總線;PROFIBUS-DP;從站;通信接口
0引言
目前國內對自動化產品(電器、儀表、驅動裝置等)提出PROFIBUS通信功能要 求,主要來源于:
?。?)國外生產設備及技術的引進,特別是從歐洲引進的成套設備通常采用PROFIBUS現場總線 ,因此對國內配套產品提出了現場總線PROFIBUS通信功能的技術要求;
(2)國內自動化系統(tǒng)廠家比較成功的、面向行業(yè)的控制系統(tǒng),要求系統(tǒng)技術向現場總線技術 發(fā)展,同時也要求現場設備向智能化、網絡化方向發(fā)展。
基于上述需求,嵌入式PROFIBUS-DP從站通信接口的設計為自主開發(fā)具有PROFIBUS-DP通信功能產品的用戶提供了一種快速、高效的解決方案。
1實現方法
?。?)電路設計制作:使用PROFIBUS通信專用ASIC芯片SPC3實現協(xié)議相 關內容,選用合適的CPU,外圍加帶光電隔離的RS-485驅動;
?。?)單片機+Firmware軟件:需要在單片機中編程(Firmware軟件),實現單片機與ASIC的結合;
(3)用戶產品的CPU通過串行接口向PROFIBUS-DP從站通信接口板讀/寫輸入/輸出數據;PROFIBUS-DP從站通信接口板自動轉換成PROFIBUS-DP協(xié)議與PROFIBUS主站通信;
?。?)編寫GSD文件,搭建一個調試與測試平臺進行PROFIBUS系統(tǒng)配置。
2硬件設計
嵌入式PROFIBUS-DP從站通信接口板(以下簡稱接口板)由CPU芯片、PROFIBUS 協(xié)議芯片SPC3及光隔RS485驅動等電路組成,如圖1所示。
接口板與用戶模板采用串口連接,使用波特率選擇開關可選擇指定 的7種波特率(9600、19.2K、 38.4K、57.4K、115.2K、230.4K、460、8K)中的一種;接口板需要用戶模板 提供2組5 V電源(VCC/GND150 mA和5 V/0V-100 mA),分別作為接口 板的電源及光隔外電源,由16針插座J1引 入。信號A、B、RTS及5 V、0 V可直接引到用戶模板PROFIBUS的D型插 頭上(使用PCB布線或軟接線均可)。根據PROFIBUS產品測試技術規(guī)范,此接法引線或軟接線 不宜過長,通常PCB引線不超過20 cm、軟接線不超過10 cm。
如果PROFIBUS的D型插頭與接口板之間需要更長的引線,可以從接口板上的10針插頭J2引出 ,此時需要采用外接口轉接板。
用戶模板PROFIBUS插頭為孔型(famel)D型插頭,與接口板16針插座連接如圖2 所示。接口板CPU芯片采用普通的51單片機即可,考慮到PROFIBUS對速率的要求,推薦使用 高速率、低功耗的8位AVR單片機作為接口板CPU。
3軟件設計
3.1接口板與用戶模板的串口通信設置
接口板與用戶模板通過串口連接,Txd、Rxd為TTL電平,半雙工通信。通信方式采 用應答方式:用戶模板主動詢問,接口板被動回答。設定每個字節(jié)用11 bits傳送:1個啟始 位、8個數據位、1個偶校驗位、1個停止位,即51內核單片機的通信方式3。
3.2報文長度
接口模板的初始化報文(發(fā)送、接收)固定長度49字節(jié);接口板與用戶模板之間數 據交換報文(發(fā)送、接收),長度由用戶在初始化報文中設定,最大為113字節(jié);PROFIBUS輸 入/ 輸出數據量可自由設定,最大112字節(jié)輸入+112字節(jié)輸出。
3.3實現功能
?。?)可實現PROFIBUS用戶參數化功能:用戶模板可將一次性設置的參數在主站配置 中設定,主站在與從站連接時一次將這些用戶參數傳送到從站,用戶模板可利用這些參數實 現參數化;
?。?)接口板與用戶模板通信有字符偶校驗和縱向報文校驗和,保證數據安全性;
?。?)接口板內設有備份I/O通信緩沖區(qū),可保證實現PROFIBUS與串口通信數據的完整性(一致 性)和同步要求。
3.4用戶模板的通信基本過程
3.4.1初始化
用戶模板按接口板上波特率選擇開關設置的波特率向接口板發(fā)初始化報文,然后等待接收接 口板的回答,如圖3所示。接口板回答初始化成功后,進入數據交換狀態(tài)。
3.4.2數據交換狀態(tài)
初始化成功后接口板進入數據交換狀態(tài),反復進行數據交換。此時,用戶模板主動 向接口板發(fā)送“輸入數據報文”,其中包含PROFIBUS輸入數據;接口板回答“輸出數據報文 ”,其中包含PROFIBUS輸出數據,如圖4所示。
數據交換狀態(tài)下接口板的程序流程見圖5。
[align=center]
[/align]
4系統(tǒng)配置
4.1關于GSD文件
?。?)每一個PROFIBUS從站或一類主站有一個“設備描述文件”稱為GSD文件,用來描 述該PROFIBUS-DP設備的特性;
?。?)GSD文件包含了設備所有定義參數,包括:支持的波特率、支持的信息長度、輸入/輸出 數據數量、診斷數據的含義、可選模塊種類等;
(3)無論使用什么樣的系統(tǒng)配置軟件,都要根據GSD文件來對設備配置。
?。?)國際PROFIBUS組織PI提供了GSD文件編輯軟件gsdedit.exe,該軟件依照PROFIBUS技術標 準格式規(guī)定,對用戶編輯的GSD文件進行格式檢查。
4.2如何使用“用戶參數user—prm”
4.2.1“用戶參數user—prm”的選擇
對于工業(yè)現場設備,常需要用戶根據現場應用設定一些參數,其中有些參數不需要在設備運 行中實時改變,如變頻器的電流上限保護與報警值、溫度傳感器的測量溫度范圍、熱電偶選 型、輸出4~20 mA/1~5 V選擇等。如果這些參數作為PROFIBUS主站的I/O輸出,將占 用PROFIBUS主站I/O資源和周期性輪循PROFIBUS從站的時間資源。
將這些參數處理成“用戶參數”,將會縮短PROFIBUS主站通信時間、減小通信報文長度、提 高總線通信效率。使用“用戶參數”技術,只需要在主站配置中做出參數選擇,主站在與從 站連接時,一次性將這些參數傳送到從站,從站就可以使用這些用戶選擇的參數對從站進行 參數化(初始化、參數設定)。
4.2.2確定“用戶參數”類型、個數、字節(jié)長度
以一個4通道模擬量輸入模塊為例,假設需要用戶設置的參數有:
·輸入類型1~5 V、0~10 V、0~5 V、-10~+10 V、4~20 mA、0~20 mA共8種選擇 ;占1個字節(jié),以INPUT=0~7分別表示這8種輸入類型;
·數據類型BCD(0000~9999)、無符號整型(0~65 535)、有符號整型(-32 767~+32 76 7)共3種選擇;占1個字節(jié),以VAR=0~2分別表示這3種數據類型;
·輸入模式單端輸入(4通道)、雙端輸入(2通道)共2種選擇;占1個字節(jié),以CHNO=0、1分 別表示這2種輸入模式;
由此,用戶參數長度User—Prm—Data—Len=3。
4.2.3帶有“用戶參數”描述的GSD文件
對上例,GSD文件中至少有如下關于“用戶參數”的描述:
4.2.4在主站配置中選擇用戶參數
用戶在系統(tǒng)中配置從站參數,完全靠GSD文件描述。在STEP 7的HARDWARE中配置從站,可設 定總線波特率及站地址,其中設定的站地址必須與用戶模板上地址設置一致。
帶有“用戶參數”選擇菜單的GSD文件,可在STEP7中生成更加友好的用戶參數配置界面。
5結束語
應用嵌入式PROFIBUS-DP從站通信接口的設計方案,用戶不必了解PROFIBUS技術規(guī)范細節(jié)。具有開發(fā)周期短、技術指 標高、技術升級快、擁有產品自主知識產權等優(yōu)點,但用戶須有單片機產品開發(fā)經驗及PROF IBUS產品應用經驗。目前國內多家儀表廠商已在此方案的基礎上開發(fā)出了自己的PROFIBUS -DP從站產品。
參考文獻
[1]陽憲惠.現場總線技術及其應用[M].北京:清華大學出版社, 1999.
[2]楊昌琨,譯.Manfred Popp.PROFIBUS-DP快速入門[M].中國機電一體化 技術應用協(xié)會現場總線專業(yè)委員會.
[3]中國現場總線PROFIBUS技術資格中心(CPCC).PROFIBUS產品開發(fā)解決方案[R ].2002.
[4]PNO 98,PROFIBUS Technical Guideline PROFIBUS-DP Extensions to EN 50170(DPV1)[M].1998.
[5]SIEMENS.SIMENIC SPC3 User Description(Siemens PROFIBUS Controller) [M].1996.