欧美日韩久久伊人精品亚洲|亚洲欧美日韩精品久久3|亚洲国产精品日韩在线观看|秒播欧美一区二区三区在线观看

您當(dāng)前的位置:首頁>>新聞中心>>行業(yè)動態(tài)

電子秤作弊黑盒測試中顯示信息獲取的方法與實現(xiàn)

時間:2017-05-25 05:23:55   點擊數(shù):

本文就臺式電子秤軟件作弊檢測問題介紹了一種臺式電子秤作弊黑盒檢測系統(tǒng),針對該系統(tǒng)中的重要實現(xiàn)模塊——顯示信息獲取模塊,基于硬件分析給出相應(yīng)的實現(xiàn)方法并應(yīng)用于實際檢測中。

1.電子秤作弊黑盒檢測系統(tǒng)介紹

電子秤作弊黑盒檢測系統(tǒng)設(shè)計的出發(fā)點是能夠使該系統(tǒng)取代人工重復(fù)執(zhí)行窮舉測試。

系統(tǒng)檢測部分基于 C/S 構(gòu)架,分為數(shù)據(jù)庫服務(wù)器端、測試機端和單片機采集端。服務(wù)器端運行 SQL SERVER 數(shù)據(jù)庫,作為系統(tǒng)的存儲數(shù)據(jù)庫;測試機端運行上位機程序,進行作弊檢測系統(tǒng)的控制部分;單片機采集端用來獲取電子秤屏幕顯示信息、執(zhí)行電子秤按鍵閉合、模擬電子秤傳感器輸出數(shù)據(jù)等。

上位機程序根據(jù)作弊碼規(guī)則自動生成作弊碼序列,將該序列傳入單片機,單片機控制電子開關(guān)執(zhí)行鍵盤按鈕閉合操作模擬物理按鍵按下,并給出模擬重量傳感器信號,再由電子秤顯示信息獲取模塊抓取電子秤屏幕數(shù)據(jù)進行比較來判斷電子秤是否作弊,循環(huán)執(zhí)行以下流程即可實現(xiàn)窮舉測試。

系統(tǒng)執(zhí)行流程:

1)清零、去皮操作;(2)給定模擬載荷,獲取該載荷下重量屏幕顯示值,并記做 W0;(3)輸入待測按鍵序列;(4)獲取當(dāng)前屏幕顯示值 W1,并與 W0 作比較,判斷該按鍵序列是否為作弊碼。

2.屏幕顯示信息獲取模塊

臺式電子秤的顯示一般分為重量單價、總價三個顯示屏。常見的臺式電子秤為 LED 數(shù)碼管或 LCD 液晶屏,其中 LED 數(shù)碼管驅(qū)動原理較為簡單,本文主要對 LCD 液晶屏的顯示信息獲取進行討論。

顯示信息的獲取可以通過:1,通過抓取主控芯片發(fā)送給驅(qū)動芯片的命令進行破譯;2,直接抓取 LCD 液晶屏管腳信息進行破譯實現(xiàn)。第一種方法僅需少量接線便可以抓取三個屏幕的信息,方便快捷,但需針對不同驅(qū)動芯片進行編程適配;第二種方法需要較多的接線,但是直接根據(jù) LCD 顯示原理進行獲取,無需針對不同驅(qū)動芯片做適配,通用性強。綜合實際情況,本文采用第二種獲取方法。

2.1 模塊原理

ACS-30 型臺式電子秤 LCD 液晶屏一般采用段式 LCD 顯示屏,通常有六塊顯示屏:重量單價、總價各兩塊,其中重量單價顯示屏為 5 LCD,總價顯示屏為 6 LCD,其外觀如圖 1 所示。

臺式1.jpg

