周鐵梁1 謝兆清2 陳 超1 1 華電重工股份有限公司上海技術(shù)中心 2 武漢理工大學(xué)能動(dòng)學(xué)院 摘 要:針對(duì)常用的PLC系統(tǒng)實(shí)現(xiàn)復(fù)雜算法時(shí)存在的不足,,基于Profibus-DP現(xiàn)場(chǎng)總線和ARM處理器技術(shù),,利用VPV3+C協(xié)議芯片設(shè)計(jì)了一種滿足Profibus-DP總線協(xié)議的可編程智能模塊。該專用可編程智能模塊能無(wú)縫集成到大型設(shè)備的現(xiàn)場(chǎng)總線控制系統(tǒng)(FCS)中,,通過(guò)對(duì)模塊的程序設(shè)計(jì)完成系統(tǒng)的復(fù)雜算法,,實(shí)現(xiàn)系統(tǒng)的智能控制。 關(guān)鍵詞:現(xiàn)場(chǎng)總線,; Profibus-DP,; VPC3+C 1 引言20世紀(jì)90年代初,現(xiàn)場(chǎng)總線(Fieldbus)作為新一代全分布式控制系統(tǒng)的核心技術(shù)應(yīng)運(yùn)而生,,基于現(xiàn)場(chǎng)總線的數(shù)字通信成為工業(yè)控制的熱點(diǎn),。港口大型機(jī)械的控制系統(tǒng)采用(Fieldbus Control Sustem,現(xiàn)場(chǎng)總線控制系統(tǒng))成為必然,。在FCS中,,PLC系統(tǒng)是實(shí)現(xiàn)控制策略的核心,而PLC系統(tǒng)在程序設(shè)計(jì)的靈活性方面的不足,,導(dǎo)致復(fù)雜算法實(shí)現(xiàn)難度大,;PLC軟件設(shè)計(jì)的開(kāi)放性,導(dǎo)致算法程序加密保護(hù)顯得不足,;其方便的修改性能,,導(dǎo)致PLC程序中固定算法變更后現(xiàn)場(chǎng)調(diào)試工作量大、周期長(zhǎng),、人工費(fèi)用支出大,。因此需要開(kāi)發(fā)一種既能能夠?qū)崿F(xiàn)復(fù)雜算法程序設(shè)計(jì),,也能滿足總線協(xié)議,可直接掛接到FCS中的可編程智能模塊,,以滿足工業(yè)控制的需求,。 用于設(shè)備級(jí)控制系統(tǒng)和分布式I/O的Profibus-DP是市場(chǎng)占有率絕對(duì)領(lǐng)先的總線技術(shù),國(guó)內(nèi)工業(yè)控制領(lǐng)域的專家學(xué)者紛紛嘗試開(kāi)發(fā)滿足Profibus-DP協(xié)議的可編程模塊[1-4],,但這些模塊多是作為其他控制設(shè)備的Profibus-DP通信模塊,,其本身不完成算法功能,,即沒(méi)有可編程的能力,。盧勇研究開(kāi)發(fā)的Profibus-DP從站雖然有程序設(shè)計(jì)能力,但還沒(méi)有達(dá)到實(shí)際應(yīng)用的模塊化要求[5],。筆者基于對(duì)Profibus-DP總線在大型港口設(shè)備控制系統(tǒng)的應(yīng)用,,開(kāi)發(fā)了一種適用于該總線的可編程智能模塊(見(jiàn)圖1)。該可編程智能模塊既能滿足Profibus-DP通信和組態(tài),,又能獨(dú)立編程,,同時(shí)具備上位機(jī)軟件算法的下載和監(jiān)控功能。 圖1 現(xiàn)場(chǎng)總線控制系統(tǒng)示意圖 2 可編程智能模塊設(shè)計(jì)該可編程智能模塊設(shè)計(jì)以ARM9為主控制器,,STM32F103ZET6為DP從站控制器,,VPC3+C為DP協(xié)議轉(zhuǎn)換器,模塊的結(jié)構(gòu)見(jiàn)圖2,,包含主控制器ARM9,、DP從站單元和DP接口單元3個(gè)部分。 圖2 可編程智能模塊整體結(jié)構(gòu)圖 2.1 主控制器ARM9 主控制器單元是可編程智能模塊硬件的重要組成部分,,負(fù)責(zé)智能模塊的控制算法運(yùn)行和控制,,協(xié)調(diào)接口單元和上位PC機(jī)之間的工作。采用ARM9處理器S3C2440A作為該單元的核心,,采用SDRAM和NOR FALSH以及NAND FLASH存儲(chǔ)器來(lái)處理程序運(yùn)行時(shí)的臨時(shí)數(shù)據(jù)以及儲(chǔ)存應(yīng)用程序,。S3C2440A 是一款功耗低、功能強(qiáng)大的嵌入式CPU,,具USART,、以太網(wǎng)、SPI,、I2C接口等豐富的接口資源,,能夠滿足主控制單元的開(kāi)發(fā)需求。同時(shí),,S3C2440A內(nèi)部看門狗的使用還可以有效提高硬件系統(tǒng)的抗干擾能力,。結(jié)合內(nèi)核精簡(jiǎn)、源碼開(kāi)放,、功能強(qiáng)大的嵌入式Linux操作系統(tǒng),,能夠有效地降低系統(tǒng)的開(kāi)發(fā)難度和成本,。 主控制器單元采用SPI接口與接口單元完成數(shù)據(jù)通信,通過(guò)串口與上位PC機(jī)進(jìn)行數(shù)據(jù)交互,,網(wǎng)絡(luò)接口芯片采用TCP/IP協(xié)議,,完成上位計(jì)算控制算法程序的下載,模塊運(yùn)行狀況及參數(shù)的監(jiān)控,。 2.2 DP從站單元 DP從站單元主要完成與Profibus-DP總線之間的數(shù)據(jù)交換,,設(shè)置從站的地址,實(shí)現(xiàn)智能模塊在Profibus-DP總線系統(tǒng)的組態(tài),。主要由STM32和VPC3+C協(xié)議芯片構(gòu)成,,選擇STM32F103ZET6為控制器,VPC3+C為DP協(xié)議轉(zhuǎn)換芯片,,由STM32F103ZET6對(duì)VPC3+C芯片進(jìn)行配置,,包括對(duì)VPC3+C芯片的初始化、數(shù)據(jù)傳輸,、從站診斷以及中斷程序的處理等,。 STM32微處理器不但具有很高的運(yùn)算速度,而且具有豐富的片上資源,,采用這種系統(tǒng)級(jí)SOC芯片,,可以很大程度上減少外圍元器件的數(shù)量,從而減少元器件間的走線,,有利于系統(tǒng)的可靠性和穩(wěn)定性的提高,。 VPC3+C是一款高性能的Profibus-DP協(xié)議芯片,可獨(dú)立完成全部Profibus-DP協(xié)議的通信功能,。其最大總線傳輸速率為12 Mbps,,可以自動(dòng)檢測(cè)并匹配總線上的傳輸速率。VPC3+C具有多個(gè)不同類型的緩沖器,,初始化過(guò)程中需要向特定的寄存器單元輸入?yún)?shù)后,,VPC3+C才能正常工作。STM32微處理器通過(guò)系統(tǒng)數(shù)據(jù),、地址總線與VPC3+C相連,,兩者之間進(jìn)行并行數(shù)據(jù)傳輸。VPC3+C芯片可以將STM32微處理器的并行數(shù)據(jù)流轉(zhuǎn)換為串行數(shù)據(jù)流發(fā)到DP總線上,,同時(shí)將從DP總線上收到的串行數(shù)據(jù)流轉(zhuǎn)換為并行數(shù)據(jù)流,,以中斷通知STM32微處理器接受。VPC3+C中的多種中斷源可以產(chǎn)生一個(gè)公共的中斷輸出,,STM32微處理器可以通過(guò)讀取中斷寄存器來(lái)判斷VPC3 +C中斷的類型,,并產(chǎn)生中斷響應(yīng)。STM32微處理器通過(guò)對(duì)VPC3+C的雙口RAM進(jìn)行數(shù)據(jù)的讀寫(xiě)操作,即可完成從站與主站間的通訊,。 2.3 DP接口單元 DP接口單元主要實(shí)現(xiàn)智能模塊與Profibus-DP總線間的通信驅(qū)動(dòng),、磁隔離等功能。采用ADM2486芯片作總線驅(qū)動(dòng)器,,該芯片具備磁隔離和RS485收發(fā)器功能,,能夠減少外部PROFIBUS總線信號(hào)對(duì)智能模塊系統(tǒng)內(nèi)部電路的干擾。其最高通信速度可達(dá)12 Mbps,,可以在隔離的狀態(tài)下保證智能模塊與總線系統(tǒng)間的高速可靠通信,。ADM- 2486芯片的供電由高效率的DC/DC變換器IB0505LS-1W完成。 3 可編程智能模塊軟件設(shè)計(jì)根據(jù)圖2的硬件設(shè)計(jì),,可編程智能模塊的軟件設(shè)計(jì)包含3個(gè)部分:DP從站的軟件,、主控制器ARM9監(jiān)控軟件和GSD文件設(shè)計(jì)。DP從站中STM32微處理器的主要任務(wù)是處理DP主站的數(shù)據(jù)交換,、響應(yīng)VPC3+C的各種中斷,、與主控制器ARM9之間的數(shù)據(jù)交換,。DP從站的軟件由主程序和中斷服務(wù)程序2部分組成,,主程序主要完成STM32微處理器、SPI接口和VPC3+C芯片的初始化,,配置相應(yīng)的寄存器,;中斷程序完成智能模塊與DP總線的數(shù)據(jù)的交換。智能模塊的GSD文件設(shè)計(jì)是可編程智能模塊軟件設(shè)計(jì)的實(shí)現(xiàn)智能模塊的硬件組態(tài),,將智能模塊加載到STEP7中,。主控制器ARM9的監(jiān)控軟件設(shè)計(jì)是核心,以下重點(diǎn)介紹主控制器ARM9的監(jiān)控軟件思想,。 主控制器ARM9既要實(shí)時(shí)監(jiān)控上位計(jì)算機(jī)的下載請(qǐng)求,,同時(shí)還要完成與DP接口單元的數(shù)據(jù)交換及數(shù)據(jù)輸出。ARM9中移植了Linux實(shí)時(shí)操作系統(tǒng),,主進(jìn)程監(jiān)聽(tīng)上位計(jì)算機(jī)的下載請(qǐng)求,,接收上位計(jì)算機(jī)的新控制算法后創(chuàng)建子進(jìn)程。子進(jìn)程中完成算法處理,、數(shù)據(jù)交換以及數(shù)據(jù)輸出,。ARM9算法控制模塊主進(jìn)程流程圖見(jiàn)圖3。設(shè)備控制算法程序在上位計(jì)算機(jī)中編譯完成后,,通過(guò)以太網(wǎng)接口下載到ARM9控制器當(dāng)中,。設(shè)備維護(hù)工程師只能調(diào)用DP智能模塊而不能看到模塊中的詳細(xì)程序,防止設(shè)備維護(hù)工程師隨意對(duì)其進(jìn)行修改,。 圖3 算法控制模塊主進(jìn)程流程圖 上位機(jī)的監(jiān)控軟件(圖3中客戶端)采用QT軟件設(shè)計(jì),,實(shí)現(xiàn)復(fù)雜的控制算法程序的編輯、編譯、下載以及數(shù)據(jù)監(jiān)控功能,。主控制器ARM9將智能模塊的收發(fā)數(shù)據(jù)實(shí)時(shí)地通過(guò)串口傳輸?shù)缴衔粰C(jī),,上位機(jī)監(jiān)控軟件解析并顯示收到的數(shù)據(jù)。通過(guò)串口數(shù)據(jù)的實(shí)時(shí)刷新,,可以實(shí)時(shí)監(jiān)控上位監(jiān)控軟件智能模塊數(shù)據(jù)變化情況,。 4 可編程智能模塊現(xiàn)場(chǎng)測(cè)試該可編程智能模塊安裝在抓斗卸船機(jī)控制系統(tǒng)中,并進(jìn)行了現(xiàn)場(chǎng)測(cè)試和實(shí)驗(yàn),。該卸船機(jī)的PLC系統(tǒng)采用西門子S7-400型PLC(CPU414-2DP)作為主站,,智能模塊和變頻器作為從站,實(shí)現(xiàn)對(duì)卸船機(jī)作業(yè)工藝流程的控制,。該可編程智能模塊安裝到卸船機(jī)的電氣控制柜的PLC導(dǎo)軌上,,組態(tài)到PLC控制系統(tǒng)后,通過(guò)控制卸船機(jī)主小車在海側(cè)/陸側(cè)往復(fù)運(yùn)動(dòng),。測(cè)試其Profibus-DP的通信功能與通信速率,,驗(yàn)證智能模塊中算法程序與整個(gè)系統(tǒng)PLC程序的集成。智能模塊中運(yùn)行的是電機(jī)轉(zhuǎn)速控制算法,,主站向智能模塊實(shí)時(shí)輸出目標(biāo)轉(zhuǎn)速,、步長(zhǎng)、調(diào)節(jié)時(shí)間等數(shù)據(jù)后,,智能模塊實(shí)時(shí)計(jì)算并向DP總線網(wǎng)絡(luò)中的變頻器輸入控制數(shù)據(jù),,實(shí)現(xiàn)電機(jī)的加速及減速過(guò)程。圖4為采用純PLC控制的電機(jī)運(yùn)行曲線與采用智能模塊代替部分PLC控制程序后的電機(jī)運(yùn)行曲線,,從圖4可以看出:智能模塊集成到PLC系統(tǒng)后,,能實(shí)現(xiàn)無(wú)縫鏈接,運(yùn)行控制算法達(dá)到完全相同的效果,。 圖4 轉(zhuǎn)速變化曲線對(duì)比 測(cè)試和實(shí)驗(yàn)過(guò)程中將上位計(jì)算機(jī)連接到可編程智能模塊,,可以監(jiān)視智能模塊的數(shù)據(jù)變化情況。 5 結(jié)語(yǔ)目前國(guó)內(nèi)關(guān)于Profibus的研究仍然處在被動(dòng)的研究階段,,Profibus現(xiàn)場(chǎng)總線控制系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)主要依賴于設(shè)備生產(chǎn)商提供的設(shè)備或模塊,,較少針對(duì)自身的實(shí)際需求來(lái)設(shè)計(jì)開(kāi)發(fā)Profibus模塊。本文介紹的通過(guò)對(duì)Profibus現(xiàn)場(chǎng)總線控制系統(tǒng)運(yùn)行方式,、通信協(xié)議以及主從站狀態(tài)機(jī)進(jìn)行充分的研究,,設(shè)計(jì)的Profibus-DP現(xiàn)場(chǎng)總線可編程智能模塊,能自適應(yīng)總線波特率,,在完成復(fù)雜控制算法的條件下實(shí)時(shí)與主站進(jìn)行通信?,F(xiàn)場(chǎng)測(cè)試和實(shí)驗(yàn)顯示模塊設(shè)計(jì)和研制達(dá)到了實(shí)際應(yīng)用的水平,對(duì)推動(dòng)Profibus現(xiàn)場(chǎng)總線控制系統(tǒng)設(shè)備的國(guó)產(chǎn)化起到了重要的作用,。該可編程智能模塊采用ARM9作為核心控制器,,可以實(shí)現(xiàn)多種復(fù)雜的控制算法,,為港口大型設(shè)備的智能控制系統(tǒng)的設(shè)計(jì)提供了硬件基礎(chǔ)。 參 考 文 獻(xiàn): [1] 陽(yáng)憲惠.現(xiàn)場(chǎng)總線技術(shù)及其應(yīng)用[M].北京:清華大學(xué)出版社,,2002. [2] 房立鎮(zhèn),程廣河,呂國(guó)華.基于ARM的PROFIBUS-DP通信模塊的研究與設(shè)計(jì)[J].信息技術(shù)與信息化,2010(05):39-40. [3] 蔡曉煒,,錢東敏,魯聰達(dá).基于ARM的PROFIBUS.DP通訊轉(zhuǎn)換接口的設(shè)計(jì)[J].機(jī)械制造,,2009,,47(3):27-29. [4] 宋清昆,林森,馮金超.基于Profibus-DP現(xiàn)場(chǎng)總線通信接口設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2010,33(11):197-199. [5] 盧勇.ARM的PROFIBUS-DP智能從站的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:冶金自動(dòng)化研究設(shè)計(jì)院,2008. 周鐵梁: 200120,上海市浦東新區(qū)福山路458號(hào)同盛大廈21層 The Design of the Intelligent Programmable Module Based on Profibus-DP Zhou Tieliang1 Xie Zhaoqing2 Chen Chao1 1 Huadian Heavy Industries co., Ltd. Shanghai Technical Center,;2 Schoolof Energy and Power Engineering,,Wuhan University of Technology Abstract:According to the disadvantage that PLC system is insufficient to realize complex intelligent algorithm, based on Profibus-DP field bus and ARM processor technology, using VPC3+C protocol chip, a new intelligent programmable module meetsProfibus-DP bus protocol is proposed. This special intelligent programmable module can seamlessly integrate into the FCS of large equipment to realize system complicated algorithm and intelligent control through the program design of the module. Key words:field bus; Profibus-DP; VPC3+C 收稿日期:2016-09-27 DOI:10.3963/j.issn.1000-8969.2016.06.019 |
|