現場總線是用于現場儀表與控制系統和控制室之間的一種全分散、全數字化、智能、 雙向、互聯、多變量、多點、多站的通信網絡。工業現場總線是用來解決當前工業領域中“信 息孤島”的必然方法。現在已經被廣泛使用的工業現場總線的種類很多,有CANBUS、 DeviceNet、CClink、Modbus 等幾十種現場總線。
德國的西門子公司是進入中國市場較早的跨國公司。該公司的工業現場總線產品在國 內占有很大的市場份額。西門子公司的SIMATIC NET 工業通信網絡結構可以分為三級:企 業級、車間級和現場級。PROFIBUS 是一種用于工廠自動化車間級監控和現場設備層數據通 信與控制的現場總線技術。
本文主要介紹開發工業用電動閥門的通信接口——Profibus-DP 總線的開發。通過開發 的Profibus-DP 工業總線通信接口,可以將單臺設備的控制器引入到工業現場總線網絡之中, 使單臺設備成為一個智能節點,實現控制的遠程化,可以大大提高生產設備的整體系統控制 水平、降低生產成本。
一、Profibus 總線介紹
ISO/OSI 的通信標準模型由七層組成。從用戶角度看,Profibus 提供了三種通信協議標 準:PROFIBUS-DP、PROFIBUS-PA、PROFIBUS-FMS[2]。
(1)、PROFIBUS-DP:是一種高速低成本通信,用于設備級控制系統與分散式I/O 的通信。 使用PROFIBUS-DP 可取代原來的24VDC 或4-20mA 信號傳輸。
(2)、PROFIBUS-PA:專為過程自動化設計,可使傳感器和執行機構聯在一根總線上,并有 本征安全規范。
(3)、PROFIBUS-FMS:用于車間級監控網絡,是一個令牌結構、實時多主網絡。 PROFIBUS-DP:定義了第一、二層和用戶接口。
第三到七層未加描述。用戶接口規定 了用戶及系統以及不同設備可調用的應用功能,并詳細說明了各種不同PROFIBUS-DP 設備 的設備行為。PROFIBUS-DP 總線的物理層(第一層)采用RS485 總線傳輸。
二、硬件方案
Profibus-DP總線的通信接口設計采用了西門子公司的SPC3協議芯片作為本設計的核心 芯片。SPC3協議芯片是SIEMENS公司研制開發的專門用于開發PROFIBUS-DP從站的智能通信集成電路。該芯片集成了完整的PROFIBUS-DP協議。SPC3主要由控制整個過程的微序列 器、參數/方式寄存器、RAM和RAM控制器組成雙口RAM、中斷控制器、內置的看門狗定 時器、內部總線接口單元、UART接口、波特率發生器和總線空閑定時器組成。SPC3芯片可 以自動檢測總線上波特率從9.6K到12M的信號,并且能夠自適應的采取相應的總線頻率[3]。
從圖1可以看出,微序列器是SPC3的核心。該芯片可以承擔通信部分的微處理器功能, 實現PROFIBUS-DP從站通信處理,從而減輕從站CPU的工作負荷。SPC3通過它自身的雙端口RAM 與微處理器交換數據,微處理器操作SPC3芯片就像操作它的外部RAM一樣。SPC3芯片的整個 RAM采用8字節的段結構方式,共被分成192段,所有需要分配地址的BUF指針,必須指向段的 開頭。SPC3的總線接口是個可參數化的同步/異步8位接口。該接口適合于Motorola和Intel 的微控制器/處理器。PROFIBUS-DP通信的服務存取點(SAP)由SPC3自動建立的。各種報文信 息呈現在用戶面前的是不同BUF的內部數據。用戶可以通過總線接口訪問這些內部數據。SPC3 芯片有8根數據線和11根地址線,但是為了節約單片機資源,低8位地址線與數據線采取了復 用的方式。
三、RS485 接口設計
PROFIBUS-DP在底層的物理層上使用的是RS485協議。為了滿足PROFIBUS-DP的數據高速 傳輸的要求,必須選擇高速光隔和高速RS485收發器。本設計采用的高速光隔為6N137, RS485 采用MAXIM公司的高速差分總線收發器MAX3468作為驅動器。這樣PROFIBUS-DP的傳輸速率最 高可以達到6Mbps。如果要讓數據傳輸速率達到12Mbps,就必須選用更為高速的光隔。智能 從站節點RS485傳輸用的雙絞線電纜采用了SIEMENS公司提供的PROFIBUS-DP總線電纜和終端 接口器。Profibus總線不帶中繼的情況下每分段32個站(主站或從站),最多可以達到127 個站(帶中繼)。每段的頭和尾各有一個總線終端電阻,確保操作運行不發生誤差。兩個總 線終端電阻必須永遠有電源。
四、Profibus 總線硬件接口結構
在PROFIBUS-DP 硬件接口電路設計方案基礎之上,我們采用單片機+專用集成芯片SPC3+ RS485 驅動的方案。Profibus-DP 接口卡與控制設備(從站)的數據交換采用雙端口RAM。采 用這樣方式的優點是可以減少對控制設備資源的占用,并且由于數據交換是并行方式,數據 交換速度快[4]。
五、軟件設計
DP 智能從站上電或復位后,首先進行SPC3 的初始化,其中包括有效地復位SPC3,觸發 硬件看門狗,清零SPC3 內部RAM 單元(1016H~15FFH),設置SPC3 允許的中斷,寫入從站 識別號和地址以及地址是否可以被PROFIBUS-DP 改變,設置SPC3 內部看門狗計時初值,設 置SPC3 方式寄存器,設置參數緩沖區、診斷緩沖區、SSA 緩沖區、組態緩沖區、輸入輸出 緩沖區的初始長度,并根據以上初始值求出各個緩沖區的指針;根據傳輸的輸入輸出數據長 度,確定輸出緩沖區和輸入緩沖區的指針;獲得波特率,針對波特率控制要求調整看門狗的 初始值。初始化流程圖4 如下:
SPC3 與微處理器進行數據交換時通過中斷方式進行的,以提高響應速度。通常情況下, 采用INT0 中斷。SPC3 可以提起中斷的中斷源有:New_Prm_Data、New_DDB_Prm_Data 和 New_Cfg_Data 等。中斷程序模塊用于處理SPC3 發生的各種事件,這些事件包括: 新的參數 報文事件;全局控制命令報文事件;進入或退出數據交換狀態事件;新的配置報文事件;新 的地址設置報文事件;監測到波特率事件和看門狗溢出事件。軟件中采用中斷方式處理從站 地址設定,檢查組態和參數報文是否正確。采用外部中斷INTO 輸入,其入口地址為0003H。 使用函數定義語法 void dps2_ind(void) interrupt0 調用外部中斷INTO,當外部中斷0 被觸發時,將會執行此中斷模塊中的服務函數,在函數中由DPS2_GET_INDICATION()宏可以 讀出相應的事件信息,并進行各個中斷事件的處理。中斷程序流程如圖5 所示。
六、GSD 文件
PROFIBUS 設備具有不同的性能特征,特性的不同在于現有功能(即I/O 信號的數量和診斷信息)的不同或可能的總線參數,例如波特率和時間的監控不同。對一種設備類型的特 性,GSD 文件以一種準確定義的格式給出其全面而明確的描述。GSD 文件由生產廠商分別 針對每一種設備類型準備并以設備數據庫清單的形式提供給用戶,這種明確定義的文件格式 便于讀出任何一種PROFIBUS-DP 設備的設備數據庫文件,并且在組態總線系統時自動使 用這些信息。在組態階段,系統自動地對輸入與整個系統有關的數據的輸入誤差和前后一致 性進行檢查核對。GSD 文件可分為三個部分:(1) 總規范。(2) 與DP 有關的規范。(3) 與 DP 從站有關的規范。
七、調試
SIEMENS 公司推出的PACKAGE 4 主從站開發包,可以很方便的開發和調試 PROFIBUS-DP 主站和從站。開發包硬件包括IM183-1 從站接口模塊、帶載體板IM181 的IM180 主接口模板、IM184 從站接口模塊以及總線連接器等附件,使用這些主站、從站 接口模塊和連接器可以組成完整的DP 網絡;軟件包括組態軟件COM PROFIBUS、仿真演 示軟件DPMT 和固態程序DPS2。本設計也可以用此開發板進行調試和測試。用IM181 的 IM180 主接口模板構成主站與設計的從站進行Profibus—DP 的通信。除此以外,還可以用 300 系列PLC 等構件Profibus 網絡調試[5]。
八、結束語
Profibus-DP 總線已經在國內得到了廣泛的應用。通過研究Profibus-DP 總線的開發,本 文詳細闡述了開發Profibus-DP 總線的軟件和硬件的方法。當前國內市場各類控制器很多, 我們開發Profibus 接口,可以提高產品的附加值、開拓新的產品市場。
-
芯片
+關注
關注
455文章
50714瀏覽量
423158 -
控制器
+關注
關注
112文章
16332瀏覽量
177813 -
總線
+關注
關注
10文章
2878瀏覽量
88052
發布評論請先 登錄
相關推薦
評論