周佩+錢朋安
文章編號(hào): 10055630(2014)03027904
收稿日期: 20131211
作者簡(jiǎn)介: 周佩(1987),男,碩士研究生,主要從事信號(hào)檢測(cè)與處理方面的研究。
通訊作者: 錢朋安(1966),男,副教授,博士,主要從事機(jī)器人與人機(jī)交互技術(shù)方面的研究。
摘要: 設(shè)計(jì)了一種基于STC單片機(jī)的揮手速度測(cè)量裝置。本裝置有兩個(gè)反射式紅外傳感器,當(dāng)手經(jīng)過傳感器時(shí),手的位置信息變成電壓信號(hào)觸發(fā)STC單片機(jī)的兩路外部中斷、實(shí)現(xiàn)計(jì)時(shí);再根據(jù)兩個(gè)反射式紅外傳感器之間的距離和手經(jīng)過的時(shí)間差,計(jì)算出揮手平均速度,并通過LED數(shù)碼管顯示出來。實(shí)驗(yàn)表明,該測(cè)試裝置具有簡(jiǎn)單可靠,成本低,使用方便等優(yōu)點(diǎn)。
關(guān)鍵詞: 單片機(jī); 外部中斷; 揮手速度
中圖分類號(hào): TN 206文獻(xiàn)標(biāo)志碼: Adoi: 10.3969/j.issn.10055630.2014.03.019
A system design of wave speed measure based on STC microcomputer
ZHOU Pei1, QIAN Pengan1,2
(1.School of Computer and Information, Hefei University of Technology, Hefei 230009, China;
2.Industrial Training Center, Hefei University of Technology, Hefei 230009, China)
Abstract: A device based on STC microcomputer is developed for wave speed measure. This device has two reflective infrared sensors, it gets time span by transforming hand position signal into voltage signal to triggering two external interrupts of STC microcomputer when the hand waves through two photoelectric sensors. Then the STC microcomputer can calculate wave average speed measure according to the distance between two reflective infrared sensors and the time span of waving through two reflective infrared sensors, and then display on LED digital tubes. Experiments show that the testing device has advantages of simple and reliable operation, low cost, easy to use.
Key words: microcomputer; external interrupt; wave speed
引言揮手速度是指人手揮動(dòng)通過兩個(gè)固定點(diǎn)之間的平均速度,因此在兩點(diǎn)距離已知的情況下只需測(cè)量二者之間的時(shí)間差即可。采用反射式紅外傳感器感應(yīng)人手揮動(dòng)經(jīng)過的瞬間,而單片機(jī)的信號(hào)處理功能準(zhǔn)確、可靠地完成測(cè)量。該測(cè)試裝置簡(jiǎn)單可靠、成本低、使用方便、程序代碼可移植,在傳感器原理及單片機(jī)應(yīng)用的課程教學(xué)與實(shí)踐中有著廣泛的應(yīng)用,也適合作為高校學(xué)生自主設(shè)計(jì)的創(chuàng)新實(shí)驗(yàn)項(xiàng)目。圖1系統(tǒng)框圖
Fig.1System block diagram1總體方案揮手速度測(cè)量是通過揮手動(dòng)作經(jīng)過兩個(gè)光電傳感器感應(yīng)的時(shí)間間隔Δt及兩個(gè)光電傳感器之間的距離s,由v=s/Δt獲得其平均速度,系統(tǒng)框圖如圖1所示。當(dāng)反射式紅外傳感器感應(yīng)到人手經(jīng)過時(shí),將光信號(hào)轉(zhuǎn)換成電信號(hào),由于單片機(jī)的外部中斷采用低電平或下降沿觸發(fā)方式,故將光電傳感器的電平變化通過反相器觸發(fā)單片機(jī)的外部中斷,送入單片機(jī)進(jìn)行數(shù)據(jù)處理,最后將精確計(jì)算得到的平均速度值顯示在LED數(shù)碼管上。2硬件設(shè)計(jì)
2.1反射式紅外光電傳感器反射式紅外光電傳感器ST188是一種小型光電元器件,可檢測(cè)距離為4~13 mm,其實(shí)物圖如圖2所示,由一個(gè)可以發(fā)射紅外光的固態(tài)發(fā)光二極管和一個(gè)用作接收器的固態(tài)光敏三極管組成,它可以通過檢測(cè)其接收到光強(qiáng)的變化來檢測(cè)有無物體感應(yīng)。其原理圖如圖3所示,當(dāng)沒有物體反射紅外線時(shí),CE之間截止,無電流流過,輸出端OUT直接拉到GND端,輸出低電平;當(dāng)有物體反射紅外線時(shí),CE之間導(dǎo)通,輸出端OUT連接電源Vcc,輸出高電平。光學(xué)儀器第36卷
第3期周佩,等:一種基于STC單片機(jī)的揮手速度測(cè)量系統(tǒng)設(shè)計(jì)
圖2ST188實(shí)物圖
Fig.2ST188 physical map
圖3光電傳感器ST188原理圖
Fig.3Photoelectric sensor ST188 schematic diagram
2.2單片機(jī)和外圍電路當(dāng)揮手經(jīng)過光電傳感器感應(yīng)時(shí),輸出電平為高電平,通過CD4069反相器輸出低電平直接觸發(fā)STC單片機(jī)的兩個(gè)外部中斷引腳INT0和INT1,即單片機(jī)的P3.2和P3.3兩個(gè)引腳;CD4069是由六個(gè)CMOS/MOS反相器電路組成,此器件主要用作通用反相器。單片機(jī)模塊示意圖如圖4所示,單片機(jī)的
圖4單片機(jī)模塊示意圖
Fig.4MCU module schematic diagram
P0口和P2口控制四位數(shù)碼管的引腳,P0口需接一個(gè)10 kΩ的上拉電阻,連接數(shù)據(jù)鎖存器74HC573的輸入端;P2.0~P2.3控制四位數(shù)碼管的位選信號(hào),通過兩個(gè)外部中斷觸發(fā)單片機(jī)進(jìn)行數(shù)據(jù)處理來顯示速度值。圖5軟件設(shè)計(jì)程序流程圖
Fig.5Software design flow chart3軟件設(shè)計(jì)軟件設(shè)計(jì)主要由主程序、初始化程序、中斷處理程序、數(shù)據(jù)處理程序及LED顯示等組成。如圖5所示,首先初始化各端口,計(jì)數(shù)器和中斷控制寄存器,然后進(jìn)入等待測(cè)試狀態(tài)。當(dāng)揮手經(jīng)過光電傳感器1時(shí)觸發(fā)外部中斷INT0,同時(shí)開啟計(jì)數(shù)器0,當(dāng)揮手經(jīng)過光電傳感器2時(shí),觸發(fā)外部中斷INT1,同時(shí)關(guān)閉計(jì)數(shù)器0,由此可以得到揮手經(jīng)過兩個(gè)光電傳感器的時(shí)間差Δt,然后單片機(jī)對(duì)數(shù)據(jù)進(jìn)行處理,并將得到的平均速度值送到LED進(jìn)行顯示。以下是單片機(jī)調(diào)用中斷函數(shù)的程序:
void init()
{T0_num=0;//計(jì)時(shí)次數(shù)初值為0
INT0_flag=0;//外部中斷0標(biāo)志位為0
INT1_flag=0; //外部中斷0標(biāo)志位為0
TMOD=0x02;初始化定時(shí)器T0,方式2,
TH0=0x00;//高八位初值置0
TL0=0x00; //低八位初值置0
EA=1;//打開全局中斷控制
IT0=1;//外部中斷0下降沿觸發(fā)
IT1=0;//外部中斷1下降沿觸發(fā)
EX0=1;//打開外部中斷0
EX1=1; //打開外部中斷1
}
void INT0_fun ()interrupt 0//外部中斷0調(diào)用函數(shù)
{
if (INT0_flag==0)
{init();}
if(INT0_flag== 1)
{TR0=1;}
}
void INT1_fun ()interrupt 2//外部中斷1調(diào)用函數(shù)
{
if(INT1_flag==0)
{init();}
if(INT1_flag==1)
{TR0=0;}
}
void T0_time() interrupt 1//定時(shí)器0中斷調(diào)用函數(shù)
{T0_num++;}
4實(shí)驗(yàn)結(jié)果分析揮手速度測(cè)量裝置的實(shí)物圖如圖6、圖7所示,由于反射式紅外光電傳感器ST188的響應(yīng)時(shí)間為5 μs,發(fā)射二極管與接收三極管之間的距離為5 mm,故可以得出本系統(tǒng)的測(cè)量的速度應(yīng)小于1 km/s。利用該實(shí)驗(yàn)裝置對(duì)自由落體的鐵片進(jìn)行平均速度測(cè)量,不同距離下的3組測(cè)量結(jié)果如表1所示。首先固定光電兩個(gè)傳感器的距離L,使它們處在同一條垂直線上。然后選取一片面積為10 cm2的鐵片,使其從光電傳感器1處開始做自由落體運(yùn)動(dòng),當(dāng)它經(jīng)過光電傳感器2時(shí),LED數(shù)碼管顯示速度值即鐵片在穿過兩個(gè)光電傳感器的平均速度,根據(jù)物體自由落體理論可以得出鐵片經(jīng)過兩點(diǎn)的平均速度的理論值V=Lg/2。
圖6裝置實(shí)物圖1
Fig.6Equipment physical map 1圖7裝置實(shí)物圖2
Fig.7Equipment physical map 2
表1不同距離下的鐵片平均速度值
Tab.1Ironaverage speed value under different distances
距離/m平均速度/(m?s-1)第1組第2組第3組平均值/
(m?s-1)理論值/
(m?s-1)相對(duì)
誤差/%0.10.7010.6980.7000.6990.7000.1430.20.9880.9900.9860.9880.9890.1010.31.2241.2161.2191.2191.2200.0810.41.4141.4011.3981.4041.400-0.2860.51.5611.5631.5621.5621.5650.192
實(shí)驗(yàn)表明該系統(tǒng)測(cè)試的平均速度值相對(duì)誤差<±1%,系統(tǒng)的測(cè)量精度和靈敏度都能夠滿足揮手速度測(cè)量要求,具有成本低,精確度高,易于操作等優(yōu)點(diǎn),對(duì)于下一步進(jìn)行上位機(jī)通信和完整閉環(huán)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)打下硬件基礎(chǔ);本裝置可以作為大學(xué)生創(chuàng)新實(shí)驗(yàn)項(xiàng)目的內(nèi)容,培養(yǎng)學(xué)生動(dòng)手能力,同時(shí)也可以用于高??破战虒W(xué)活動(dòng)實(shí)驗(yàn)器材,有利于科普知識(shí)的傳授。
參考文獻(xiàn):
[1]郭天祥.新概念51單片機(jī)C語言教程:入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009:6578.
[2]趙輝.小型化彈丸速度測(cè)試系統(tǒng)[J].光學(xué)儀器,2009,31(3):1417.
[3]高志軍,顏國(guó)正,茅旭初.一種新的瞬時(shí)測(cè)速方法[J].儀表技術(shù)與傳感器,2000,37(10):1819.
[4]趙冬娥,周漢昌.原向反射式激光光幕測(cè)速技術(shù)研究[J].中北大學(xué)學(xué)報(bào),2005,26(6):432435.
[5]姚傳明,邵鵬飛,徐勝利,等.基于STC單片機(jī)的彈丸速度測(cè)量系統(tǒng)設(shè)計(jì)[J].測(cè)控技術(shù),2012,31(1):3841.
[6]SANCHEZPENA J M,MARCOS C,FERNANDEZ M Y,et al.Costeffective optoelectronic system to measure the projectile velocity in highvelocity impact testing of aircraft and spacecraft structural elements[J].Optical Engineering,2007,46(5):051014.
{
if (INT0_flag==0)
{init();}
if(INT0_flag== 1)
{TR0=1;}
}
void INT1_fun ()interrupt 2//外部中斷1調(diào)用函數(shù)
{
if(INT1_flag==0)
{init();}
if(INT1_flag==1)
{TR0=0;}
}
void T0_time() interrupt 1//定時(shí)器0中斷調(diào)用函數(shù)
{T0_num++;}
4實(shí)驗(yàn)結(jié)果分析揮手速度測(cè)量裝置的實(shí)物圖如圖6、圖7所示,由于反射式紅外光電傳感器ST188的響應(yīng)時(shí)間為5 μs,發(fā)射二極管與接收三極管之間的距離為5 mm,故可以得出本系統(tǒng)的測(cè)量的速度應(yīng)小于1 km/s。利用該實(shí)驗(yàn)裝置對(duì)自由落體的鐵片進(jìn)行平均速度測(cè)量,不同距離下的3組測(cè)量結(jié)果如表1所示。首先固定光電兩個(gè)傳感器的距離L,使它們處在同一條垂直線上。然后選取一片面積為10 cm2的鐵片,使其從光電傳感器1處開始做自由落體運(yùn)動(dòng),當(dāng)它經(jīng)過光電傳感器2時(shí),LED數(shù)碼管顯示速度值即鐵片在穿過兩個(gè)光電傳感器的平均速度,根據(jù)物體自由落體理論可以得出鐵片經(jīng)過兩點(diǎn)的平均速度的理論值V=Lg/2。
圖6裝置實(shí)物圖1
Fig.6Equipment physical map 1圖7裝置實(shí)物圖2
Fig.7Equipment physical map 2
表1不同距離下的鐵片平均速度值
Tab.1Ironaverage speed value under different distances
距離/m平均速度/(m?s-1)第1組第2組第3組平均值/
(m?s-1)理論值/
(m?s-1)相對(duì)
誤差/%0.10.7010.6980.7000.6990.7000.1430.20.9880.9900.9860.9880.9890.1010.31.2241.2161.2191.2191.2200.0810.41.4141.4011.3981.4041.400-0.2860.51.5611.5631.5621.5621.5650.192
實(shí)驗(yàn)表明該系統(tǒng)測(cè)試的平均速度值相對(duì)誤差<±1%,系統(tǒng)的測(cè)量精度和靈敏度都能夠滿足揮手速度測(cè)量要求,具有成本低,精確度高,易于操作等優(yōu)點(diǎn),對(duì)于下一步進(jìn)行上位機(jī)通信和完整閉環(huán)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)打下硬件基礎(chǔ);本裝置可以作為大學(xué)生創(chuàng)新實(shí)驗(yàn)項(xiàng)目的內(nèi)容,培養(yǎng)學(xué)生動(dòng)手能力,同時(shí)也可以用于高??破战虒W(xué)活動(dòng)實(shí)驗(yàn)器材,有利于科普知識(shí)的傳授。
參考文獻(xiàn):
[1]郭天祥.新概念51單片機(jī)C語言教程:入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009:6578.
[2]趙輝.小型化彈丸速度測(cè)試系統(tǒng)[J].光學(xué)儀器,2009,31(3):1417.
[3]高志軍,顏國(guó)正,茅旭初.一種新的瞬時(shí)測(cè)速方法[J].儀表技術(shù)與傳感器,2000,37(10):1819.
[4]趙冬娥,周漢昌.原向反射式激光光幕測(cè)速技術(shù)研究[J].中北大學(xué)學(xué)報(bào),2005,26(6):432435.
[5]姚傳明,邵鵬飛,徐勝利,等.基于STC單片機(jī)的彈丸速度測(cè)量系統(tǒng)設(shè)計(jì)[J].測(cè)控技術(shù),2012,31(1):3841.
[6]SANCHEZPENA J M,MARCOS C,FERNANDEZ M Y,et al.Costeffective optoelectronic system to measure the projectile velocity in highvelocity impact testing of aircraft and spacecraft structural elements[J].Optical Engineering,2007,46(5):051014.
{
if (INT0_flag==0)
{init();}
if(INT0_flag== 1)
{TR0=1;}
}
void INT1_fun ()interrupt 2//外部中斷1調(diào)用函數(shù)
{
if(INT1_flag==0)
{init();}
if(INT1_flag==1)
{TR0=0;}
}
void T0_time() interrupt 1//定時(shí)器0中斷調(diào)用函數(shù)
{T0_num++;}
4實(shí)驗(yàn)結(jié)果分析揮手速度測(cè)量裝置的實(shí)物圖如圖6、圖7所示,由于反射式紅外光電傳感器ST188的響應(yīng)時(shí)間為5 μs,發(fā)射二極管與接收三極管之間的距離為5 mm,故可以得出本系統(tǒng)的測(cè)量的速度應(yīng)小于1 km/s。利用該實(shí)驗(yàn)裝置對(duì)自由落體的鐵片進(jìn)行平均速度測(cè)量,不同距離下的3組測(cè)量結(jié)果如表1所示。首先固定光電兩個(gè)傳感器的距離L,使它們處在同一條垂直線上。然后選取一片面積為10 cm2的鐵片,使其從光電傳感器1處開始做自由落體運(yùn)動(dòng),當(dāng)它經(jīng)過光電傳感器2時(shí),LED數(shù)碼管顯示速度值即鐵片在穿過兩個(gè)光電傳感器的平均速度,根據(jù)物體自由落體理論可以得出鐵片經(jīng)過兩點(diǎn)的平均速度的理論值V=Lg/2。
圖6裝置實(shí)物圖1
Fig.6Equipment physical map 1圖7裝置實(shí)物圖2
Fig.7Equipment physical map 2
表1不同距離下的鐵片平均速度值
Tab.1Ironaverage speed value under different distances
距離/m平均速度/(m?s-1)第1組第2組第3組平均值/
(m?s-1)理論值/
(m?s-1)相對(duì)
誤差/%0.10.7010.6980.7000.6990.7000.1430.20.9880.9900.9860.9880.9890.1010.31.2241.2161.2191.2191.2200.0810.41.4141.4011.3981.4041.400-0.2860.51.5611.5631.5621.5621.5650.192
實(shí)驗(yàn)表明該系統(tǒng)測(cè)試的平均速度值相對(duì)誤差<±1%,系統(tǒng)的測(cè)量精度和靈敏度都能夠滿足揮手速度測(cè)量要求,具有成本低,精確度高,易于操作等優(yōu)點(diǎn),對(duì)于下一步進(jìn)行上位機(jī)通信和完整閉環(huán)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)打下硬件基礎(chǔ);本裝置可以作為大學(xué)生創(chuàng)新實(shí)驗(yàn)項(xiàng)目的內(nèi)容,培養(yǎng)學(xué)生動(dòng)手能力,同時(shí)也可以用于高??破战虒W(xué)活動(dòng)實(shí)驗(yàn)器材,有利于科普知識(shí)的傳授。
參考文獻(xiàn):
[1]郭天祥.新概念51單片機(jī)C語言教程:入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009:6578.
[2]趙輝.小型化彈丸速度測(cè)試系統(tǒng)[J].光學(xué)儀器,2009,31(3):1417.
[3]高志軍,顏國(guó)正,茅旭初.一種新的瞬時(shí)測(cè)速方法[J].儀表技術(shù)與傳感器,2000,37(10):1819.
[4]趙冬娥,周漢昌.原向反射式激光光幕測(cè)速技術(shù)研究[J].中北大學(xué)學(xué)報(bào),2005,26(6):432435.
[5]姚傳明,邵鵬飛,徐勝利,等.基于STC單片機(jī)的彈丸速度測(cè)量系統(tǒng)設(shè)計(jì)[J].測(cè)控技術(shù),2012,31(1):3841.
[6]SANCHEZPENA J M,MARCOS C,FERNANDEZ M Y,et al.Costeffective optoelectronic system to measure the projectile velocity in highvelocity impact testing of aircraft and spacecraft structural elements[J].Optical Engineering,2007,46(5):051014.