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