技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于光學(xué)傳感器的智能玩具小車設(shè)計

基于光學(xué)傳感器的智能玩具小車設(shè)計

時間:2007-12-05 17:08:00來源:dujing

導(dǎo)語:?智能小車系統(tǒng)原理是,將三維坐標(biāo)傳感器安裝在小車上,小車即具有智能感知功能,就會隨著目標(biāo)物的前后左右移動而跟著移動
智能機器人在當(dāng)今社會的應(yīng)用越來越廣泛。從普通的玩具機器人到工業(yè)控制機器人,從能夠炒菜的機器人到可以進行太空探測的機器人,可以預(yù)見今后智能機器人的應(yīng)用將更加廣泛。普通的無線遙控車大家都很熟悉,任天堂的電玩WII大家也都覺得很神奇。熟悉的不好玩,神奇的又玩不起,可能是很多人遇到的共同問題。本設(shè)計從全新的思維角度出發(fā),制作一個日常生活可以玩的智能小車,以饗有共同愛好的讀者。 系統(tǒng)總體設(shè)計 智能小車系統(tǒng)原理是,將三維坐標(biāo)傳感器安裝在小車上,小車即具有智能感知功能,就會隨著目標(biāo)物的前后左右移動而跟著移動。系統(tǒng)主要有3個組件:一為三維坐標(biāo)光感傳感器(ETOMS-ET21X111),用于采集目標(biāo)物的移動坐標(biāo),該傳感器使用非常簡單;二為MCU(EMC-EM78P156),讀取傳感器數(shù)據(jù)控制馬達轉(zhuǎn)動,EM78P156是市面上常見的MCU,使用簡單,價格便宜;三是馬達,馬達選用普通直流馬達即可,采用PWM控制。系統(tǒng)整體框架如圖1所示。
圖1 系統(tǒng)整體框架
該設(shè)計的整體功能簡單概括起來就是:讓小車能夠跟著人(或是目標(biāo)物)走。分開來講需要實現(xiàn)以下3個小功能:傳感器能夠正確讀取X、Y、Z的坐標(biāo)值,這是首要條件。MCU能夠正確判斷X、Z坐標(biāo)值的大小變化,這是關(guān)鍵??赡苡腥藭幸蓡?,為什么不判斷Y坐標(biāo)變化呢?那是因為小車不能上下跳躍(上下方為Y軸)。MCU根據(jù)坐標(biāo)值的大小變化控制馬達轉(zhuǎn)向及馬達PWM的時間,這是結(jié)果。 硬件系統(tǒng)設(shè)計 1 傳感器周邊電路設(shè)計 ETOMS-ET21X111是一款高性能具有X、Y、Z坐標(biāo)資料輸出功能的光感傳感器。具有如下特點:高速資料輸出,每秒鐘輸出坐標(biāo)資料高達75frame;低電壓工作,電壓范圍2.7~3.5V;采用標(biāo)準(zhǔn)RS232串行資料輸出格式輸出坐標(biāo)值;使用外部晶振,范圍0.5~12MHz,通常采用3.58MHz;具有可控制曝光接口EO4~EO7。 EO4~EO7這四個接口是用于曝光控制的,既可以用軟件進行控制,也可以用硬件的方式進行控制。根據(jù)自己的需要選擇合適的即可。本設(shè)計采用硬件的方式將這四個接口全部置為高電平。 傳感器周邊詳細的接口電路如圖2所示,從圖2中可知EO4~EO7為高,這是曝光設(shè)置為硬件拉高,也可以在軟件中設(shè)置。IC正常工作時,坐標(biāo)數(shù)據(jù)由RS232端口輸出。注意圖2中的4個LED為紅外LED。IC工作電壓是3.3V,系統(tǒng)采用5V供電。IC采用3.58MHz外接晶振,上電自動復(fù)位后即可正常工作。
圖2 傳感器接口電路
2 MCU接口電路設(shè)計 MCU周邊控制電路詳細設(shè)計如圖3所示。圖3中L、L+控制左邊路馬達PWM,R、R+控制右路馬達PWM。RS232接收傳感器坐標(biāo)數(shù)據(jù)輸入。IC工作于3.3V電壓,上電后自動復(fù)位。系統(tǒng)時鐘采用4MHz外接晶振。
圖3 MCU接口電路
3 左路馬達控制電路 左路馬達控制電路如圖4所示。右路馬達控制電路同左路的一樣,圖中Q3、Q4采用PNP管,L和L+不可同時為LOW,以免造成短路。
圖4 左路馬達控制電路
軟件系統(tǒng)設(shè)計 系統(tǒng)上電后,首先進行初始化,對EMC78P156的寄存器進行設(shè)置,使能中斷標(biāo)志寄存器,等待中斷。圖5是主程序流程圖。
[IMG=主程序流程圖]/uploadpic/THESIS/2007/12/20071205171229947643.jpg[/IMG]
圖5 主程序流程圖
中斷產(chǎn)生時進入中斷處理子程序,首先要關(guān)閉中斷標(biāo)志且保護好現(xiàn)場,然后讀取并解析XYZ坐標(biāo)值,分成以下幾種情況。 (1)判斷X軸變化,如果X值在大于14小于等于17時,馬達不左右轉(zhuǎn)動,然后再判斷Z軸坐標(biāo)值的變化,如果Z值也在大于14小于等于17時,馬達不前后轉(zhuǎn)動。 (2)如果X軸坐標(biāo)值大于17,判斷Z軸坐標(biāo),若Z值大于17,則反轉(zhuǎn)右馬達,之后左右馬達后轉(zhuǎn);若Z值小于14,則正轉(zhuǎn)左馬達,之后左右馬達前轉(zhuǎn);否則馬達不轉(zhuǎn)動。 (3)如果X軸坐標(biāo)值小于14,判斷Z軸坐標(biāo),若Z值大于17,則反轉(zhuǎn)左馬達,之后左右馬達后轉(zhuǎn);若Z值小于14,則正轉(zhuǎn)右馬達,之后左右馬達前轉(zhuǎn);否則馬達不轉(zhuǎn)動。 中斷處理子程序的流程如圖6所示。
圖6 中斷處理子程序流程
設(shè)計技巧 1 傳感器的設(shè)計技巧 ET21X111對紅外線的光譜響應(yīng)最好,但自然光中含有大量的紅外線,所以強烈的自然光會影響傳感器的數(shù)據(jù),導(dǎo)致輸出的坐標(biāo)與實際坐標(biāo)有較大的偏差,解決方法是加濾光片,但這也只能起到衰減作用,具體應(yīng)用視情況而定。 2 馬達控制電路設(shè)計技巧 設(shè)計控制馬達正反轉(zhuǎn)的電路時要注意:因MCU在上電的時候,I/O的狀態(tài)是不確定的,所以程序在一開始就要將Q3、Q4的兩個I/O設(shè)成HI(Q3、Q4為PNP管,如果為NPN管則I/O設(shè)成LOW),以防止在上電的時候兩個I/O都為LOW,使Q3、Q4導(dǎo)通形成短路。另外需要注意的是在同一時間Q3、Q4只能有一個是導(dǎo)通的。 3 MCU設(shè)計技巧 在電刷直流馬達啟動或轉(zhuǎn)動的時候,會產(chǎn)生很大的電源毛刺。這對MCU的工作非常不利,所以加入此LCπ型濾波電路,如圖7所示。
圖7 濾波電路
4 程序設(shè)計技巧 智能小車在運行的過程中,需要一邊讀取傳感器傳過來的坐標(biāo)數(shù)據(jù),一邊控制馬達的PWM輸出。傳感器會每12ms輸出一次坐標(biāo)資料,所以最好的方式是采用中斷來讀傳感器資料,而在沒有資料輸出的時間做PWM輸出的動作。

標(biāo)簽:

點贊

分享到:

上一篇:基于dsPIC30F4012帶CAN總線的...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.treenowplaneincome.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號