新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于STC12C5A60S2的教育機(jī)器人的設(shè)計(jì)

基于STC12C5A60S2的教育機(jī)器人的設(shè)計(jì)

作者: 時(shí)間:2011-09-16 來源:網(wǎng)絡(luò) 收藏
3.3 紅外光電傳感器尋跡陣列模塊

  紅外光電檢測(cè)電路工作原理是:紅外線射到路面并反射,利用紅外線在黑線和白線對(duì)光的反射系數(shù)不同的特點(diǎn)一白色反光線,黑色吸收光線,電路設(shè)計(jì)一個(gè)發(fā)射紅外光和一個(gè)紅外光敏二極管,當(dāng)檢測(cè)到黑線時(shí),檢測(cè)電路向單片機(jī)發(fā)出一個(gè)高電平信號(hào)。當(dāng)檢測(cè)到白色時(shí),檢測(cè)電路向單片機(jī)發(fā)出一個(gè)低電平信號(hào)。

  由7組紅外光電檢測(cè)電路排成一排構(gòu)成一個(gè)紅外光電傳感器陣列模塊,安置在機(jī)器人的車頭位置。在對(duì)黑線循跡的過程中,紅外光電傳感器陣列模塊可以求得機(jī)器人對(duì)黑線軌跡位移偏移量。單片機(jī)檢測(cè)到紅外光電傳感器陣列模塊的信號(hào)與機(jī)器人的位移偏移量如表1所示。

  

基于STC12C5A60S2的教育機(jī)器人的設(shè)計(jì)

  當(dāng)機(jī)器人行駛的狀態(tài)不一樣時(shí),7組傳感器輸出的值也對(duì)應(yīng)不同,從表中可以得到機(jī)器人在巡航過程中機(jī)器人所處位置與黑色軌跡的偏移量。

  3.4 車速檢測(cè)模塊

  系統(tǒng)通過車速檢測(cè)模塊來讀取當(dāng)前車速。采用的方法是在后左右輪上分別粘貼一個(gè)均勻分布有黑白條紋的編碼盤(見圖3(a)),利用圖3(b)的檢測(cè)電路來對(duì)編碼盤上的黑白條紋進(jìn)行檢測(cè)。當(dāng)車輪轉(zhuǎn)動(dòng)時(shí),紅外接收管接收到的反射光強(qiáng)弱高低變化就會(huì)產(chǎn)生與車輪轉(zhuǎn)速相對(duì)應(yīng)的脈沖信號(hào),將該脈沖信號(hào)進(jìn)行放大整形后輸入單片機(jī)的引腳P3.4和P3.5,記錄單位時(shí)間內(nèi)所得到的脈沖數(shù),就能夠表示出當(dāng)前車左右輪子的速度,同時(shí)通過累加可以計(jì)算出小車所行走的路程。

  

基于STC12C5A60S2的教育機(jī)器人的設(shè)計(jì)

  3.5 其他電路

  數(shù)碼管顯示電路主要是顯示當(dāng)前機(jī)器人的行走速度。采用LED數(shù)碼管動(dòng)態(tài)顯示,段碼用PNP三極管驅(qū)動(dòng)。系統(tǒng)顯示的距離范圍在10米之內(nèi),選用4位LED共陽數(shù)碼管,通過單片機(jī)編程實(shí)現(xiàn)動(dòng)態(tài)掃描顯示。顯示字符由單片機(jī)P0口送出,P1.6、P1.7、P3.0和P3.1分別控制每一位數(shù)碼管的動(dòng)態(tài)顯示。

  報(bào)警電路通過單片機(jī)P3.7控制蜂鳴器來完成。P3.7輸出低電平時(shí),蜂鳴器報(bào)警;P3.7輸出高電平,蜂鳴器不報(bào)警。單片機(jī)的外部中斷輸入口P3.2和P3.3與地之間分別接入輕觸按鈕作為系統(tǒng)的啟動(dòng)和停止開關(guān),作為按鍵輸入電路。

  4 系統(tǒng)軟件設(shè)計(jì)

  系統(tǒng)控制的實(shí)現(xiàn)是由軟件完成的。軟件設(shè)計(jì)基于keilC51編寫的,采用模塊化結(jié)構(gòu)設(shè)計(jì),各個(gè)功能子塊獨(dú)立。在結(jié)構(gòu)上由1個(gè)主程序文件main.c和8個(gè)子程序文件(key.c、pid.c、detect.c、seg.c、speed.c和motor.c)組成。main.c主程序文件完成一系列任務(wù)的初始化工作和處理各個(gè)任務(wù)工作的協(xié)調(diào)。key.c文件完成按鍵中斷檢測(cè)和蜂鳴器報(bào)警任務(wù);seg.c文件完成數(shù)碼管顯示;sp∞d.c文件完成電機(jī)速度檢測(cè);motor.c完成PWM的配置和電機(jī)的控制;detect.c文件完成紅外光電傳感器陣列檢測(cè);pid.c文件實(shí)現(xiàn)模糊參數(shù)自整定PID運(yùn)算處理。其中定時(shí)器TO產(chǎn)生采樣周期T秒定時(shí)中斷,每間隔T秒中斷一次,完成一次PID控制計(jì)算,同時(shí)調(diào)用模糊參數(shù)自整定PID運(yùn)算子程序?qū)y(cè)試轉(zhuǎn)速和設(shè)定轉(zhuǎn)速進(jìn)行差值計(jì)算得到輸出值,用于配置PWM的輸出,控制電機(jī)轉(zhuǎn)速。主程序和定時(shí)器TO中斷處理流程圖如圖4所示。

  

基于STC12C5A60S2的教育機(jī)器人的設(shè)計(jì)



關(guān)鍵詞: STC12C5A60S2 教育機(jī)器人

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