利用SPC3 開發智能DP 從站源碼講解(連載三)

利用SPC3 開發智能DP 從站源碼講解(連載三)
四、DP 從設備軟件設計方案
在方案設計過程當中,咱們將軟件結構設計成主程序模塊/中斷處理模塊的形式。主程序
模塊主要負責系統初始化和寄存器狀態查詢,並根據寄存的狀態進行相應的操做,這一過程
主要處理一些對時間關鍵性要求相對較低的操做,如IN/OUT 數據的處理、診斷報文的處理
等;中斷處理模塊主要處理對時間關鍵性要求較高的操做,如設備的上/下線處理、參數化
報文處理、從設備通道配置報文處理、設地址報文和設備波特率變動報文處理等過程。
下圖給了主程序模塊和中斷處理模塊的工做流程圖。
圖 基於SPC3 的DP 從設備程序設計流程圖
在主程序模塊的工做流程中,SPC3 初始化是很是關鍵一個環節。SPC3 的初始化過程主
要包括如下內容:
􀁺 SPC3 中斷配置。SPC3 最多支持11 種類型的中斷,用戶程序能夠對SPC3 須要響應
的中斷進行設置。SPC3 RAM 內中斷屏蔽寄存器(IMR)的地址爲0x04。
􀁺 用戶定時器配置。在用戶定時器超時後,SPC3 會認爲用戶程序發生錯誤,會自動
切換其工做狀態,以防止設備發生故障時影響整個系統的安全。SPC3 RAM 內設置
用戶定時器時間的地址爲0x18,0x19。
􀁺 設備地址設置。SPC3 內0x16H 爲寫入設備地址處。
􀁺 製造商標識設置。SPC3 RAM 內設置製造商標識的地址爲0x3a,0x3b。
􀁺 SPC3 內各類緩衝區地址及長度計算。須要注意的是,最後的長度值是以段爲單位
的。須要計算的內容包括:輸入/輸出緩衝區的長度和指針;存放診斷處理、參數
化、檢查組態數據和從設備地址設置等多種協議報文的緩衝區長度及指針等。
SPC3 只提供一箇中斷,用戶程序在響應中斷後根據中斷請求寄存器(IRR)中的內容來
判斷具體發生何種類型的中斷事件,SPC3 RAM 中IRR 的地址爲0x00,0x01。
中斷處理模塊主要作如下工做:
􀁺 檢查並處理新的PRM 報文;
􀁺 檢查並處理新的CFG 報文;
􀁺 檢查並處理新的SSA 報文。
五、DP 從設備調試方案
智能DP 從設備的調試是一個複雜的過程,它要求開發人員具備PROFIBUS DP 系統的應
用經驗。這裏提出了兩套調試方案。另外,筆者建議開發人員利用DP 協議分析軟件來來分
析設備工做中發生的報文序列,以更深刻了解設備的開發過程。
圖示 PROFIBUS DP 從設備調試系統結構圖
5.1 簡單設備調試方案
系統構成:PC/SIEMENS CP5611 接口卡/COMPROFIBUS 軟件
方案說明:SIEMENS 的PACKAGE 4 開發套件就提供了這種調試方案。這個方案主要
是調試設備的基本協議一致性,其優勢是調試方便、簡單;缺點是不能驗證設備的
互操做性。詳見上圖中上半部分。
5.2 系統調試方案
系統構成:PC/SIEMENS CP5611 接口卡/STEP 7 軟件/PLC S7-300/ SIEMENS ET200M
方案說明:本方案能夠全面調試、測試、驗證智能設備的功能和性能,但須要開發人員
對PROFIBUS DP 系統配置和組態有必定的經驗,調試起來有必定的難度。詳見上圖中下半部
分。
附錄
以上所講內容可參見SPC3 用戶手冊和DP 協議規範。
相關內容可從 www.fieldbuses.com 網站下載。
相關文章
相關標籤/搜索