條碼掃描器高速譯碼系統設計 條碼掃描器譯碼硬件有哪些
添加時間:2019-01-19 09:57:01
來源:
條碼掃描器高速譯碼系統設計 條碼掃描器譯碼硬件有哪些
在光學系統中,光點掃描的線速度約為60~120m/s。一般,條碼條空的最小寬度約0.25mm,最寬約2.5mm左右,因此,最小脈沖寬度約2μs,最大脈沖寬度40μs。當商品移過掃描區時,掃描到的文字,圖案和未被完整掃描的條碼形成雜散背景,再考慮到自動碼制識別,如果只用簡單的單片機系統,則譯碼速度太慢,不能滿足要求。因此,在我們的設計中,譯碼硬件系統包括預處理單元和單片機譯碼單元兩部分。
條碼掃描器高速譯碼系統設計 條碼掃描器譯碼硬件有哪些
1 預處理單元
預處理單元完成從信號序列中實時提取條碼信號并保存在數據緩沖區的功能,對條碼的譯碼由單片機完成。
輸入信號為已經整形的脈沖數字信號,脈沖寬度對應于條碼條、空及雜散線條的寬度,為模擬量。在預處理中首先用非線性計數器對該寬度進行模數轉換,分辨率為9位,當寬度超過9位時,計數值鎖定在滿度。用非線性除法器計算相鄰條、空或空、條的寬度比。考慮到條碼印刷、掃描光點及電子電路等環節會給寬度帶來誤差,寬度比不會是理論上的整數,因此,非線性除法器設計成誤差包容,且輸出經過取整和分類,僅為多個有效比值1、2、3、4、8和一個異常比值0。比值進入一系列狀態機進行狀態計算,狀態機的數量與條碼種類數及每類條碼的特征數有關。每類條碼占用獨立的一組狀態機,對EAN碼,有三個狀態機,分別檢測起始符、中間符和結束符。當以空起頭的連續四個條空其寬度比滿足7:1:1時,判斷為一個有效的起始符,起始符狀態機輸出為真;當以空起頭的連續五個條空其寬度比滿足1:1:1:1時,判斷為一個有效的中間符,中間符狀態機輸出為真;當以條起頭的連續四個條空其寬度比滿足1:1:7時,判斷為一個有效的結束符,結束符狀態機輸出為真。因此,根據狀態機的輸出真假及順序判斷一段信號是否是條碼,做出的判斷產生緩沖區的控制信號,決定是否把當前的輸入信號保存。當找出一組條碼信號后,產生聯絡信號通知單片機進行譯碼。輸出信號包括數字化的條、空的寬度和聯絡信號。由于狀態計算及狀態判斷是實時和并行的,所以可實現實時判斷條碼種類、阻止非條碼信號進入緩沖區等功能。
2 單片機譯碼單元
條碼值的翻譯用單片機完成。單片機采用美國Dallas公司的80C320,它是內核改進型的51系列單片機,有中等的運算速度。系統原理如圖3所示,整個電路以單片機為核心,包括存放程序的存儲器、預處理器接口電路、激光二極管控制電路、RS-232串行通訊接口電路、仿鍵盤輸出接口電路、電機控制電路和用以指示譯碼成功的發聲發光電路。輸入數據來自數據緩沖區,由于緩沖區的數據已基本上是條碼數據,單片機只須進行單一的碼值譯碼,對運算速度要求大大降低。軟件設計包括對信號的進一步篩選,碼值的確定,奇偶校驗;轉鏡電機與激光二極管的自動開啟和關閉,任選的RS-232串行通訊或仿鍵盤輸出方式與主機通訊,以及表明譯碼成功的聲光指示等。程序用C-51語言編寫,無糾錯的一次譯碼約需10ms,一位糾錯的一次譯碼約需40ms。最終輸出采用3取2策略,以提高正確率。
預處理單元采用可編程邏輯器件實現,具有高的集成度和可靠性。用硬件描述語言進行設計,在軟件開發環境下用測試矢量進行100%的設計功能測試,測試通過后硬件不需要再調試,因此研制效率很高。預處理響應時間應不大于最小條碼寬度所對應的時間,我們取1μs。按框圖,預處理分6個步驟,其中非線性除法器延時不大于200ns,其余每個步驟延時不大于50ns,總延時不大于500ns。
2019-01
條碼掃描器高速譯碼系統設計 條碼掃描器譯碼硬件有哪些在光學系統中,光點掃描的線速度約為60~120m/s。一般,條碼條空的最小寬度約0.25mm,最寬約2.5mm左右,因此,最小脈沖寬度約2μs,最大脈沖寬度40μs。當商品移過掃描區時,掃描到的文字,圖案和未被完整掃描的條碼形成… [了解更多]
地 址:中國(上海)自由貿易試驗區臨港新片區平港路883-885號1幢
郵政編碼:201411
電 話:13761963296
郵 箱:847098433@qq.com
投訴郵 箱:info@xtvu.com