宋珂,徐駿善,劉殿金
(南京理工大學 機械工程學院,江蘇 南京 210094)
單個的硬幣存儲裝置主要由外殼、出入幣口、帶柵格的轉盤等部分組成,其中出入幣口共用1個出口,單個的硬幣存儲裝置可以被設定接受1種面額的硬幣。上位機通過RS232串口向單片機發(fā)送命令實現(xiàn)通訊,控制系統(tǒng)采用STM32F103ZE芯片作為控制核心,用來檢測6個光電傳感器信號和驅動1個二相混合式步進電機及3個電磁鐵來實現(xiàn)硬幣存儲裝置接受硬幣和找零。其中出入幣口裝有4個傳感器和2個電磁鐵,傳感器1、2用來檢測入幣口硬幣,兩者是或的關系;傳感器3用來檢測硬幣是否入柵格;傳感器4用來檢測硬幣是否出柵格;電磁鐵1用來驅動擋片1擋住硬幣;電磁鐵2驅動擋片2打開讓硬幣進入柵格。另外傳感器5用來檢測轉盤是否轉動,傳感器6用來檢測轉盤初始位置,轉動1圈時消除步進電機在轉動時的累計誤差,電磁鐵3用來驅動硬幣推板推出硬幣,步進電機用來驅動轉盤逆時針和順時針轉動。控制系統(tǒng)框圖如圖1所示。
圖1 控制系統(tǒng)框圖
硬幣存儲裝置的控制電路由STM32F103ZE的最小系統(tǒng)電路、RS232串口電路、電源轉換電路、光電傳感器檢測電路、電磁鐵驅動電路和步進電機驅動電路組成。其中STM32F103ZE最小系統(tǒng)主要由電源電路、復位電路、外部時鐘電路、JLINK下載電路及啟動模式電路組成;電源轉換電路主要使用LM2576芯片實現(xiàn)24 V轉5 V及24 V轉12 V和LM1117芯片實現(xiàn)5 V轉3.3 V;RS232串口電路則主要使用MAX3232電平轉換芯片以實現(xiàn)與上位機的數(shù)據(jù)的傳輸。
1) 光電傳感器檢測電路設計
光電傳感器檢測電路如圖2所示,主要使用比較器LM393,正向輸入端電壓固定,反向輸入端接紅外接收二極管陰極,輸出端上拉輸出,如圖2所示有兩路檢測信號Output A、Output B,分別接到STM32的IO口,由這2個口讀取輸出信號狀態(tài)。當接收二極管導通時,輸出高電平,同時發(fā)光二極管不亮;當接收二極管斷開,即有物體擋住時,輸出低電平,同時發(fā)光二極管亮。
圖2 光電傳感器檢測電路原理圖
2) 電磁鐵驅動電路設計
選擇的電磁鐵額定電壓為24 V,驅動電路如圖3所示,J5、J6網(wǎng)絡和電磁鐵兩端相連,整流二極管D3對電路起保護作用,STM32輸出IO口通過光耦、開關三極管來控制電磁鐵的導通和斷開。當單片機輸出口為低電平時,光耦的接收端導通,三極管導通,電磁鐵有電流通過動作;當輸出口為高電平時,光耦接收端斷開,三極管斷開,電磁鐵沒有電流通過也沒有動作。
圖3 電磁鐵驅動電路原理圖
3) 二相混合式步進電機驅動電路設計
L6208是ST公司推出的步進電機驅動芯片,工作電壓范圍廣(8~52 V),平均輸出電流可達2.8 A,峰值達5.6 A,可驅動絕大部分二相步進電機[5]。選用的步進電機驅動電壓是12 V,驅動電路如圖4所示。
(4)與水域面積最相關的因素是人口密度(X2)、固定資產(chǎn)總投資(X11)。人口密度每增加1人/km2,水域面積就增加3.817×104hm2。說明隨著城市化的發(fā)展,人們的生活水平提高,對環(huán)境質量的需求提高。
圖4 步進電機驅動電路原理圖
其中OUT1A、OUT2A、OUT1B、OUT2B與兩相步進電機相連,驅動芯片L6008D由CLOCK、CW/CCW、HALF/FULL、CONTROL、ENABLE、RESET信號控制,而這些端口的電平高低分別由主控芯片的各個IO口通過光耦控制。CLOCK信號通過定時器產(chǎn)生的PWM波并控制其頻率和個數(shù),從而控制電機轉動的速度和角度大小;CW/CCW控制電機轉動方向,高電平為順時針方向,低電平為逆時針方向;HALF/FULL控制電機半步和全步模式,高電平為半步,低電平為全步;CONTROL控制電機衰減模式,高電平為慢速衰減模式,低電平為快速衰減模式;ENABLE控制使能信號,高電平使能;RESET控制復位信號,低電平復位。
系統(tǒng)程序采用STM32的固件庫函數(shù)在MDK環(huán)境采用C語言編寫、模塊化設計,主要使用到STM32調(diào)用庫函數(shù)設置GPIO口高低電平,系統(tǒng)SYSTICK時鐘精確延時,定時器PWM波配置產(chǎn)生一定頻率的PWM波控制步進電機轉速及定時器中斷計數(shù)控制PWM波的個數(shù)來控制步進電機轉動的角度以及向STM32移植多任務實時操作系統(tǒng)UCOS-II來調(diào)度多任務的運行等技術來實現(xiàn)對各個器件間的協(xié)調(diào)配合的控制。
1) 硬幣接收流程
上位機向下位機發(fā)送硬幣接收命令后,硬幣通過投幣口通道,再經(jīng)過硬幣識別器識別為真幣后選擇一個硬幣存儲裝置開始接收硬幣。單個硬幣存儲裝置接收硬幣的流程如圖5所示,其中傳感器1、2檢測入幣口是否有硬幣,傳感器3檢測硬幣是否入柵格。
圖5 硬幣接收流程
2) 硬幣找零流程
上位機向下位機發(fā)送找零命令后,選擇一個硬幣存儲裝置開始找零。單個硬幣存儲裝置的找零流程如圖6所示,傳感器3檢測硬幣是否被推動,傳感器4檢測硬幣是否出柵格。
圖6 硬幣找零流程
3) 通訊協(xié)議
本控制系統(tǒng)上位機和STM32的通訊距離在2 m以內(nèi),使用RS232串口電路實現(xiàn)數(shù)據(jù)傳輸,通訊方式采用異步串行通訊、全雙工模式,波特率為9 600 bps,每個字節(jié)傳輸過程中有1位起始位、8位數(shù)據(jù)位、無校驗、1位停止位。控制系統(tǒng)中設計的通訊幀有2種類型,1種控制幀,1種數(shù)據(jù)幀??刂茙挥脕碓谕ㄐ旁O備之間交換信息,比如,建立初始連接,控制傳輸流,進行請求糾錯等;數(shù)據(jù)幀用來傳輸信息,一幀中有報文數(shù)據(jù)自身的部分或全部信息,也可以包含應用到該信息上的控制信息[6]。設計的控制幀只包含報頭,無報文,有ACK(接收幀后的正確響應)、NAK(接收幀后的錯誤響應)、XOFF(拒絕接收幀)、XON(允許接收幀) 、ENQ(請求建立通信幀)5種類型,都為單幀;數(shù)據(jù)幀則既有報頭也有報文,有單幀也有多幀。
本文控制系統(tǒng)的設計和程序的編寫已在實際運行中,根據(jù)上位機發(fā)送的命令很好地控制住了一個硬幣存儲裝置的硬幣的接收和找零,整個控制流程順利,能夠達到收幣2枚/s,找零4枚/s的性能指標。由于STM32F10ZE的硬件資源很豐富、實時性強,擁有112個GPIO口,8個定時器,能產(chǎn)生30路PWM波,順利控制1個硬幣存儲裝置后,能拓展控制多達6個硬幣存儲裝置的組合使用,從而也可以實現(xiàn)多種硬幣接收和找零的控制。
參考文獻:
[1] 江宇浩,徐駿善. 自動售票機紙幣處理模塊的設計與實現(xiàn)[J]. 計算機應用,2014,34(S2):230-233,257.
[2] 謝程祥. 城市軌道交通自動售票機硬幣處理模式探討[J]. 機電工程技術,2014,43(9): 131-134.
[3] 黃斐,陳棟. 軌道交通AFC系統(tǒng)硬幣處理模塊的研究[J]. 鐵路計算機應用,2012,21(7):40-43.
[4] 吳愛明,易力. 一種多幣種硬幣處理模塊的設計與實現(xiàn)[J]. 機電工程技術,2015,44(8):23-25.
[5] 李文廣,湯清華,吳國安. 基于AVR單片機和L6208的步進電機控制系統(tǒng)設計[J]. 電機與控制應用,2011,38(1):43-45,51.
[6] Behrouz A. Forouzan. 數(shù)據(jù)通信與網(wǎng)絡[M]. 吳時霖, 周正康, 吳永輝,等,譯. 第2版,北京:機械工業(yè)出版社,2002:257-260.