引言
在眾多的工業現場總線中,Profibus總線由于有眾多廠商的支持,且產品比較豐富,在制造業自動化、流程工業自動化和樓宇、交通、電力自動化等領域有著廣泛的應用。而對于很多不具備Profibus接口的傳統設備,要使其接入總線網絡、達到自動控制的目的,就必須在該設備和Profibus總線之間做一個協議接口模塊。
本文結合對傳統電動執行器升級改造的工程實踐,介紹了一種基于Profibus-DP的接口模塊的具體設計。Profibus-DP作為Profibus現場總線標準的子集,主要用于設備級控制系統與分散式I/0的通信。它具有傳輸介質簡單、安裝維護方便、安全性高等優點。RS485傳輸是最常用的一種傳輸技術,本設計也采用這種傳輸方式。整個系統的傳輸介質為屏蔽雙絞線。本文主要討論采用專用協議芯片VPC3開發從站接口的方案。該方案需要在深入了解VPC3的工作原理及DP狀態機原理的基礎上進行開發。
1 硬件設計
系統主要包括指令處理部分和接口部分,如圖1所示。指令處理部分完成協議轉換以及通信處理;接口部分完成模擬到數字的轉換、PROFIBUS-DP接口等。下面簡單介紹主要模塊的功能。
調試(JTAG):M16C/62P通用通信模塊的設計提供一個JATG仿真器,它可以用來進行配置或者是編程。
SRAM模塊:當編寫比較大的程序(如操作系統)時,M16C的內部RAM可能不夠用,此時就可以用外接的SRAM(128K×16位)。
撥碼開關:撥碼開關用于通信地址方案的實施。PROFIBUS-DP支持的站地址為0~126(共127個),同時為了防止尋址過程發生地址的沖突,所以采用一個8位的撥碼開關,用后7位進行128位的尋址。閥門控制器作為PROFIBUS-DP通信的從站,必須有不與其他站沖突的地址。PR-OFIBUS-DP從站通信地址的設計方案有兩種:一種是由遠程的PROFIBUS-DP主站通過特定的數據通信設定或修改從站地址;另一種是禁止PROF-IBUS-DP主站設定和修改從站地址,從站的地址由從站本地設定。本設計采用的是后一種設計方案,通過一個8位的撥碼開關手動設定閥門控制器的地址,然后由中央處理器讀入并寫入VPC3特定的存儲位置。
A/D、D/A等模塊:PROFIUBS-DP智能從站通信卡采用4~20 mA/1~5 V模擬信號傳輸方式,對4~20mA的輸入信號(閥位反饋信號)進行校準和量程變換后,將其轉換為DP總線輸入數據,DP總線輸出數據經過校準和量程變換后轉換為1~5 V的輸出信號(控制輸出信號)。由于PROFIUBS-DP通信卡在工作過程中共有兩個數據需要在DP總線上傳輸,因此需要兩個數據通道,一個用于16位模擬量輸入(A/D),另一個用于16位模擬量輸出(D/A)。其中模擬與數字電路之間采用PC417進行光耦隔離。
本設計一共有兩個時鐘:一個是M16的時鐘,M16本身有兩個時鐘(分別為主時鐘和副時鐘),但是由于VPC3的特殊性使得M16的時鐘必須由VPC3提供;另一個是VPC3的時鐘,直接由48 MHz的有源晶振提供。其中,M16的時鐘是由VPC3對48 MHz的時鐘進行1/4分頻得到的12 MHz。
總線接口引腳如表1所列,VPC3的數據傳輸是在RS485模式下進行的。VPC3通過表1中的信號與光耦隔離驅動相連接。
按鍵復位:其作用是對M16和VPC3進行復位。該電路用于監視M16的核電壓,當核電壓低于3.3 V時,該電路產生一個低脈沖信號傳送到M16的RESE(10)引腳。除了監視的功能以外,還可以通過按鍵的閉合來產生一個低脈沖的復位信號。
2 軟件設計
對VPC3的軟件操作主要包括兩個部分:VPC3的初始化、主程序和VPC3的中斷處理。主程序和中斷處理流程分別如圖2和圖3所示。
VPC3的初始化程序應放在主程序的前面,而中斷處理程序完成CPU對VPC3中斷輸出的響應。VPC3上電復位之后,在正常工作之前必須進行初始化,以配置各個寄存器。中斷處理程序用于處理VPC3發生的各種事件,這些事件包括新的參數報文事件、全局控制命令報文事件、進入或退出數據交換狀態事件、新的配置報文事件、新的地址設置報文事件、監測到波特率事件和看門狗溢出事件。
數據輸入和輸出處理(輸入、輸出相對于主站而言)及用戶診斷數據輸入可以放在應用程序主循環中。在一個應用循環申,由應用來刷新輸入BUF中的數據,保障所有輸入數據是最新的更新數據。而VPC3在接收到由PROFI-BUS-DP主站傳送的不同輸出數據時,會產生輸出標志位(同樣位于中斷請求字單元中),CPU通過在應用循環中輪詢該標志位來進行接收主站數據。對于特定應用的診斷信息,需要實時地傳遞到主站。主應用程序在應用循環中判斷是否有可用的診斷BUF存在,當有空閑BUF時應用程序輸入診斷信息,并請求更新。對于實時性要求嚴格的系統,應采用中斷方式進行輸出數據和診斷數據處理。
結語
VPC3芯片的使用方法簡單(與SPC3相似),功能比較完善,可以滿足本通信接口設計的要求。使用VPC3進行PROFIBUS-DP從站接口的開發,能夠降低開發難度和開發成本;使用現場設備/儀表上配置PROFIBUS-DP接口,可以滿足相關行業的需要。