專利名稱:打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種生產(chǎn)現(xiàn)場(chǎng)檢測(cè)設(shè)備的打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,屬于計(jì)算機(jī)應(yīng)用與生產(chǎn)自動(dòng)化控制領(lǐng)域。
背景技術(shù):
目前在工礦企業(yè)的生產(chǎn)現(xiàn)場(chǎng)所使用的檢測(cè)設(shè)備,較為普遍地將檢測(cè)數(shù)據(jù)直接通過(guò)打印機(jī)輸出而并不支持以太網(wǎng)方式的網(wǎng)絡(luò)通訊。以橡膠輪胎制造行業(yè)為例,為直接、快捷地判斷混煉膠料的門(mén)尼粘度等重要參數(shù)是否合格,需要按照工藝要求隨時(shí)進(jìn)行膠料檢測(cè)。由于膠樣門(mén)尼檢測(cè)儀僅提供有打印輸出接口數(shù)據(jù),檢測(cè)人員只能面對(duì)紙制的打印數(shù)據(jù)進(jìn)行結(jié)果校對(duì),不僅無(wú)法有效地尋找差值原因、而且檢測(cè)標(biāo)準(zhǔn)受到主觀因素影響而有所降低。為應(yīng)對(duì)生產(chǎn)企業(yè)信息化管理要求,還需將檢測(cè)數(shù)據(jù)進(jìn)行手工錄入到計(jì)算機(jī)或網(wǎng)絡(luò)服務(wù)器中,即耗費(fèi)大量的人力和物力,也增加浪費(fèi)時(shí)間又增加了風(fēng)險(xiǎn)。上述先行打印數(shù)據(jù)、然后進(jìn)行人工校對(duì)的檢測(cè)方式,顯然不適用于檢測(cè)批次多、數(shù)據(jù)與指標(biāo)量較大的場(chǎng)合,對(duì)于數(shù)據(jù)級(jí)別要求較多等逐級(jí)判斷檢測(cè)設(shè)備來(lái)說(shuō),通過(guò)人工校對(duì)查詢結(jié)果較易于出錯(cuò),不利于提高生產(chǎn)管理系統(tǒng)的數(shù)據(jù)核查與歷史記錄保存。
發(fā)明內(nèi)容
本發(fā)明所述的打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,在于解決上述問(wèn)題而采取通過(guò)協(xié)議轉(zhuǎn)換器連接生產(chǎn)現(xiàn)場(chǎng)的檢測(cè)設(shè)備與打印機(jī),數(shù)據(jù)在打印的同時(shí)被復(fù)制到協(xié)議轉(zhuǎn)換器,通過(guò)數(shù)據(jù)篩選與預(yù)處理而將字符型數(shù)據(jù)與圖表型數(shù)據(jù)分別存儲(chǔ),從而在不支持以太網(wǎng)通訊設(shè)備之間進(jìn)行組網(wǎng),實(shí)現(xiàn)將并口打印數(shù)據(jù)轉(zhuǎn)換為串口 485協(xié)議格式。本發(fā)明的目的是,定向地實(shí)現(xiàn)打印數(shù)據(jù)的協(xié)議轉(zhuǎn)換,為生產(chǎn)現(xiàn)場(chǎng)提供直接、快捷地性能判斷提供檢測(cè)依據(jù),以計(jì)算機(jī)軟件運(yùn)算替代人工校對(duì),有利于直觀、準(zhǔn)確地判斷生產(chǎn)工藝與產(chǎn)品性能。另一發(fā)明目的是,滿足生產(chǎn)企業(yè)信息化管理要求,節(jié)省大量的人力和物力,提高整體生產(chǎn)效率。發(fā)明目的還在于,對(duì)檢測(cè)設(shè)備輸出的打印數(shù)據(jù)進(jìn)行篩選、提取有效數(shù)據(jù),以提高生產(chǎn)系統(tǒng)的自動(dòng)化管理水平。為實(shí)現(xiàn)上述發(fā)明目的,所述打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,主要包括如下步驟協(xié)議轉(zhuǎn)換器獲得檢測(cè)設(shè)備通過(guò)打印并口向打印機(jī)輸出數(shù)據(jù)的狀態(tài)控制權(quán);在T2時(shí)間段,檢測(cè)設(shè)備向打印機(jī)輸出一個(gè)字節(jié)的數(shù)據(jù),與此同時(shí)數(shù)據(jù)復(fù)制到協(xié)議轉(zhuǎn)換器;在Tl時(shí)間段,協(xié)議轉(zhuǎn)換器對(duì)該字節(jié)數(shù)據(jù)進(jìn)行篩選,刪除非字符型、非圖表型數(shù)據(jù), 將字符型或圖表型數(shù)據(jù)進(jìn)行存儲(chǔ),此時(shí)檢測(cè)設(shè)備不再發(fā)送字節(jié)數(shù)據(jù);Tl和T2時(shí)間段依次地間隔排列,直至檢測(cè)設(shè)備輸出完成全部的打印數(shù)據(jù);
在協(xié)議轉(zhuǎn)換器中存儲(chǔ)的字符型或圖表型數(shù)據(jù),轉(zhuǎn)換為串口 485協(xié)議格式以備調(diào)取、輸出。如上述基本方案,圍繞協(xié)議轉(zhuǎn)換器對(duì)檢測(cè)設(shè)備輸出的打印數(shù)據(jù)進(jìn)行篩選與預(yù)處理,在實(shí)現(xiàn)與管理系統(tǒng)服務(wù)器組網(wǎng)通信的前提下,將打印數(shù)據(jù)轉(zhuǎn)換為串口 485協(xié)議格式,不僅可以通過(guò)計(jì)算機(jī)終端進(jìn)行直觀地顯示,而且可依據(jù)參數(shù)標(biāo)準(zhǔn)進(jìn)行多批次地、逐級(jí)判斷校驗(yàn),以利于后續(xù)出具檢測(cè)報(bào)告、工藝修改。為進(jìn)一步有效地控制打印數(shù)據(jù)輸出,可采取的優(yōu)選控制手段是,由協(xié)議轉(zhuǎn)換器調(diào)節(jié)檢測(cè)設(shè)備的打印并口中的busy幀位的電平高低,以控制檢測(cè)設(shè)備向打印機(jī)輸出數(shù)據(jù)的狀態(tài)。針對(duì)打印數(shù)據(jù)的預(yù)處理階段,可采取如下改進(jìn)方案在協(xié)議轉(zhuǎn)換器進(jìn)行數(shù)據(jù)篩選的過(guò)程中,將每個(gè)字符型數(shù)據(jù)依次地存儲(chǔ)到預(yù)定的一維數(shù)組中;將圖表型數(shù)據(jù)進(jìn)行修正以恢復(fù)有效數(shù)據(jù),隨之進(jìn)行壓縮處理以去除冗余數(shù)據(jù)。針對(duì)圖表型數(shù)據(jù)進(jìn)行數(shù)據(jù)修正的改進(jìn)措施是,所述的數(shù)據(jù)修正包括以下步驟,將記錄打印圖形中坐標(biāo)或表格線的靜態(tài)圖表型數(shù)據(jù)的矩陣A,與記錄圖形曲線的動(dòng)態(tài)圖表型數(shù)據(jù)的矩陣B進(jìn)行疊加;去除2個(gè)矩陣的重合點(diǎn)數(shù)據(jù);還原所修正的全部圖表型數(shù)據(jù),并劃分為若干個(gè)分段,對(duì)每個(gè)分段進(jìn)行區(qū)域差值恢復(fù),以使每2個(gè)相鄰分段中的曲線是連續(xù)的;對(duì)每個(gè)連續(xù)的分段進(jìn)行有效連接而形成修正后的有效數(shù)據(jù),并形成完整的圖形曲線。針對(duì)圖表型數(shù)據(jù)進(jìn)行壓縮處理的改進(jìn)措施是,恢復(fù)有效數(shù)據(jù)后,僅對(duì)有效數(shù)據(jù)進(jìn)行存儲(chǔ)、去除其他所有暫存或修正過(guò)程中形成的數(shù)據(jù)。綜上內(nèi)容,本發(fā)明所述打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法具有如下優(yōu)點(diǎn)與有益效果1、通過(guò)協(xié)議轉(zhuǎn)換器連接生產(chǎn)現(xiàn)場(chǎng)的檢測(cè)設(shè)備與打印機(jī),實(shí)現(xiàn)在不支持以太網(wǎng)通訊設(shè)備之間進(jìn)行組網(wǎng),為生產(chǎn)現(xiàn)場(chǎng)提供直接、快捷的檢測(cè)依據(jù)。2、以計(jì)算機(jī)軟件運(yùn)算替代人工校對(duì),提高性能檢測(cè)與工藝改進(jìn)的準(zhǔn)確性,有利于提尚廣品制造品質(zhì)。3、能夠滿足信息化管理要求,節(jié)省大量的人力和物力,提高整體生產(chǎn)效率。4、通過(guò)數(shù)據(jù)篩選與預(yù)處理能夠去除無(wú)效、冗余的內(nèi)容,節(jié)省存儲(chǔ)空間和提高檢測(cè)運(yùn)算速度,有利于提高生產(chǎn)系統(tǒng)的自動(dòng)化管理水平。
現(xiàn)結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步的說(shuō)明。圖1是所述協(xié)議轉(zhuǎn)換器的結(jié)構(gòu)示意圖;圖2是組網(wǎng)后的控制流程示意圖;圖3是Tl與T2時(shí)間段間隔實(shí)施示意圖;圖4是在Tl時(shí)間段內(nèi)的控制流程示意圖;圖5是在T2時(shí)間段內(nèi)的控制流程示意4
圖6是基于本發(fā)明的組網(wǎng)結(jié)構(gòu)示意圖;圖7是所述打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法的流程圖。
具體實(shí)施例方式實(shí)施例1,如圖1至圖7所示,所述打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,主要包括有如下步驟協(xié)議轉(zhuǎn)換器獲得檢測(cè)設(shè)備通過(guò)打印并口向打印機(jī)輸出數(shù)據(jù)的狀態(tài)控制權(quán);在Tl時(shí)間段,檢測(cè)設(shè)備向打印機(jī)輸出一個(gè)字節(jié)的數(shù)據(jù),與此同時(shí)數(shù)據(jù)復(fù)制到協(xié)議轉(zhuǎn)換器;在T2時(shí)間段,協(xié)議轉(zhuǎn)換器對(duì)該字節(jié)數(shù)據(jù)進(jìn)行篩選,刪除非字符型、非圖表型數(shù)據(jù), 將字符型或圖表型數(shù)據(jù)進(jìn)行存儲(chǔ);Tl和T2時(shí)間段依次地間隔排列,直至檢測(cè)設(shè)備輸出完成全部的打印數(shù)據(jù);在協(xié)議轉(zhuǎn)換器中存儲(chǔ)的字符型或圖表型數(shù)據(jù),轉(zhuǎn)換為串口 485協(xié)議格式以備調(diào)取、輸出。具體地,如圖3至圖5所示,由協(xié)議轉(zhuǎn)換器調(diào)節(jié)檢測(cè)設(shè)備的打印并口中的busy幀位的電平高低,以控制檢測(cè)設(shè)備向打印機(jī)輸出數(shù)據(jù)的狀態(tài)。即檢測(cè)設(shè)備發(fā)出的檢測(cè)數(shù)據(jù)除提供給打印機(jī)以外,同時(shí)被協(xié)議轉(zhuǎn)換器截獲。協(xié)議轉(zhuǎn)換器對(duì)數(shù)據(jù)的截獲并不影響打印機(jī)對(duì)數(shù)據(jù)的正常接收。協(xié)議轉(zhuǎn)換器能夠獲得對(duì)檢測(cè)數(shù)據(jù)的控制權(quán),即當(dāng)協(xié)議轉(zhuǎn)換器接收到一個(gè)字節(jié)數(shù)據(jù)時(shí)則停止檢測(cè)設(shè)備繼續(xù)發(fā)送打印數(shù)據(jù),直到該字節(jié)數(shù)據(jù)處理完畢后再準(zhǔn)許檢測(cè)設(shè)備繼續(xù)發(fā)送,從而保證數(shù)據(jù)接收的完整性和正確性。協(xié)議轉(zhuǎn)換器主要分為MCU-數(shù)據(jù)處理模塊、以及數(shù)據(jù)存儲(chǔ)和顯示/輸出等I/O處理模塊。以并行方式接收打印機(jī)數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行篩選與預(yù)處理壓縮后,提取有效數(shù)據(jù)并存儲(chǔ)到指定的存儲(chǔ)器中。通過(guò)按鍵可以修改設(shè)備地址和密碼等信息以將數(shù)據(jù)進(jìn)行存儲(chǔ),數(shù)據(jù)經(jīng)過(guò)光電隔離后再轉(zhuǎn)換成485協(xié)議格式。其中,MCU選用ATMEL的ATMEGA64,其PA 口用于接收打印機(jī)數(shù)據(jù),PC 口接數(shù)碼管顯示,PB 口的SPI引腳連接存儲(chǔ)芯片AT45DB161D,PF 口接按鍵;光耦芯片選用P521和6N136 ; 485轉(zhuǎn)換芯片選用VP3082。以橡膠輪胎的門(mén)尼檢測(cè)設(shè)備為例MCU的PA 口通過(guò)上面的15針接口,截取打印機(jī)輸出數(shù)據(jù)并進(jìn)行處理分字符(以門(mén)尼值為例)和圖表(以門(mén)尼曲線為例)兩種類型。MCU接收到數(shù)據(jù)后首先判斷數(shù)據(jù)類型,若為字符型數(shù)據(jù)則按照字符型數(shù)據(jù)進(jìn)行處理,提取出采集到的門(mén)尼數(shù)據(jù);若判斷為圖表類型,則需要首先對(duì)圖表進(jìn)行預(yù)處理,預(yù)處理后需要對(duì)曲線進(jìn)行修復(fù)以最后得到完整的曲線數(shù)據(jù)。處理后的數(shù)據(jù)以一維數(shù)組形式存儲(chǔ)到AT45中,這一過(guò)程通過(guò)SPI方式實(shí)現(xiàn)。其中圖表曲線也以一維數(shù)組存儲(chǔ),數(shù)組元素號(hào)對(duì)應(yīng)圖表行數(shù),元素值對(duì)應(yīng)列數(shù)。通過(guò)按鍵設(shè)置轉(zhuǎn)換器對(duì)應(yīng)設(shè)備的地址和密碼并將設(shè)置信息存儲(chǔ)到AT45,這一過(guò)程中要注意每臺(tái)設(shè)備地址唯一,并與管理系統(tǒng)服務(wù)器對(duì)應(yīng)。MCU讀取AT45中存儲(chǔ)的數(shù)據(jù)并通過(guò)串口輸出,輸出端通過(guò)光耦連接到485轉(zhuǎn)換芯片然后接入485總線。管理系統(tǒng)服務(wù)器通過(guò)485總線采集協(xié)議轉(zhuǎn)換器發(fā)出的門(mén)尼信息,并進(jìn)行分類、判斷級(jí)別等相關(guān)處理。對(duì)于向打印機(jī)輸出數(shù)據(jù)的狀態(tài)控制權(quán)獲取,可由協(xié)議轉(zhuǎn)換器的控制位發(fā)出相應(yīng)的高、低電平波型,初始時(shí)默認(rèn)低電平,當(dāng)接收到檢測(cè)檢設(shè)備發(fā)送的第一個(gè)字節(jié)數(shù)據(jù)后,即在 Tl時(shí)間段內(nèi),協(xié)議轉(zhuǎn)換器向檢測(cè)設(shè)備的打印并口中的busy幀位發(fā)出一高電平,以阻止檢測(cè)設(shè)備繼續(xù)發(fā)送數(shù)據(jù);協(xié)議轉(zhuǎn)換器的數(shù)據(jù)處理單元對(duì)該字節(jié)數(shù)據(jù)進(jìn)行處理,僅當(dāng)處理完畢后將控制位電平拉低,即在T2時(shí)間段內(nèi),檢測(cè)設(shè)備能夠繼續(xù)發(fā)送下一個(gè)字節(jié);當(dāng)協(xié)議轉(zhuǎn)換器接收到下一個(gè)新的字節(jié)數(shù)據(jù)時(shí),又進(jìn)入Tl時(shí)間段,重新將控制位電平置拉高,如此循環(huán)反復(fù)。如圖1、圖2、圖6和圖7所示,在協(xié)議轉(zhuǎn)換器進(jìn)行數(shù)據(jù)篩選的過(guò)程中,將每個(gè)字符型數(shù)據(jù)依次地存儲(chǔ)到預(yù)定的一維數(shù)組中;將圖表型數(shù)據(jù)進(jìn)行修正以恢復(fù)有效數(shù)據(jù),隨之進(jìn)行壓縮處理以去除冗余數(shù)據(jù)。協(xié)議轉(zhuǎn)換器是按每一個(gè)字節(jié)進(jìn)行數(shù)據(jù)篩選,對(duì)于不需要的無(wú)效數(shù)據(jù)直接過(guò)濾掉, 最后僅將有效數(shù)據(jù)進(jìn)行存儲(chǔ),從而節(jié)省存儲(chǔ)打印機(jī)數(shù)據(jù)的空間和時(shí)間。如針對(duì)以下一段打印數(shù)據(jù)的篩選過(guò)程。具體數(shù)據(jù)內(nèi)容是,OxOD,OxOA,0x54,0x28,0x6D,0x3A,0x73,0x29,0x20,0x50,0x72,0x6F,0x5F,0x48,0x20,0x49,0x6E,0x69,0x74,0x69,0x61,0x6C,0x20,0x28,0x31,0x2B,0x33,0x29,0x20,0x28,0x31,0x2B,0x34,0x29,0x20,0x28,0x31,0x2B,0x35,0x29,0x20,0x28,0x31,0x2B,0x36,0x29,0x20,OxOD,OxOA,0x35,0x3A,0x30,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x31,0x20,0x20,0x20,0x20,0x31,0x31,0x36,0x2E,0x30,0x20,0x36,0x34,0x2E,0x39,0x20,0x20,0x36,0x33,0x2E,0x31,0x20,0x20,0x35,0x2E,0x33,0x20,0x20,0x20,0x35,0x2E,0x33,0x20,0x20,0x20,0x20,0x20,OxOD,OxOA,0x4B,0x3A,0x36,0x31,0x2E,0x31,0x20,0x20,0x20,0x20,0x61,0x3A,0x2D,0x30,0x2E,0x35,0x30,0x20,0x37,0x30,0x25,0x20,0x36,0x20,0x20,0x20,0x38,0x30,0x25,0x20,0x37,0x20,0x20,0x20,0x39,0x30,0x25,0x20,0x31,0x30,0x20,0x20,OxOD,OxOA,0x44,0x61,0x74,0x65,0x20,0x3A,0x20,0x20,0x20,0x32,0x30,0x30,0x39,0x2D,0x30,0x39,0x2D,0x30,0x37,0x20,0x20,0x20,0x31,0x37,0x3A,0x31,0x36,0x20,0x20,0x54,0x75,0x3A,0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x54,0x64,0x3A, 0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x54,0x6F,0x74,0x61,0x6C,0x20,0x3A,0x33,0x38,0x31,0x37,0x38,0x20,0x20,0x20,OxOD,OxOA,0x07,0x07,0x07,OxAAOxOD,OxOA,OxlB,0x55,0x01,0x28,0x6D,0x3A,0x73,0x29,0x20,0x50,0x72,0x6F,0x5F,...圖表數(shù)據(jù)若干......0x48,0x20,0x49,0x6E,0x69,0x74,0x69,0x61,0x6C,0x20,0x28,0x31,0x2B,0x33,0x29,0x20,0x28,0x31,0x2B,0x34,0x29,0x20,0x28,0x31,0x2B,0x35,0x29,0x20,0x28,0x31,0x2B,0x36,0x29,0x20,OxOD,OxOA,0x35,0x3A,0x30,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x31,0x20,0x20,0x20,0x20,0x31,
0x31,0x30,0x2E,0x35,0x20,0x36,0x36,0x2E,0x33,0x20,0x20,0x36,0x34,0x2E,0x32,0x20,0x20,0x36,0x33,0x2E,0x33,0x20,0x20,0x20,0x35,0x2E, 0x33,0x20,0x20,0x20,0x20,0x20,OxOD,OxOA,0x4B,0x3A,0x36,0x31,0x2E,0x31,0x20,0x20,0x20,0x20,0x61,0x3A,0x2D,0x30,0x2E,0x35,0x30,0x20,0x37,0x30,0x25,0x20,0x36,0x20,0x20,0x20,0x38,0x30,0x25,0x20,0x37,0x20,0x20,0x20,0x39,0x30,0x25,0x20,0x31,0x30,0x20,0x20,OxOD,OxOA,0x44,0x61,0x74,0x65,0x20,0x3A,0x20,0x20,0x20,0x32,0x30,0x30,0x39,0x2D,0x30,0x39,0x2D,0x30,0x37,0x20,0x20,0x20,0x31,0x37,0x3A,0x31,0x36,0x20,0x20,0x54,0x75,0x3A,0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x54,0x64,0x3A,0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x54,0x6F,0x74,0x61,0x6C,0x20,0x3A,0x33,0x38,0x31,0x37,0x38,0x20,0x20,0x20,OxOD,OxOA,0x07,0x07,0x07,OxAA如上內(nèi)容的打印數(shù)據(jù)中包括第一段為字符數(shù)據(jù),第二段為圖表數(shù)據(jù)。當(dāng)接收到得第一個(gè)字節(jié)為0D,第二個(gè)字節(jié)為0A,第三個(gè)字節(jié)不是IB時(shí),判斷數(shù)據(jù)類型為字符類型,繼續(xù)接收新的字符數(shù)據(jù)。當(dāng)接收到的五個(gè)字節(jié)數(shù)據(jù)中,某一個(gè)字節(jié)數(shù)據(jù)為3A,3A后的連續(xù)兩個(gè)數(shù)據(jù)為30到 39中的任意一個(gè)數(shù)值,3A前的連續(xù)兩個(gè)數(shù)據(jù)為30到39中的任意一個(gè)數(shù)值,則將其作為需要保存數(shù)據(jù)進(jìn)行存儲(chǔ)。如上述內(nèi)容中的“0x35,0x3A, 0x30,0x30,,;當(dāng)接收到的五個(gè)字節(jié)數(shù)據(jù)中,某一個(gè)字節(jié)數(shù)據(jù)位2E,2E前、后各一個(gè)數(shù)據(jù)都為30 到39中的任意一個(gè)數(shù)值,則將其作為需要保存的數(shù)據(jù)進(jìn)行存儲(chǔ),如上述內(nèi)容中的“0x31, 0x31,0x36,0x2E,0x30”。當(dāng)接收到得5個(gè)字節(jié)數(shù)據(jù)中再次出現(xiàn)“0D,0A”時(shí),為一段檢驗(yàn)數(shù)據(jù)的結(jié)束標(biāo)志。對(duì)于篩選出的第一個(gè)檢驗(yàn)數(shù)據(jù)按ASCII碼進(jìn)行還原后為具體十進(jìn)制的數(shù)值,再將該十進(jìn)制數(shù)值存儲(chǔ)到一維數(shù)組里。每次篩選到的有效數(shù)據(jù)都存儲(chǔ)到一維數(shù)組的相應(yīng)位置上,然后用于存儲(chǔ)到外部存儲(chǔ)芯片中以供管理系統(tǒng)服務(wù)器讀取。接著繼續(xù)接受新的打印機(jī)數(shù)據(jù)。當(dāng)接收到得第一個(gè)字節(jié)為0D,第二個(gè)字節(jié)為0A,第三個(gè)字節(jié)是IB時(shí),第四個(gè)字節(jié)為55,第五個(gè)字節(jié)為01時(shí),判斷數(shù)據(jù)類型為圖表類型,圖表型數(shù)據(jù)末尾為檢驗(yàn)字符數(shù)據(jù),篩選方式與字符篩選方式相同。即再次出現(xiàn)“0D,0A”為圖表型檢驗(yàn)數(shù)據(jù)的結(jié)束。由于工業(yè)生產(chǎn)檢測(cè)設(shè)備現(xiàn)場(chǎng)環(huán)境的復(fù)雜性,打印機(jī)數(shù)據(jù)格式上不一定全部一致, 存在一定的差異。針對(duì)復(fù)雜的圖表型數(shù)據(jù),由協(xié)議轉(zhuǎn)換器進(jìn)行數(shù)據(jù)的預(yù)處理、數(shù)據(jù)修正和數(shù)據(jù)壓縮三個(gè)階段。所述的數(shù)據(jù)修正包括以下步驟將記錄打印圖形中坐標(biāo)或表格線的靜態(tài)圖表型數(shù)據(jù)的矩陣A,與記錄圖形曲線的動(dòng)態(tài)圖表型數(shù)據(jù)的矩陣B進(jìn)行疊加;去除2個(gè)矩陣的重合點(diǎn)數(shù)據(jù);還原所修正的全部圖表型數(shù)據(jù),并劃分為若干個(gè)分段,對(duì)每個(gè)分段進(jìn)行區(qū)域差值恢復(fù),以使每2個(gè)相鄰分段中的曲線是連續(xù)的;對(duì)每個(gè)連續(xù)的分段進(jìn)行有效連接而形成修正后的有效數(shù)據(jù),并形成完整的圖形曲線。圖表型數(shù)據(jù)能夠分成靜態(tài)和動(dòng)態(tài)數(shù)據(jù),打印圖形中的坐標(biāo)和表格線是固定不變的,稱為靜態(tài)數(shù)據(jù)或矩陣A。打印圖形中的曲線根據(jù)測(cè)量結(jié)果不同而不同,稱為動(dòng)態(tài)數(shù)據(jù)或矩陣B。從檢測(cè)設(shè)備獲取的檢測(cè)數(shù)據(jù)通過(guò)矩陣疊加,即形成B-A。如果2個(gè)矩陣沒(méi)有重合點(diǎn),則打印圖形表達(dá)的是一條完整的曲線。如果有重合點(diǎn),則打印圖形表達(dá)的是一條不連續(xù)的線段,即從原有曲線中去掉了重合點(diǎn)的數(shù)據(jù)結(jié)果,此部分對(duì)有效數(shù)據(jù)造成了部分損壞。數(shù)據(jù)修正對(duì)損壞的數(shù)據(jù)進(jìn)行合理恢復(fù),恢復(fù)數(shù)據(jù)并不是簡(jiǎn)單地將所有數(shù)據(jù)進(jìn)行整體恢復(fù),而是將預(yù)處理后的圖形數(shù)據(jù)劃分為若干個(gè)小段,對(duì)每個(gè)分段進(jìn)行區(qū)域差值恢復(fù),從而使每個(gè)分段中的曲線都是連續(xù)的,然后再將各個(gè)分段已恢復(fù)曲線進(jìn)行有效連接,這樣的特殊恢復(fù)能夠減少內(nèi)存的使用。所述的數(shù)據(jù)壓縮并不是簡(jiǎn)單地壓縮和解壓縮,而是恢復(fù)有效數(shù)據(jù)后,僅對(duì)有效數(shù)據(jù)進(jìn)行存儲(chǔ)、去除其他所有暫存或修正過(guò)程中形成的數(shù)據(jù),以提高圖表的壓縮效率,壓縮后的數(shù)據(jù)也可存放在一維數(shù)組里并存儲(chǔ)到外部存儲(chǔ)器中。
權(quán)利要求
1.一種打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,其特征在于包括如下步驟,協(xié)議轉(zhuǎn)換器獲得檢測(cè)設(shè)備通過(guò)打印并口向打印機(jī)輸出數(shù)據(jù)的狀態(tài)控制權(quán); 在T2時(shí)間段,檢測(cè)設(shè)備向打印機(jī)輸出一個(gè)字節(jié)的數(shù)據(jù),與此同時(shí)數(shù)據(jù)復(fù)制到協(xié)議轉(zhuǎn)換器;在Tl時(shí)間段,協(xié)議轉(zhuǎn)換器對(duì)該字節(jié)數(shù)據(jù)進(jìn)行篩選,刪除非字符型、非圖表型數(shù)據(jù),將字符型或圖表型數(shù)據(jù)進(jìn)行存儲(chǔ),此時(shí)檢測(cè)設(shè)備不再發(fā)送字節(jié)數(shù)據(jù);Tl和T2時(shí)間段依次地間隔排列,直至檢測(cè)設(shè)備輸出完成全部的打印數(shù)據(jù); 在協(xié)議轉(zhuǎn)換器中存儲(chǔ)的字符型或圖表型數(shù)據(jù),轉(zhuǎn)換為串口 485協(xié)議格式以備調(diào)取、輸出ο
2.根據(jù)權(quán)利要求1所述的打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,其特征在于由協(xié)議轉(zhuǎn)換器調(diào)節(jié)檢測(cè)設(shè)備的打印并口中的busy幀位的電平高低,以控制檢測(cè)設(shè)備向打印機(jī)輸出數(shù)據(jù)的狀態(tài)。
3.根據(jù)權(quán)利要求1或2所述的打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,其特征在于在協(xié)議轉(zhuǎn)換器進(jìn)行數(shù)據(jù)篩選的過(guò)程中,將每個(gè)字符型數(shù)據(jù)依次地存儲(chǔ)到預(yù)定的一維數(shù)組中;將圖表型數(shù)據(jù)進(jìn)行修正以恢復(fù)有效數(shù)據(jù),隨之進(jìn)行壓縮處理以去除冗余數(shù)據(jù)。
4.根據(jù)權(quán)利要求3所述的打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,其特征在于所述的數(shù)據(jù)修正包括以下步驟,將記錄打印圖形中坐標(biāo)或表格線的靜態(tài)圖表型數(shù)據(jù)的矩陣A,與記錄圖形曲線的動(dòng)態(tài)圖表型數(shù)據(jù)的矩陣B進(jìn)行疊加; 去除2個(gè)矩陣的重合點(diǎn)數(shù)據(jù);還原所修正的全部圖表型數(shù)據(jù),并劃分為若干個(gè)分段,對(duì)每個(gè)分段進(jìn)行區(qū)域差值恢復(fù), 以使每2個(gè)相鄰分段中的曲線是連續(xù)的;對(duì)每個(gè)連續(xù)的分段進(jìn)行有效連接而形成修正后的有效數(shù)據(jù),并形成完整的圖形曲線。
5.根據(jù)權(quán)利要求4所述的打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,其特征在于恢復(fù)有效數(shù)據(jù)后,僅對(duì)有效數(shù)據(jù)進(jìn)行存儲(chǔ)、去除其他所有暫存或修正過(guò)程中形成的數(shù)據(jù)。
全文摘要
本發(fā)明所述打印數(shù)據(jù)協(xié)議轉(zhuǎn)換與控制方法,數(shù)據(jù)在打印的同時(shí)被復(fù)制到協(xié)議轉(zhuǎn)換器以將字符型數(shù)據(jù)與圖表型數(shù)據(jù)分別存儲(chǔ),從而在不支持以太網(wǎng)通訊設(shè)備之間進(jìn)行組網(wǎng),實(shí)現(xiàn)將并口打印數(shù)據(jù)轉(zhuǎn)換為串口485協(xié)議格式。協(xié)議轉(zhuǎn)換器獲得檢測(cè)設(shè)備通過(guò)打印并口向打印機(jī)輸出數(shù)據(jù)的狀態(tài)控制權(quán);在T1時(shí)間段,檢測(cè)設(shè)備向打印機(jī)輸出一個(gè)字節(jié)的數(shù)據(jù),與此同時(shí)數(shù)據(jù)復(fù)制到協(xié)議轉(zhuǎn)換器;在T2時(shí)間段,協(xié)議轉(zhuǎn)換器對(duì)該字節(jié)數(shù)據(jù)進(jìn)行篩選,刪除非字符型、非圖表型數(shù)據(jù),將字符型或圖表型數(shù)據(jù)進(jìn)行存儲(chǔ);T1和T2時(shí)間段依次地間隔排列,直至檢測(cè)設(shè)備輸出完成全部的打印數(shù)據(jù);在協(xié)議轉(zhuǎn)換器中存儲(chǔ)的字符型或圖表型數(shù)據(jù),轉(zhuǎn)換為串口485協(xié)議格式以備調(diào)取、輸出。
文檔編號(hào)B41J29/393GK102476515SQ201010576399
公開(kāi)日2012年5月30日 申請(qǐng)日期2010年11月25日 優(yōu)先權(quán)日2010年11月25日
發(fā)明者任麗艷, 佟強(qiáng), 姚永, 左磊, 李玉峰, 袁仲雪, 陳海軍 申請(qǐng)人:軟控股份有限公司