段式 LCD 液晶屏管腳分為段電極(SEG)與背電極(COM),不同于 LED 數(shù)碼管驅(qū)動,LCD 液晶屏的驅(qū)動必須使用交流電壓驅(qū)動才能保持穩(wěn)定的顯示。背電極(COM)電平一直處于交流變換狀態(tài),當(dāng)某個背電極(COM)和 某個段電極(SEG)之間加了足夠的交流電壓之后,就會將對應(yīng)的段點亮。常見的臺式電子秤 LCD 驅(qū)動芯片有 HT1621、 TM7711 等。

LCD 顯示屏引腳如圖 2 所示:1~4 管腳分別為 COM1~COM4 管腳 ,5~14 管腳分別為 SEG1~SEG10 管腳。若要使某一段顯示時,需要在對應(yīng)的段電極(SEG)和背電極(COM)之間加上足夠的交流電壓,即:相應(yīng)背電極(COM)為最高電壓值同時對應(yīng)段電極(SEG)為最低電壓值;或背電極(COM)為最低電壓值同時對應(yīng)段電極(SEG)為最高電壓值。結(jié)合表 1,便可以得到各個數(shù)字點亮的規(guī)則。

臺式2.jpg

用示波器對 LCD 顯示屏背電極(COM)管腳進行分析,如圖 3 所示:COM1 口電平周期變化,共有 4 種電平(電平的個數(shù)取決于偏置設(shè)置:bias):最高,最低,次高,次低,每種電平持續(xù)時間 2ms 左右,最高電平對最低電平約 3.3vCOM1~COM4 按順序逐個掃描。

臺式3.jpg

通過上述分析可以得出 LCD 顯示屏信息獲取算法:依次掃描 4 個背電極(COM)為最低電壓時,判斷各段電極(SEG)是否為最高電平,若是,則對應(yīng)表 1 中的段點亮;若否,則該段不顯示。掃描完所有的位,再結(jié)合圖 2 與表 1 的對應(yīng)規(guī)則就可獲得顯示屏的顯示信息。

2.2 模塊實現(xiàn)

基于上述 LCD 顯示屏信息獲取算法,可設(shè)計顯示信息采集模塊:采用 ARM 單片機作為主控芯片,采集 LCD 顯示屏各管腳模擬值信息,按上述算法分析處理后得到顯示屏信息,再通過串口傳給上位機進行處理。

具體編程實施抓取時按照逐位抓取的方式進行,分別得到每一位的數(shù)字,然后再組合成重量顯示示數(shù):每一位顯示值均需2位段電極(SEG)和全部4個背電極(COM)共同確定,故每一位顯示值對應(yīng)的段電極分別為:左起第一位對應(yīng) SEG1、SEG2,第二位對應(yīng) SEG3、SEG4,第三位對應(yīng) SEG5、SEG6,第四位對應(yīng) SEG7、SEG8,第五位對應(yīng) SEG9、SEG10。設(shè)定在每個背電極為最低電壓時,讀取對應(yīng)位的 2 個段電極(SEG)的模擬值,設(shè)置閾值函數(shù),讀取段電極模擬信號值超過該閾值時返回 1,否則返回 0。讀取該位完畢后,返回的數(shù)值組成一個8位的字節(jié),和 0~9 數(shù)字的目標(biāo)字節(jié)進行匹配,便可得到該位的顯示數(shù)值,若返回字節(jié)不能和 0~9 數(shù)字的目標(biāo)字節(jié)匹配則返回 Error

整個 LCD 顯示信息獲取需要讀完所有位,其程序流程圖如圖 4 所示。

臺式4.jpg

測試時,將該模塊連接線鉤掛在 LCD 顯示屏的引腳上,并統(tǒng)一好接地,便可以方便的讀取 LCD 屏幕顯示信息。

3.系統(tǒng)運行

屏幕顯示信息獲取模塊通過串口與上位機連接,集成到系統(tǒng)中,接受上位機的抓取命令后執(zhí)行抓取程序并返回屏幕顯示值給上位機處理。該模塊直接根據(jù) LCD 液晶屏的特性進行抓取,與驅(qū)動芯片無關(guān),無需根據(jù)驅(qū)動芯片做額外適配,通過上位機做校驗后,抓取正確率滿足測試要求。