国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于無(wú)線傳輸?shù)臈l形碼檢錯(cuò)系統(tǒng)設(shè)計(jì)

2014-07-18 11:53:16李敏周先飛錢峰
關(guān)鍵詞:飛思下位條形碼

李敏,周先飛,錢峰

(蕪湖職業(yè)技術(shù)學(xué)院信息工程學(xué)院,安徽蕪湖241006)

基于無(wú)線傳輸?shù)臈l形碼檢錯(cuò)系統(tǒng)設(shè)計(jì)

李敏,周先飛,錢峰

(蕪湖職業(yè)技術(shù)學(xué)院信息工程學(xué)院,安徽蕪湖241006)

為了檢測(cè)產(chǎn)品條形碼是否正確,采用PC和條形碼讀碼器檢測(cè)、比對(duì)條形碼數(shù)據(jù),在PC端采用VB軟件開(kāi)發(fā)友好的人機(jī)界面顯示條形碼值以及設(shè)置相應(yīng)參數(shù),并進(jìn)行數(shù)據(jù)的記錄保存。同時(shí)將處理結(jié)果通過(guò)串口發(fā)送至飛思卡爾單片機(jī),單片機(jī)再將信號(hào)通過(guò)SPI總線傳輸至nRF24L01無(wú)線模塊發(fā)送端,接收端的nRF24L01無(wú)線模塊將信號(hào)通過(guò)SPI總線傳至單片機(jī),根據(jù)條形碼正確與否控制步進(jìn)電機(jī)運(yùn)行,并帶動(dòng)碼盤輸出條形碼。該系統(tǒng)操作簡(jiǎn)單,可用于教學(xué)實(shí)訓(xùn)場(chǎng)合或企業(yè)產(chǎn)品質(zhì)檢環(huán)節(jié)。

無(wú)線傳輸;條形碼;檢錯(cuò)系統(tǒng)

0 引言

目前,在企業(yè)產(chǎn)品出廠前,均要在產(chǎn)品上貼上一維或二維條形碼,而且多數(shù)是人工操作。由于條形碼數(shù)字位數(shù)較長(zhǎng),如果工人對(duì)每個(gè)條形碼進(jìn)行人工檢驗(yàn),則是耗工耗時(shí)[1],而且隨著工人的視覺(jué)疲勞,很容易出現(xiàn)錯(cuò)貼和漏貼條形碼,將導(dǎo)致不能正確反映產(chǎn)品信息,對(duì)于企業(yè)產(chǎn)品追溯和質(zhì)量管理影響極大。為了快速且準(zhǔn)確地貼上條形碼,筆者設(shè)計(jì)了條形碼檢錯(cuò)系統(tǒng),將不在指定范圍的或錯(cuò)誤條形碼挑出,保證出廠產(chǎn)品的條形碼準(zhǔn)確無(wú)誤,提高工作效率。

1 條形碼檢錯(cuò)系統(tǒng)總體架構(gòu)

系統(tǒng)由上、下位機(jī)構(gòu)成,上位機(jī)用VB軟件開(kāi)發(fā)界面和讀取條碼值程序,其功能是PC通過(guò)串口連接到條形碼讀碼機(jī)上,將每次讀碼器掃描值顯示在計(jì)算機(jī)窗體的列表框中,并與事先設(shè)定的條形碼數(shù)據(jù)進(jìn)行一一比對(duì),防止由于誤操作引起的條形碼錯(cuò)誤。下位機(jī)平臺(tái)主要由飛思卡爾單片機(jī)、步進(jìn)電機(jī)驅(qū)動(dòng)模塊、無(wú)線傳輸模塊和語(yǔ)音模塊組成。上位機(jī)通過(guò)USB轉(zhuǎn)串口與飛思卡爾單片機(jī)連接并通過(guò)SPI總線與無(wú)線模塊通信,將數(shù)據(jù)傳至下位機(jī)控制步進(jìn)電機(jī)運(yùn)行,當(dāng)數(shù)據(jù)無(wú)效時(shí),處理錯(cuò)誤條形碼后,通過(guò)復(fù)位鍵重新啟動(dòng)系統(tǒng)。具體系統(tǒng)框圖見(jiàn)圖1。

圖1 條形碼檢錯(cuò)系統(tǒng)總體框圖Fig.1Overall diagram of barcode error detection system

