摘要:為保證棉花檢驗(yàn)公正與公開(kāi),解決棉花收購(gòu)中預(yù)檢測(cè)、票據(jù)查找及報(bào)表等方面的問(wèn)題,開(kāi)發(fā)了基于IC卡的棉花收購(gòu)系統(tǒng)。系統(tǒng)基于IC卡改進(jìn)了子棉回潮率檢測(cè)儀,并在IC卡中增加密碼檢驗(yàn)機(jī)制,使用IC卡連接棉花收購(gòu)過(guò)程中的各個(gè)環(huán)節(jié)。該系統(tǒng)在新疆新湖農(nóng)場(chǎng)投入使用,縮短了收購(gòu)周期,提高了企業(yè)的公信力,改善了棉花收購(gòu)環(huán)境。
關(guān)鍵詞:IC卡;棉花收購(gòu)系統(tǒng);密碼檢驗(yàn);回潮率
中圖分類(lèi)號(hào):S126;TP399 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):0439-8114(2016)01-0198-04
DOI:10.14088/j.cnki.issn0439-8114.2016.01.052
棉花收購(gòu)是棉花加工的基礎(chǔ)[1],其過(guò)程包括預(yù)檢測(cè)、檢驗(yàn)、過(guò)磅、結(jié)算等[2,3]多個(gè)環(huán)節(jié)。當(dāng)前中國(guó)大多數(shù)棉花收購(gòu)企業(yè)采用手工操作,導(dǎo)致棉花檢驗(yàn)信息缺乏透明度;過(guò)磅讀數(shù)、計(jì)算、結(jié)算過(guò)程復(fù)雜;票據(jù)整理、查找和統(tǒng)計(jì)困難;收購(gòu)過(guò)程受人為因素干預(yù),客觀公正性難以保證。這些問(wèn)題[4]造成收購(gòu)企業(yè)公信力低,收購(gòu)秩序混亂,嚴(yán)重影響了棉花正常的收購(gòu)環(huán)境。新疆作為中國(guó)棉花的主產(chǎn)區(qū),收購(gòu)環(huán)境的好壞一定程度上也影響到該地區(qū)的和諧。
黃燕云[1]提出了棉花過(guò)磅和檢驗(yàn)過(guò)程的自動(dòng)化實(shí)現(xiàn)方案;吳曉?xún)€[2]實(shí)現(xiàn)了過(guò)磅時(shí)重量自動(dòng)讀取和LED屏顯示功能,保證了過(guò)磅過(guò)程的公平、公正。但在如何保證預(yù)檢驗(yàn)、檢驗(yàn)階段中信息的公正性、透明性,實(shí)現(xiàn)過(guò)磅順暢、票據(jù)查找快捷,以及報(bào)表統(tǒng)計(jì)方便等方面仍存在不足。IC卡(Integrated Circuit Card,集成電路卡)以其存儲(chǔ)量大、安全保密性好、數(shù)據(jù)處理能力強(qiáng)等優(yōu)點(diǎn)在全球得到廣泛的應(yīng)用。為此,本研究將IC卡存儲(chǔ)功能應(yīng)用到棉花收購(gòu)過(guò)程中,開(kāi)發(fā)了一套基于IC卡的棉花收購(gòu)信息管理系統(tǒng)。該系統(tǒng)在新疆新湖農(nóng)場(chǎng)一、二、三分場(chǎng)軋花廠投入應(yīng)用,收到了良好的效果。
1 傳統(tǒng)人工棉花收購(gòu)流程
傳統(tǒng)棉花收購(gòu)過(guò)程包括預(yù)檢測(cè)、檢驗(yàn)、過(guò)磅、結(jié)算等環(huán)節(jié)[1,5,6],具體如下。
1)預(yù)檢測(cè)。首先利用子棉回潮率檢測(cè)儀檢測(cè)子棉回潮率,計(jì)算回潮率平均值;然后判斷平均值是否大于12%,大于則不予收購(gòu);最后將回潮率、姓名等信息記錄在紙條上與棉樣一同送往檢驗(yàn)室。
2)檢驗(yàn)。棉花檢驗(yàn)包括品質(zhì)檢驗(yàn)和重量檢驗(yàn)[6]。檢驗(yàn)過(guò)程如下:取出紙條與棉樣,將棉樣試軋后進(jìn)行皮棉檢驗(yàn)。品質(zhì)和重量檢驗(yàn)分別通過(guò)相應(yīng)檢驗(yàn)儀器進(jìn)行,其中品質(zhì)檢驗(yàn)包括顏色級(jí)、長(zhǎng)度、斷裂比強(qiáng)度、長(zhǎng)度整齊度指數(shù)等;重量檢驗(yàn)包括回潮率、含雜率、衣分率等。隨后將檢驗(yàn)信息、子棉回潮率、姓名等信息分別填入檢驗(yàn)單,送往過(guò)磅室。
3)過(guò)磅。首先銷(xiāo)售方?jīng)Q定是否同意檢驗(yàn)結(jié)果,同意則過(guò)磅,否則停止收購(gòu)。過(guò)磅包括過(guò)毛重和過(guò)皮重。過(guò)毛重:對(duì)車(chē)輛與棉花進(jìn)行稱(chēng)重,并將結(jié)果填入過(guò)磅單,然后卸載棉花。過(guò)皮重:卸載棉花后,對(duì)車(chē)輛與剩余物品進(jìn)行稱(chēng)重,將結(jié)果填入過(guò)磅單。
2 基于IC卡的棉花收購(gòu)流程設(shè)計(jì)
引入IC卡將其存儲(chǔ)功能應(yīng)用在收購(gòu)過(guò)程中,預(yù)檢測(cè)階段設(shè)計(jì)具有讀寫(xiě)IC卡功能的無(wú)線(xiàn)手持回潮率檢測(cè)儀,將回潮率值寫(xiě)入IC卡,避免人為修改;檢驗(yàn)前讀取IC卡并生成密碼,進(jìn)行密碼檢驗(yàn)保證檢驗(yàn)數(shù)據(jù)公平、公正,檢驗(yàn)后通過(guò)LED屏實(shí)時(shí)發(fā)布,檢驗(yàn)信息公開(kāi),便于監(jiān)督。
基于IC卡棉花收購(gòu)系統(tǒng)設(shè)計(jì),收購(gòu)流程包括預(yù)檢測(cè)、密碼生成、檢驗(yàn)、過(guò)磅和結(jié)算等操作環(huán)節(jié),具體如下。
1)預(yù)檢測(cè)階段。無(wú)線(xiàn)手持回潮率檢測(cè)儀首先讀取IC卡信息(姓名、車(chē)號(hào)等)并顯示,判斷IC卡信息是否正確,隨機(jī)選擇若干檢測(cè)點(diǎn)進(jìn)行子棉回潮率檢測(cè)并自動(dòng)計(jì)算平均值[5],判斷平均值是否小于12%,否則不予收購(gòu);是則將其寫(xiě)入IC卡,并將基本信息、平均值通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)發(fā)送至無(wú)線(xiàn)接收裝置,密碼室電腦將無(wú)線(xiàn)接收裝置接收到的數(shù)據(jù)發(fā)送到LED屏顯示。最后抽取棉樣與IC卡放入棉樣袋中,送往密碼室。
2)生成密碼。密碼室外,取出IC卡,將棉樣袋放入棉樣通道進(jìn)入密碼室;密碼室電腦讀取IC卡基本信息及子棉回潮率值,生成密碼號(hào)并將其與讀取信息一并發(fā)送到服務(wù)器數(shù)據(jù)庫(kù)存儲(chǔ);最后打印密碼號(hào)條形碼,并將其與棉樣袋放入棉樣通道進(jìn)入檢驗(yàn)室。
3)檢驗(yàn)。取出密碼單,并將棉樣試軋后進(jìn)行皮棉檢驗(yàn);檢驗(yàn)結(jié)束后,掃描條形碼單調(diào)出密碼號(hào)檢驗(yàn)界面,輸入檢驗(yàn)結(jié)果后,檢驗(yàn)室電腦將檢驗(yàn)數(shù)據(jù)發(fā)送到服務(wù)器數(shù)據(jù)庫(kù)保存。
4)過(guò)磅。過(guò)磅室電腦實(shí)時(shí)查詢(xún)數(shù)據(jù)庫(kù),獲取新的檢驗(yàn)信息并發(fā)送到LED屏顯示;打印檢驗(yàn)單,同意檢驗(yàn)結(jié)果后進(jìn)行棉花交接,否則停止收購(gòu);
過(guò)毛重:刷IC卡,過(guò)磅室電腦讀取IC卡信息,調(diào)出過(guò)磅界面,界面包括IC卡基本信息(姓名、車(chē)號(hào)等)和檢驗(yàn)等信息;過(guò)磅室電腦讀取稱(chēng)重儀表數(shù)據(jù)獲得電子磅數(shù)據(jù)即稱(chēng)重?cái)?shù)據(jù),并將毛重?cái)?shù)據(jù)分別發(fā)送到數(shù)據(jù)庫(kù)服務(wù)器保存和LED屏顯示;最后卸載棉花。
過(guò)皮重:棉花卸載完后,與過(guò)毛重類(lèi)似,刷IC卡,調(diào)出基本信息、檢驗(yàn)信息和毛重信息,過(guò)磅電腦自動(dòng)讀取該車(chē)皮重(空車(chē)和剩余物品)數(shù)據(jù),根據(jù)公式(1)自動(dòng)計(jì)算凈重并保存到服務(wù)器數(shù)據(jù)庫(kù),打印過(guò)磅單。
5)結(jié)算。刷IC卡或?qū)⒚艽a號(hào)輸入結(jié)算電腦,自動(dòng)調(diào)出棉花交接信息,與過(guò)磅單、檢驗(yàn)單對(duì)照是否一致,是則根據(jù)公式(2)、(3)計(jì)算公定重量和該單皮棉價(jià)格,并根據(jù)公式(3)自動(dòng)計(jì)算應(yīng)付金額并保存到數(shù)據(jù)庫(kù)服務(wù)器,最后打印結(jié)算單。
3 系統(tǒng)設(shè)計(jì)
基于IC卡的棉花收購(gòu)系統(tǒng)由硬件和軟件兩部分組成。硬件負(fù)責(zé)數(shù)據(jù)采集,主要包括子棉回潮率值、密碼號(hào)、重量(毛重和皮重)等數(shù)據(jù),并通過(guò)協(xié)議將數(shù)據(jù)發(fā)送給相應(yīng)電腦。主要硬件有無(wú)線(xiàn)手持回潮率檢測(cè)儀、掃描槍、稱(chēng)重儀表、讀卡器、無(wú)線(xiàn)接收裝置、LED顯示屏和打印機(jī)。軟件負(fù)責(zé)數(shù)據(jù)處理,解析從串口接收到的數(shù)據(jù),根據(jù)公式計(jì)算子棉凈重、皮棉公定重量、皮棉對(duì)應(yīng)價(jià)格和應(yīng)付金額。將子棉回潮率、生成的密碼號(hào)、子棉檢驗(yàn)信息、重量,金額等信息發(fā)送到數(shù)據(jù)庫(kù)存儲(chǔ),并在LED屏上實(shí)時(shí)顯示。通過(guò)軟件可對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行查詢(xún)篩選,查詢(xún)結(jié)果可打印也可導(dǎo)出到Excel。根據(jù)需求可以設(shè)計(jì)各種報(bào)表,提高了系統(tǒng)的實(shí)用性。系統(tǒng)硬件設(shè)備安裝示意圖如圖1所示。
1)系統(tǒng)管理模塊。該模塊實(shí)現(xiàn)對(duì)系統(tǒng)用戶(hù)的添加、刪除和權(quán)限分配,通過(guò)對(duì)用戶(hù)的權(quán)限設(shè)置,實(shí)現(xiàn)密碼模塊、檢驗(yàn)?zāi)K、過(guò)磅模塊、結(jié)算模塊,統(tǒng)計(jì)模塊和設(shè)計(jì)報(bào)表模塊由不同人員進(jìn)行操作,各司其職,減少作弊現(xiàn)象。
2)密碼生成模塊。當(dāng)系統(tǒng)通過(guò)讀卡器讀取IC卡數(shù)據(jù)解析時(shí)生成密碼號(hào),其由解析時(shí)間和3位隨機(jī)數(shù)構(gòu)成,如時(shí)間為2014-05-19 09:43:20,則生成密碼號(hào)可為20140519094320020。密碼號(hào)以條形碼形式打印密碼單,方便系統(tǒng)掃描、準(zhǔn)確查找。最后密碼號(hào)與解析后信息保存到數(shù)據(jù)庫(kù)服務(wù)器。
3)檢驗(yàn)?zāi)K。系統(tǒng)實(shí)時(shí)查詢(xún)數(shù)據(jù)庫(kù),新生成密碼號(hào)在界面中顯示。密碼號(hào)由掃描槍掃描條形碼快速找到并調(diào)出密碼號(hào)檢驗(yàn)界面,輸入檢驗(yàn)信息后通過(guò)局域網(wǎng)保存到數(shù)據(jù)庫(kù)服務(wù)器。密碼單不僅保證了檢驗(yàn)結(jié)果的公平、公正,而且杜絕了人為查找密碼號(hào)引起的不必要的錯(cuò)誤。其中檢驗(yàn)?zāi)K包括品質(zhì)檢驗(yàn)和重量檢驗(yàn)等所涉及的數(shù)據(jù)項(xiàng)[6]。
4)過(guò)磅模塊。過(guò)磅模塊采用多線(xiàn)程開(kāi)發(fā):①一條專(zhuān)用線(xiàn)程實(shí)時(shí)查詢(xún)數(shù)據(jù)庫(kù)中新的檢驗(yàn)信息,將檢驗(yàn)信息對(duì)應(yīng)密碼號(hào)在界面顯示;②一條線(xiàn)程將檢驗(yàn)信息、重量信息和密碼號(hào)對(duì)應(yīng)的棉花交接人基本信息通過(guò)串口發(fā)送到LED屏實(shí)時(shí)顯示;③一條線(xiàn)程實(shí)時(shí)讀取稱(chēng)重儀表傳來(lái)的重量數(shù)據(jù),數(shù)據(jù)穩(wěn)定時(shí)讀取,并保存到服務(wù)器數(shù)據(jù)庫(kù)。
5)結(jié)算模塊。該模塊根據(jù)公式(2)、(3)設(shè)計(jì)公定重量、皮棉價(jià)格和應(yīng)付金額計(jì)算方法,代替人工計(jì)算,降低勞動(dòng)量的同時(shí)提高結(jié)算準(zhǔn)確率,杜絕人為錯(cuò)誤。
6)統(tǒng)計(jì)模塊。系統(tǒng)根據(jù)企業(yè)的不同需求提供各種報(bào)表,如日?qǐng)?bào)表、周報(bào)表和月報(bào)表等常用報(bào)表,幫助企業(yè)實(shí)時(shí)掌握子棉收購(gòu)進(jìn)度及其收購(gòu)質(zhì)量,并具有打印、導(dǎo)出Excel的功能,為決策提供重要的依據(jù)。
7)設(shè)計(jì)報(bào)表模塊。為滿(mǎn)足用戶(hù)豐富的報(bào)表需求,系統(tǒng)提供了設(shè)計(jì)、添加、修改和刪除報(bào)表的功能。用戶(hù)可根據(jù)需求設(shè)計(jì)報(bào)表。采用Grid++Report報(bào)表組件開(kāi)發(fā),設(shè)計(jì)簡(jiǎn)單、靈活,并可將設(shè)計(jì)的報(bào)表模板保存到數(shù)據(jù)庫(kù)中,可隨時(shí)查詢(xún)、修改、刪除,提高了報(bào)表開(kāi)發(fā)效率。
4 系統(tǒng)實(shí)現(xiàn)
系統(tǒng)與硬件接口緊密連接,采用C/S架構(gòu)設(shè)計(jì)[7],運(yùn)用串口編程[8]采集刷IC卡、稱(chēng)重儀表數(shù)據(jù)?;?NET平臺(tái)進(jìn)行二次開(kāi)發(fā),對(duì)LED屏廠商提供的SDK進(jìn)行編程。運(yùn)用面向?qū)ο驝#語(yǔ)言[9],以Microsoft SQL Server 2008作為服務(wù)器數(shù)據(jù)庫(kù),結(jié)合Microsoft Visual Studio 2010集成開(kāi)發(fā)工具,開(kāi)發(fā)完成該系統(tǒng),實(shí)現(xiàn)了基于IC卡的收購(gòu)流程。
4.1 關(guān)鍵技術(shù)
1)硬件通信技術(shù)。由于系統(tǒng)連接多個(gè)硬件設(shè)備,因此運(yùn)用.NET Framework提供的SerialPort類(lèi),設(shè)置串口號(hào)、波特率、停止位、數(shù)據(jù)位等數(shù)據(jù),并使用線(xiàn)程以異步方式讀取并解析串口發(fā)送的數(shù)據(jù);
2)數(shù)據(jù)庫(kù)操作技術(shù)。該系統(tǒng)各個(gè)功能模塊都只與數(shù)據(jù)庫(kù)進(jìn)行通信,因此需要運(yùn)用ADO.NET類(lèi)及SQL語(yǔ)言進(jìn)行各種數(shù)據(jù)庫(kù)操作;
3)報(bào)表開(kāi)發(fā)技術(shù)。報(bào)表是系統(tǒng)的重要部分,運(yùn)用Grid++Report[10]開(kāi)發(fā)組件可以根據(jù)不同的組合條件設(shè)計(jì)添加、修改報(bào)表。
4.2 系統(tǒng)功能實(shí)現(xiàn)
系統(tǒng)主要包括系統(tǒng)管理、密碼生成、檢驗(yàn)、過(guò)磅、結(jié)算、統(tǒng)計(jì)和報(bào)表設(shè)計(jì)等功能。系統(tǒng)菜單包括系統(tǒng)管理、密碼生成、檢驗(yàn)平臺(tái)、過(guò)磅平臺(tái)、結(jié)算平臺(tái)、統(tǒng)計(jì)平臺(tái)和報(bào)表設(shè)計(jì)平臺(tái)等主菜單,“系統(tǒng)管理”主菜單下包括權(quán)限分配、密碼修改和鎖定屏幕子菜單,各菜單對(duì)應(yīng)不同的功能。
1)系統(tǒng)管理。該模塊包括權(quán)限分配、密碼修改和鎖定屏幕菜單,其中“權(quán)限分配”菜單實(shí)現(xiàn)對(duì)系統(tǒng)用戶(hù)的添加、刪除和用戶(hù)權(quán)限的分配。在收購(gòu)過(guò)程中管理員、密碼員、檢驗(yàn)員、過(guò)磅員、結(jié)算員和統(tǒng)計(jì)員要根據(jù)各自的職能權(quán)限操作相應(yīng)的菜單或模塊,管理員、檢驗(yàn)員登錄界面分別如圖2、圖3所示。由圖3可知,以檢驗(yàn)權(quán)限登錄系統(tǒng),系統(tǒng)主界面只顯示系統(tǒng)管理和檢驗(yàn)平臺(tái)兩個(gè)主菜單。
2)統(tǒng)計(jì)功能。該模塊的主要功能是顯示統(tǒng)計(jì)棉花收購(gòu)信息,這些信息來(lái)自棉花收購(gòu)過(guò)程中所存儲(chǔ)的數(shù)據(jù)庫(kù),根據(jù)選擇的報(bào)表、條件從中抽取相應(yīng)報(bào)表和相關(guān)收購(gòu)數(shù)據(jù)并以統(tǒng)計(jì)報(bào)表形式顯示,具有導(dǎo)出Excel和打印功能。過(guò)磅明細(xì)表界面如圖4所示。
3)報(bào)表設(shè)計(jì)。該模塊提供添加、設(shè)計(jì)、修改等報(bào)表的操作功能,報(bào)表包括頁(yè)眉、頁(yè)腳、報(bào)表頭、報(bào)表尾及明細(xì)網(wǎng)格等內(nèi)容。其中頁(yè)眉、頁(yè)腳、報(bào)表頭、報(bào)表尾根據(jù)需要進(jìn)行添加、修改內(nèi)容,明細(xì)網(wǎng)格(即數(shù)據(jù)顯示的內(nèi)容)則根據(jù)需要先選擇數(shù)據(jù)庫(kù)源(即收購(gòu)存儲(chǔ)的數(shù)據(jù)庫(kù)),再選擇數(shù)據(jù)字段進(jìn)行添加,最后對(duì)設(shè)計(jì)完成的報(bào)表以二進(jìn)制數(shù)據(jù)流形式儲(chǔ)存到數(shù)據(jù)庫(kù)中,修改時(shí)從數(shù)據(jù)庫(kù)中讀取并顯示,然后對(duì)其進(jìn)行設(shè)計(jì)、修改。
報(bào)表設(shè)計(jì)模塊幫助用戶(hù)簡(jiǎn)單、快速方便地設(shè)計(jì)各種報(bào)表,滿(mǎn)足了用戶(hù)對(duì)報(bào)表的各種需求,提高了系統(tǒng)對(duì)報(bào)表的擴(kuò)展性。
5 小結(jié)
本文討論了在棉花收購(gòu)中引入IC卡,連通棉花收購(gòu)的各個(gè)環(huán)節(jié),并在IC卡中使用密碼檢驗(yàn)機(jī)制保證棉樣檢驗(yàn)結(jié)果的公平公正,開(kāi)發(fā)了基于IC卡的棉花收購(gòu)管理信息系統(tǒng),并在中國(guó)棉花主產(chǎn)區(qū)新疆部分地區(qū)投入應(yīng)用。該系統(tǒng)的使用降低了勞動(dòng)強(qiáng)度,提高了棉花收購(gòu)效率、縮短了棉花收購(gòu)周期,更重要的是提升了購(gòu)銷(xiāo)雙方之間的信任關(guān)系,為營(yíng)造良好的、暢通的收購(gòu)環(huán)境提供了技術(shù)支撐。
中國(guó)棉花加工行業(yè)整體落后,信息化水平較低,該系統(tǒng)具有很大的使用價(jià)值,對(duì)中國(guó)棉花加工行業(yè)的信息化建設(shè)也將具有一定的推動(dòng)作用。
參考文獻(xiàn):
[1] 黃燕云.籽棉收購(gòu)信息管理系統(tǒng)的研究與開(kāi)發(fā)[D].濟(jì)南:山東大學(xué),2007.
[2] 吳曉?xún)€.電子衡籽棉收購(gòu)微機(jī)管理系統(tǒng)[J].電子技術(shù)應(yīng)用,1997(5):20-21.
[3] 李金偉.淺談籽棉收購(gòu)與管理[J].中國(guó)纖檢,2014(1):36-37.
[4] 闞瑞玲.淺談棉花收購(gòu)信息化[J].中國(guó)棉花加工,2008(4):40-41.
[5] 劉從九,徐守東.棉花檢驗(yàn)學(xué)[M].合肥:安徽大學(xué)出版社,2008.
[6] GB1103.1—2012,棉花鋸齒加工細(xì)絨棉[S].
[7] 汪 洋.NET應(yīng)用架構(gòu)設(shè)計(jì):原則、模式與實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2012.
[8] 龔建偉,熊光明.Visual C++/Turbo C串口通信編程實(shí)踐[M].北京:電子工業(yè)出版社,2007.
[9] NAGEL C,EVJEN B,GLYNN J. C#高級(jí)編程[M].北京:清華大學(xué)出版社,2008.
[10] 廣州銳浪軟件技術(shù)有限公司.Grid++Report報(bào)表開(kāi)發(fā)工具[EB/OL].http://www.rubylong.cn/index.htm.