ROFIBUS-DP作為—種國際標準現場總線,以其靈活性、可靠性等優點,在世界范圍內得到了廣泛的應用,是一種高性能的工業控制網絡。但不是所有的控制設備都能接入到總線中,必須通過智能從站 接口裝置實現,通過智能從站的拜發,可以把非總線的電子設備接入到總線網絡中。目前,我國對于PROFIBUS-DP的應用和研究主要以國外大公司的成套設備為主,而自主研究開發通信接口的卻比較少 。雖有公司針對PROIFBUSDP協議轉換問題已開發出相應網關類產品,但價格昂貴,與實際應用有一定距離,因此深入研究該技術對該技術的國產化有非常現實的意義。
開發方案的選用
PROFIBUS-DP是開放的、 無知識產權倮護的標準。原則上,PROFIBUS DP協議在任何微處理器上都可以實現,在微處理器內部或外部安裝異步串行通信接口(UART)即可完成。基于上述特點,目前在 拜發PROFIBUS-DP從站時有以下方案可供選擇:(1)單片機+軟件的解決方案;(2)單片機+PROFIBUS通信專用芯片的解決方案;(3)采用專用拜發工具。其中以方案2最為方便。
本文采用單片機加PROFIBUS-DP通信專用芯片的解決方案。其中微控制器的選取是實現智能從站開發的關鍵,因為DP智能從站的控制芯片需要有足夠大的RAM來配置VPC3及實現數據交換,并且也需要較 高的運行速率。我們選取Cygnal公司推出的完全集成的混合信號系統級芯片C8051F020,其突出的優點是具有很高的運算速度,非常合適拜發PROFIBUS-DP從站。VPC3芯片是VIPA公司為優化的智能 PROFIBUSDP從站提供的專用芯片,集成了PROFIBUS-DP協議,可以替代西門子SPC3,同時具有工作電壓低、RAM大等優點,具有很高的性價比。
硬件電路設計
硬件電路主要采用VIPA的PROFIBUS-DP協議芯片VPC3和CygnalC8051單片機。C805l器件是完全集成的混合信號系統級芯片,具有64個數字IJO引腳。兼容的CI-51內核,4352(4096+156)字節(B)的片 內RAM,可尋址64k字節地址空間的外部數據存儲器接口特別適合本設計使用。工作過程單片接口轉換電路機自動識別不同的非總線設各,把數據交換到VPC3里,由VPC3負責協議的轉換,把轉換后的數據 傳送到總線里。整個過程可是逆的。所有功能的實現由我們固化在單片機里的程序實現。同時實現自適應功能,即自動識別不同的非總線帶通訊的控制設備。
VPC3是用于從站開發的智能通信芯片,它支持PROFIBUS-DP協議。VPC3內部集成4kB的雙口RAM。內部鎖存器/寄存器位于前2 1個地址單元,主要包括:方式寄存器l、0,中斷控制寄存器,狀態寄存器 以及輸入、輸出緩沖器和診斷緩沖器各自的狀態寄存器。組織參數位于RAM中從16H開始的單元。整個緩沖器結構(屬于DP-SAPS)就是基于這些參數來寫的。此外,普通參數在這些單元設置數據(包括站 地址、地址允許改變、用戶看門狗值和設備標識號等),狀態顯示存儲在這些單元(通用控制命令等)。
PROFIBUS-DP智能轉換接口的主要功能是利用VPC3協議芯片作為數據采集和發送單元實現與PROFIBUS-DP現場總線之間的通信,從而能使用戶數據傳送到主站并接收來自主站的數據。DP智能轉換接口 用C8051作為處理器單元管理通信事務,VPC3協議芯片則完成數據的轉換和收發功能。擴展的數據存儲器完成數據的存儲和處理功能,C8051與VPC3之間通過雙口RAM交換數據,VPC3的雙口RAM在C8051地址 空間中統一分配地址,C8051將VPC3的雙口RAM作為自己的外部RAM,通過P6和P7口與雙口RAM連接,P6口作為數據線和低8位地址線,P7口作為高8位地址線。從站接口的總體設計方案,我們采用C8051作為 主控芯片,結合PROFIBUS-DP從站接口芯片VPC3以及ADM248*85接口芯片設計了整體的解決方案。
因為C8051和VPC3+均為3.31/供電,所以可以直接連接。對于C8051來說VPC3就是它的一個外置RAM。SPC3有內部地址解碼電路,所以ABS~AB10接地。此時DB7~DB0是數據地址復用總線,可以產生低8位的數據和地址,高4位地址由AB0~AB3產生,AB4~AB7嚴生SPC3的片選信號,只有AB4~AB7同時為0時才選中SPC3。單片機P7口的P7.0 ~P70.7接VPC3的DB0~DB7端,既作為VPC3的數據線,也作為VPC3地址總線的低8位。P7口作為數據線和低8位地址線,P6口作為高8位地址線C8051。P6口的P6.0~P6.2接VPC3的AB0~AB2端, 作為VPC3地 址總線的高3位,同時要使VPC3的高5位AB7…3=00000。在軟件程序的設計中,VPC3的數據存儲器的地址區被強制在1000H~15FFH,這要求P7.7~7.4=0001, 要想AB4仍為0,必須將P6.0通過一個非門MM74HC接VPC3的AB4端。在實際電路中,VPC3的AB8~10通過一個接地電阻接地,使得AB8..10=000,AB3接P6.3始終給出低電平信號即AB3=0,AB4的輸入端通過非門MM74HC接P6. 4,只要P*始終為1,從而保證VPC3的數據存儲器的地址范圍為1000H~15FFH。
現場總線接口電路是VPC3與現場總線側連接的電路,因為Profibus-DP可以達到12Mbit/s的速率,因此對已接口電路的要求是非常高的。在此我們選用Profibus接口專用芯片AMD2486,ADM2486是ADI 公司生產的半雙工、隔離RS-485收發器。其內部含有倮護隔離電路,減少了硬件電路的布線,提高了通信的穩定性。
軟件設計
程序設計包括主程序和中斷程序,還有GSD文件的編制。
1.主程序設計
C8051和VPC3初始化程序放在主程序中,而且一定要放在I/O程序前。主程序流程圖如圖1所示。上電后,C8051首先進行初始化,設置RS232端定時器/計數器工作方式、設置波特率、中斷方式等,隨后VPC3進行初始化,以設置允許中斷、寫入從站識別號和地址、片內方式寄存器、診斷緩沖區、參數緩沖區、配置緩沖區、地址緩沖區、初始長度。
圖1主程序流程圖
此時,VPC3下—個十分重要的步驟就是根據以上初始值求出各個緩沖區的指針及輔助緩沖區的指針,根據傳輸的數據長度,確定輸入緩沖區、輸出緩沖區及指針。主站檢查以上參數是否與配置的參數一致,只有雙方完全一致,從站才能進行配置,設置從站的輸入輸出字節數、診斷字節數和各類數據指針。然后,從站才能將配置好的數據同主站比較,只有雙方完全一致,從站才能通過DP狀態機與主站進行數交換。用戶設備通過I/O程序實現報文數據處理。
2.中斷程序設計
VPC3有14個中斷源,各中斷源無優先級,主要是通過中斷屏蔽寄存器和中斷響應寄存器來實現中斷且共用一個中斷輸出。診斷分為外部診斷和狀態診斷,外部診斷必須在從第7個字節開始的單元寫入用戶數據,狀態診斷則只要在第—字節寫入OOH即可。VPC3定義從站地址較靈活,既可在組態時由主站設置又可通過自身軟件或是增設的硬件地址設置電路實現。根據OSI參考模型,FDL層規定了總線存取控制、數據安全性以及傳輸協議和報文的處理。DP標準規定了以下四類傳輸服務。SRD∶發送和請求有應答的數(對DP和PMS),在一個報文循環中發送和接收數據。SDN∶發送沒有應答的數據(對DP和PMS),廣播和有選擇廣播報文,即報文送達有選擇的一組節點。DP僅限于SRD和SDN服務。在SRD服務時,主站發送輸出數據到從站和接收輸入數據(若輸入數據存在于從站中),在規定的時間周期內應答。若從站是輸出設備,則用“E5H”的短應笞。SDN服務是發送數據到規定的一組從站,可按照要求觸發SDN服務,對SDN報文沒有應答。
本程序設計采用中斷方式處理從站地址設定,檢查組態和參數報文是否正確。采用外部中斷INTO輸入,其入口地址為0003H。C51編譯器支持在C源程序中直接開發中斷程序,減輕了用匯編語言拜發中斷程序的繁瑣過程。便用擴展屬性的函數語法定義void dps2_ind(void)interrupt ouslng 1調用外部中斷INTO,當外部中斷0被觸發時,將會執行此中斷模塊中的函數,在函數中有DPS2 GETINDICATION()宏可以讀出響應的事件信息,并進行各個中斷事件的處理。中斷程序流程如圖2。
圖2中斷程序流程圖
3.GSD文件編制
PROFIBUS設備具有不同的性能特征,特性的不同在于現有功能(即I/O信號的數量和診斷信息)的不同或可能的總線參數,例如波特率和時間的監控不同。這些參數對每種設備類型和每家生產廠來說均各有差別, 為達至刂PROFIBUS簡單的即插即用配置,這些特性均在電子數據單中具體說明,有時稱為設備數據庫文件或GSD文件。GSD文件是一種準確定義的格式描述,生產廠商對每種設備都有一個GSD文件。有了GSD文件后,將來用配置軟件組網時只要把設備的GSD文件拷貝到相應的目錄下,就可以方便地把此設備加到現場總線網絡中。GSD文件的編制可用GSD文件編輯軟件,參考編輯軟件提供的模板進行修改即可。
圖3 實物圖
結語
本文的研究內容作為山東省自然科學基金“工業網絡控制系統同步控制性能及控制策略研究”的重要組成部分,采用了價格較低的VPC3取代了西門子的SPC3,其3.3V的工作電壓具有更低的功耗。通過接口轉換電路和軟件設計實現自適應功能,即自動識別非總線設備的通訊參數,同時利用高性能的8位單片機C8051實現了PROFIBUS DP智能從站接口的開發,使產品的設計具有更高的性價比,為該產品的國產化提供了一種方法。提供的軟硬件設計方法經實踐可行,該產品已成功應用于與多家PLC和儀表的通訊網絡中。
-
芯片
+關注
關注
456文章
50910瀏覽量
424501 -
單片機
+關注
關注
6037文章
44569瀏覽量
636206 -
寄存器
+關注
關注
31文章
5357瀏覽量
120591 -
微處理器
+關注
關注
11文章
2264瀏覽量
82532
發布評論請先 登錄
相關推薦
評論