在眾多的工業(yè)現(xiàn)場(chǎng)總線(xiàn)中,Profibus總線(xiàn)由于有眾多廠(chǎng)商的支持,且產(chǎn)品比較豐富,在制造業(yè)自動(dòng)化、流程工業(yè)自動(dòng)化和樓宇、交通、電力自動(dòng)化等領(lǐng)域有著廣泛的應(yīng)用。而對(duì)于很多不具備Profibus接口的傳統(tǒng)設(shè)備,要使其接入總線(xiàn)網(wǎng)絡(luò)、達(dá)到自動(dòng)控制的目的,就必須在該設(shè)備和Profibus總線(xiàn)之間做一個(gè)協(xié)議接口模塊。PROFIBUS,是一種國(guó)際化。開(kāi)放式。不依賴(lài)于設(shè)備生產(chǎn)商的現(xiàn)場(chǎng)總線(xiàn)標(biāo)準(zhǔn)。
PROFIBUS傳送速度可在 9.6kbaud~12Mbaud范圍內(nèi)選擇且當(dāng)總線(xiàn)系統(tǒng)啟動(dòng)時(shí),所有連接到總線(xiàn)上的裝置應(yīng)該被設(shè)成相同的速度。廣泛適用于制造業(yè)自動(dòng)化、流程工業(yè)自動(dòng)化和樓宇、交通電力等其他領(lǐng)域自動(dòng)化。PROFIBUS是一種用于工廠(chǎng)自動(dòng)化車(chē)間級(jí)監(jiān)控和現(xiàn)場(chǎng)設(shè)備層數(shù)據(jù)通信與控制的現(xiàn)場(chǎng)總線(xiàn)技術(shù)??蓪?shí)現(xiàn)現(xiàn)場(chǎng)設(shè)備層到車(chē)間級(jí)監(jiān)控的分散式數(shù)字控制和現(xiàn)場(chǎng)通信網(wǎng)絡(luò),從而為實(shí)現(xiàn)工廠(chǎng)綜合自動(dòng)化和現(xiàn)場(chǎng)設(shè)備智能化提供了可行的解決方案。本文結(jié)合對(duì)傳統(tǒng)電動(dòng)執(zhí)行器升級(jí)改造的工程實(shí)踐,介紹了一種基于Profibus-DP的接口模塊的具體設(shè)計(jì)。
1 硬件設(shè)計(jì)
系統(tǒng)主要包括指令處理部分和接口部分,如圖1所示。PROFIBUS是一種用于工廠(chǎng)自動(dòng)化車(chē)間級(jí)監(jiān)控和現(xiàn)場(chǎng)設(shè)備層數(shù)據(jù)通信與控制的現(xiàn)場(chǎng)總線(xiàn)技術(shù)。可實(shí)現(xiàn)現(xiàn)場(chǎng)設(shè)備層到車(chē)間級(jí)監(jiān)控的分散式數(shù)字控制和現(xiàn)場(chǎng)通信網(wǎng)絡(luò),從而為實(shí)現(xiàn)工廠(chǎng)綜合自動(dòng)化和現(xiàn)場(chǎng)設(shè)備智能化提供了可行的解決方案。PROFIBUS–DP:是一種高速低成本通信,用于設(shè)備級(jí)控制系統(tǒng)與分散式I/O的通信。使用PROFIBUS-DP可取代辦24VDC或4-20mA信號(hào)傳輸。下面簡(jiǎn)單介紹主要模塊的功能。
調(diào)試(JTAG):M16C/62P通用通信模塊的設(shè)計(jì)提供一個(gè)JATG仿真器,它可以用來(lái)進(jìn)行配置或者是編程。
SRAM模塊:當(dāng)編寫(xiě)比較大的程序(如操作系統(tǒng))時(shí),M16C的內(nèi)部RAM可能不夠用,此時(shí)就可以用外接的SRAM(128K×16位)。
撥碼開(kāi)關(guān):撥碼開(kāi)關(guān)用于通信地址方案的實(shí)施。PORFIBUS-PA:專(zhuān)為過(guò)程自動(dòng)化設(shè)計(jì),適合于本質(zhì)安全的場(chǎng)合,可使傳感器和執(zhí)行機(jī)構(gòu)聯(lián)在一根總線(xiàn)上,并有本征安全規(guī)范。PR-OFIBUS-DP從站通信地址的設(shè)計(jì)方案有兩種:一種是由遠(yuǎn)程的PROFIBUS-DP主站通過(guò)特定的數(shù)據(jù)通信設(shè)定或修改從站地址;另一種是禁止PROF-IBUS-DP主站設(shè)定和修改從站地址,從站的地址由從站本地設(shè)定。本設(shè)計(jì)采用的是后一種設(shè)計(jì)方案,通過(guò)一個(gè)8位的撥碼開(kāi)關(guān)手動(dòng)設(shè)定閥門(mén)控制器的地址,然后由中央處理器讀入并寫(xiě)入VPC3特定的存儲(chǔ)位置。PROFIBUS-FMS:用于車(chē)間級(jí)監(jiān)控網(wǎng)絡(luò),是一個(gè)令牌結(jié)構(gòu)。實(shí)時(shí)多主網(wǎng)絡(luò)。為車(chē)間級(jí)通信任務(wù)提供了大量的通信服務(wù)。
A/D、D/A等模塊:由于PROFIUBS-DP通信卡在工作過(guò)程中共有兩個(gè)數(shù)據(jù)需要在DP總線(xiàn)上傳輸,因此需要兩個(gè)數(shù)據(jù)通道,一個(gè)用于16位模擬量輸入(A/D),另一個(gè)用于16位模擬量輸出(D/A)。其中模擬與數(shù)字電路之間采用PC417進(jìn)行光耦隔離。
本設(shè)計(jì)一共有兩個(gè)時(shí)鐘:一個(gè)是M16的時(shí)鐘,M16本身有兩個(gè)時(shí)鐘(分別為主時(shí)鐘和副時(shí)鐘),但是由于VPC3的特殊性使得M16的時(shí)鐘必須由VPC3提供;另一個(gè)是VPC3的時(shí)鐘,直接由48 MHz的有源晶振提供。其中,M16的時(shí)鐘是由VPC3對(duì)48 MHz的時(shí)鐘進(jìn)行1/4分頻得到的12 MHz。在電子學(xué)上,通常將含有晶體管元件的電路稱(chēng)作“有源電路”(如有源音箱、有源濾波器等),而僅由阻容元件組成的電路稱(chēng)作“無(wú)源電路”。電腦中的晶體振蕩器也分為無(wú)源晶振和有源晶振兩種類(lèi)型。無(wú)源晶振與有源晶振的英文名稱(chēng)不同,無(wú)源晶振為crystal(晶體),而有源晶振則叫做oscillator(振蕩器)。無(wú)源晶振是有2個(gè)引腳的無(wú)極性元件,需要借助于時(shí)鐘電路才能產(chǎn)生振蕩信號(hào),自身無(wú)法振蕩起來(lái),所以“無(wú)源晶振”這個(gè)說(shuō)法并不準(zhǔn)確;有源晶振有4只引腳,是一個(gè)完整的振蕩器,其中除了石英晶體外,還有晶體管和阻容元件,因此體積較大。
VPC3通過(guò)表1中的信號(hào)與光耦隔離驅(qū)動(dòng)相連接??偩€(xiàn)接口引腳如表1所列,VPC3的數(shù)據(jù)傳輸是在RS485模式下進(jìn)行的。
按鍵復(fù)位:其作用是對(duì)M16和VPC3進(jìn)行復(fù)位。該電路用于監(jiān)視M16的核電壓,當(dāng)核電壓低于3.3 V時(shí),該電路產(chǎn)生一個(gè)低脈沖信號(hào)傳送到M16的RESE(10)引腳。除了監(jiān)視的功能以外,還可以通過(guò)按鍵的閉合來(lái)產(chǎn)生一個(gè)低脈沖的復(fù)位信號(hào)。
2 軟件設(shè)計(jì)
對(duì)VPC3的軟件操作主要包括兩個(gè)部分:VPC3的初始化、主程序和VPC3的中斷處理。主程序和中斷處理流程分別如圖2和圖3所示。
VPC3的初始化程序應(yīng)放在主程序的前面,而中斷處理程序完成CPU(中央處理器(英文Central Processing Unit,CPU)是一臺(tái)計(jì)算機(jī)的運(yùn)算核心和控制核心。CPU、內(nèi)部存儲(chǔ)器和輸入/輸出設(shè)備是電子計(jì)算機(jī)三大核心部件。電腦中所有操作都由CPU負(fù)責(zé)讀取指令,對(duì)指令譯碼并執(zhí)行指令的核心部件)對(duì)VPC3中斷輸出的響應(yīng)。VPC3上電復(fù)位之后,在正常工作之前必須進(jìn)行初始化,以配置各個(gè)寄存器。中斷處理程序用于處理VPC3發(fā)生的各種事件。
數(shù)據(jù)輸入和輸出處理(輸入、輸出相對(duì)于主站而言)及用戶(hù)診斷數(shù)據(jù)輸入可以放在應(yīng)用程序主循環(huán)中。在一個(gè)應(yīng)用循環(huán)申,由應(yīng)用來(lái)刷新輸入BUF中的數(shù)據(jù),保障所有輸入數(shù)據(jù)是最新的更新數(shù)據(jù)。而VPC3在接收到由PROFI-BUS-DP主站傳送的不同輸出數(shù)據(jù)時(shí),會(huì)產(chǎn)生輸出標(biāo)志位(同樣位于中斷請(qǐng)求字單元中),CPU通過(guò)在應(yīng)用循環(huán)中輪詢(xún)?cè)摌?biāo)志位來(lái)進(jìn)行接收主站數(shù)據(jù)。對(duì)于特定應(yīng)用的診斷信息,需要實(shí)時(shí)地傳遞到主站。主應(yīng)用程序在應(yīng)用循環(huán)中判斷是否有可用的診斷BUF存在,當(dāng)有空閑BUF(BUF,是英文buffer的縮寫(xiě),意思是緩沖區(qū),指在工廠(chǎng)中生產(chǎn)出來(lái)產(chǎn)品的臨時(shí)存放位置,在達(dá)到一定數(shù)量后會(huì)搬運(yùn)到其它的地方)時(shí)應(yīng)用程序輸入診斷信息,并請(qǐng)求更新。對(duì)于實(shí)時(shí)性要求嚴(yán)格的系統(tǒng),應(yīng)采用中斷方式進(jìn)行輸出數(shù)據(jù)和診斷數(shù)據(jù)處理。
結(jié)語(yǔ)
VPC3芯片的使用方法簡(jiǎn)單(與SPC3相似),功能比較完善,可以滿(mǎn)足本通信接口設(shè)計(jì)的要求。SPC3(SIMENS PROFIBUS CONTROLER)是一種用于PROFIUBS-DP開(kāi)放式工業(yè)現(xiàn)場(chǎng)總線(xiàn)智能化接口芯片,可廣泛用于工業(yè)自支化和樓宇管理自動(dòng)化中的單片機(jī)接口。SPC3集成了完整的DP協(xié)議,其中包括方式寄存器、狀態(tài)寄存器、中斷寄存器、各種緩沖器指針和緩沖區(qū)等。有效地減輕了處理器的壓力,因此可用于12Mbaud總線(xiàn)。使用VPC3進(jìn)行PROFIBUS-DP從站接口的開(kāi)發(fā),能夠降低開(kāi)發(fā)難度和開(kāi)發(fā)成本;使用現(xiàn)場(chǎng)設(shè)備/儀表上配置PROFIBUS-DP接口,可以滿(mǎn)足相關(guān)行業(yè)的需要。
-
處理器
+關(guān)注
關(guān)注
68文章
18927瀏覽量
227243 -
cpu
+關(guān)注
關(guān)注
68文章
10702瀏覽量
209388 -
總線(xiàn)
+關(guān)注
關(guān)注
10文章
2817瀏覽量
87711
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論