1.1 條形碼檢錯(cuò)系統(tǒng)步進(jìn)電機(jī)控制模塊

該系統(tǒng)采用飛思卡爾16位單片機(jī)MC9S12G128作為核心處理器,選用2相6線式型號(hào)為57BYGH001步進(jìn)電機(jī),根據(jù)被檢驗(yàn)的條形碼寬度,步距角設(shè)置為8細(xì)分,考慮到步進(jìn)電機(jī)功率以及設(shè)計(jì)余量,系統(tǒng)采用TB6560作為步進(jìn)電機(jī)驅(qū)動(dòng)模塊。為防止信號(hào)干擾和負(fù)載故障導(dǎo)致單片機(jī)損壞[2],在驅(qū)動(dòng)模塊與單片機(jī)之間添加3只10 Mbit/s光耦HCPL-2611,光耦輸入接飛思卡爾單片機(jī)的輸入輸出端口PP0、PB2、PB3,光耦輸出分別控制驅(qū)動(dòng)模塊TB6560的時(shí)鐘端、方向控制端和使能控制端。根據(jù)選定步進(jìn)電機(jī)參數(shù)要求,驅(qū)動(dòng)模塊的工作電壓選定5V。

1.2 條形碼檢錯(cuò)系統(tǒng)無(wú)線傳輸模塊

為減少系統(tǒng)連接線,采用目前使用較廣泛的nRF24L01為核心芯片的無(wú)線傳輸模塊,此模塊具有RX自動(dòng)應(yīng)答和TX自動(dòng)重發(fā)功能。PC機(jī)與飛思卡爾單片機(jī)通過(guò)串口連接將數(shù)據(jù)通過(guò)SPI傳輸至nRF24L01的接收端,單片機(jī)的PS7接無(wú)線模塊的SPI片選使能端,PS6接SPI總線時(shí)鐘信號(hào),PS5和PS4分別接SPI總線的輸入和輸出,PT0接無(wú)線模塊的中斷輸出口,PA0接無(wú)線模塊的接收和發(fā)送模式選擇端,硬件連接見(jiàn)圖2。

圖2 條形碼檢錯(cuò)系統(tǒng)硬件接線圖Fig.2Hardware wiring diagram of barcode error detection system

1.3 條形碼檢錯(cuò)系統(tǒng)語(yǔ)音輸出模塊

為了提醒操作人員對(duì)錯(cuò)誤條形碼識(shí)別和處理,該系統(tǒng)接入了ISD4004語(yǔ)音錄放模塊芯片。飛思卡爾單片機(jī)PJ7接ISD4004的SPI使能信號(hào)端,PJ6作為SPI時(shí)鐘信號(hào),PJ5和PJ4分別作為SPI總線的輸入輸出信號(hào),PT1作為檢測(cè)EOM或OVF信號(hào),PT2作為行地址時(shí)鐘信號(hào),ISD4004工作電壓為3V。當(dāng)出現(xiàn)條形碼錯(cuò)誤或不在指定范圍時(shí)則報(bào)錯(cuò),具體對(duì)ISD4004的操作如下:首先對(duì)器件發(fā)上電指令,等待一段時(shí)間延遲后,向ISD4004發(fā)報(bào)警音頻的起始地址,并發(fā)送放音命令,直到出現(xiàn)EOM中斷信號(hào),結(jié)束此次操作[3]。音頻輸出端接運(yùn)放進(jìn)行信號(hào)放大并輸出至揚(yáng)聲器,實(shí)現(xiàn)報(bào)警音頻輸出,硬件連接見(jiàn)圖2。

2 條形碼檢錯(cuò)系統(tǒng)軟件設(shè)計(jì)

2.1 條形碼檢錯(cuò)系統(tǒng)下位機(jī)設(shè)計(jì)

系統(tǒng)上電初始化完成后,等待有效信號(hào),此信號(hào)分為當(dāng)前條形碼有效和復(fù)位按鍵輸入。上位機(jī)判斷出當(dāng)前條形碼有效時(shí),根據(jù)固定幀格式發(fā)送指令給下位機(jī),幀格式如表1所示。幀開(kāi)始發(fā)送4個(gè)字節(jié)Preamble byte便于下位機(jī)準(zhǔn)備接收,0x55作為幀頭,表示有效數(shù)據(jù),當(dāng)Funciton_1為0x01時(shí)代表?xiàng)l形碼有效,0x00代表?xiàng)l形碼錯(cuò)誤,F(xiàn)unciton_2和Function_3為保留字節(jié),用于功能擴(kuò)展,CheckSum字節(jié)用于從Header到Function_3共4個(gè)字節(jié)的8位CRC校驗(yàn)。

