摘 要:為解決大量硬幣在進(jìn)行分揀后的計數(shù)問題,減輕人工計數(shù)的作業(yè)負(fù)擔(dān),同時彌補(bǔ)人工硬幣計數(shù)易出現(xiàn)差錯的缺陷,設(shè)計了一種基于單片機(jī)的硬幣計數(shù)控制系統(tǒng),可同時滿足1元、5角、1角三種類型的硬幣進(jìn)行計數(shù)作業(yè)。該設(shè)計采用成本較低且可實(shí)現(xiàn)穩(wěn)定計數(shù)的單片機(jī)對整體系統(tǒng)進(jìn)行控制作業(yè),分別對滿足硬幣計數(shù)控制系統(tǒng)實(shí)現(xiàn)所需的光電傳感器、完整電路模塊以及總體的電氣控制系統(tǒng)進(jìn)行設(shè)計選型,以提升硬幣計數(shù)的正確率和效率。
關(guān)鍵詞:硬幣計數(shù);電氣系統(tǒng);紅外傳感;LED顯示
中圖分類號:TP273" " 文獻(xiàn)標(biāo)志碼:A" " 文章編號:1671-0797(2023)18-0036-04
DOI:10.19514/j.cnki.cn32-1628/tm.2023.18.009
0" " 引言
現(xiàn)代社會中網(wǎng)絡(luò)移動支付雖在諸多場合取代了錢幣支付,方便了人們的日?;顒酉M(fèi),但生活中由于很多中老年人和兒童不便日常使用智能設(shè)備進(jìn)行支付,加之我國中老年人和兒童人口基數(shù)較大,因此錢幣在人們?nèi)粘I钕M(fèi)中依舊廣泛使用。硬幣作為錢幣的一種在公共交通、游戲行業(yè)、小商品交易以及銀行兌換等不同領(lǐng)域使用較為普遍[1]。硬幣在方便人們?nèi)粘OM(fèi)的同時也帶來了一些麻煩,通常是因?yàn)樵谌斯で逅愦罅看娣e硬幣的過程中人自身的精神和精力等局限性導(dǎo)致計數(shù)時難以一直維持高效作業(yè),特別是硬幣不同的面額、不同的形狀、不同的尺寸,使得分門別類變得緩慢起來,在分類完成后需要人工手動計數(shù),還要消耗更多的勞動力。本設(shè)計以特定課題為研究背景,通過單片機(jī)實(shí)現(xiàn)分揀硬幣后的計數(shù)作業(yè),彌補(bǔ)人工計數(shù)易出錯的缺陷,同時提升了計數(shù)的正確率,減少了人工勞動力成本。
1" " 總體設(shè)計
系統(tǒng)利用單片機(jī)進(jìn)行控制,對分類好的不同幣值的硬幣進(jìn)行計數(shù)及數(shù)額統(tǒng)計,根據(jù)計數(shù)作業(yè)實(shí)現(xiàn)方式對整個系統(tǒng)所需要的參數(shù)進(jìn)行設(shè)定,倘若系統(tǒng)故障或計數(shù)數(shù)量達(dá)到系統(tǒng)設(shè)置的上限閾值則系統(tǒng)停止運(yùn)轉(zhuǎn)。反之,系統(tǒng)無故障平穩(wěn)運(yùn)行作業(yè)時,在投幣量等于投幣箱閾值容量前系統(tǒng)一直穩(wěn)定計數(shù)運(yùn)行,當(dāng)數(shù)量等于閾值設(shè)定上限時,系統(tǒng)自動結(jié)束計數(shù)作業(yè)[2]。該計數(shù)作業(yè)系統(tǒng)可實(shí)現(xiàn)3種類型硬幣的計數(shù)作業(yè),分別是1元、5角和1角。
2" " 總體方案
2.1" " 硬幣計數(shù)要求
自動計數(shù)系統(tǒng)需對各種不同硬幣進(jìn)行定量,在設(shè)計定量方案時,要求如下:
(1)最低計數(shù)速度需滿足120枚/min;
(2)各種幣值分別計數(shù)并計算出每種硬幣總幣數(shù);
(3)設(shè)定的計數(shù)個數(shù)上限閾值為99 999個;
(4)計數(shù)方式:連續(xù)計數(shù)/預(yù)置計數(shù)。
2.2" " 硬幣計數(shù)方案
一般使用光電傳感器進(jìn)行計數(shù)作業(yè),以免計數(shù)作業(yè)實(shí)現(xiàn)起來較為復(fù)雜煩瑣[3]。本文所述系統(tǒng)在硬幣計數(shù)方式設(shè)計時所選用的計數(shù)方式也是光電傳感器計數(shù),該設(shè)計相對簡單、便于實(shí)現(xiàn)。系統(tǒng)通過光電傳感器對硬幣進(jìn)行計數(shù)并計算出硬幣總量,實(shí)現(xiàn)方式為發(fā)射器利用紅外檢測捕捉到硬幣通過,通過接收器把捕捉的信號傳遞給單片機(jī)系統(tǒng),系統(tǒng)在記錄信號數(shù)據(jù)后進(jìn)行信號傳輸,并通過連接的數(shù)碼管對信號進(jìn)行數(shù)值顯示,從而實(shí)現(xiàn)設(shè)計方案的硬幣計數(shù)作業(yè)。
2.3" " 電氣原理設(shè)計
本設(shè)計的計數(shù)系統(tǒng)是通過紅外光電傳感器進(jìn)行計數(shù)作業(yè),其原理如下:電平的瞬時變化會導(dǎo)致單片機(jī)系統(tǒng)的外部中斷隨之發(fā)生改變,系統(tǒng)與LED數(shù)碼管元件之間有程序連接,從而能在顯示器上顯示數(shù)值變化,實(shí)現(xiàn)系統(tǒng)對硬幣的計數(shù)作業(yè)。計數(shù)系統(tǒng)電氣總體設(shè)計原理圖如圖1所示。
3" " 系統(tǒng)硬件設(shè)計
3.1" " STC89C52單片機(jī)
完整的系統(tǒng)由微處理器、中斷系統(tǒng)、存放數(shù)據(jù)的RAM、存放程序指令的ROM、輸入/輸出及時鐘等共同組成。各部分通過系統(tǒng)地址總線互相連接,同時將系統(tǒng)輸入及輸出端口與外接設(shè)備連接,以此共同組成一套完整的微型計算機(jī)系統(tǒng)[4]。
設(shè)計系統(tǒng)時,為實(shí)現(xiàn)對分類后硬幣進(jìn)行計數(shù)的具體實(shí)際需求,采用STC89C52單片機(jī)作為硬幣計數(shù)數(shù)據(jù)處理元件。選用的STC89C52單片機(jī)設(shè)置有4個I/O端口,均為雙向端口,分別為P0、P1、P2、P3,這4個端口均配置有鎖存器裝置[5]。每個端口都有8條引腳,4個端口共設(shè)置了32條I/O引腳。
3.2" " 傳感器設(shè)計
3.2.1" " 計數(shù)原理
光電傳感器是采用光電元件作為檢測元件的傳感器,其原理是將被測量的變化轉(zhuǎn)換成光信號的變化,然后借助光電元件進(jìn)一步將光信號轉(zhuǎn)換成電信號來實(shí)現(xiàn)控制。即當(dāng)光源強(qiáng)度出現(xiàn)瞬時變化時,光電傳感器發(fā)出光信號HS1,與測光信號、光電器件接收的光信號HS2相互配合,共同實(shí)現(xiàn)硬幣的計數(shù)作業(yè)。
3.2.2" " 傳感器元件
市場中可供實(shí)現(xiàn)硬幣計數(shù)作業(yè)的傳感器類型相對較多,紅外光電傳感器響應(yīng)速度快、時間短,其反應(yīng)速度最短可以達(dá)到毫微秒級,性價比相對較高,所以本系統(tǒng)設(shè)計時采用了性價比較高的紅外光電傳感器。
3.3" " 電路模塊設(shè)計
3.3.1" " 復(fù)位電路
STC89C52單片機(jī)的復(fù)位輸入引腳RST能夠?qū)崿F(xiàn)單片機(jī)的初始化,單片機(jī)內(nèi)存中設(shè)定的0000H地址可以滿足本系統(tǒng)所要求的程序設(shè)計需求。STC89C52單片機(jī)所包含的時鐘電路運(yùn)行后,若RST引腳高電平的輸出值超10 ms,則該元件內(nèi)部系統(tǒng)自帶的微控制器便會對系統(tǒng)進(jìn)行復(fù)位。若RST一直維持高電平,則系統(tǒng)循環(huán)復(fù)位。只有高電平轉(zhuǎn)為低電平,STC89C52單片機(jī)內(nèi)部控制器才可以從地址0000H開始實(shí)施作業(yè)程序[6]。本設(shè)計對該單片機(jī)系統(tǒng)的復(fù)位電路設(shè)定如圖1 A區(qū)所示。
3.3.2" " 時鐘電路
該系統(tǒng)中STC89C52單片機(jī)的時鐘采用芯片振蕩器電路實(shí)現(xiàn),此外,也可以選擇為單片機(jī)引入外部時鐘電路[7]。在STC89C52單片機(jī)中存在一個高增益反相放大器,該放大器輸入和輸出端的引腳分別是XTAL1和XTAL2,XTAL1引腳與石英晶體振蕩器相連,XTAL2引腳與微調(diào)電容進(jìn)行連接,最終形成如圖1 B區(qū)所示的平穩(wěn)自激振蕩器。
3.3.3" " 電源電路
設(shè)計時計數(shù)系統(tǒng)對電源的要求如下:電壓穩(wěn)定,電壓紋波小,能耗低。為滿足以上需求,設(shè)計選擇LM7805CT芯片作為電路轉(zhuǎn)換芯片,該芯片可以為系統(tǒng)提供電壓為5.0 V的穩(wěn)壓直流電,以滿足硬幣分揀后計數(shù)系統(tǒng)工作時所需電壓[8]。圖1 C區(qū)所示部分為直插式TO-220封裝,其主要作用是為電路提供過流、過載保護(hù),保證電壓的穩(wěn)定輸出,該部分在加裝散熱裝置情況下輸出電流可達(dá)1 A。
為了有效降低輸出電源的紋波,解決輸入端受干擾的問題,在芯片輸入端安裝了兩個不同容量的電容,其容量分別為2.2 μF和0.01 μF。
3.3.4" " 顯示電路
顯示電路采用LED顯示器,在滿足系統(tǒng)需求的前提下最大程度降低了整體硬件成本。顯示電路使用了七段顯示譯碼器7447和用于數(shù)據(jù)顯示的線解碼器SN74LS138,七段顯示譯碼器7447的主要作用為控制數(shù)字管的選通和顯示數(shù)據(jù),將BCD編碼的數(shù)字轉(zhuǎn)換成相應(yīng)的七段LED數(shù)字形式。圖1 D區(qū)為該系統(tǒng)的顯示電路,由于硬幣計數(shù)不存在小數(shù)情況,因此設(shè)計時默認(rèn)七段LED顯示器上DP對應(yīng)的小數(shù)點(diǎn)為空白(不亮)狀態(tài)。測試輸入BCD碼為“0011”時,通過譯碼輸出ABCDEFG為“0000110”,LED顯示數(shù)值為“3”;測試輸入BCD碼為“0101”時,通過譯碼輸出ABCDEFG為“0100100”,LED顯示數(shù)值為“5”,系統(tǒng)運(yùn)行正常。七段顯示譯碼器7447中有控制引腳LT、RB1和B1,各引腳對應(yīng)的功能如下:
LT引腳為由光線控制的輸入端,七段解碼器在輸入命令“0”時,處于系統(tǒng)光線的測試狀態(tài)。若譯碼輸出ABCDEFG全為0,顯示器顯示“8”,譯碼器可正常解碼。
RB1引腳作為紋波遮沒的輸入控制端口,當(dāng)RB1輸入“0”時,7447處于紋波覆蓋狀態(tài);當(dāng)BCD編碼輸入為“0000”時,譯碼輸出ABCDEFG為“1111111”,此時七段顯示屏完全為空白(不亮)狀態(tài);當(dāng)BCD編碼輸入的值不為“0”時,譯碼器正常工作,因此RB1端口為遮沒的受控端口。
B1控制端通過遮沒輸入紋波來實(shí)現(xiàn)遮沒輸出,同時具有強(qiáng)制遮沒輸入和鏈波遮沒指示輸出的功能。作為輸入時只要加“0”信號即可使七段顯示譯碼器7447完全進(jìn)入遮沒狀態(tài)。系統(tǒng)設(shè)置的五組七段LED顯示器,顯示端通過七段顯示譯碼器7447與單片機(jī)的數(shù)據(jù)端口進(jìn)行連接,連接方式簡單,很大程度上降低了設(shè)計的系統(tǒng)復(fù)雜性。
4" " 系統(tǒng)軟件程序設(shè)計
將INT0連接外接中斷并設(shè)置物理按鈕裝置實(shí)現(xiàn)快速復(fù)位,同時用INT1脈沖中斷對系統(tǒng)輸出的脈沖信號進(jìn)行捕捉以完成計數(shù)作業(yè),采用動態(tài)變化的位解碼器SN74LS138與LED顯示器進(jìn)行搭接,完成信號傳輸及計數(shù)的累進(jìn)顯示。
本設(shè)計選用單片機(jī)中的7BH~7FH地址來分別記錄LED1~LED5的數(shù)值。單片機(jī)通過PO口將獲取的數(shù)據(jù)傳輸至顯示電路中,每次脈沖啟動中斷INT1,則R1中的數(shù)值會增加1,當(dāng)R1增加至數(shù)值9時將數(shù)值存儲于7BH中,并調(diào)用子程序?qū)?BH~7FH中記錄的數(shù)值傳輸給LED1~LED5。當(dāng)數(shù)值大于9時,系統(tǒng)會同時將R1、7BH的數(shù)值清零,7CH數(shù)值與此同時增加1。如7CH中數(shù)值不大于9,則調(diào)用顯示子程序,依次顯示7BH~7FH中的值;同理,若7CH中的數(shù)值大于9,則將7DH中的數(shù)值增加1,同時將7CH中的值清零。若7DH中的值不大于9,則調(diào)用顯示子程序,顯示7BH~7FH中的值;若7DH中的值大于9,則將7EH中的值加1,同時將7DH中的值清零。若7EH中的值不大于9,則調(diào)用顯示子程序,顯示7BH~7FH中的值;若7EH中的值大于9,則將7FH的值加1,將7EH中的值清零。若7FH中的值不大于9,則調(diào)用顯示子程序,顯示7BH~7FH中的值;若7FH中的值大于9,則表明顯示管已經(jīng)達(dá)到了能顯示的最高數(shù)值99999,程序溢出。
系統(tǒng)中脈沖中斷INT1可通過外部電壓變化轉(zhuǎn)換為中斷電平的變化,再通過系統(tǒng)的顯示電路以及程序?qū)a(chǎn)生的變化數(shù)值顯示在LED顯示器上,對落入系統(tǒng)中的硬幣進(jìn)行計數(shù)作業(yè)。圖2所示為系統(tǒng)計數(shù)程序流程圖。
5" " 結(jié)束語
本系統(tǒng)的設(shè)計以實(shí)現(xiàn)硬幣計數(shù)作業(yè)為目的,基于硬幣計數(shù)總體方案進(jìn)行了硬件布局搭建,并針對光電感應(yīng)器和電路模塊兩個方面進(jìn)行了具體設(shè)計。同時,設(shè)計計數(shù)軟件程序,通過軟硬件結(jié)合實(shí)現(xiàn)了硬幣計數(shù)系統(tǒng)的總體設(shè)計,提供了一套能夠?qū)崿F(xiàn)硬幣計數(shù)作業(yè)的運(yùn)行系統(tǒng)。
[參考文獻(xiàn)]
[1] 王高騰,郭歡歡.基于LTspice的溫度掃描分析方法[J].電子測試,2022(19):63-65.
[2] 李耀南,何虎,薛旭.一種硬幣自動清選分離計數(shù)機(jī)械設(shè)計[J].現(xiàn)代制造技術(shù)與裝備,2016(12):13-14.
[3] 于春曉,李艷英,祝根.一種硬幣鑒別系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2014(9):77-78.
[4] 何宏.微型計算機(jī)原理與接口技術(shù)[M].北京:清華大學(xué)出版社,2014.
[5] 陳曉紅,徐藝.基于PLC的硬幣分揀控制系統(tǒng)設(shè)計[J].農(nóng)機(jī)使用與維修,2018(1):5-6.
[6] 劉國權(quán),江利強(qiáng).超聲波物位檢測儀的設(shè)計及應(yīng)用[J].中華紙業(yè),2014,35(16):30-36.
[7] 于建勇.淺談時鐘電路在單片機(jī)中的作用[J].硅谷,2011(8):155.
[8] 尤鑫燁.同軸旋轉(zhuǎn)式硬幣分揀機(jī)介紹[J].工程技術(shù)研究,2018(4):116-117.
收稿日期:2023-05-25
作者簡介:謝沖沖(1994—),男,河南蘭考人,碩士,助教,研究方向:數(shù)字化設(shè)計與制造。
孔存陽(1988—),男,河南蘭考人,碩士,助教,研究方向:新能源汽車技術(shù)。