無(wú)線遙控玩具小車(chē)設(shè)計(jì)與制作
《無(wú)線遙控玩具小車(chē)設(shè)計(jì)與制作》由會(huì)員分享,可在線閱讀,更多相關(guān)《無(wú)線遙控玩具小車(chē)設(shè)計(jì)與制作(39頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、“發(fā)明杯發(fā)明杯”大學(xué)生創(chuàng)新大賽作品大學(xué)生創(chuàng)新大賽作品 題 目: 無(wú)線遙控玩具小車(chē)設(shè)計(jì)與制作 目目 錄錄摘要1引言31 方案設(shè)計(jì)與論證 41.1 直流調(diào)速系統(tǒng) 4 1.2 防碰撞系統(tǒng)5 1.3 顯示系統(tǒng)52 硬件設(shè)計(jì) 5 2.1 小車(chē)系統(tǒng)框圖5 2.2 單片機(jī)最小系統(tǒng)設(shè)計(jì)62.3 電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)72.4 遙控發(fā)射接收電路設(shè)計(jì)9 2.4.1 無(wú)線發(fā)送電路 10 2.4.2 無(wú)線接收電路 11 2.5 檢測(cè)系統(tǒng)設(shè)計(jì)11 2.5.1 速度檢測(cè)設(shè)計(jì) 11 2.5.2 防跌落系統(tǒng)設(shè)計(jì) 12 2.5.3 防碰撞系統(tǒng)設(shè)計(jì) 132.6 顯示電路設(shè)計(jì)13 2.7 單片機(jī) I/O 口的分配14 2.8 電源設(shè)計(jì)1
2、4 2.9 小車(chē)車(chē)體設(shè)計(jì)143 軟件設(shè)計(jì) 15 3.1 主程序設(shè)計(jì)153.2 PWM 子程序設(shè)計(jì)17 3.3 遙控子程序 18 3.4 防跌落、碰撞子程序 20 3.5 顯示子程序 21 4 結(jié)果分析及結(jié)論 22 5 謝辭 236 參考文獻(xiàn) 23附件 1 程序清單 24附件 2 硬件電路圖 33附件 3 電路 PCB 圖 34無(wú)線遙控玩具小車(chē)設(shè)計(jì)與制作無(wú)線遙控玩具小車(chē)設(shè)計(jì)與制作 摘要摘要: : 80C51 單片機(jī)是一款八位單片機(jī),他的易用性和多功能性受到了廣大使用者的好評(píng),該課題的基本思想是設(shè)計(jì)一臺(tái)能夠遙控行走并自動(dòng)回退防止跌落的機(jī)器小車(chē)。遙控接收端以 80C51 單片機(jī)為控制核心,其中數(shù)據(jù)的
3、發(fā)射和接收部分通過(guò)無(wú)線通訊模塊完成??赏ㄟ^(guò)發(fā)射端來(lái)控制小車(chē)的直流電機(jī)實(shí)現(xiàn)無(wú)極調(diào)速, 遙控小車(chē)進(jìn)行轉(zhuǎn)向, 并能在液晶上顯示出小車(chē)的實(shí)時(shí)速度值。小車(chē)還能自動(dòng)檢測(cè)落差較大的落差,遇到樓梯等低處會(huì)自動(dòng)回避,以防止小車(chē)由高處摔落。關(guān)鍵詞關(guān)鍵詞: :80C51 單片機(jī)、PWM 調(diào)速、遙控小車(chē) 引言引言在我國(guó),單片機(jī)已不是一個(gè)陌生的名詞,它的出現(xiàn)是近代計(jì)算機(jī)技術(shù)的里程碑事件,因?yàn)閱纹瑱C(jī)的誕生標(biāo)志著計(jì)算機(jī)正式形成了通用計(jì)算機(jī)系統(tǒng)和嵌入式計(jì)算機(jī)系統(tǒng)兩大分支。在單片機(jī)誕生之前,為了滿足工控對(duì)象的嵌入式應(yīng)用要求,只能將計(jì)算機(jī)進(jìn)行機(jī)械加固、電氣加固后嵌入到對(duì)象體系中構(gòu)成自動(dòng)控制。但由于體積過(guò)大,無(wú)法嵌入到大多數(shù)對(duì)象體
4、系,如家電、玩具、儀器儀表等。單片機(jī)則應(yīng)嵌入式應(yīng)運(yùn)而生。單片機(jī)的微小體積和極低的成本,可廣泛應(yīng)用到如玩具、家電、儀器儀表、汽車(chē)電子系統(tǒng)、工業(yè)控制單元、辦工自動(dòng)化系統(tǒng)、金融電子系統(tǒng)、個(gè)人信息終端及通信產(chǎn)品中,成為現(xiàn)代化電子系統(tǒng)中最重要的智能化工具。本系統(tǒng)以 80C51 單片機(jī)為核心器件,由一塊液晶顯示小車(chē)的運(yùn)動(dòng)數(shù)據(jù),采用L298N 來(lái)驅(qū)動(dòng)控制電機(jī)的正反轉(zhuǎn),利用無(wú)線遙控裝置對(duì)小車(chē)進(jìn)行遙控,實(shí)現(xiàn)具有前進(jìn)、后退、左移和右移四種運(yùn)動(dòng)方式。利用光電一體化紅外線傳感器,檢測(cè)落差較大的地方,實(shí)現(xiàn)自己判定,并自己避免落到落差較大的地方。利用微動(dòng)開(kāi)關(guān),實(shí)現(xiàn)小車(chē)碰撞到物體后能自動(dòng)回避,從而達(dá)到遙控智能控制的目的。基
5、于單片機(jī)控制的設(shè)計(jì)思想,選用廉價(jià)的遙控編碼解碼集成電路(PT2262/PT2272)采用 LM298N 芯片驅(qū)動(dòng)直流電機(jī),通過(guò) PWM 實(shí)現(xiàn)調(diào)速,在小車(chē)的外圍安置紅外傳感器。實(shí)現(xiàn)小車(chē)的無(wú)級(jí)調(diào)速控制 ,小車(chē)調(diào)試性能穩(wěn)定。這種遙控方案能實(shí)現(xiàn)對(duì)電動(dòng)小車(chē)的運(yùn)動(dòng)狀態(tài)進(jìn)行實(shí)時(shí)控制,控制靈活、可靠,精度高,可滿足對(duì)系統(tǒng)的各項(xiàng)要求。1 1 設(shè)計(jì)方案與論證設(shè)計(jì)方案與論證根據(jù)設(shè)計(jì)的要求,確定如下方案:在現(xiàn)有玩具電動(dòng)小車(chē)的基礎(chǔ)上,加裝光電檢測(cè)器,無(wú)線模塊,實(shí)現(xiàn)對(duì)電動(dòng)小車(chē)的無(wú)線遙控,能對(duì)小車(chē)的速度、位置、運(yùn)行狀況的實(shí)時(shí)控制,并將測(cè)量數(shù)據(jù)傳送至單片機(jī)進(jìn)行處理,由單片機(jī)根據(jù)所檢測(cè)的各種數(shù)據(jù)送液晶顯示出來(lái)。1.11.1 直
6、流調(diào)速系統(tǒng)直流調(diào)速系統(tǒng)方案一:靜止可控整流器。方案二:脈寬調(diào)速系統(tǒng)。方案一:靜止可控整流器。 V.M 系統(tǒng)是當(dāng)今直流調(diào)速系統(tǒng)的主要形式。它可以是單相、三相或更多相數(shù),半波、全波、半控、全控等類型,可實(shí)現(xiàn)平滑調(diào)速。V.M 系統(tǒng)的缺點(diǎn)是晶閘管的單向?qū)щ娦?,它不允許電流反向,給系統(tǒng)的可逆運(yùn)行造成困難。它的另一個(gè)缺點(diǎn)是運(yùn)行條件要求高,維護(hù)運(yùn)行麻煩。最后,當(dāng)系統(tǒng)處于低速運(yùn)行時(shí),系統(tǒng)的功率因數(shù)很低,并產(chǎn)生較大的諧波電流危害附近的用電設(shè)備。方案二:脈寬調(diào)速系統(tǒng)。 采用晶閘管的直流斬波器基本原理與整流電路不同的是,在這里晶閘管不受相位控制,而是工作在開(kāi)關(guān)狀態(tài)。當(dāng)晶閘管被觸發(fā)導(dǎo)通時(shí),電源電壓加到電動(dòng)機(jī)上,當(dāng)晶閘
7、管關(guān)斷時(shí),直流電源與電動(dòng)機(jī)斷開(kāi),電動(dòng)機(jī)經(jīng)二極管續(xù)流,兩端電壓接近于零。脈沖寬度調(diào)制(Pulse Width Modulation) ,簡(jiǎn)稱 PWM。脈沖周期不變,只改變晶閘管的導(dǎo)通時(shí)間,即通過(guò)改變脈沖寬度來(lái)進(jìn)行直流調(diào)速。與 V.M 系統(tǒng)相比,PWM 調(diào)速系統(tǒng)有下列優(yōu)點(diǎn):(1)PWM 調(diào)速系統(tǒng)的開(kāi)關(guān)頻率較高,僅靠電樞電感的濾波作用就可以獲得脈動(dòng)很小的直流電流,電樞電流容易連續(xù),系統(tǒng)的低速運(yùn)行平穩(wěn),調(diào)速范圍較寬。由于電流波形比 V.M 系統(tǒng)好,在相同的平均電流下,電動(dòng)機(jī)的損耗和發(fā)熱都比較小。(2)同樣由于開(kāi)關(guān)頻率高,若與快速響應(yīng)的電機(jī)相配合,系統(tǒng)可以獲得很寬的頻帶,因此快速響應(yīng)性能好,動(dòng)態(tài)抗擾能力
8、強(qiáng)。根據(jù)以上綜合比較,以及本設(shè)計(jì)中受控電機(jī)的容量和直流電機(jī)調(diào)速的發(fā)展方向,本設(shè)計(jì)采用了 H 型單極型可逆 PWM 變換器進(jìn)行調(diào)速。脈寬調(diào)速系統(tǒng)的主電路采用脈寬調(diào)制式變換器,簡(jiǎn)稱 PWM 變換器。脈寬調(diào)速的驅(qū)動(dòng)能力有限。為順利實(shí)現(xiàn)電動(dòng)小汽車(chē)的前行與倒車(chē),本設(shè)計(jì)采用了可逆 PWM 變換器??赡?PWM 變換器主電路的結(jié)構(gòu)式有 H 型、T 型等類型。我們?cè)谠O(shè)計(jì)中采用了常用的雙極式 H 型變換器,它是由 4 個(gè)三極電力晶體管和 4 個(gè)續(xù)流二極管組成的橋式電路。1.21.2 防碰撞系統(tǒng)防碰撞系統(tǒng)障礙物的檢測(cè)方案(1)利用超聲波探測(cè)傳感器可以在較遠(yuǎn)的距離就可以檢測(cè)到前方的障礙物,但超聲波探測(cè)傳感器的價(jià)格昂
9、貴,電路需要調(diào)試、驗(yàn)證,用于遙控小車(chē)上會(huì)大大增加小車(chē)的成本,并不合適。(2)利用紅外一體化光電傳感器電路簡(jiǎn)單,但受外界的條件的干擾比較大,還有對(duì)于黑色的障礙物體不能辨別,因?yàn)楹谏珪?huì)吸收紅外光,造成檢測(cè)不到黑色物體,對(duì)小車(chē)的運(yùn)動(dòng)會(huì)影響。(3)利用微動(dòng)開(kāi)關(guān)傳感器利用微動(dòng)開(kāi)關(guān)傳感器檢測(cè)障礙,價(jià)格便宜,而且是硬件結(jié)構(gòu),結(jié)構(gòu)簡(jiǎn)單,實(shí)用性強(qiáng),當(dāng)碰到障礙物時(shí)微動(dòng)開(kāi)關(guān)就馬上動(dòng)作,避開(kāi)障礙物,不用外接電路,也不用電源,可以節(jié)約電能的使用。我們從經(jīng)濟(jì)實(shí)用的方面考慮,在此我們采用第三種方案。1.31.3 顯示系統(tǒng)顯示系統(tǒng)(1)采用數(shù)碼管顯示數(shù)碼管顯示具有高亮的特性,但數(shù)碼管的驅(qū)動(dòng)電流比較大,要外加驅(qū)動(dòng)電路,會(huì)增加小
10、車(chē)的成本,而且占用單片機(jī)的 I/O 口資源和單片機(jī)資源較多,并且此電路要用多位數(shù)碼管顯示,使電路變的更復(fù)雜。(2)采用液晶顯示液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來(lái)越廣泛的應(yīng)用,采用液晶能直觀的將速度顯示給用戶,2 行 16 個(gè)字的 1602 液晶模塊比較常用,而且液晶的顯示都已經(jīng)模塊化,我們直接就可以用。所以我們采用第二中方案更實(shí)用方便,用液晶顯示。2 2 硬件設(shè)計(jì)硬件設(shè)計(jì)2.12.1 小車(chē)系統(tǒng)框圖小車(chē)系統(tǒng)框圖小車(chē)主要由信號(hào)傳感器,信號(hào)處理電路,無(wú)線發(fā)送模塊,無(wú)線接收模塊,單片機(jī)小系統(tǒng),電機(jī)驅(qū)動(dòng)電路,直流電機(jī)以及液晶顯示電路等組
11、成。小車(chē)的系統(tǒng)框圖如圖 2.1 所示。 圖 2.1 小車(chē)系統(tǒng)框圖小車(chē)控制采用 AT89C51 單片機(jī),通過(guò)控制電機(jī)驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)電機(jī)的運(yùn)行。無(wú)線接收模塊接單片機(jī),利用無(wú)線發(fā)送模塊遙控器給接收模塊發(fā)送無(wú)線信號(hào),控制小車(chē)的運(yùn)動(dòng),液晶上顯示小車(chē)的實(shí)時(shí)速度。當(dāng)避障傳感器或防跌落傳感器測(cè)得信號(hào)時(shí)候,單片機(jī)能自己控制電機(jī)左轉(zhuǎn)或者右轉(zhuǎn),避免小車(chē)碰撞和跌落。2.22.2 單片機(jī)最小系統(tǒng)設(shè)計(jì)單片機(jī)最小系統(tǒng)設(shè)計(jì)80C51 是片內(nèi)有 ROM/EPROM 的單片機(jī),因此,這種芯片構(gòu)成的最小系統(tǒng)簡(jiǎn)單、可靠。80C51 單片機(jī)最小系統(tǒng)是整個(gè)小車(chē)的控制核心,負(fù)責(zé)小車(chē)的各種信號(hào)的處理計(jì)算,控制小車(chē)的運(yùn)行,就猶如小車(chē)的“大腦”
12、 。 單片機(jī)最小系統(tǒng)電路組成如圖 2.2 所示。Y 111 .05 92 MH zC 520 PC 620 P+ C 722 uR 210 KV CCS2P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78R EST9R XD10T XD11IN T012IN T113T 014T 115W R16R D17X TA L218X TA L119G ND20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29A LE /P30E A/V P31P0.732P0.633P0.534P0.435P0.336P0.23
13、7P0.138P0.039V CC40U 3A T8 9S5 1192837465R P110 K復(fù)位MCUV CCP15P16P17P33P36P10P11P12P13P14P30P31P32P34P35P37P00P01P02P03P04P05P06P07R ESTP26P27PWM 1PWM 2IN PU T 1IN PU T 2P24P25S1SW -SPS TD 5L EDR 11KC 9103C 8100uFV CC圖 2.2 單片機(jī)最小系統(tǒng)電路 單片機(jī)最小系統(tǒng)組成:(1)時(shí)鐘電路80C51 雖然有內(nèi)部振蕩電路,但要形成時(shí)鐘,必須外部附加電路。80C51 單片機(jī)的時(shí)鐘產(chǎn)生方法有兩種
14、。內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式。本設(shè)計(jì)采用內(nèi)部時(shí)鐘方式,利用芯片內(nèi)部的振蕩電路,在 XTAL1、XTAL2 引腳上外接定時(shí)元件,內(nèi)部的振蕩電路便產(chǎn)生自激振蕩。本設(shè)計(jì)采用最常用的內(nèi)部時(shí)鐘方式,即用外接晶體和電容組成的并聯(lián)諧振回路。振蕩晶體可選用 12MHZ 的。電容值無(wú)嚴(yán)格要求,但電容取值對(duì)振蕩頻率輸出的穩(wěn)定性、大小、振蕩電路起振速度有少許影響,CX1、CX2 可用 20pF 的此片電容。在設(shè)計(jì)印刷電路板時(shí),晶體和電容應(yīng)盡可能靠近單片機(jī)芯片安裝,以減少寄生電容,更好的保證振蕩器穩(wěn)定和可靠地工作。(2)復(fù)位電路復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式。最簡(jiǎn)單的上電自動(dòng)復(fù)位電路中上電自動(dòng)復(fù)位是通
15、過(guò)外部復(fù)位電路的電容充電來(lái)實(shí)現(xiàn)的。只要 Vcc 的上升時(shí)間不超過(guò) 1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。時(shí)鐘頻率用 12MHZ時(shí) C 取 22uF,R 取 10K。除了上電復(fù)位外,有時(shí)還需要按鍵手動(dòng)復(fù)位。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中電平復(fù)位是通過(guò) RST 端經(jīng)電阻與電源 Vcc 接通而實(shí)現(xiàn)的。(3)單片機(jī)下載串口MAX232 芯片是美信公司專門(mén)為電腦的 RS-232 標(biāo)準(zhǔn)串口設(shè)計(jì)的接口電路,使用+5v單電源供電。MAX232 下載串口基本可分三個(gè)部分: R 1 IN13R 2 IN8T 1 IN11T 2 IN10GND15V+2V-6VCC16R 1 O UT12R 2 O UT9T
16、 1 O UT14T 2 O UT7C 1+1C 1 -3C 2+4C 2 -5U 4232P31E 41U FE 3 IUFE 2 IUFE 1 1UFP30V CCV CC162738495J8D B9圖 2.3 單片機(jī)下載口第一部分是電荷泵電路。由 1、2、3、4、5、6 腳和 4 只電容構(gòu)成。功能是產(chǎn)生+12v 和-12v 兩個(gè)電源,提供給 RS-232 串口電平的需要。第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由 7、8、9、10、11、12、13、14 腳構(gòu)成兩個(gè)數(shù)據(jù)通道。其中 13 腳(R1IN) 、12 腳(R1OUT) 、11 腳(T1IN) 、14 腳(T1OUT)為第一數(shù)據(jù)通道。8 腳(R
17、2IN) 、9 腳(R2OUT) 、10 腳(T2IN) 、7 腳(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS 數(shù)據(jù)從 T1IN、T2IN 輸入轉(zhuǎn)換成 RS-232 數(shù)據(jù)從 T1OUT、T2OUT 送到電腦 DP9 插頭;DP9 插頭的 RS-232 數(shù)據(jù)從 R1IN、R2IN 輸入轉(zhuǎn)換成 TTL/CMOS 數(shù)據(jù)后從R1OUT、R2OUT 輸出。第三部分是供電。15 腳 GND、16 腳 VCC(+5V) 2.32.3 電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)由于單片機(jī)輸出的電壓信號(hào)不能直接驅(qū)動(dòng)電機(jī)運(yùn)行,所以單片機(jī)必須要通過(guò)電機(jī)驅(qū)動(dòng)電路來(lái)控制電機(jī)的運(yùn)行。直流電機(jī)采用 L298N 芯片來(lái)驅(qū)動(dòng)控制電機(jī)正
18、反轉(zhuǎn)和低、高速度的運(yùn)行。L298N 是SGS 公司的產(chǎn)品,內(nèi)部包含 4 通道邏輯驅(qū)動(dòng)電路。是一種二相和四相電機(jī)的專用驅(qū)動(dòng)器,即內(nèi)含二個(gè) H 橋的高電壓大電流雙全橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn) TTL 邏輯電平信號(hào),故比較適合控制該小車(chē)類型的電機(jī)。L298N 內(nèi)部結(jié)構(gòu)如圖 2.4 所示: 圖 2.4 L298N 的內(nèi)部電路電機(jī)驅(qū)動(dòng)電路的設(shè)計(jì)如圖 2.5 所示:12GND7VCC14U 1A74 AL S0 434U 1B74 AL S0 4V S4IN PU T 15IN PU T 27E NA BL E A6IN PU T 310IN PU T 412E NA BL E B11G ND8V SS9O U
19、T PU T 12O UT PU T 23O UT PU T 313O UT PU T 414SE N SE A1SE N SE B15U 2L 298D 1D IO DED 2D IO DED 3D IO DED 4D IO DED 6D IO DED 7D IO DED 8D IO DED 9D IO DEC 210 0U FC 110 3V CC12 V12 VPWM 1PWM 212 V+6VC 310 0u FC 410 3IN PU T 2IN PU T 1動(dòng)動(dòng)動(dòng)1動(dòng)動(dòng)動(dòng)2動(dòng)動(dòng)動(dòng)圖 2.5 電機(jī)驅(qū)動(dòng)電路單片機(jī)輸出的控制信號(hào) INPUT1,INPUT2 通過(guò)非門(mén)芯片 74LS04 后
20、,接 L298N 的四個(gè)端口,電路如圖 2.5 所示,通過(guò)變換 INPUT1,INPUT2 的高低電平就可以控制兩個(gè)電機(jī)的正反轉(zhuǎn),這里非門(mén)的使用不但減少了單片機(jī) I/O 口的使用,而且很容易的就能控制電機(jī)的正反轉(zhuǎn),使程序也簡(jiǎn)單很多。L298N 的芯片的供電電壓為標(biāo)準(zhǔn)的 5V,電機(jī)驅(qū)動(dòng)的供電電源為 12V。L298N 的輸出最大電壓為 46V,電流為 2.5A,驅(qū)動(dòng)直流電機(jī)已經(jīng)足夠了。因?yàn)?L298N 內(nèi)含二個(gè) H 橋,所以可以同時(shí)控制兩個(gè)直流電機(jī),改變輸入 6 腳和 11 腳的PWM 脈沖就可以分別調(diào)節(jié)輸出電壓,從而分別能控制兩個(gè)直流電機(jī)的轉(zhuǎn)速,互不影響,從而控制小車(chē)的速度,轉(zhuǎn)向。2.42.4
21、 遙控發(fā)射接收電路設(shè)計(jì)遙控發(fā)射接收電路設(shè)計(jì)通過(guò)遙控接收電路來(lái)手動(dòng)遙控小車(chē)的運(yùn)行,這就要求遙控接收電路要可靠的發(fā)送,接收,而且外界的干擾對(duì)接收電路要小。發(fā)射電路發(fā)射的無(wú)線信號(hào)頻率要與空間其它的無(wú)線信號(hào)頻率不一樣,避免無(wú)線信號(hào)相互干擾。所以我們可以采用 PT2262/PT2272這一對(duì)無(wú)線發(fā)射和接受的芯片。PT2262/2272 是臺(tái)灣普城公司生產(chǎn)的一種 CMOS 工藝制造的低功耗低價(jià)位通用編解碼電路,PT2262/2272 最多可有 12 位(A0.A11)三態(tài)地址端管腳(懸空,接高電平,接低電平),任意組合可提供 531441 地址碼,PT2262 最多可有 6 位(D0.D5)數(shù)據(jù)端管腳,設(shè)
22、定的地址碼和數(shù)據(jù)碼從 17 腳串行輸出,可用于無(wú)線遙控發(fā)射電路。編碼芯片PT2262發(fā)出的編碼信號(hào)由:地址碼、數(shù)據(jù)碼、同步碼組成一個(gè)完整的碼字,解碼芯片PT2272接收到信號(hào)后,其地址碼經(jīng)過(guò)兩次比較核對(duì)后,VT腳才輸出高電平,與此同時(shí)相應(yīng)的數(shù)據(jù)腳也輸出高電平,如果發(fā)送端一直按住按鍵,編碼芯片也會(huì)連續(xù)發(fā)射。當(dāng)發(fā)射機(jī)沒(méi)有按鍵按下時(shí),PT2262不接通電源,其17腳為低電平,所以315MHz的高頻發(fā)射電路不工作,當(dāng)有按鍵按下時(shí),PT2262得電工作,其第17腳輸出經(jīng)調(diào)制的串行數(shù)據(jù)信號(hào),當(dāng)17腳為高電平期間315MHz的高頻發(fā)射電路起振并發(fā)射等幅高頻信號(hào),當(dāng)17腳為低平期間315MHz的高頻發(fā)射電路停
23、止振蕩,所以高頻發(fā)射電路完全收控于PT2262的17腳輸出的數(shù)字信號(hào),從而對(duì)高頻電路完成幅度鍵控(ASK調(diào)制)相當(dāng)于調(diào)制度為100的調(diào)幅。PT2262 /PT2272 芯片引腳圖 圖 2.6 PT2262 引腳圖 圖2.7 PT2272引腳圖2.4.12.4.1 無(wú)線發(fā)送電路無(wú)線發(fā)送電路無(wú)線遙控發(fā)射模塊是由按鍵接收電路、遙控指令編碼器、高頻載波發(fā)生器、調(diào)制電路及發(fā)射電路等組成,如圖 2.8 所示。在圖 2.8 中,SB1SB4 為遙控指令操作鍵,PT2262 為遙控指令編碼器,晶體管VT1 和聲表面波諧振器 GD315 及外圍元件一起構(gòu)成了高頻載波發(fā)生器與調(diào)制電路,L1既是發(fā)射天線,也是振蕩電
24、路的一部分。所使用的聲表面波諧振器 GD315,具有頻率一致性非常好,工作頻率為 315MHz,且工作頻率的穩(wěn)定度極高。 圖 2.8 無(wú)線電遙控發(fā)射模塊電路無(wú)線遙控發(fā)射模塊的工作過(guò)程是:當(dāng)發(fā)射模塊沒(méi)有按鍵按下時(shí),PT2262 不接通電源,其 17 腳輸出低電平,使晶體管 VT1 截止,所以 315MHz 高頻發(fā)射電路不工作。當(dāng)SB1SB4 中有某個(gè)按鍵按下時(shí),PT2262 得電工作,其 17 腳輸出經(jīng)過(guò)編碼的串行數(shù)據(jù)(脈沖)信號(hào),且當(dāng) 17 腳為高電平期間,315MHz 高頻發(fā)射電路起振并發(fā)射出等幅高頻信號(hào)。編碼器 PT2262 第 17 腳輸出的編碼信號(hào)是由地址碼、數(shù)據(jù)碼、同步碼組成的一個(gè)完
25、整碼字。如果遙控器上的按鍵一直按下,則編碼器 PT2262 也會(huì)不停地輸出脈沖串。當(dāng) 17 腳為低電平期間,315MHz 高頻發(fā)射電路停止振蕩。由此可知,高頻發(fā)射電路完全受控于 PT2262 第 17 腳輸出的數(shù)字信號(hào),也就是說(shuō),高頻電路對(duì) PT2262 輸出的編碼信號(hào)完成幅度鍵控調(diào)制(ASK 調(diào)制) ,類似于調(diào)制度為 100的幅度調(diào)制。2.4.22.4.2 無(wú)線接收電路無(wú)線接收電路超外差式接收機(jī)具有溫度適應(yīng)性強(qiáng),接收靈敏度高,工作穩(wěn)定可靠,抗干擾能力強(qiáng),產(chǎn)品一致性好,接收機(jī)的本振輻射低,性能指標(biāo)好,容易通過(guò) FCC 或者 CE 等標(biāo)準(zhǔn)的檢測(cè),但是價(jià)格較高,在廣播電臺(tái)、電視機(jī)等要求較高的場(chǎng)所使
26、用。而超再生式接收機(jī)具有電路簡(jiǎn)單,成本低廉等優(yōu)點(diǎn),在無(wú)線電遙控系統(tǒng)中得到了廣泛應(yīng)用。本遙控系統(tǒng)接收模塊采用了超再生接收方式。無(wú)線遙控接收模塊是由選頻放大接收電路、信號(hào)放大與波形轉(zhuǎn)換電路、解碼芯片PT2272 等組成,如圖 2.9 所示: 圖 2.9 無(wú)線接收模塊電路 在圖 2.9 中,由晶體管 VT1 和 VT2 組成了選頻放大電路,用于接收遙控發(fā)射器發(fā)出的高頻信號(hào)。由運(yùn)算放大器 LM358 及外圍元件組成了信號(hào)放大與波形轉(zhuǎn)換電路,它把輸入的正弦波信號(hào)轉(zhuǎn)換為矩形脈沖后送到解碼電路 PT2272 處理。解碼電路 PT2272從輸入的字符串中分離出地址碼,并將其與從地址線輸入的地址碼進(jìn)行兩次比較核
27、對(duì)后,其 VT 腳(17 腳)才輸出高電平,與此同時(shí)和 PT2262 相對(duì)應(yīng)的數(shù)據(jù)腳也輸出高電平提供給單片機(jī) I/O 口。2.2.5 5 檢測(cè)系統(tǒng)設(shè)計(jì)檢測(cè)系統(tǒng)設(shè)計(jì)2.5.12.5.1 速度檢測(cè)設(shè)計(jì)速度檢測(cè)設(shè)計(jì) 光電傳感器靈敏度高、響應(yīng)時(shí)間快,通過(guò)光電傳感器來(lái)檢測(cè)小車(chē)的運(yùn)轉(zhuǎn)而實(shí)現(xiàn)小車(chē)速度的檢測(cè)。測(cè)速信號(hào)傳感器安裝在小車(chē)輪子邊上,采用 LM324N 集成運(yùn)放及外圍電路組成紅外檢測(cè)電路作為測(cè)速信號(hào)傳感器,實(shí)現(xiàn)對(duì)小車(chē)的速度信號(hào)的采集。速度檢測(cè)原理如圖所示,輪子轉(zhuǎn)一周,輸出四個(gè)脈沖,送單片機(jī)處理,然后由單片機(jī)計(jì)算出速度等值,送顯示器顯示出來(lái)。速度檢測(cè)電路原理如圖 2.10 所示。光碼盤(pán)紅外收發(fā)一體化信
28、號(hào) 處 理圖 2.10 速度檢測(cè)原理圖P1.01.3 80C51 2.5.22.5.2 防跌落系統(tǒng)設(shè)計(jì)防跌落系統(tǒng)設(shè)計(jì)采用紅外線光電一體化傳感器用于檢測(cè)路面的低洼處,將采集的高低電平信號(hào)經(jīng)LM324N 電壓比較器后,送出標(biāo)準(zhǔn)的高低電平送單片機(jī)處理。紅外一體化光電傳感器固定在小車(chē)底盤(pán)前沿,貼近地面。正常行駛時(shí),發(fā)射管發(fā)射紅外光照射地面,光線經(jīng)地面反射后被接收管接收,輸出高電平信號(hào),小車(chē)遇到低洼處時(shí),發(fā)射端發(fā)射的紅外光線被吸收,接收端接收不到反射的紅外光線,傳感器輸出低電平信號(hào)后送 80C51 單片機(jī)處理。本系統(tǒng)共設(shè)計(jì)兩個(gè)光電一體化傳感器,分別裝置在小車(chē)車(chē)頭的左、右兩個(gè)位置,用來(lái)檢測(cè)小車(chē)前方的狀況,
29、當(dāng)左側(cè)光電傳感器不受到紅外光照時(shí),單片機(jī)控制小車(chē)向右轉(zhuǎn);當(dāng)右側(cè)光電傳感器不受到紅外光照時(shí),單片機(jī)控小車(chē)向左轉(zhuǎn);當(dāng)左、右兩側(cè)光電傳感器都不受到紅外光照時(shí),單片機(jī)控制小車(chē)倒退。防跌落電路原理如圖 2.11 所示:?jiǎn)?片 機(jī)圖 2.11 防跌落電路原理圖電路工作原理:如果是平的地面,紅外光線會(huì)經(jīng)過(guò)地面反射回來(lái),反射到接收極,此時(shí) U3U2,經(jīng)運(yùn)放比較后,輸出高電平,送單片機(jī)處理。2.5.32.5.3 防碰撞系統(tǒng)設(shè)計(jì)防碰撞系統(tǒng)設(shè)計(jì)小車(chē)微動(dòng)開(kāi)關(guān)微動(dòng)開(kāi)關(guān)前圖 2.12 微動(dòng)開(kāi)關(guān)的安裝位置為防止小車(chē)碰撞障礙物時(shí)會(huì)碰壞,用兩個(gè)微動(dòng)開(kāi)關(guān)裝置裝在小車(chē)的左前方和右前方,當(dāng)障礙物碰到微動(dòng)開(kāi)關(guān)時(shí)候,小車(chē)會(huì)按單片機(jī)設(shè)計(jì)好
30、的方案進(jìn)行自動(dòng)的避開(kāi)障礙物體(左轉(zhuǎn)、右轉(zhuǎn)或者倒退) 。微動(dòng)開(kāi)關(guān)的設(shè)計(jì)位置如圖 2.12 所示。2.2.6 6 顯示電路設(shè)計(jì)顯示電路設(shè)計(jì)顯示的液晶采用了市面上較為普遍的 1602 液晶,顯示容量為 16*2 個(gè)字符,該芯片的正常工作電壓為 4.5V-5.5V,圖 2.13 是單機(jī)片與液晶 1602 的接口電路。圖 2.13 單機(jī)片與液晶的接口電路在使用 LCD 液晶的時(shí)候需要注意的是基本操作時(shí)序,LCD 液晶顯示器基本的操作時(shí)表 2.2 液晶接口說(shuō)明 序?yàn)椋海?)讀狀態(tài):輸入:RS=L,RW=H,E=H,輸出 D0D7=狀態(tài)字。(2)寫(xiě)指令:輸入:RS=L,RW=L,D0D7=指令碼,E=高脈沖
31、,輸出無(wú)。(3)讀數(shù)據(jù):輸入:RS=H,RW=H,E=H 輸出 D0D7=數(shù)據(jù)。(4)寫(xiě)數(shù)據(jù):輸入:RS=H,RW=L,D0D7=數(shù)據(jù),E=高脈沖,輸出無(wú)。在讀寫(xiě)操作的時(shí)候還需要注意的是對(duì)控制器每次進(jìn)行讀寫(xiě)操作之前,都必須進(jìn)行讀寫(xiě)檢測(cè)。1602 液晶的接口說(shuō)明如表 2.2 所示。2.72.7 單片機(jī)單片機(jī) I/OI/O 口的分配口的分配P0 口 : P0.0PO.7 接液晶的 D0D7;P1 口: P1.0P1.3 接遙控發(fā)射的四個(gè)端口; P1.6,P1.7 接防跌落,碰撞電路; P2 口: P2.7,P2.6,P2.5 分別接液晶的 RS,RW,E; P2.1,P2.2,P2.3,P2.4
32、四個(gè)口控制電機(jī)驅(qū)動(dòng)電路;P3 口: P3.1,P3.2 接下載串口電路; P3.2,P3.3 接速度檢測(cè)電路;2.82.8 電源設(shè)計(jì)電源設(shè)計(jì)用 12V 的直流電壓給直流電機(jī)的驅(qū)動(dòng)電路模塊單獨(dú)供電,使電機(jī)驅(qū)動(dòng)電路與單片機(jī)小系統(tǒng)之間不會(huì)通過(guò)電源而相互影響,而且可以保證電機(jī)的驅(qū)動(dòng)電流足夠大。用 6V電池給單片機(jī)系統(tǒng)以及檢測(cè)電路供電,由于單片機(jī)的電源電壓范圍為 5V 左右,所以可以在單片機(jī)與 6V 電源之間串接一個(gè) IN4007 二極管,利用二極管的正向壓降,降低0.7V 的電源電壓。2.92.9 小車(chē)車(chē)體設(shè)計(jì)小車(chē)車(chē)體設(shè)計(jì)可以采用左右兩輪分別驅(qū)動(dòng),后萬(wàn)向輪轉(zhuǎn)向的方案。即左右輪分別用兩個(gè)轉(zhuǎn)速和力矩基本完
33、全相同的直流電機(jī)進(jìn)行驅(qū)動(dòng),車(chē)體尾部裝一個(gè)萬(wàn)向輪。這樣,當(dāng)兩個(gè)直流電機(jī)轉(zhuǎn)向相反,同時(shí)轉(zhuǎn)速相同時(shí)就可以實(shí)現(xiàn)電動(dòng)車(chē)的原地旋轉(zhuǎn),由此可以輕松的實(shí)現(xiàn)小車(chē)原地 90 度和 180 度的轉(zhuǎn)彎。在安裝時(shí)我們保證兩個(gè)驅(qū)動(dòng)電機(jī)同軸。當(dāng)小車(chē)前進(jìn)時(shí),左右兩驅(qū)動(dòng)輪與后萬(wàn)向輪形成了三點(diǎn)結(jié)構(gòu)。這種結(jié)構(gòu)使得小車(chē)在前進(jìn)時(shí)比較平穩(wěn),可以避免出現(xiàn)后輪過(guò)低而使左右兩驅(qū)動(dòng)輪驅(qū)動(dòng)力不夠的情況。為了防止小車(chē)重心的偏移,后萬(wàn)向輪起支撐作用。對(duì)于車(chē)架材料的選擇,我們經(jīng)過(guò)比較選擇了有機(jī)玻璃。用有機(jī)玻璃做的車(chē)架比塑料車(chē)架更加牢固,比鐵制小車(chē)更輕便,美觀。 小車(chē)的結(jié)構(gòu)圖:如圖 2.14 所示 萬(wàn)向輪電機(jī)電機(jī)左輪右輪圖 2.14 小車(chē)的結(jié)構(gòu)圖3 3
34、軟件設(shè)計(jì)軟件設(shè)計(jì) 提高遙控小車(chē)智能控制的可靠性,僅靠硬件抗是不夠的,需要借助于軟件來(lái)實(shí)現(xiàn)。在單片機(jī)控制系統(tǒng)中,如能運(yùn)用好的程序思路,將大大提高控制系統(tǒng)的可靠性,靈活性。而且可以減少硬件電路的設(shè)計(jì),節(jié)約成本。在進(jìn)行微機(jī)控制系統(tǒng)設(shè)計(jì)時(shí),除了系統(tǒng)硬件設(shè)計(jì)外,大量的工作就是如何根據(jù)每個(gè)對(duì)象的實(shí)際需要設(shè)計(jì)應(yīng)用程序。因此,軟件設(shè)計(jì)在微機(jī)控制系統(tǒng)設(shè)計(jì)中占重要地位。對(duì)于本系統(tǒng),軟件也很重要。在單片機(jī)控制系統(tǒng)中,大體上可分為數(shù)據(jù)處理、過(guò)程控制兩個(gè)基本類型。數(shù)據(jù)處理包括:數(shù)據(jù)的采集、數(shù)字濾波、標(biāo)度變換等。過(guò)程控制程序主要是使單片機(jī)按一定的方法進(jìn)行計(jì)算,然后再輸出控制對(duì)象。為了完成上述任務(wù),在進(jìn)行軟件設(shè)計(jì)時(shí),通常把
35、整個(gè)過(guò)程分成若干個(gè)部分,每一部分叫做一個(gè)模塊。所謂“模塊” ,實(shí)質(zhì)上就是能完成一個(gè)單獨(dú)的功能,相對(duì)獨(dú)立的程序段,這種程序設(shè)計(jì)方法叫模塊程序設(shè)計(jì)法。模塊程序設(shè)計(jì)法的主要優(yōu)點(diǎn)是:(1)單個(gè)模塊比起一個(gè)完整的程序易編寫(xiě)及調(diào)試;(2)模塊可以共存,一個(gè)模塊可以被多個(gè)任務(wù)在不同條件下調(diào)用;(3)模塊程序允許設(shè)計(jì)者分割任務(wù)和利用已有程序,為設(shè)計(jì)者提供方便;(4)利用模塊化程序看上去比較清晰,便于讀懂;本系統(tǒng)軟件采用模塊化結(jié)構(gòu),由主程序PWM 子程序、檢測(cè)子程序避障子程序、顯示子程序組成。3.13.1 主程序設(shè)計(jì)主程序設(shè)計(jì)主程序編寫(xiě)的時(shí)候,清楚各個(gè)子程序調(diào)用的順序。 程序初始化遇到障礙,低洼處小車(chē)運(yùn)行控制小
36、車(chē)轉(zhuǎn)彎,倒退,繞過(guò)障礙物NY脈沖計(jì)數(shù)圖 3.1 小車(chē)程序流程圖 PWMH1 DATA30H ;電機(jī) 1 高電平脈沖的個(gè)數(shù) PWMH2 DATA31H ;電機(jī) 2 高電平脈沖的個(gè)數(shù) PWM DATA 32H ;PWM 周期 COUNTER DATA 33H ;中斷計(jì)數(shù)器 S1 BIT P2.3 ;電機(jī) 1 的輸出 S2 BIT P2.2 ;電機(jī) 2 的輸出 EN1 BIT P2.0 ;電機(jī) 1 的使能(左) EN2 BIT P2.1 ;電機(jī) 2 的使能(右) ORG 0000H AJMP MAIN ORG 000BH AJMP INTT0 ORG 001BH AJMP INT1 ORG 0030
37、HMAIN: MOV R0,#00 MOV COUNTER, #00 MOV PWM, #150 MOV TMOD,#02H ;定時(shí)器 0 在模式 2 下工作 MOV TL0, #38H ;定時(shí)器每 200us 產(chǎn)生一次溢出 MOV TH0, #38H ;自動(dòng)重裝的值 SETBET0 ;使能定時(shí)器 0 中斷 SETBEA ;使能總中斷 SETBS2 ;電機(jī) 1 正轉(zhuǎn) CLRS1 ;電機(jī) 2 正轉(zhuǎn) SETBTR0 ;開(kāi)始計(jì)時(shí)START: SJMP YAOKONG ;遙控子程序 SJMP BIZHANG ;避障子程序 SJMP XIANSHI ;顯示子程序 SJMP START ;返回主程序 EN
38、D3.23.2 PWMPWM 子程序設(shè)計(jì)子程序設(shè)計(jì) 脈沖 T 保持不變。改變 T0 的脈沖寬度就可以輸出占空比可變的 PWM 脈沖。PWMT0T1T 圖 3.2 PWM 示意圖 COUNTER:MOV COUNTER,#00 MOVPWM, #150 MOVTMOD, #02H ;定時(shí)器 0 在模式 2 下工作 MOVTL0, #38H ;定時(shí)器每 200us 產(chǎn)生一次溢出 MOVTH0, #38H ;自動(dòng)重裝的值 SETB ET0 ;使能定時(shí)器 0 中斷 SETB EA ;使能總中斷 SETB S2 ;電機(jī) 1 正轉(zhuǎn) CLR S1 ;電機(jī) 2 正轉(zhuǎn) SETB TR0 ;開(kāi)始計(jì)時(shí)INTT0:
39、PUSH PSW ;現(xiàn)場(chǎng)保護(hù) PUSH ACC INC COUNTER ;計(jì)數(shù)器加 1 MOV A ,COUNTER CJNE A, PWMH1, INTT00 ;如果等于高電平脈沖數(shù) CLR EN1 ;P3.2 變?yōu)榈碗娖絀NTT00:CJNE A,PWMH2, INTT01CLR EN2 ;P3.3 變?yōu)榈碗娖絀NTT01:CJNE A,PWM,INTT02 ;如果等于周期數(shù)MOV COUNTER,#01H ;計(jì)數(shù)器復(fù)位SETBEN1 ;置 P3.0 為高電平SETBEN2INTT02:POP ACC ;出棧POP PSW RETI3.33.3 遙控子程序遙控子程序遙控器能遙控小車(chē)具有前進(jìn)
40、,后退,左轉(zhuǎn),右轉(zhuǎn)的功能。遙控狀態(tài)對(duì)應(yīng)的單片機(jī)口的數(shù)值表如表 3.1 所示。 表 3.1 對(duì)應(yīng)單片機(jī)口數(shù)值按鍵按鍵P1.0P1.0P1.1P1.1P1.2P1.2P1.3P1.3P1P1小車(chē)狀態(tài)小車(chē)狀態(tài)前100008H小車(chē)前進(jìn)左010004H小車(chē)左轉(zhuǎn)彎右001002H小車(chē)右轉(zhuǎn)彎后000101H小車(chē)倒退不按000000H小車(chē)停YAOKONG:MOV A,P1 CJNE A,#00H,K1 ;沒(méi)有按鍵按下時(shí)小車(chē)慢慢停止 STOP1: CLR P2.0 CLR P2.1 SJMP RETUN K1: CJNE A,#08H,K2 ;遙控小車(chē)前進(jìn) SETB S1 ;電機(jī) 1 正轉(zhuǎn) SETB S2 ;電
41、機(jī) 2 正轉(zhuǎn) INC PWMH1 ;直行 JC LP1 INC PWMH2 ;加速 JC LP2 LCALL DELAY SJMP RETUN K2: CJNE A,#04H,K3 ;遙控小車(chē)左轉(zhuǎn) INC PWMH1 JC LP1 DEC PWMH2 JC LP4 LCALL DELAY SJMP RETUNK3: CJNE A,#02H,K4 ;遙控小車(chē)右轉(zhuǎn) INC PWMH2 JC LP2 DEC PWMH1 JC LP3 LCALL DELAY SJMP RETUN K4: CJNE A,#01H,RETUN ;遙控小車(chē)倒退 CLR S1 ;電機(jī) 1 反轉(zhuǎn) CLR S2 ;電機(jī) 2 反轉(zhuǎn)
42、 INC PWMH1 JC LP1 INC PWMH2 JC LP2 LCALL DELAY SJMP RETUNLP1: MOV PWMH1,#255 CLR C RET LP2: MOV PWMH2,#255 CLR C RET LP3: MOV PWMH1,#00H CLR C RET LP4: MOV PWMH2,#00H CLR C RET RETUN : RET 3.43.4 防跌落,碰撞子程序設(shè)計(jì)防跌落,碰撞子程序設(shè)計(jì)本設(shè)計(jì)的紅外傳感器有 2 個(gè),分別安裝在小車(chē)的前面。每個(gè)傳感器所能檢測(cè)的高度距離是 3cm。真值表中, “0”代表沒(méi)有落差, “1”代表有低處落差,當(dāng)小車(chē)檢測(cè)到落差
43、后,單片機(jī)會(huì)改變 PWM 值,控制小車(chē)做相應(yīng)的動(dòng)作,防止小車(chē)跌落。兩個(gè)微動(dòng)開(kāi)關(guān)一樣,也分別裝在小車(chē)的左前方和右前方,真值表中, “0”代表沒(méi)有檢測(cè)到障礙物,“1”代表檢測(cè)到障礙物,當(dāng)小車(chē)檢測(cè)到障礙物的時(shí)候,單片機(jī)會(huì)改變 PWM 值,用來(lái)驅(qū)動(dòng)電機(jī)做相應(yīng)的動(dòng)作,避開(kāi)障礙物。表 3.2 單片機(jī)執(zhí)行的動(dòng)作 左邊左邊(P1.6)(P1.6)右邊右邊(P1.7)(P1.7)小車(chē)小車(chē)0190 度左轉(zhuǎn)1090 度右轉(zhuǎn)11倒退00遙控 避障程序是否倒退小車(chē)倒退是否左轉(zhuǎn)小車(chē)右轉(zhuǎn)小車(chē)左轉(zhuǎn)子程序返回NYN圖 3.3 避障程序流程圖3.53.5 速度顯示程序速度顯示程序設(shè)定定時(shí)的值計(jì)算速度值送液晶顯示返回 圖 3.4
44、速度顯示流程圖 XIANSHI: LCALL CALCULATE ;計(jì)算速度 LCALL DISPLAY ;顯示 RET 結(jié)果分析及結(jié)論結(jié)果分析及結(jié)論在硬件的設(shè)計(jì)和焊接過(guò)程中,本著嚴(yán)謹(jǐn)、細(xì)心、逐塊調(diào)試的原則。我采取了先逐個(gè)模塊單獨(dú)測(cè)試成功再集中焊接的原則。在硬件分塊調(diào)試的過(guò)程中,我發(fā)現(xiàn)了如下幾個(gè)問(wèn)題:?jiǎn)栴}一:驅(qū)動(dòng)電路焊接完成后直接給予信號(hào)輸入端高低電平時(shí),電機(jī)并無(wú)動(dòng)作。起始時(shí)我還以為是焊點(diǎn)存在問(wèn)題,用萬(wàn)用表逐點(diǎn)測(cè)試后發(fā)現(xiàn)并無(wú)異常,而且再次焊接檢查后電機(jī)依舊沒(méi)有動(dòng)作。原因及解決辦法:仔細(xì)研究了 L298N 的電路原理圖,發(fā)現(xiàn)原以為不需要對(duì)電機(jī)運(yùn)行參數(shù)進(jìn)行測(cè)量,于是將相關(guān)的 SENA 與 SENB
45、 懸空,而實(shí)際中,無(wú)論需要測(cè)量與否,這兩個(gè)端口都需要直接或間接接地。我們將其接地后,電機(jī)即可按照給定信號(hào)完成預(yù)定動(dòng)作。在所有的硬件檢測(cè)完畢后,便開(kāi)始了軟件部分的調(diào)試與檢測(cè)。在程序的檢測(cè)中,程序基本的非邏輯性錯(cuò)誤可以在用 MedWin 編譯時(shí)由編譯軟件直接發(fā)現(xiàn)。問(wèn)題二:程序在理論上是行的,并且利用 MedWin 的單步指令執(zhí)行行時(shí)是對(duì)的,但是下載到單片機(jī)程序就亂了,或者有時(shí)候根本就沒(méi)反應(yīng),檢查程序并不能發(fā)現(xiàn)錯(cuò)誤。原因及解決辦法:編程的實(shí)際經(jīng)驗(yàn)不足,有些時(shí)候并沒(méi)考慮單片機(jī)的內(nèi)部結(jié)構(gòu)原理以及沒(méi)很好的考慮實(shí)際的問(wèn)題,理論與實(shí)際沒(méi)結(jié)合好。這個(gè)問(wèn)題需要我們多多編程,并把程序下載到單片機(jī)上試一下,一點(diǎn)點(diǎn)的改
46、進(jìn)不足,增長(zhǎng)經(jīng)驗(yàn)。附件附件 1 1 程序清單程序清單 PWMH1 DATA 30H ;電機(jī) 1 高電平脈沖的個(gè)數(shù) PWMH2 DATA 31H ;電機(jī) 2 高電平脈沖的個(gè)數(shù) PWM DATA 32H ;PWM 周期 COUNTER DATA 33H ;中斷計(jì)數(shù)器 S1 BIT P2.3 ;電機(jī) 1 的輸出 S2 BIT P2.2 ;電機(jī) 2 的輸出 EN1 BIT P2.1 ;電機(jī) 1 的使能(左) EN2 BIT P2.0 ;電機(jī) 2 的使能(右) ORG 0000H AJMP MAIN0 ORG 000BH AJMP INTT0 ORG 0030HMAIN0: MOV R0, #0 MOV
47、 R6, #200 ;計(jì)數(shù) 1s MOV R7, #25MAIN: MOV P1, #00H MOV COUNTER, #00 MOV PWM, #250 MOV TMOD,#02H ;定時(shí)器 0 在模式 2 下工作 MOV TL0, #38H ;定時(shí)器每 200us 產(chǎn)生一次溢出 MOV TH0, #38H ;自動(dòng)重裝的值 SETB ET0 ;使能定時(shí)器 0 中斷 SETB EA ;使能總中斷 SETB TR0 ;開(kāi)始計(jì)時(shí) START: ACALL YAOKONG ;遙控子程序 ACALL BIZHANG ;避障子程序 ACALL XIANSHI ;顯示子程序 SJMP START ;返回主
48、程序 ;* YAOKONG: CJNE A,#00H,K1 ;沒(méi)有按鍵按下時(shí)小車(chē)慢慢停止 STOP1: CLR P2.0 CLR P2.1 SJMP RETUN ;* K1: ANL A,#0FH CJNE A,#08H,K2 ;小車(chē)前進(jìn) SETB S1 ;電機(jī) 1 正轉(zhuǎn) SETB S2 ;電機(jī) 2 正轉(zhuǎn) INC PWMH1 ;直行 JC LP1 INC PWMH2 JC LP2 LCALL DELAY SJMP RETUN ;*K2: CJNE A,#04H,K3 ;小車(chē)左轉(zhuǎn) INC PWMH1 JC LP1 DEC PWMH2 JC LP4 LCALL DELAY SJMP RETUN;*
49、K3: CJNE A,#02H,K4 ;小車(chē)右轉(zhuǎn) INC PWMH2 JC LP2 DEC PWMH1 JC LP3 LCALL DELAY SJMP RETUN ;* K4: CJNE A,#01H,RETUN ;小車(chē)倒退 CLR S1 ;電機(jī) 1 反轉(zhuǎn) CLR S2 ;電機(jī) 2 反轉(zhuǎn) INC PWMH1 JC LP1 INC PWMH2 JC LP2 LCALL DELAY SJMP RETUN;* 子程序 LP1: MOV PWMH1,#255 CLR C RET LP2: MOV PWMH2,#255 CLR C RET LP3: MOV PWMH1,#00H CLR C RET LP
50、4: MOV PWMH2,#00H CLR C RET RETUN : RET ;*微動(dòng)開(kāi)關(guān)部分 BIZHANG: MOV A,P3 ANL A,#0F0H CJNE A,#30H,K6 ;小車(chē)倒退 CLR S1 ;電機(jī) 1 反轉(zhuǎn) CLR S2 ;電機(jī) 2 反轉(zhuǎn) MOV PWMH1,#50H MOV PWMH2,#50H LCALL DELAY SJMP RETUNK6: CJNE A,#10H,K7 ;小車(chē)左轉(zhuǎn) MOV PWMH1,#20H MOV PWMH2,#50H LCALL DELAY MOV PWMH1,#80H MOV PWMH2,#80H LCALL DELAY MOV PWM
51、H1,#50H MOV PWMH2,#20H LCALL DELAY SJMP RETUN ;* K7: CJNE A,#20H,K8 ;小車(chē)右轉(zhuǎn) MOV PWMH1,#50H MOV PWMH2,#20H LCALL DELAY MOV PWMH1,#80H MOV PWMH2,#80H LCALL DELAY LCALL DELAY MOV PWMH1,#20H MOV PWMH2,#50H LCALL DELAYxp: SJMP RETUN XP1: SJMP STOP K9: CJNE A,#40H,K10 ;紅外傳感器,小車(chē)左轉(zhuǎn) MOV PWMH1,#20H MOV PWMH2,#5
52、0H LCALL DELAY MOV PWMH1,#50H MOV PWMH2,#50H LCALL DELAY LCALL DELAY MOV PWMH1,#50H MOV PWMH2,#20H LCALL DELAY SJMP xp;* K10: CJNE A,#80H,XP1 ;紅外傳感器,小車(chē)右轉(zhuǎn) MOV PWMH1,#50H MOV PWMH2,#20H LCALL DELAY MOV PWMH1,#50H MOV PWMH2,#50H LCALL DELAY LCALL DELAY MOV PWMH1,#20H MOV PWMH2,#50H LCALL DELAY SJMP xp
53、;顯示XIANSHI: LCALL CALCULATE ;計(jì)數(shù)速度 LCALL L2 LCALL DISPLAY ;顯示 SJMP LOOPINTT1: CLR TR0 MOV 51H,TH1 MOV 52H,TL0 MOV 50H,#0 MOV TH1,#15H ;定時(shí) 60ms MOV TL1,#0A0H SETB TR1 RETIINTT1: MOV TH1,#15H ;賦初值 MOV TL1,#0A0H DJNZ 50H,EXIT ;15 次完后 0.9 秒時(shí)間到 CLR TR0 ;關(guān)閉定時(shí)器 0 MOV 51H,TH0 MOV 52H,TL0 ;讀計(jì)數(shù)值 MOV 50H,#15 MO
54、V TH0,#0 ;重新賦為 0,又從 0 開(kāi)始計(jì)數(shù) MOV TL0,#0 SETB TR1 ;啟動(dòng)定時(shí)器 1 EXIT: RETI ;* ; 計(jì)算速度 ;* DISPLAY: LCALL CALCULATE ;計(jì)數(shù)速度 LCALL L2 LCALL DISPLAY ;顯示 SJMP LOOPINTT1: CLR TR1 MOV 51H,TH1 MOV 52H,TL0 MOV 50H,#0 MOV TH1,#15H ;定時(shí) 60ms MOV TL1,#0A0H SETB TR0 RETIINTT1: MOV TH1,#15H ;賦初值 MOV TL1,#0A0H DJNZ 50H,EXIT ;
55、15 次完后 0.9 秒時(shí)間到 CLR TR0 ;關(guān)閉定時(shí)器 0 MOV 51H,TH0 MOV 52H,TL0 ;讀計(jì)數(shù)值 MOV 50H,#15 MOV TH0,#0 ;重新賦為 0,又從 0 開(kāi)始計(jì)數(shù) MOV TL0,#0 SETB TR1 ;啟動(dòng)定時(shí)器 0 EXIT: RETI ;* ; 計(jì)算速度 ;* CALCULATE:MOV A,52H ;; MOV B,#2 MUL AB MOV B,#10 DIV AB MOV R1,A MOV A,52H CLR C SUBB A,R1 ;將速度的個(gè)位和十位拆開(kāi) MOV 55H,A MOV B,#10 DIV AB MOV 40H,A MO
56、V 41H,B RET ;*中斷程序 INTT0: PUSH PSW ;現(xiàn)場(chǎng)保護(hù) PUSH ACC INC COUNTER ;計(jì)數(shù)器加 1 MOV A,COUNTER CJNE A,PWMH1,INTT00 ;如果等于高電平脈沖數(shù) CLR EN1 ;P3.2 變?yōu)榈碗娖絀NTT00: CJNE A,PWMH2,INTT01 CLR EN2 ;P3.3 變?yōu)榈碗娖絀NTT01: CJNE A,PWM,INTT02 ;如果等于周期數(shù) MOV COUNTER,#01H ;計(jì)數(shù)器復(fù)位 SETB EN1 ;置 P3.0 為高電平 SETB EN2 DJNZ R6,INTT02 DJNZ R7, FUZH
57、IINTT02: POP ACC ;出棧 POP PSW MOV R7,#25FUZHI: MOV R6,#200 RETI ;* 延時(shí)子程序 DELAY: MOV R3,#50DL1: MOV R4,#20DL2: MOV R5,#248 DJNZ R5,$ DJNZ R4,DL2 DJNZ R3,DL1 RET END附件附件 2 2 硬件電路圖硬件電路圖 12GND7VCC14U 1A74ALS0434U 1B74ALS04V S4IN PU T 15IN PU T 27ENA BLE A6IN PU T 310IN PU T 412ENA BLE B11G ND8V SS9O UTPU
58、 T 12O UTPU T 23O UTPU T 313O UTPU T 414SEN SE A1SEN SE B15U 2L298D 1D IO DED 2D IO DED 3D IO DED 4D IO DED 6D IO DED 7D IO DED 8D IO DED 9D IO DEC 2100U FC 1103V CC12V1234J3C ON 412VPWM 1PWM 212VV CCC 3100uFC 4103R 1 IN13R 2 IN8T1 IN11T2 IN10GND15V+2V-6VCC16R 1 O UT12R 2 O UT9T1 O UT14T2 O UT7C 1+1
59、C 1 -3C 2+4C 2 -5U 4232P31E41U FE3 IUFE2 IUFE1 1UFP30V CCV CC162738495J8D B9Y 111.0592MH zC 520PC 620P+C 722uR 210KV CCS2P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78R EST9R XD10TXD11IN T012IN T113T014T115W R16R D17X TA L218X TA L119G ND20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29A LE/P30EA/V
60、 P31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039V CC40U 3A T89S51192837465R P110K復(fù)位MCUV CCP15P16P17P33P36P10P11P12P13P14P30P31P32P34P35P37P00P01P02P03P04P05P06P07R ESTP26P27PWM 1PWM 2IN PU T1IN PU T2P24P25P30P31P32P33P34P35P36P37V SS1V DD2V O3R S4R /W5E6D 07D 18D 29D 310D 411D 512D 613D 714B LA1
61、5B LK16J416*2動(dòng)動(dòng)V CCP00P01P02P03P04P05P06P07R 420 1/2WV CC1133W2R 310KP27P26P2512345678J6C ON 812345678J5C ON 812345678J7C ON 8PWM 1PWM 2IN PU T1IN PU T2P24P25P26P27P10P11P12P13P14P15P16P1712J1C ON 2S1SW -SPS TD 5LEDR 11KC 9103C 8100uFV CCV CC12J2C ON 212VIN PU T2IN PU T1硬件電路圖附件附件 3 3 電路電路 PCBPCB 圖圖信
62、號(hào)采集電路單片機(jī)小系統(tǒng)電路電機(jī)驅(qū)動(dòng)電路驅(qū)動(dòng)電路實(shí)物圖附件附件 4 4 小車(chē)實(shí)物圖小車(chē)實(shí)物圖小車(chē)俯視圖小車(chē)側(cè)視圖袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇
63、羈莇襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿
64、袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆
65、肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇
66、膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節(jié)衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節(jié)蒈螅
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案