電子衡器數(shù)據(jù)采集存儲(chǔ)方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體涉及電子衡器數(shù)據(jù)采集存儲(chǔ)方法和裝置。
【背景技術(shù)】
[0002]電子衡器包括電子汽車(chē)衡、電子軌道衡、定量包裝秤、鋼材秤等,一般由秤體、稱重傳感器、稱重顯示儀表、機(jī)械傳力及限位機(jī)構(gòu)等幾部分組成。被稱重物品行駛或吊放到電子衡器上停穩(wěn)后,物品重量通過(guò)電子衡器秤體及機(jī)械連接件作用在稱重傳感器上。稱重傳感器彈性體受力變形輸出與重量數(shù)值成比例的信號(hào)。接線盒將各路傳感器的電信號(hào)匯總后送入稱重顯示儀表進(jìn)行處理并在顯示窗口上顯示出重量值。隨著電子衡器的發(fā)展,延伸出了更多的功能,例如商用的電子衡器可以具有計(jì)價(jià)功能,生成交易明細(xì)記錄等功能。
[0003]但是如果電子衡器中的存儲(chǔ)模塊損壞,則電子衡器中的交易數(shù)據(jù)記錄也會(huì)被銷毀,如果要備份數(shù)據(jù)也需要手動(dòng)操作。因此,需要有一種便捷的方法可以增加電子衡器中的數(shù)據(jù)穩(wěn)定性,保證其不容易丟失。
【發(fā)明內(nèi)容】
[0004]為了克服現(xiàn)有技術(shù)的不足,本發(fā)明的目的在于提供電子衡器數(shù)據(jù)采集存儲(chǔ)方法和裝置,解決了電子衡器中的數(shù)據(jù)無(wú)法實(shí)時(shí)上傳至服務(wù)器端,同時(shí)數(shù)據(jù)得以雙路備份,保證了數(shù)據(jù)不易丟失。
[0005]為解決上述問(wèn)題,本發(fā)明所采用的技術(shù)方案如下:
[0006]方案一:
[0007]電子衡器數(shù)據(jù)采集存儲(chǔ)方法,包括以下步驟:
[0008]S1:通過(guò)TCP協(xié)議向指定IP的電子衡器發(fā)起連接,若該電子衡器沒(méi)有應(yīng)答,則提示連接失敗并結(jié)束流程,若該電子衡器有應(yīng)答,則執(zhí)行S2 ;
[0009]S2:向電子衡器發(fā)送數(shù)據(jù)包獲取指令,并獲取電子衡器所返回的數(shù)據(jù)包;
[0010]S3:判斷該數(shù)據(jù)包中是否包含符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄,若有,則執(zhí)行S4,否則結(jié)束流程;
[0011]S4:將數(shù)據(jù)記錄進(jìn)行緩存,直至該數(shù)據(jù)包中所有符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄均被緩存;
[0012]S5:分別與本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)進(jìn)行連接,并將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中。
[0013]進(jìn)一步地,在S4與S5之間還包括:
[0014]S41:向電子衡器發(fā)送用于清除電子衡器中該數(shù)據(jù)包的指令。
[0015]進(jìn)一步地,S5包括以下子步驟:
[0016]S51:同時(shí)向本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)發(fā)起連接;
[0017]S52:若均可連接,則將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中;
[0018]S53:若只有其中一個(gè)數(shù)據(jù)庫(kù)可連接,則將被緩存的數(shù)據(jù)記錄保存至可連接的數(shù)據(jù)庫(kù)中,同時(shí)重復(fù)向另一數(shù)據(jù)庫(kù)發(fā)起連接,直至該另一數(shù)據(jù)庫(kù)可連接,并將被緩存的數(shù)據(jù)記錄保存至該另一數(shù)據(jù)庫(kù)中;
[0019]S54:若均不可連接,則同時(shí)重復(fù)向本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)發(fā)起連接,直至兩個(gè)數(shù)據(jù)庫(kù)均可連接,并將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中。
[0020]進(jìn)一步地,每間隔一預(yù)設(shè)時(shí)間段便執(zhí)行一次SI。
[0021]方案二:
[0022]電子衡器數(shù)據(jù)采集存儲(chǔ)裝置,包括以下模塊:
[0023]電子衡器連接模塊:用于通過(guò)TCP協(xié)議向指定IP的電子衡器發(fā)起連接,若該電子衡器沒(méi)有應(yīng)答,則提示連接失敗并結(jié)束流程,若該電子衡器有應(yīng)答,則執(zhí)行數(shù)據(jù)采集模塊;
[0024]數(shù)據(jù)采集模塊:用于向電子衡器發(fā)送數(shù)據(jù)包獲取指令,并獲取電子衡器所返回的數(shù)據(jù)包;
[0025]數(shù)據(jù)判斷模塊:用于判斷該數(shù)據(jù)包中是否包含符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄,若有,則執(zhí)行數(shù)據(jù)緩存模塊,否則結(jié)束流程;
[0026]數(shù)據(jù)緩存模塊:用于將數(shù)據(jù)記錄進(jìn)行緩存,直至該數(shù)據(jù)包中所有符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄均被緩存;
[0027]數(shù)據(jù)保存模塊:用于分別與本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)進(jìn)行連接,并將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中。
[0028]進(jìn)一步地,在數(shù)據(jù)緩存模塊和數(shù)據(jù)保存模塊之間還包括:
[0029]數(shù)據(jù)源清除模塊:用于向電子衡器發(fā)送用于清除電子衡器中該數(shù)據(jù)包的指令。
[0030]進(jìn)一步地,數(shù)據(jù)保存模塊中包括以下執(zhí)行流程:
[0031]同時(shí)向本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)發(fā)起連接;
[0032]若均可連接,則將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中;
[0033]若只有其中一個(gè)數(shù)據(jù)庫(kù)可連接,則將被緩存的數(shù)據(jù)記錄保存至可連接的數(shù)據(jù)庫(kù)中,同時(shí)重復(fù)向另一數(shù)據(jù)庫(kù)發(fā)起連接,直至該另一數(shù)據(jù)庫(kù)可連接,并將被緩存的數(shù)據(jù)記錄保存至該另一數(shù)據(jù)庫(kù)中;
[0034]若均不可連接,則同時(shí)重復(fù)向本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)發(fā)起連接,直至兩個(gè)數(shù)據(jù)庫(kù)均可連接,并將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中。
[0035]進(jìn)一步地,每間隔一預(yù)設(shè)時(shí)間段便執(zhí)行一次電子衡器連接模塊。
[0036]相比現(xiàn)有技術(shù),本發(fā)明的有益效果在于:實(shí)現(xiàn)了解決了電子衡器中的數(shù)據(jù)無(wú)法實(shí)時(shí)上傳至服務(wù)器端,同時(shí)數(shù)據(jù)得以雙路備份,保證了數(shù)據(jù)不易丟失。另外,被備份的數(shù)據(jù)可以從該電子衡器中刪除,便于管理電子衡器中的空間。
【附圖說(shuō)明】
[0037]圖1為本發(fā)明的電子衡器數(shù)據(jù)采集存儲(chǔ)方法的流程圖。
【具體實(shí)施方式】
[0038]下面,結(jié)合附圖以及【具體實(shí)施方式】,對(duì)本發(fā)明做進(jìn)一步描述:
[0039]參考圖1為本發(fā)明的電子衡器數(shù)據(jù)采集存儲(chǔ)方法,包括以下步驟:
[0040]S1:通過(guò)TCP協(xié)議向指定IP的電子衡器發(fā)起連接,若該電子衡器沒(méi)有應(yīng)答,則提示連接失敗并結(jié)束流程,若該電子衡器有應(yīng)答,則執(zhí)行S2。
[0041]每個(gè)電子衡器均分配有對(duì)應(yīng)的IP地址,需要獲取某一電子衡器中的數(shù)據(jù)時(shí),則以該電子衡器的IP地址向該電子衡器發(fā)起連接,具體通過(guò)想改電子衡器發(fā)送一個(gè)連接包,如果該電子衡器已經(jīng)聯(lián)網(wǎng),則會(huì)返回應(yīng)答數(shù)據(jù),如果沒(méi)有應(yīng)答,則表示該電子衡器沒(méi)有聯(lián)網(wǎng)。
[0042]S2:向電子衡器發(fā)送數(shù)據(jù)包獲取指令,并獲取電子衡器所返回的數(shù)據(jù)包。
[0043]確定目標(biāo)電子衡器已經(jīng)聯(lián)網(wǎng)后,則向該電子衡器發(fā)送獲取數(shù)據(jù)包的指令,電子衡器接收到指令后則將其中當(dāng)前數(shù)據(jù)進(jìn)行打包并返回。
[0044]S3:判斷該數(shù)據(jù)包中是否包含符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄,若有,則執(zhí)行S4,否則結(jié)束流程。
[0045]接收到由電子衡器返回的數(shù)據(jù)包后,則判斷該數(shù)據(jù)包中是否包含有符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄,預(yù)設(shè)數(shù)據(jù)格式根據(jù)不同類型的電子衡器而定,數(shù)據(jù)記錄可以是交易詳細(xì)記錄。如果數(shù)據(jù)包中沒(méi)有符合的數(shù)據(jù)記錄,則表示該電子衡器中并沒(méi)有產(chǎn)生交易。
[0046]S4:將數(shù)據(jù)記錄進(jìn)行緩存,直至該數(shù)據(jù)包中所有符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄均被緩存。
[0047]將數(shù)據(jù)包中的符合預(yù)設(shè)數(shù)據(jù)格式的數(shù)據(jù)記錄進(jìn)行緩存,具體是將數(shù)據(jù)記錄寫(xiě)入自身的變量中暫存。
[0048]S41:向電子衡器發(fā)送用于清除電子衡器中該數(shù)據(jù)包的指令。
[0049]數(shù)據(jù)記錄全部緩存后,則向電子衡器發(fā)送指令,刪除電子衡器中對(duì)應(yīng)于該數(shù)據(jù)記錄的數(shù)據(jù)包,即前面步驟S2中電子衡器所返回的數(shù)據(jù)包。該步驟的作用是可以釋放電子衡器中的空間。
[0050]S5:分別與本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)進(jìn)行連接,并將被緩存的數(shù)據(jù)記錄保存至本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)中。
[0051]該步驟包括以下子步驟:
[0052]S51:同時(shí)向本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)發(fā)起連接;
[0053]S52:若均可連接,則將被緩存的數(shù)據(jù)記錄保