表1 發(fā)送至下位機(jī)的幀格式Tab.1Date frame format senting to the lower machine

當(dāng)下位機(jī)接收到有效條形碼信號(hào)時(shí),MCU發(fā)出指令控制TB6560驅(qū)動(dòng)步進(jìn)電機(jī)前進(jìn)一個(gè)步進(jìn),進(jìn)行下一個(gè)條形碼掃描;而當(dāng)條形碼無(wú)效時(shí),操作人員在處理錯(cuò)誤條形碼后,通過(guò)復(fù)位按鍵控制步進(jìn)電機(jī)前進(jìn)一個(gè)步進(jìn),再掃描下一個(gè)條形碼,程序流程圖如圖3所示。在單片機(jī)與計(jì)算機(jī)數(shù)據(jù)傳輸過(guò)程中,會(huì)發(fā)送反饋信號(hào)告知上位機(jī)數(shù)據(jù)已經(jīng)收到,如果上位機(jī)在設(shè)定時(shí)間內(nèi)未收到反饋信號(hào)則重發(fā)數(shù)據(jù)幀,直到收到數(shù)據(jù)或達(dá)到自動(dòng)重發(fā)計(jì)數(shù)為止,超時(shí)則輸出報(bào)警信號(hào)。

圖3 下位機(jī)程序流程圖Fig.3Lower machine program flowchart

2.2 條形碼檢錯(cuò)系統(tǒng)上位機(jī)設(shè)計(jì)

系統(tǒng)上位機(jī)軟件采用VB開(kāi)發(fā)。系統(tǒng)初始化PC串口并設(shè)置數(shù)據(jù)通信格式和串口號(hào),查詢條形碼掃描槍是否接到串口上,如連接設(shè)備失敗,則提示出錯(cuò)并返回。當(dāng)條形碼掃描槍已正常接上后,判斷是否有接收事件,若檢測(cè)緩沖區(qū)中數(shù)據(jù)有效,則獲取條形碼值,同時(shí)將數(shù)據(jù)解析出英文字符和數(shù)值,判斷過(guò)程分為兩部分,第一部分判斷字符串與設(shè)定值是否相同,保證是同一批次產(chǎn)品;第二部分是數(shù)值比較,保證條形碼數(shù)據(jù)在設(shè)定的區(qū)間范圍內(nèi)。如果前兩級(jí)判斷正確,則PC顯示條形碼值并加入顯示隊(duì)列;如果接收數(shù)據(jù)與設(shè)定不一致,上位機(jī)發(fā)無(wú)效信號(hào)至下位機(jī)并將本次數(shù)據(jù)記錄保存,以便產(chǎn)品管理,設(shè)計(jì)流程圖如圖4所示。

圖4 上位機(jī)條形碼檢錯(cuò)程序流程圖Fig.4Program flowchart of upper machine barcode error detection

3 界面設(shè)置

為驗(yàn)證軟件設(shè)計(jì)的正確性,將市場(chǎng)上的一些商品條形碼裁剪下來(lái)后,制作成條形碼序列并進(jìn)行檢錯(cuò),系統(tǒng)檢錯(cuò)界面如圖5所示。首先設(shè)置此批次產(chǎn)品的條形碼區(qū)間在最小值和最大值之間,當(dāng)按下啟動(dòng)鍵后,掃描當(dāng)前條形碼,并在掃描值顯示框中顯示正確條形碼,同時(shí)在狀態(tài)信息框中顯示條形碼正確,如果掃描的條形碼錯(cuò)誤或不在正確區(qū)間內(nèi),則掃描值顯示框?qū)⒉伙@示任何信息,同時(shí)在狀態(tài)信息框中提示條形碼出錯(cuò)。在進(jìn)行下一次掃描時(shí),界面的上一次掃描條碼框里將顯示剛剛掃過(guò)的正確條碼,通過(guò)此框即可快速查看到已經(jīng)掃描的連續(xù)條形碼值,便于比對(duì)檢錯(cuò),同時(shí)可以通過(guò)清除條形碼按鍵清除以前所檢測(cè)的條形碼序列。

