張艷榮,曹偉青
(西南交通大學 機械工程學院,四川 成都 610031)
對于機械專業(yè)的學生來說,學習微機原理與接口技術(shù)課程的目標是將計算機技術(shù)與本專業(yè)知識相結(jié)合,應用計算機技術(shù)解決本專業(yè)領(lǐng)域中出現(xiàn)的實際問題,比如可以將計算機應用于機械制造過程的自動化、機械設(shè)備的故障診斷、機器人控制等領(lǐng)域。為了讓學生能夠深入地理解微機在機械領(lǐng)域的應用,本實驗對實驗室已有的硬件系統(tǒng)進行了二次開發(fā):使用HK8688TE微機接口實驗儀[1],通過添加較少的外圍芯片,實現(xiàn)了對德普施工件傳輸實驗臺[2]的傳輸線速度的測量。它將傳感器技術(shù)、基礎(chǔ)電子電路、計算機技術(shù)[3-5]和數(shù)據(jù)處理技巧[6]綜合在一起,能夠提高學生工程實踐能力、綜合應用能力、創(chuàng)新精神和創(chuàng)新能力[7-11]。
本實驗利用安裝在傳輸線下面的紅外對射式傳感器測量傳輸線的運行速度。測量原理如下:傳輸線由安裝在它下面的鏈條帶動而運動,如圖1所示。
圖1 紅外對射傳感器運動速度測量示意圖
紅外對射式傳感器的發(fā)射和接收窗口被固定在傳動鏈條的兩側(cè),當鏈條在電動機的拖動下運動時,鏈條的滾子會有規(guī)律地遮擋傳感器發(fā)出的紅外線,在傳感器的輸出端上就會得到連續(xù)的脈沖。
由于鏈條的滾子之間的距離(即節(jié)距d)相等,所以測得傳感器輸出的脈沖頻率(F),就可以推算出鏈條的運動速度V為
V=d·F
(1)
測量傳感器輸出脈沖頻率F的方法如下:在時間間隔T內(nèi)對傳感器輸出的脈沖信號進行計數(shù),假設(shè)計數(shù)值為N,則F為
F=N/T
(2)
把(2)代入式(1),有:
V=d·N/T
(3)
式(3)中的鏈條節(jié)距d不是整數(shù)(d=12.7 mm),為了提高測量精度,計算鏈條速度需要采用浮點數(shù)運算,這將大大增加程序的復雜度。為了降低計算復雜度,如果取時間間隔T=d=12.7 s,則鏈條速度為
V=N
(4)
根據(jù)式(4),只需要在12.7 s的開門時間內(nèi)對傳感器輸出的脈沖信號進行計數(shù),并在計數(shù)結(jié)束后顯示該計數(shù)值,如此往復不斷,即可實時測量傳輸線的速度。
1.2.1 門控信號的產(chǎn)生
使用8253的計數(shù)通道2對傳感器輸出的脈沖進行計數(shù)。根據(jù)式(4),計數(shù)通道2的門控信號需要提供12.7 s的開門時間,它由微機接口實驗儀HK8688TE提供的標準脈沖(19.19 kHz)經(jīng)過分頻實現(xiàn)。為了提供12.7 s的開門時間,計數(shù)通道的分頻系數(shù)為
19.19 kHz(12.7 s2) = 487 426
該數(shù)值超過了8 253一個計數(shù)通道的最高計數(shù)值(65 536),因此需要進行2次分頻:首先把19.19 kHz的標準脈沖送入8253的計數(shù)通道0進行第1次分頻(工作在方式3),然后把計數(shù)通道0的輸出送入計數(shù)通道1進行第2次分頻(工作在方式3),即可得到預計的開門信號。
兩次分頻的分頻系數(shù)可以是總分頻系數(shù)487 426的任意2個因子,只要每個因子不超過65 536即可。例如,如果取第1次分頻系數(shù)為2 000,則第2次分頻系數(shù)則為244。
1.2.2 計數(shù)顯示方案
每次計數(shù)完成,需要把計數(shù)值(也就是鏈條速度)顯示到8段碼數(shù)碼顯示器上。本實驗采用中斷方式實現(xiàn)該功能。具體方法如下:計數(shù)通道2門控信號的下降沿作為8259的中斷申請的觸發(fā)沿,這樣每次計數(shù)結(jié)束,CPU就立刻接到來自8259的“計數(shù)結(jié)束”中斷請求信號,從而及時地從8253中讀出計數(shù)值并顯示出來。
1.2.3 硬件設(shè)計
實驗原理框圖如圖2所示。
圖2 傳輸線測量實驗原理圖
實驗臺上紅外對射式傳感器的輸出信號為0~5 V的數(shù)字信號,但信號毛刺太多,如果直接送入8253進行計數(shù),則測量結(jié)果很不準確,所以,該信號先送入施密特觸發(fā)器74LS14進行整形,然后才送到8253計數(shù)通道2的時鐘輸入端。
19.19 kHz的標準脈沖通過8253的計數(shù)通道0和1兩次分頻后產(chǎn)生12.7 s的門控信號,它一方面送入計數(shù)通道2的門控信號輸入端,另一方面取非后送入中斷控制器8259A的0號中斷請求輸入端,取非的原因是8259需要上升沿觸發(fā)。
8279接收來自CPU的顯示數(shù)據(jù),然后通過驅(qū)動電路將數(shù)據(jù)顯示在8段碼顯示器上。
本實驗需要設(shè)計2個主要程序,主程序和中斷服務(wù)程序。主程序和中斷服務(wù)程序的流程圖分別如圖3(a)和圖3(b)所示。
圖3 傳輸線測速實驗主程序和中斷服務(wù)程序流程圖
主程序運行過程如下:主程序負責所有接口芯片的初始化工作,然后顯示實驗名稱“speed”,并進入暫停狀態(tài),等待來自8259的中斷請求;當有中斷請求時,系統(tǒng)退出暫停狀態(tài),轉(zhuǎn)去執(zhí)行中斷服務(wù)程序;在中斷服務(wù)程序中,系統(tǒng)讀出8253通道2的當前計數(shù)值并返回主程序;接下來,主程序負責顯示當前計數(shù)值,也就是傳輸線的速度,之后仍回到暫停狀態(tài)等待下一個中斷請求的到來。程序這樣一直執(zhí)行下去,實時顯示傳輸線的當前速度,直到關(guān)機。
中斷服務(wù)程序的任務(wù)如下:先保護現(xiàn)場,接著命令8253鎖存計數(shù)通道2的當前計數(shù)值,然后讀出該計數(shù)值,最后恢復現(xiàn)場,打開中斷,從中斷服務(wù)程序返回。
圖4為系統(tǒng)初始化后未開始測速的顯示:8段碼顯示器顯示speed,表示該實驗為傳輸線速度實驗。圖5為測速開始后的測速結(jié)果:傳輸線當前速度為81 mm/s。
圖4 系統(tǒng)初始化顯示
圖5 傳輸線速度顯示
本實驗是一個基本綜合實驗,在程序加載后自動不停歇地運行,直至關(guān)機。對于學有余力的學生,可以在本實驗基礎(chǔ)上進行擴展,比如加入“啟動”和“停止”按鍵,通過按鍵隨時控制系統(tǒng)的啟動和停止。如果給系統(tǒng)配備了機械手,可以在本實驗基礎(chǔ)上根據(jù)傳輸線速度和其他的傳感器控制機械手抓取傳輸線上正在傳輸?shù)墓ぜ?/p>
針對機械專業(yè)學生的特點,依托實驗室現(xiàn)有硬件系統(tǒng),實現(xiàn)了對德普施工件傳輸實驗臺的傳輸線速度的測量。本實驗系統(tǒng)將傳感器技術(shù),基礎(chǔ)電子電路和計算機技術(shù)綜合在一起,使機械專業(yè)學生對微機接口技術(shù)在機械方向上的應用有清晰和較完整的認識。本實驗系統(tǒng)有助于激發(fā)學生的潛能及學習興趣,使學生的實踐能力得到提高,學生的綜合能力在實驗完成的過程中能夠得到很好的鍛煉。
在推導速度測量公式時,本實驗對開門時間進行了巧妙選擇,從而大大減輕了軟件設(shè)計的復雜度,使學生對軟硬件結(jié)合處理數(shù)據(jù)的技巧有了初步的認識。另外,本實驗系統(tǒng)整合了實驗室的現(xiàn)有資源,大大提高了現(xiàn)有硬件資源的共享和利用率。
[1] 武漢恒科電子教學儀器有限公司.HK8688TE使用手冊[Z].武漢恒科電子教學儀器有限公司,2005.
[2] 圳市藍津信息技術(shù)有限公司.藍津信息傳感器使用說明書[Z].圳市藍津信息技術(shù)有限公司,2005.
[3] Brey B B.Intel 微處理器[M].金惠華,艾明晶,尚利宏,譯.北京:機械工業(yè)出版社,2010.
[4] 馮博琴,吳寧.微型計算機原理與接口技術(shù)[M].3版.北京: 清華大學出版社,2011.
[5] 楊青麗.《微機原理與接口技術(shù)》課程教學探討[J].實驗科學與技術(shù),2013,11(1): 92-94.
[6] 徐愛鈞.智能化測量控制儀表原理與設(shè)計[M].北京: 北京航空航天大學出版社,1995.
[7] 張仁杰,李建華,金明錄,等.“微機原理”實驗課程中計算機應用能力的培養(yǎng)[J].實驗技術(shù)與管理,2011,28(11):153-155.
[8] 邵溫,韓德強,張麗艷.微機接口實驗的教學改革探索[J].實驗技術(shù)與管理,2012,29(3):276-278.
[9] 崔文華,王寧,王宇,等.微機原理與接口技術(shù)實驗教學規(guī)劃與實踐[J].實驗室研究與探索,2011,30(9):161-164.
[10] 王志軍,楊延軍,王道憲.微機原理實驗課程內(nèi)容的層次化設(shè)計[J].實驗室研究與探索,2012,31(1):105-107.
[11] 王克義.非計算機專業(yè)“微機原理”課程的改革實踐與研究[J].計算機教育,2005(11):37-39.