基于中間件的變電站裝置通用打印方法
【專利摘要】本發(fā)明公開一種基于中間件的變電站裝置通用打印方法,所述變電站裝置包括應(yīng)用層、中間件和物理層;所述中間件包含抽象層組件和傳輸層組件,分別與應(yīng)用層與物理層進(jìn)行通信;所述應(yīng)用層將打印規(guī)格及數(shù)據(jù)傳遞給抽象層組件,抽象層組件根據(jù)打印需求按類選擇數(shù)據(jù)結(jié)構(gòu)形成打印數(shù)據(jù)塊,該打印數(shù)據(jù)塊被列入中間件的打印隊列等待傳輸層組件按照先進(jìn)先出的原則依次進(jìn)行處理;傳輸層組件從中間件的打印隊列中獲取等待時間最久的數(shù)據(jù)塊進(jìn)行解析,并根據(jù)打印對象的接口類型選擇對應(yīng)的驅(qū)動模塊對數(shù)據(jù)內(nèi)容進(jìn)行協(xié)議處理,再通過I/O設(shè)備接口傳輸至物理層。此方法可實現(xiàn)裝置在不同接口類型打印機的數(shù)據(jù)輸出,大幅度提高裝置的靈活性與可配置性。
【專利說明】基于中間件的變電站裝置通用打印方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種通用打印方法,特別涉及一種變電站內(nèi)的裝置打印方法。
【背景技術(shù)】
[0002]在工業(yè)控制和電力系統(tǒng)控制領(lǐng)域,裝置的打印功能是一種重要的人機交互方式?,F(xiàn)場裝置在調(diào)試、運行及維護(hù)等各應(yīng)用階段,均存在通過打印接口獲取歷史記錄及實時狀態(tài)的數(shù)據(jù)需求。
[0003]目前,變電站裝置的主流打印方式仍以串口打印為主,即每臺裝置或者每個屏柜配置一臺針式打印機,裝置以RS232串口向打印機傳輸數(shù)據(jù)信息,但串口打印存在配置成本高、打印速率低的問題。中國專利申請?zhí)?01220119850.X提出了一種基于以太網(wǎng)的集中式網(wǎng)絡(luò)打印系統(tǒng),該方法需在站控層設(shè)立服務(wù)器并安裝打印服務(wù)組件,由于在變電站裝置與打印機之間增加了服務(wù)器中轉(zhuǎn)環(huán)節(jié),裝置打印的傳輸效率及穩(wěn)定性均易受到影響。隨著智能變電站的推廣,變電站日新月異的應(yīng)用需求對裝置的打印性能提出了更高的要求,對打印接口的要求也愈發(fā)多樣化。另一方面,變電站內(nèi)的裝置一般都為嵌入式平臺,性能和資源相對有限,由于無法像臺式機一樣支持安裝各類打印機驅(qū)動,一般嵌入式裝置的常規(guī)打印模式很難靈活適應(yīng)不同的打印接口類型,且打印性能的提升亦遇到瓶頸。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的,在于提供一種基于中間件的變電站裝置通用打印方法,其可實現(xiàn)裝置在不同接口類型打印機的數(shù)據(jù)輸出,大幅度提高裝置的靈活性與可配置性。
[0005]為了達(dá)成上述目的,本發(fā)明的解決方案是:
[0006]一種基于中間件的變電站裝置通用打印方法,所述變電站裝置包括應(yīng)用層、中間件和物理層;所述中間件包含抽象層組件和傳輸層組件,分別與應(yīng)用層與物理層進(jìn)行通信,抽象層組件用于將裝置打印應(yīng)用的命令和數(shù)據(jù)封裝成統(tǒng)一格式的數(shù)據(jù)塊,傳輸層組件則選擇驅(qū)動模塊按具體打印協(xié)議轉(zhuǎn)換數(shù)據(jù)并通過I/o設(shè)備接口傳輸至物理層實現(xiàn)打印輸出。
[0007]上述抽象層組件封裝成的數(shù)據(jù)塊包括存儲命令及參數(shù)信息的控制域和存儲打印數(shù)據(jù)內(nèi)容的數(shù)據(jù)域。
[0008]上述變電站裝置聯(lián)接串口針式打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按ESC/P串口針式打印協(xié)議解釋成串行碼流再經(jīng)裝置打印串口發(fā)送。
[0009]上述變電站裝置聯(lián)接USB接口打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按USB通訊協(xié)議封裝成USB數(shù)據(jù)信息包再經(jīng)裝置USB 口發(fā)送。
[0010]上述變電站裝置聯(lián)接以太網(wǎng)打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容通過網(wǎng)絡(luò)打印協(xié)議進(jìn)行信息封裝再經(jīng)裝置以太網(wǎng)口發(fā)送。
[0011]采用上述方案后,本發(fā)明針對現(xiàn)有變電站復(fù)雜多變的打印需求,通過中間件來實現(xiàn)裝置在不同接口類型打印機的數(shù)據(jù)輸出,可應(yīng)用于變電站內(nèi)裝置中,通過中間件的架構(gòu),滿足變電站內(nèi)日益復(fù)雜的打印需求,并能夠根據(jù)不同接口的打印機選擇相應(yīng)的打印策略,既節(jié)省了裝置的二次開發(fā)成本,也保證了變電站打印操作能夠可靠、高效地完成。同時本方法不需要在現(xiàn)場額外配置驅(qū)動程序,亦降低了變電站運行和維護(hù)的人工成本。
【專利附圖】
【附圖說明】
[0012]圖1是本發(fā)明的結(jié)構(gòu)框圖;
[0013]圖2是本發(fā)明的流程圖。
【具體實施方式】
[0014]以下將結(jié)合附圖,對本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明。
[0015]本發(fā)明提供一種基于中間件的變電站裝置通用打印方法,所述變電站裝置包括應(yīng)用層、中間件和物理層,而所述的中間件位于應(yīng)用層和物理層之間,降低裝置應(yīng)用層與物理層之間的耦合性,提高裝置打印應(yīng)用的通用性,為變電站裝置的不同打印應(yīng)用與不同類型的打印機之間提供了通用的實現(xiàn)接口。
[0016]如圖1所示,是本發(fā)明的實現(xiàn)架構(gòu)示意圖,所述中間件按照功能劃分為抽象層組件和傳輸層組件,這兩個組件分別與裝置的應(yīng)用層與物理層進(jìn)行通信,抽象層組件用于將裝置打印應(yīng)用的命令和數(shù)據(jù)封裝成統(tǒng)一格式的數(shù)據(jù)塊,傳輸層組件則選擇驅(qū)動模塊按具體打印協(xié)議轉(zhuǎn)換數(shù)據(jù)并通過物理接口傳輸。整體的實現(xiàn)流程如圖2所示,以下將分別介紹。
[0017]裝置應(yīng)用層根據(jù)用戶需求執(zhí)行具體打印操作時,應(yīng)用層的打印功能系統(tǒng)將打印規(guī)格及數(shù)據(jù)傳遞給抽象層組件,后者根據(jù)打印需求按類選擇數(shù)據(jù)結(jié)構(gòu)形成打印數(shù)據(jù)塊,該數(shù)據(jù)塊由控制域和數(shù)據(jù)域兩部分組成:控制域存儲命令及參數(shù)信息,包括接口類型、頁面設(shè)置等打印設(shè)置信息,還包括與輸出格式相關(guān)的參數(shù)信息,例如文本打印的字型選擇和圖形打印的分辨率設(shè)置等;數(shù)據(jù)域存儲打印數(shù)據(jù)內(nèi)容。對于打印輸出格式與裝置存儲格式基本類似的數(shù)據(jù)打印,如文本打印,抽象層組件直接按打印系統(tǒng)調(diào)用的入口參數(shù)將裝置存儲數(shù)據(jù)搬移至打印數(shù)據(jù)塊的數(shù)據(jù)域。對于打印輸出格式與裝置存儲格式差異較大的數(shù)據(jù)打印,如圖形打印,抽象層組件需按應(yīng)用層需求對裝置存儲數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換處理后再寫入數(shù)據(jù)域。最后,抽象層組件處理完成的打印數(shù)據(jù)塊將被列入中間件的打印隊列等待傳輸層組件按照先進(jìn)先出的原則依次進(jìn)行處理。
[0018]傳輸層組件從中間件的打印隊列中獲取等待時間最久的數(shù)據(jù)塊進(jìn)行解析。傳輸層組件根據(jù)打印對象的接口類型選擇對應(yīng)的驅(qū)動模塊對數(shù)據(jù)內(nèi)容進(jìn)行協(xié)議處理。當(dāng)打印對象為串口針式打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按ESC/P串口針式打印協(xié)議解釋成串行碼流再經(jīng)裝置打印串口發(fā)送;當(dāng)打印對象為USB接口打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按USB通訊協(xié)議封裝成USB數(shù)據(jù)信息包再經(jīng)裝置USB 口發(fā)送;當(dāng)打印對象為以太網(wǎng)打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按打印命令語言PCL(Printer CommandLanguage)或者因特網(wǎng)打印協(xié)議IPP(Internet Print Protocal)進(jìn)行信息封裝,然后通過高速以太網(wǎng)總線驅(qū)動網(wǎng)絡(luò)打印機完成打印任務(wù)。當(dāng)變電站裝置需要增加對新型接口打印機的支持時,無須修改裝置應(yīng)用層的打印模塊代碼,僅需在中間件傳輸層組件中添加包含相關(guān)協(xié)議轉(zhuǎn)換處理的驅(qū)動模塊及物理接口即可滿足要求,且新增接口對裝置原有打印功能無任何影響。
[0019]以上實施例僅為說明本發(fā)明的技術(shù)思想,不能以此限定本發(fā)明的保護(hù)范圍,凡是按照本發(fā)明提出的技術(shù)思想,在技術(shù)方案基礎(chǔ)上所做的任何改動,均落入本發(fā)明保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于中間件的變電站裝置通用打印方法,所述變電站裝置包括應(yīng)用層和物理層;其特征在于:所述變電站裝置還包括中間件,中間件包含抽象層組件和傳輸層組件,分別與應(yīng)用層與物理層進(jìn)行通信; 所述應(yīng)用層將打印規(guī)格及數(shù)據(jù)傳遞給抽象層組件,抽象層組件根據(jù)打印需求按類選擇數(shù)據(jù)結(jié)構(gòu)形成打印數(shù)據(jù)塊,該打印數(shù)據(jù)塊被列入中間件的打印隊列等待傳輸層組件按照先進(jìn)先出的原則依次進(jìn)行處理; 傳輸層組件從中間件的打印隊列中獲取等待時間最久的數(shù)據(jù)塊進(jìn)行解析,并根據(jù)打印對象的接口類型選擇對應(yīng)的驅(qū)動模塊對數(shù)據(jù)內(nèi)容進(jìn)行協(xié)議處理,再通過I/o設(shè)備接口傳輸至物理層。
2.如權(quán)利要求1所述的基于中間件的變電站裝置通用打印方法,其特征在于:所述抽象層組件形成的打印數(shù)據(jù)塊包括存儲命令及參數(shù)信息的控制域和存儲打印數(shù)據(jù)內(nèi)容的數(shù)據(jù)域。
3.如權(quán)利要求1或2所述的基于中間件的變電站裝置通用打印方法,其特征在于:所述變電站裝置聯(lián)接串口針式打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按ESC/P串口針式打印協(xié)議解釋成串行碼流再經(jīng)裝置打印串口發(fā)送。
4.如權(quán)利要求1或2所述的基于中間件的變電站裝置通用打印方法,其特征在于:所述變電站裝置聯(lián)接USB接口打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容按USB通訊協(xié)議封裝成USB數(shù)據(jù)信息包再經(jīng)裝置USB 口發(fā)送。
5.如權(quán)利要求1或2所述的基于中間件的變電站裝置通用打印方法,其特征在于:所述變電站裝置聯(lián)接以太網(wǎng)打印機時,傳輸層組件將打印數(shù)據(jù)塊內(nèi)容通過網(wǎng)絡(luò)打印協(xié)議進(jìn)行信息封裝再經(jīng)裝置以太網(wǎng)口發(fā)送。
【文檔編號】G06F3/12GK104281419SQ201310285471
【公開日】2015年1月14日 申請日期:2013年7月8日 優(yōu)先權(quán)日:2013年7月8日
【發(fā)明者】劉偉, 周進(jìn), 李德文, 侯先棟, 陳宏輝, 余東明, 李文朝, 曹彥朝, 胡云石, 李彥瑞 申請人:南京南瑞繼保電氣有限公司, 廣東電網(wǎng)公司茂名供電局