圖5 條形碼檢錯(cuò)系統(tǒng)界面Fig.5Barcode error detection system interface

4 結(jié)語(yǔ)

系統(tǒng)通過(guò)條形碼掃描槍讀取數(shù)據(jù),將數(shù)據(jù)顯示在PC機(jī)上,并與設(shè)置值進(jìn)行比對(duì)判斷條形碼的有效性,根據(jù)判斷值,采用無(wú)線模塊通過(guò)SPI總線將判斷結(jié)果發(fā)至飛思卡爾單片機(jī)控制步進(jìn)電機(jī)帶動(dòng)條形碼盤,系統(tǒng)可顯示條形碼數(shù)據(jù)并記錄保存,最終以表格文件輸出打印。系統(tǒng)提高了產(chǎn)品條形碼檢錯(cuò)效率,解決了人工檢驗(yàn)條形碼的繁瑣工序,可用于相關(guān)專業(yè)教學(xué)實(shí)訓(xùn)以及企業(yè)的產(chǎn)品條形碼檢錯(cuò)。

(References)

[1]軒民威,趙鶴鳴,游善紅.C語(yǔ)言在條形碼檢錯(cuò)方面的應(yīng)用[J].電腦知識(shí)與技術(shù),2011,7(7):1575-1577.

[2]王黨利,寧生科,馬寶吉.基于TB6560的步進(jìn)電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2010(1):41-43.

[3]馮志慧,許利軍,薛鵬濤,等.一種基于單片機(jī)控制的ISD4004語(yǔ)音芯片應(yīng)用電路[J].微計(jì)算機(jī)信息,2003,19(7):55-56.

(責(zé)任編輯:曾婷)

Design of Barcode Error Detective System Based on Wireless Transmission

LI Min,ZHOU Xianfei,QIAN Feng
(Institute of Information Engineering,Wuhu Institute of Technology,Wuhu 241006,Anhui,China)

In order to test the correctness of barcode,the system uses PC and reader of barcode to detect and compare the data of barcode,and uses man-machine interface which is developed by VB software to display the barcode value and set the appropriate parameters,then records and keeps da?ta.Meanwhile the results are sent to Freescale single chip microcomputer through the serial port,then the signal is transferred to the nRF24L01 wireless module sender through SPI bus.At last,the signal is sent into the single chip microcomputer by the nRF24L01 wireless module through SPI bus,then controls the operation of stepper motor according to the correctness of barcode and output the barcode.The system is easy to operate,can be used for teaching and product quality detection.

wireless transmission;barcode;error detective system

TP274

A

1673-0143(2014)03-0063-04

2014-03-25

安徽省校企合作實(shí)踐教育基地項(xiàng)目(2012sjjd047);安徽省信息技術(shù)專業(yè)群教學(xué)團(tuán)隊(duì)項(xiàng)目(2013jxtd051)

李敏(1977—),男,講師,碩士,研究方向:檢測(cè)技術(shù)與自動(dòng)化裝置。

猜你喜歡
飛思下位條形碼
創(chuàng)意條形碼
從條形碼到二維碼
從條形碼到二維碼
發(fā)射機(jī)房監(jiān)控系統(tǒng)之下位機(jī)
條形碼大變身
飛思卡爾AC60鋰電池管理系統(tǒng)設(shè)計(jì)
景洪電廠監(jiān)控系統(tǒng)下位機(jī)數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
圍觀黨“下位”,吐槽帝“登基”
CAN總線并發(fā)通信時(shí)下位機(jī)應(yīng)用軟件設(shè)計(jì)
飛思卡爾小尺寸Kinetis KL03釋放物聯(lián)網(wǎng)應(yīng)用的創(chuàng)新動(dòng)力
凤冈县| 安西县| 沙洋县| 天津市| 林芝县| 安乡县| 交口县| 博乐市| 米泉市| 舟山市| 皋兰县| 淮安市| 上林县| 宜兰县| 阜南县| 新兴县| 林芝县| 财经| 邳州市| 诸城市| 九龙县| 温宿县| 新宾| 周至县| 浪卡子县| 宜宾县| 桐柏县| 开封市| 临朐县| 饶河县| 宝清县| 贡嘎县| 鄢陵县| 大荔县| 焦作市| 秀山| 辽源市| 镇平县| 咸丰县| 宁南县| 桂东县|