條碼讀碼掃描器, 與軟體程式間: 讀碼互動通訊驗證 Host ACK

前言

一般使用下, 使用條碼讀碼掃描器(Barcode Image Scanner Reader), 去讀取刷碼了一筆條碼後, 通常: 螢幕與應用程式系統, 是在操作員肉眼可見的前方, 其條碼內文資料是可直接肉眼看見是否已被讀入, 或是經由聽見來自掃碼器所發出的條碼已讀聲音, 使知道(條碼已被讀入至系統裡),


情境

然而, 若條碼讀碼掃描器(Barcode Scanner) 所連接上的主機, 並非是個人電腦, 而是例如: 無人伺服器, 或是無螢幕的終端資料裝置, 或是 PLC, 或微電腦控制器, 或機台 Kiosk? 等等. / 又或者:  操作員是距離主機較遠的無線條碼讀碼器等,  這些情境在用戶每讀完一筆條碼後, 該如何確認條碼資料是否已被主機接收讀入? 或是已傳輸出去? 


驗證讀入

依據上述的情境, 此時主機端, 可運作一個接收資料的驗證程式或服務, 即專屬此條碼掃描器 ACK 驗證程式. 當主機端收到吻合的條碼內文後, 主機端便發送回一個驗證指令代碼回給條碼掃描器(例如: OK, NG 的音聲等等), 我們稱之為 Host ACK 功能.


方法與條件

1, 限定通訊於: RS232, USB-Serial, Bluetooth 串列埠等通訊.

2, 啟用掃描器所內建的 Host ACK 驗證指令功能, 需視各家條碼掃描器的而定(主機需參照該廠牌所提供的代碼指令), 本司所代理銷售的 HoneyWell, CINO 內建 Host ACK 驗證機制. / 若內建 ACK 機制不符用戶需求, 亦可在 HoneyWell, CINO, Cognex 這些讀碼器上, 均支援可撰寫額外的腳本(data script)程式來應對也是可以的.


以 HoneyWell Host ACK 為簡介

本文以 HoneyWell Barcode Scanner 為簡介( 其它廠牌: 大同小異), 當我們在 HoneyWell 掃描器裡啟動了 Host ACK = ON後, 每當 scanner 讀取一筆條碼後, 其預設下 barcode scanner 自身的 (GoodRead 音聲, 將會取消), 此時 barcode scanner 正處於等待主機傳回 ack 指令狀態中 ...


例如: 主機端運作的是條碼比對話, 如吻合資料話(便傳送一個 Good Read 音聲指令傳回給讀碼器),  若收到的是不吻合的資料(便傳回錯誤音聲), 或是其它音頻, LED光,等, 或是令 scanner 產生震動等(視型號)

主機需在 scanner 所預設的時間內, 將 ACK 驗證指令傳回, 否則一旦逾時, scanner 便會自我發出錯誤聲, 告知操作員(本次讀碼的驗證是不成功的), 此時必需重新讀碼重來. 此逾時時間值可由用戶自行配置(於掃描器的設定裡).


Host ACK 優缺點

優點: 操作員可知道, 資料是否已被讀入至主機系統

缺點: 主機端需運作一個 ACK 回應服務程式


HoneyWell Host ACK 互動指令截圖
















解釋範例
[ESC]a, 指的是三個代碼(組合為一次傳送指令碼)
[ESC] = 以16進制碼表示為 0x1b
a = 字元, 或以16進制碼表示為 0x61
, = 逗點符號, 以16進制碼表示為 0x2c

應用範圍

可應用於例如: 資料吻合比對, 或傳輸驗證, 或是主機給條碼掃描器下指令設定它等等

更多細節

請參閱下載 HoneyWell 各款型號手冊(user guide)裡的 Host acknowledgment 章節, 手冊裡均有完整解釋與說明.


這個網誌中的熱門文章

條碼掃描器與主機(一對多,多對一)的應用方法

一次觸發按住不放, 不重覆之連續讀取, 連續傳送條碼,

透過 USB 條碼掃描器, 讀入至 Excel, Google 試算表(含時間戳記)