基于單片機的汽車智能雨刮器設(shè)計 (2)
《基于單片機的汽車智能雨刮器設(shè)計 (2)》由會員分享,可在線閱讀,更多相關(guān)《基于單片機的汽車智能雨刮器設(shè)計 (2)(66頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 摘 要 1 Abstract 2 前 言 3 第一章 自動雨刷控制系統(tǒng)的總體設(shè)計 4 1.1 自動雨刷控制系統(tǒng)設(shè)計思路 4 1.2 設(shè)計原理方框圖 4 1.3 系統(tǒng)使用部件選擇 4 1.3.1 單片機AT89S52,AT89C2051的比較與選擇 5 1.3.2 電機選擇 6 1.3.3 電機驅(qū)動芯片的選擇 7 1.4 汽車自動雨刷控制系統(tǒng)的主要特點 11 第二章 控制系統(tǒng)的硬件設(shè)計 13 2.1 電源電路的設(shè)計與分析 13 2.2 單片機模塊設(shè)計 14 2.2.1 單片機AT89S52 14 2.2.2 單片機最小系統(tǒng)設(shè)計 17 2.3 感應(yīng)
2、模塊的設(shè)計與分析 20 2.4 電機及驅(qū)動模塊 21 2.4.1 電機控制電路的設(shè)計與分析 21 2.4.2 不進(jìn)電機的驅(qū)動芯片 25 第三章 汽車自動雨刷控制系統(tǒng)軟件的設(shè)計 29 3.1 主程序設(shè)計 29 3.1.1主程序的初始化內(nèi)容 30 3.1.2 代碼轉(zhuǎn)換程序 30 3.2 中斷服務(wù)程序 30 3.2.1中斷服務(wù)程序的設(shè)計 31 3.3檢測脈沖及電機運行程序的設(shè)計 31 第四章 汽車自動雨刷控制系統(tǒng)調(diào)試 33 4.1 調(diào)試單片機最小系統(tǒng) 33 4.2 問題分析及雨滴感應(yīng)模塊調(diào)試 33 4.3 步進(jìn)電機驅(qū)動模塊調(diào)試 33 4.4 系統(tǒng)軟件調(diào)試 34 第五
3、章 總結(jié)與展望 36 參 考 文 獻(xiàn) 37 致 謝 38 附錄I 39 附錄II 42 附錄III 61 2 摘 要 本次設(shè)計的汽車自動雨刷省去了人為手動操作雨刷的問題,能夠自動感應(yīng)雨量并進(jìn)行相應(yīng)的工作。自動雨刷用雨滴傳感器作為檢測器來感應(yīng)雨量的大小,把感應(yīng)信號傳給單片機,通過軟件的控制驅(qū)動芯片自動調(diào)節(jié)電機的正反轉(zhuǎn)與轉(zhuǎn)動頻率。此次設(shè)計采用40引腳的單片機AT89S52,設(shè)計中運用ULN2003AN驅(qū)動芯片來驅(qū)動步進(jìn)電機的運轉(zhuǎn),克服了電機在低頻工作時的噪音大,震動大的缺點。本次設(shè)計在一定的程度上為駕駛者提供了舒適性和安全性的保障,避免了由于駕駛者手動操作雨刷的
4、不當(dāng)而帶來的交通安全問題,同時也大大的提高了汽車雨刷的全面性與可靠性。 關(guān)鍵詞:汽車自動雨刷,雨滴傳感器,單片機,步進(jìn)電機 第 64 頁 共 66 頁 Abstract The design of the automatic wipers is improved further in the traditional manual based on.Automatic wiper with rain sensor as the detector size induced precipitation,the induction signal is sent to the
5、single chip microcomputer.reversing and turning frequency automatic adjusting motor through the control of the software driver.The design is based on the 40pin of the mic AT89S52.That use of ULN2003AN to drive the stepper motor driver chip design operation.The pulse width modulation’s chopper driver
6、 mode.Thus greatly overcome the noise when the motor work in the low frequency ,vibration faults.Provide comfort and safely guarantee this design in a certain extent for the driver,to avoid the traffic safety problem caused by the driver manually operated wiper improper.At the same time also greatly
7、 improve the comprehensiveness and reliability of automobile windshield wiper. Keyword:Automatic wipers ,Rain sensor,SCM,Stepper motor 前 言 根據(jù)科學(xué)家針對消費者對中性車產(chǎn)品屬性偏好的研究,結(jié)果顯示消費者對配備及式樣依序包括預(yù)縮安全帶、前座安全氣囊、駕駛席安全氣囊、主動護(hù)頸頭枕、前霧燈、可調(diào)間歇式雨刷、電動收藏廣角后視鏡、倒車?yán)走_(dá)等??梢姡瑢Π踩缘脑O(shè)備已超過了對舒適性的設(shè)備需求。其中對可調(diào)間歇雨刷的需求排在了第六位,消費者認(rèn)為汽車
8、雨刷必須具有可調(diào)頻率,以應(yīng)對不同車況和前擋風(fēng)玻璃落雨量之需求。然而駕駛?cè)俗约簛砼袛嗲皳躏L(fēng)玻璃落雨量的模糊程度,再去手動調(diào)節(jié)雨刷,不僅使駕駛者分心,而且使玻璃上落雨量刮除清晰度不一,兩者均關(guān)系到駕駛的安全。 隨著當(dāng)今社會經(jīng)濟(jì)的迅速發(fā)展,對汽車性能的追求則在不斷的提升,隨著汽車制造業(yè)不斷的創(chuàng)新,汽車中安裝了越來越多自動控制系統(tǒng),增加了汽車的安全性與舒適性,據(jù)統(tǒng)計,在雨天行車,世界上因為駕駛員對雨刷的操作不當(dāng)而帶來的交通事故占6%之多。所有自動雨刷系統(tǒng)的安裝對于汽車來說是十分重要的。自動雨刷控制系統(tǒng)免去了駕駛員手動調(diào)節(jié)雨刷的麻煩,有效的提高了在雨天駕駛的安全性與可靠性;同時,也避免了因為路
9、邊積水濺在擋風(fēng)玻璃上,駕駛員來不及操作而恐慌造成的交通事故。 國內(nèi)外許多汽車廠商以雨水傳感器為基礎(chǔ)的自動雨刷控制系統(tǒng),不是格昂貴就是系統(tǒng)不完善,反映不靈敏?,F(xiàn)今,則主要是把用雨水傳感器檢測出來的雨量大小的信號轉(zhuǎn)變成電信號,然后傳遞給單片機,通過軟件的控制來控制電機驅(qū)動芯片從而帶動電機的旋轉(zhuǎn)。目前市場上的雨量傳感器大都分為以下兩種:利用電阻壓變,光強變化的傳感器與各種信號控制器連接,來控雨刷電機的轉(zhuǎn)動。前一種是把傳感器直接裝在汽車擋風(fēng)玻璃的外側(cè),雨滴直接落在傳感器上來感應(yīng)雨量的大?。缓笠环N則是安裝在擋風(fēng)玻璃內(nèi)側(cè),由光照引起的折射強度的變化來檢測雨量的大小。 因為汽車雨刷主要功
10、能是刮除擋風(fēng)玻璃上的水漬及污垢,給駕駛者提供一個清晰的視野,所以自動雨刷系統(tǒng)屬于必須的安全設(shè)備。主動性安全系統(tǒng)是每個汽車系統(tǒng)工程師努力目標(biāo)之一,雨刷系統(tǒng)是每輛車上為保證擋風(fēng)玻璃清晰的唯一選擇。而此次設(shè)計的自動雨刷,乃目前各車廠投注心力的開發(fā)方向。 第一章 自動雨刷控制系統(tǒng)的總體設(shè)計 本章主要闡述設(shè)計的整體設(shè)計思路,系統(tǒng)使用部件選擇,設(shè)計原理框圖與本次設(shè)計系統(tǒng)的主要特點。 1.1 自動雨刷控制系統(tǒng)設(shè)計思路 設(shè)計的總體思路是:運用雨滴傳感器感應(yīng)雨量的大小,把感應(yīng)信號輸給單片機系統(tǒng),然后通過軟件控制雨刷電機根據(jù)相應(yīng)的環(huán)境做出不同的轉(zhuǎn)動。例如,當(dāng)檢測為小雨量的時候,電機工作在
11、小雨模式(電機旋轉(zhuǎn)一個來回要停留10秒再繼續(xù)進(jìn)行旋轉(zhuǎn));當(dāng)檢測為中大雨的時候則,啟動中大雨運轉(zhuǎn)模式(電機旋轉(zhuǎn)一個來回停止5秒后再繼續(xù)工作);當(dāng)檢測為大雨的時候,則啟動大雨運轉(zhuǎn)模式(電機連續(xù)進(jìn)行來回旋轉(zhuǎn))。設(shè)計中運用AT89S52單片機,步進(jìn)電機采用ULN2003AN驅(qū)動芯片進(jìn)行驅(qū)動。 1.2 設(shè)計原理方框圖 本次設(shè)計由檢測部分,控制部分,驅(qū)動部分組成,其框圖如圖1.1: 圖1.1 設(shè)計原理框圖 1.3 系統(tǒng)使用部件選擇 系統(tǒng)主要是由單片機最小控制系統(tǒng)(包括晶振電路,復(fù)位電路,供電電源),雨滴感應(yīng)模塊,電機驅(qū)
12、動模塊組成。 1.3.1 單片機AT89S52,AT89C2051的比較與選擇 單片機AT89S2051是具有可編程可擦除只讀存儲器的低電壓,高性能的8位CMOS微處理器,有15根I/O線、16位定時/計數(shù)器兩個、全雙向的串行口一個、并且其內(nèi)部含有精密的比較器和片內(nèi)振蕩器,具有4.25--5.5V的電壓工作范圍和12MHz的工作頻率,同時還具有加密陣列的二級程序存儲器加鎖和時鐘電路等。此外還支持二種軟件可選的電源節(jié)電方式。在空閑的時候,CPU停止工作,而RAM、定時/計數(shù)器、串行口和中斷系統(tǒng)仍然繼續(xù)工作。共有20個引腳,引腳圖如圖1.2所示 圖1.2 單片機AT89C20
13、51引腳圖 單片機AT89S52是種低能耗,高性能的8位CMOS微控制器,在系統(tǒng)中具有8K可編程Flash存儲器。使用Atmel公司高密非易失性存儲器技術(shù)制造,片上允許程序存儲器在系統(tǒng)可編程,同樣也適合常規(guī)的編程。在單片機上擁有靈巧的8位CPU和在系統(tǒng)上可編程存儲器Flash,讓它在眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活有效的解決方案。AT89S52單片機具有:8K字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器。能實現(xiàn)的功能比單片機AT89C2052更加全面,內(nèi)存更大,引腳更加全面引腳如圖1.3所示
14、 圖1.3 單片機AT89S52引腳圖 由上可知,為了更加便于操作,降低難度,不用擔(dān)心引腳不夠的問題,且考慮本次畢業(yè)設(shè)計小組能夠協(xié)同工作,則選擇單片機AT89S52,另外其是各性能比較全面,在鄭州市場比較好買到的價格便宜的理想單片機。 1.3.2 電機選擇 設(shè)計中選擇了步進(jìn)電機來代替了傳統(tǒng)的雨刷電機,相比傳統(tǒng)的電機其更加的靈活,精度高。步進(jìn)電機是一種電脈沖轉(zhuǎn)化為角位移的執(zhí)行機構(gòu)。通俗的來講就是當(dāng)驅(qū)動器接受到一個脈沖信號,就會相應(yīng)的驅(qū)動步進(jìn)電機按照設(shè)定好的方向轉(zhuǎn)動一個固定的角度。通過脈沖個數(shù)可以來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時也可以通過控制脈沖頻率來控制電機
15、轉(zhuǎn)動的速度和加速度,從而達(dá)到調(diào)速的目的。 在性能上步進(jìn)電機更適合作為雨刷電機,并且其價格便宜,在市場上供貨也比較多所以,所以在本次設(shè)計中選擇步進(jìn)電機。 步進(jìn)電機的原理接線圖如圖1.4所示: 圖1.4 步進(jìn)電機原理圖 1-2相勵磁順序表,從輸出軸方向看-逆時針方向如下表1.1 表1.1 輸出軸方向看-逆時針方向 主要的功能參數(shù)如下: 1——額定電壓 2——相數(shù) 3——減速比 4——步距角 5——驅(qū)動方式
16、6——自定位轉(zhuǎn)矩 7——絕緣電阻 1.3.3 電機驅(qū)動芯片的選擇 根據(jù)設(shè)計書的要求,本次設(shè)計核心就是對電機的控制,所以對于選擇理想的驅(qū)動芯片來驅(qū)動電機則就成為了十分重要的一部分了。最常用的就是脈寬調(diào)制式斬波驅(qū)動方式,大多步進(jìn)電機都選擇這種驅(qū)動方式來進(jìn)行調(diào)速控制,TA8535H與ULN2003AN都是比較常用的,性能也是比較穩(wěn)定可靠的專用芯片。 TH8435驅(qū)動芯片東芝公司生產(chǎn)的脈寬調(diào)制式斬波器型二相步進(jìn)電機驅(qū)動芯片,工作穩(wěn)定可靠,工作電壓為10-40V,具有整步,半步,1/4細(xì)分和1/8細(xì)分運動方式供選擇。其由1個解碼器,2個驅(qū)動橋式電路,2個電流控制電路,2個輸
17、出電流限制電路等功能模塊構(gòu)成。 ULN2003AN是一種最常用的驅(qū)動步進(jìn)電機的芯片,而且接線十分簡單,用單片機驅(qū)動小量步進(jìn)電機是很好的選擇,有16個引腳其中有七個為輸入引腳另外七個為輸出引腳,8號是接地引腳,9號是接電源12V或5V的引腳。比如步進(jìn)電機公共端接5V,其余四個引腳接驅(qū)動芯片的四個輸出端,然后單片機或者外圍電路接上ULN2003的四個輸入引腳。 其實在本設(shè)計中這兩種芯片都可以選擇,但是ULN2003驅(qū)動芯片原理更加簡單,操作容易,在驅(qū)動電機時,工作穩(wěn)定;而且在市場上驅(qū)動芯片ULN2003使用比較廣泛,所以選擇ULN2003AN作為驅(qū)動芯片。 1.3.4 雨滴傳感器的選
18、擇 在目前市場上雨滴傳感器的工作原理大都分為以下兩種:利用電阻壓變,光強變化的傳感器與控制器相連接,來控雨刷電機的轉(zhuǎn)動。前種是把傳感器直接裝在汽車擋風(fēng)玻璃的外面,雨滴直接落在傳感器上來感應(yīng)雨量的大小;后種則是安裝在擋風(fēng)玻璃內(nèi)側(cè),由光照引起的折射強度的變化來檢測雨量的大小。 后種是在設(shè)計和發(fā)展上比較完善的傳感器,但在市場上買配件的時候發(fā)現(xiàn)前電阻式的更便于設(shè)計操作而被選擇。 目前在我國光強變化傳感器與控制電路相接組成的雨滴傳感器發(fā)展的比較完善,所以以下我對這兩種雨滴傳感器做個具體的分析: 光變雨滴傳感器的工作原理: 1 光學(xué)原理 光線射在兩種介質(zhì)分界
19、面上,當(dāng)光線從一種介質(zhì)射入另外一種介質(zhì)時,光線的傳播方向會發(fā)生一定的改變,這稱之為光的折射。在另一種介質(zhì)中折射的光線和分界面的法線n0 的夾角稱之為折射角。入射角i和折射角r的關(guān)系如下: (式1) 上式1中為第二種介質(zhì)對第一種介質(zhì)的相對折射率。 光從光密介質(zhì)射入光疏介質(zhì)時,如果入射角大到一定的角度,便能使折射角達(dá)到90°,這時折射光線就會完全的消失,光會全部反射到原來介質(zhì),這種現(xiàn)象叫做光的全反射。折射角等于90°時的入射角叫做全反射臨界角。全反射的條件是:?光從光密介質(zhì)射入向光疏介質(zhì)中;?入射角等于或大于臨界角。 這種傳感器就是根據(jù)全反射光學(xué)原理制成的
20、??諝夂退恼凵渎史謩e為1和1.33,玻璃的折射率為1.5。根據(jù)上式計算得出,玻璃和空氣兩種介質(zhì)的臨界角是42°,玻璃和水之間的臨界角是63°。 2 工作原理 雨水傳感器由紅外光發(fā)射電路和接收電路組成。原理框圖如圖1.5 圖1.5 紅外光發(fā)射電路和接收電路 由紅外光發(fā)射元器件發(fā)出的紅外光在擋風(fēng)玻璃的外表面以全反射角反射,其角度必須控制在42°和63°之間。如果擋風(fēng)玻璃上有水,一些光會雙倍折射出,這樣會使紅外感光元件接收到的反射光減弱。在擋風(fēng)玻璃發(fā)生反射的區(qū)域被稱之為傳感器“敏感區(qū)域”,僅當(dāng)雨水在這個敏感區(qū)域時,才可以被探測出
21、。為了使系統(tǒng)更加靈敏可靠,靈敏區(qū)域和擋風(fēng)玻璃區(qū)域之間必須要有一個較好的比例,如上圖所示。 3 紅外發(fā)射電路 紅外發(fā)射管用硅光電二極管,其具有暗電流小,噪聲低,受溫度影響小等優(yōu)點。紅外發(fā)射管用三個并聯(lián),采用脈寬調(diào)制驅(qū)動方式,工作在38kHZ的頻率下。 4 紅外接收電路 紅外接收電路由光接收二極管,放大電路,帶通濾波器,檢波電路等構(gòu)成。其中放大電路的作用是對光脈沖信號進(jìn)行線性放大與整形。帶通濾波器的作用是進(jìn)行頻率選擇,濾除干擾信號。檢波電路濾掉載頻后檢出的原始信號。因而電路比較復(fù)雜,體積也比較大。 在市場上還有種簡捷的接收電路,采用的是紅外專用集成接收芯片T
22、K1838,將各功能電路封裝在一起,用來接收紅外光信號,塑料封裝可濾除可見光。內(nèi)部結(jié)構(gòu)如圖1.6。 圖1.6 芯片TK1838內(nèi)部結(jié)構(gòu)圖 TK1838只有接收到38kHz的脈沖信號時才會起作用。它具有微型一體化的塑料封裝,體積小,可靠性高,抗干擾光的能力強,用5V電源供電,功能損耗小,輸出信號比較靈敏等優(yōu)點。其內(nèi)部集成了放大、濾波、解調(diào)和控制電路。當(dāng)TK1838接收不到38kHz的脈沖信號時,輸出為高電平;當(dāng)接收到38kHz的脈沖信號時,輸出低電平(有效信號)。 5傳感器參數(shù)的選擇 這種雨量傳感器的參數(shù)可
23、根據(jù)自己的需求,調(diào)節(jié)參數(shù)。例如:在小雨的時,定為每10ms輸出脈沖的個數(shù)小于80個;在中雨時,輸出的脈沖個數(shù)大于等于80小于等于160個;在大雨時,可以設(shè)定輸出脈沖個數(shù)為每10ms大于160個。 本設(shè)計中選用的雨滴模塊介紹如下: 1 具體參數(shù)即功能描述 電壓:5V 控制板大小:3*1.6cm 大面積雨滴檢測板:5.4*4.0cm 電源指示燈,輸出信號LED指示燈 TTL電平輸出,輸出有效信號為低電平,驅(qū)動能力為100MA左右 靈敏度可以通過電位器調(diào)節(jié)。 沒有雨的時候LED點亮,整體檢測芯片輸出高電平;有雨滴上去時,輸出低電平,開關(guān)指示燈亮,
24、表明為有效信號 雨滴板和控制板是分開的方便將線引出 大面積的雨滴板更有利于檢測到雨水 2 接線方法 VCC:接電源正極 GND:接電源負(fù)極 DO:TTL開關(guān)信號輸出 AO:模擬信號輸出 3 使用方法 接上5V電源電源燈亮,檢測板上沒有水滴時,DO輸出為高電平,開關(guān)指示燈不亮 ,當(dāng)?shù)紊弦坏嗡畷r,DO輸出低電平,開關(guān)指示燈亮, 刷掉上面的水滴,又恢復(fù)到,輸出高電平狀態(tài)。 AO模擬輸出,作為模擬演示時使用,可以連接到單片機的AD口來檢測滴在上面的雨量大小。 DO TTL數(shù)字輸出,用來連接到單片機上,檢測是
25、否有雨。 1.4 汽車自動雨刷控制系統(tǒng)的主要特點 基于單片機AT89S52對步進(jìn)電機控制制作系統(tǒng)的主要特點: (1) 本設(shè)計運用步進(jìn)電機來代替?zhèn)鹘y(tǒng)的雨刷電機,從而使控制精度更高,響應(yīng)速度更快,抗干擾能力更強,且外圍電路簡單易懂。 (2)運用單片機控制系統(tǒng),程序定化,系統(tǒng)更加穩(wěn)定。 (3)雨水感應(yīng)式自動雨刷控制系統(tǒng)使駕駛員去除了手動操作雨刷的麻煩,有效地提高了在雨天行駛的安全性。 (4) 設(shè)計中運用元件價格便宜,較適合推廣使用。 (5) 整個系統(tǒng)可集成于一個芯片上,因此體積小,功耗低。 通過以上方案的分析,我們可以看出單片機技術(shù)是現(xiàn)代電子設(shè)計
26、的重要發(fā)展部分。采用單片機AT89S52和步進(jìn)電機結(jié)合的自動雨刷控制系統(tǒng)的設(shè)計方案,無論是性能上,特點上,還是原理圖上,或是在電路設(shè)計上都具有簡單,使用性強的優(yōu)點。 第二章 控制系統(tǒng)的硬件設(shè)計 根據(jù)設(shè)計要求,本次設(shè)計控制系統(tǒng)的硬件模塊按功能主要分為:電源模塊,單片機模塊,感應(yīng)檢測模塊,電機及驅(qū)動模塊。其中單片機AT89S52模塊是本次設(shè)計的核心模塊。 在本章的這幾小節(jié)主要對各模塊的電路設(shè)計進(jìn)行詳細(xì)的設(shè)計和分析。 2.1 電源電路的設(shè)計與分析 穩(wěn)壓電源的輸出電壓UO(或電壓可調(diào)范圍UOmin
27、~ UOmax)和最大輸出電流IOmax是它的特性指標(biāo),這兩個指標(biāo)決定了該電源的適用范圍,同時也決定了穩(wěn)壓器的特性指標(biāo)以及如何選擇變壓器、整流管和濾波電容。而輸出電阻、紋波電壓、溫度系數(shù)是穩(wěn)壓電源的質(zhì)量指標(biāo),它們決定了穩(wěn)壓器的穩(wěn)壓系數(shù)、輸出阻抗、溫度系數(shù)和濾波電容的選擇。 設(shè)計的穩(wěn)壓電源設(shè)計原理圖如圖2.1 圖2.1 穩(wěn)壓電源設(shè)計原理圖 在本次設(shè)計中本分邏輯元件需要穩(wěn)壓電源為5V的直流電,而步進(jìn)電機的額定電壓為12V,所以設(shè)計了5V與12V的額定電壓電源。為了解決這個問題,采用雙路輸出的直流穩(wěn)壓電源。直流穩(wěn)壓電源又
28、分成線性直流穩(wěn)壓電源和開關(guān)型直流穩(wěn)壓電源,因為線性直流穩(wěn)壓電源電路成熟,穩(wěn)定度高,文波小,干擾小而且。 由上圖可見,這個雙路輸出的線形直流穩(wěn)壓電源結(jié)構(gòu)簡單,只用了一個220V變12V的變壓器,一個整流橋,兩塊穩(wěn)壓集成電路7812和7805和四個電容。圖中有一個大容量的電解電容,起低頻濾波的作用。由于其本身的電解比大,對高頻交流成分的濾波效果會比較差,所以為改善濾波電路對高頻抑制特性,在其傍邊并聯(lián)一個高頻濾波性能良好的小電容。而直流穩(wěn)壓電路輸出端的電容是用來改善穩(wěn)壓電源電路的瞬態(tài)負(fù)載響應(yīng)特性。 2.2 單片機模塊設(shè)計 AT89S52單片機是ATMEL公司采用ATMEL高密度非易失存儲器制造
29、技術(shù)來制造的,其主要特點為采用Flash存貯器技術(shù),降低了制造成本,其軟件、硬件與MCS-51完全兼容,同時為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。 2.2.1 單片機AT89S52 1單片機的特點 與MCS-51單片機產(chǎn)品兼容 8K字節(jié)在系統(tǒng)可編程 1000次擦寫周期 全靜態(tài)操作:0-33Hz 三級加密程序存儲器 32個可編程I/O口線 三個16位定時器/計數(shù)器 八個中斷源 全雙工UART串行通道 低功耗空閑和斷電模式 雙數(shù)據(jù)指針 2 AT89S52單片機
30、的管腳說明 單片機AT89S52為40引腳芯片 引腳圖如圖2.2: 圖2.2 單片機AT89S52引腳圖 各引腳說明如下: VCC:電源 GND:地 P0口:P0口十余個8位的漏極開路雙向I/O口,作為輸出口,每位能夠驅(qū)動8個TTL邏輯電平。對P0口寫“1”是,引腳做高阻抗輸入。 在Flash編程的時候,也可用著接收指令字節(jié);在程序進(jìn)行校驗時,輸出指令字節(jié),不過程序校驗的時候外部需要接上拉電阻。 P1口:其是一個內(nèi)部具有上拉電阻的8位雙向I/O口,輸出緩存器能驅(qū)動4個
31、TTL邏輯電平。對其寫“1”時,內(nèi)部的上拉電阻會把端口拉高,此時可作為輸入使用。 在Flash編程與校驗的時候,P1口接收低8位地址字節(jié)如下表2.1 表2.1 P1口接收低8位地址字節(jié) P2口:其是一個內(nèi)部具有上拉電阻的8位雙向I/O口,輸出緩存器能驅(qū)動4個TTL邏輯電平。對其寫“1”時,內(nèi)部的上拉電阻會把端口拉高,此時可作為輸入使用。 在Flash編程和校驗時,P2口接收高8位地址字節(jié)和一些控制信號。 P3口:其是一個內(nèi)部具有上拉電阻的8位雙向I/O口,輸出緩存
32、器能驅(qū)動4個TTL邏輯電平。對其寫“1”時,內(nèi)部的上拉電阻會把端口拉高,此時可作為輸入使用。 P3口亦作為AT89S52特殊功能(即第二功能)使用,如下表所示 在Flash編程和校驗時,P3口接收一些控制信號如下表2.2。 表2.2 P3口接收控制信號 RST:復(fù)位輸入。晶振工作時,引腳持續(xù)2個機器周期高電平將會使單片機復(fù)位??撮T狗及時完成后,引腳輸出96個晶振周期的高電平。 30引腳:地址鎖存控制信號ALE在訪問外部程序存儲器的時候鎖存住低8位地址的輸出脈沖,在Flash編程的時候作為編程的輸入脈沖。
33、 當(dāng)AT89S52從外部程序存儲器執(zhí)行外部代碼時,每個機器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲器時,將不被激活。 31引腳:訪問存儲器控制信號。為了使能從0000H到FFFFH的外部程序存儲器讀取指令,EA必須接GND。 為了執(zhí)行內(nèi)部程序指令,EA接電源 在Flash編程的時候,也要接電源。 XTAL1與XTAL2接晶振電路。 2.2.2 單片機最小系統(tǒng)設(shè)計 單片機最小系統(tǒng)包括有晶振電路設(shè)計、復(fù)位電路設(shè)計、電源電路等,其連線圖如下圖2.3 圖2.3 單片機最小系統(tǒng)連線圖
34、1 其中晶振電路設(shè)計與分析 晶振器特性:XTAL1和XTAL2分別是反向放大器的輸入和輸出。此反向放大器可以當(dāng)作為片內(nèi)振蕩器。而且石晶振蕩和陶瓷振蕩均可采用。有余輸入至內(nèi)部時鐘信號時要通過一個二分頻的觸發(fā)器,因此對外部的時鐘信號的脈寬沒有任何要求,但必須要保證脈沖的高低電平要求的寬度。 2 時鐘電路設(shè)計 單片機的時鐘信號通常用兩種電路形式得到:內(nèi)部振蕩方式和外部振蕩方式。在XTAL1和XTAL2兩個引腳外接晶體振蕩器(簡稱晶振)或陶瓷諧振器,便構(gòu)成了內(nèi)部振蕩方式。由于單片機內(nèi)部有個高增益反相放大器,當(dāng)其外接晶振后,就構(gòu)成了自激振蕩器并會產(chǎn)生振蕩時鐘脈沖。內(nèi)部振蕩方式的外部
35、電路如下圖2.4所示。圖中,兩個電容器起到穩(wěn)定振蕩頻率、快速起振的作用,電容值的范圍一般在5-30pF之間。晶振頻率典型值為12MHz。內(nèi)部振蕩方式所得的時鐘信號比較穩(wěn)定,實用電路中使用較多。 外部振蕩方式則是把外部已有的時鐘信號導(dǎo)入單片機內(nèi)。這種方式適合用來把單片機的時鐘同外部信號保持同步。外部震蕩方式線圖如下圖2.5 圖2.4 內(nèi)部振蕩接線圖 圖2.5 外部振蕩連線圖 3 復(fù)位電路的設(shè)計與分析 復(fù)位電路是在上位或是復(fù)位的工程中,控制CPU的復(fù)位狀態(tài),這段時間內(nèi)讓CPU保持復(fù)位的狀態(tài),而不是以上電或是剛復(fù)位
36、完就開始工作,防止器發(fā)出錯誤的指令,同時也可以提高電磁的兼容性。單片機在啟動的時候都需要進(jìn)行復(fù)位,以使CPU及系統(tǒng)各部件處于初始的狀態(tài),并從初始狀態(tài)開始工作。設(shè)計上電復(fù)位電路圖如圖2.6 圖2.6 上電復(fù)位電路圖 接通電源后,電源便通過電阻對電容進(jìn)行充電。這時電阻有瞬時電流通過,RST腳的電壓等于電阻兩端的電壓之差。也就相當(dāng)于電源的電壓值,也就是高電平。在充電的過程中,隨著電容端的電壓逐步趨于電源電壓,電阻兩端最終將沒有電流通過,這時RST引腳相當(dāng)于地相連,因此RST引腳上的電壓將最終將接近于0。這個過渡過程的長短取決于
37、電阻和電容值的大小。10uF電容足以使RST腳上的電壓在振蕩器啟振后尚有兩個機器周期以上的時間保持高于施密特觸發(fā)器的低門檻電平,從而能夠使整個復(fù)位過程得以完成。 4 單片機復(fù)位后的狀態(tài)與分析 單片機復(fù)位操作使得單片機進(jìn)入初始化狀態(tài),其中包括使程序計數(shù)器PC=0000H,這表明此程序從0000H地址單元開始執(zhí)行。單片機冷啟動之后,片內(nèi)RAM為隨機值,之后運行中的復(fù)位操作不會改變片內(nèi)RAM區(qū)中的內(nèi)容,其中21個特殊功能寄存器被復(fù)位后的狀態(tài)為確定值,如下表所示。值得指出的是,記住一部分特殊功能寄存器復(fù)位后的主要狀態(tài),對于了解單片機的初態(tài),減少應(yīng)用程序中的初始化部分是十分必要的。 注明
38、:表2.3中符號*為隨機狀態(tài); 表2.3 特殊功能寄存器初始狀態(tài) 特殊功能寄存器 初始狀態(tài) 特殊功能寄存器 初始狀態(tài) PSW 00H TH0 00H P0~P3 FFH SBUF 不定 IP ***00000B SCON 00H IE 0**00000B PCON 0*******B A 00H TMOD 00H B 00H TCON 00H SP 07H TL0 00H DPL 00H TH1 00H DPH 00H TL1 00H PSW為00H時,表明選寄
39、存器0組為工作寄存器組; SP=07H,表明堆棧指針指向單片機內(nèi)RAM 07H字節(jié)單元,根據(jù)堆棧操作的先加后壓法則,可以知道第一個被壓入的內(nèi)容寫入到08H單元中; Po~P3=FFH,表明已經(jīng)向各端口寫入1,此時,各端口既可以作為輸入又可以作為輸出; IP=***00000B,表明各個中斷源處在低優(yōu)先級; IE=0**00000B,表明每個中斷源均被關(guān)斷; A=00H,表明累加器已被清零; 此單片機的復(fù)位是由RESET引腳控制的,此引腳與高電平相接時間超過24個振蕩周期之后,單片機便進(jìn)入芯片內(nèi)部復(fù)位狀態(tài),并且一直在這種狀態(tài)下等待,直到RESET引腳轉(zhuǎn)成低電平之后,才會檢查E
40、A引腳是高電平或低電平,若是高電平則會執(zhí)行芯片內(nèi)部的程序代碼,若是低電平便會執(zhí)行外部程序。單片機在系統(tǒng)復(fù)位時,會將其內(nèi)部的一些重要的寄存器設(shè)置成為特定的值,至于內(nèi)部RAM內(nèi)部的數(shù)據(jù)則不變。 2.3 感應(yīng)模塊的設(shè)計與分析 本次設(shè)計中的雨滴感應(yīng)模塊是由雨滴板、LN393低功率低失調(diào)電壓雙比較器、電位器、指示燈等組成。 控制模塊信號接收的連線圖如圖2.7 圖2.7 控制模塊信號接收的連線圖 雨滴感應(yīng)模塊信號輸出接線圖如圖2.8 圖2.8 感應(yīng)模塊信號輸出接線圖 在圖2
41、.7中當(dāng)k1(雨滴板)沒有雨滴的時候1與2腳之間顯示斷開,這時輸入信號為高電平信號,電源指示燈亮,開關(guān)指示燈滅;當(dāng)有雨滴時,1與2引腳顯示接通,這時輸入的為低電平,此時開關(guān)指示燈亮起,為有效信號。 雨滴模塊的實物圖如圖2.9所示: 圖2.9 雨滴模塊的實物圖 2.4 電機及驅(qū)動模塊 2.4.1 電機控制電路的設(shè)計與分析 本次設(shè)計運用步進(jìn)電來取代傳統(tǒng)的雨刷電機,步進(jìn)電機是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蛘呤蔷€位移的開環(huán)控制元件。在沒有超載的情況下,電機的轉(zhuǎn)速和停止的位置只取決于脈沖信號的頻率與脈沖數(shù),而不受負(fù)載變化的影響,即給電機加一個脈沖信號,電機則轉(zhuǎn)過一個步距角。這一
42、線性關(guān)系的存在,加上步進(jìn)電機只有周期性的誤差而沒有累積誤差等特點。使其在速度、位置等控制領(lǐng)域用步進(jìn)電機來控制變的非常的簡單。 1 步進(jìn)電機的基本原理和特點 步進(jìn)電機是一種將電脈沖信號轉(zhuǎn)化為角位移的執(zhí)行機構(gòu)。當(dāng)電機中步進(jìn)驅(qū)動器接收到一個脈沖信號,它就會驅(qū)動步進(jìn)電機按設(shè)定的方向轉(zhuǎn)動一個固定的角度稱之為“步距角”,其旋轉(zhuǎn)是以固定角度一步一步運行的。我們可以通過控制脈沖的個數(shù)來控制角位移量,從而達(dá)到較為準(zhǔn)確定位的目的;同時還可以通過控制脈沖的頻率來控制不進(jìn)電機的轉(zhuǎn)動速度和加速度,來達(dá)到調(diào)速的目的。步進(jìn)電機可以作為一種開環(huán)控制用的特種電機,利用其沒有積累誤差的特點(即精度為100%),廣泛
43、應(yīng)用于各種開環(huán)控制。 常見的步進(jìn)電機分為三種:永磁式(PM),反應(yīng)式(VR)和混合式(HB),永磁式電機步進(jìn)一般為兩相,轉(zhuǎn)矩和體積都較小,步進(jìn)角一般為7.5 度 或15 度;反應(yīng)式電機步進(jìn)一般為三相,可實現(xiàn)較大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5 度,但因為噪聲和振動都很大。歐美等發(fā)達(dá)國家在80 年代就被淘汰了;混合式步進(jìn)電機則混合了永磁式和反應(yīng)式的優(yōu)點。它分為兩相和五相兩種:兩相的步進(jìn)角一般為1.8 度,五相的步進(jìn)角一般為 0.72 度。這種步進(jìn)電機在當(dāng)下的應(yīng)用最為廣泛。 步進(jìn)電機是一種數(shù)字控制電機,它將脈沖信號轉(zhuǎn)變?yōu)榻俏灰疲唇o一個脈沖信號,步進(jìn)電機就相應(yīng)的轉(zhuǎn)動一個角度,因此非
44、常適合于單片機來控制。步進(jìn)電機與其他的控制電機最大的區(qū)別在于步進(jìn)電機是通過輸入的脈沖信號來進(jìn)行控制的,就是說電機的總轉(zhuǎn)動角度是由輸入的脈沖數(shù)決定的,電機的轉(zhuǎn)速是由脈沖信號的頻率決定的。 步進(jìn)電機的控制信號由單片機產(chǎn)生,步進(jìn)電機的驅(qū)動電路根據(jù)控制信號而工作。其基本原理如下: (1)控制換相順序 通電換相這一過程稱為之脈沖分配。 (2)控制步進(jìn)電機的轉(zhuǎn)向 如果給定的工作方式是正序換相通電,則步進(jìn)電機正轉(zhuǎn),如果是按反序通電 換相,則電機就反轉(zhuǎn)。 (3)控制步進(jìn)
45、電機的速度 如果給步進(jìn)電機一個控制脈沖,它就相應(yīng)的轉(zhuǎn)動一步,再發(fā)給一個脈沖,它就會再轉(zhuǎn)一步。兩個脈沖之間的時間間隔越短,則步進(jìn)電機就會轉(zhuǎn)得越快。因此我們可以調(diào)整單片機發(fā)出的脈沖頻率,來對步進(jìn)電機的轉(zhuǎn)速進(jìn)行我們所需的調(diào)動。 (4)步進(jìn)電機的靜態(tài)指標(biāo) 相數(shù):產(chǎn)生不同的對極N、S 磁場的激磁線圈的對數(shù)。常用m來表示。 拍數(shù):在完成一個磁場周期性變化時所需要的脈沖數(shù)。常用n 表示,或者是電機轉(zhuǎn)過一個齒距角所需脈沖數(shù),用四相電機為例,有四相四拍的運行方式:AB-BC-CD-DA-AB,有四相八拍的運行方式: A-AB-B-BC-C-CD-D-DA-A.
46、步距角:對應(yīng)一個脈沖信號,電機轉(zhuǎn)子轉(zhuǎn)過的角位移,用θ 表示。θ=360 度/(轉(zhuǎn)子齒數(shù)*拍數(shù)),以常規(guī)二、四相,轉(zhuǎn)子齒數(shù)為50 齒電機為例。四拍運行時步距角為θ=360 /(50*4)=1.8 度(稱為整步),則八拍運行時步距角為θ=360 /(50*8)=0.9 度(稱之為半步)。 定位轉(zhuǎn)矩:電機在不通電的狀態(tài)下,電機轉(zhuǎn)子的自身鎖定力矩。 靜轉(zhuǎn)矩:電機在額定的靜態(tài)電作用下,就是說電機不作旋轉(zhuǎn)運動時,電機轉(zhuǎn)軸的鎖定力矩。這個力矩是用來衡量電機體積(即幾何尺寸)的標(biāo)準(zhǔn),與驅(qū)動電壓及驅(qū)動電源是無關(guān)的。靜轉(zhuǎn)矩與電磁激磁安的匝數(shù)成正比,同定齒轉(zhuǎn)子間的氣隙有關(guān),但是過分的采用減小氣隙
47、,增加激磁安匝數(shù)來提高靜力矩的做法是不可取的,這樣會造成電機過于發(fā)熱及機械噪音。 (5) 步進(jìn)電機的動態(tài)指標(biāo): 步距角精度:步進(jìn)電機每轉(zhuǎn)一個步距角的實際值與理論值之間的誤差。用百分比表示為:誤差/步距角*100%。不同運行拍數(shù)其精度值不同,四拍運行時的誤差應(yīng)在5%之內(nèi),八拍運行時的誤差應(yīng)在15%以內(nèi)。 失步:電機運轉(zhuǎn)時所運轉(zhuǎn)的步數(shù),不等于理論上的步數(shù)。則稱之為失步。 失調(diào)角:轉(zhuǎn)子齒軸線偏離定子齒軸線的角度,電機運轉(zhuǎn)則必然存在失調(diào)角,由于失調(diào)角產(chǎn)生的誤差,采用細(xì)分驅(qū)動是無法解決的。 最大空載起動頻率:電機于某種驅(qū)動形式、電壓和額定電流的接入下,在
48、不加負(fù)載的情況時,能夠直接起動的最大頻率。 最大空載的運行頻率:電機于某種驅(qū)動形式,電壓和額定電流的狀態(tài)下,電機不加負(fù)載的最高轉(zhuǎn)速頻率。 運行矩頻特性:步進(jìn)電機在某一種測試的條件下,測得運行中輸出的力矩與頻率之間的關(guān)系曲線稱為運行矩頻特性,這是電機諸多動態(tài)曲線中最重要的,也是電機選擇的根本依據(jù)。 電機一旦被選定后,電機的靜力矩則就確定下來了,而動態(tài)力矩且不確定,電機的動態(tài)力矩是于電機運行時的平均電流(而不是靜態(tài)電流)所決定的,平均電流越大,則電機輸出力矩就越大,即電機的頻率特性就越硬。如圖2.10 圖2.1
49、0 步進(jìn)電機特性曲線 如上圖所示,其中,曲線3 的電流最大或者電壓最高;曲線1 的電流最小或者是電壓最低。曲線與負(fù)載橫線的的交點是此負(fù)載的最大速度點。想要使平均電流大,應(yīng)該盡可能的提高驅(qū)動電壓(必須要主要電機的額定電壓值),采用小電感大電流的不進(jìn)電機。 電機的共振點:步進(jìn)電機都會有固定的共振區(qū)域,共振區(qū)一般會在180-250pps 之間(步距角為1.8 度時)或是在400pps 左右(步距角為0.9 度時),電機的驅(qū)動電壓越高,電機電流則越大,負(fù)載越輕,電機的體積越小,則共振區(qū)會向上偏移,反之則亦然,為了使電機輸出大的電矩,同時不失步和整個系統(tǒng)的噪音降低,一般電機的工作
50、點都應(yīng)該偏移共振區(qū)較多。 根據(jù)設(shè)計要求,本設(shè)計選用的步進(jìn)電機為四相五線制5V步進(jìn)電機,其也可以當(dāng)作兩相電機使用。大多步進(jìn)電機在低頻工作的時,都會有振動大、噪聲大的缺點。但是如果采用細(xì)分方式,就能夠很好的解決上面的這個問題,步進(jìn)電機細(xì)分控制,從本質(zhì)上來說是通過對電機的勵磁繞組中電流的控制,來使步進(jìn)電機內(nèi)的合成磁場變?yōu)榫鶆虻膱A形的旋轉(zhuǎn)磁場,從而來實現(xiàn)步進(jìn)電機步距角的細(xì)分,在一般情況下,其合成磁場矢量的幅值是由步進(jìn)電機旋轉(zhuǎn)力矩的大小來決定的,相鄰的兩合成磁場矢量之間的夾角大小會決定步距角的大小,步進(jìn)電機的半步工作方式就蘊涵了細(xì)分這種方式的工作原理。 2.4.2 不進(jìn)電機的驅(qū)動芯片
51、 實現(xiàn)細(xì)分方式有多方法,最常用的是采用脈寬調(diào)制式斬波驅(qū)動的方式,大多數(shù)專用步進(jìn)電機的驅(qū)動芯片都采用這種驅(qū)動方式來進(jìn)行驅(qū)動,ULN2003AN是其中的一種芯片,在本次設(shè)計中我們所使用的為感性負(fù)載步進(jìn)電動機,因此不能直接用單片機來進(jìn)行直接驅(qū)動。選用ULN2003AN芯片來進(jìn)行驅(qū)動不進(jìn)電機。 ULN2003AN是高壓大電流達(dá)林頓晶體管陣列系列產(chǎn)品,具有電流增益高,工作電壓高,溫度范圍寬,帶負(fù)載能力強等特點,適用于各類要求高速大功率驅(qū)動的系統(tǒng),其電路是美國Texas Instruments公司和Sprag公司開發(fā)的晶體管陣列電路。 驅(qū)動芯片ULN2003AN的引腳圖如圖2.11;
52、 圖2.11 驅(qū)動芯片ULN2003AN的引腳圖 驅(qū)動芯片ULN2003內(nèi)部電路原理圖如圖2.12所示 圖2.12 驅(qū)動芯片ULN2003內(nèi)部電路原理圖 各引腳的功能符號如下表2.4所示: 表2.4 驅(qū)動芯片ULN2003各引腳符號 1 步進(jìn)電機與驅(qū)動芯片連接的電路設(shè)計與分析 步進(jìn)電機由驅(qū)動芯片驅(qū)動的連接線圖如圖2.13
53、 圖2.13 步進(jìn)電機由驅(qū)動芯片驅(qū)動的連接線圖 (1)驅(qū)動電機 電機驅(qū)動的關(guān)鍵是精確的控制電機旋轉(zhuǎn)的角度。程序設(shè)計是要根據(jù)傳感器的信息來判斷旋轉(zhuǎn)的方向,以便啟動相應(yīng)的轉(zhuǎn)動方向子程序。正反控制程序分別按控制脈沖順序的要求采用相應(yīng)的控制模型,并判斷是否大幅度轉(zhuǎn)向,采用調(diào)節(jié)脈沖寬度的方式來實現(xiàn)電機調(diào)速。程序設(shè)計時把步進(jìn)電機的控制方式簡歷成控制模型,并以數(shù)據(jù)表形式存于存儲器中,設(shè)計程序是可以直接調(diào)用該存儲器的數(shù)據(jù)。 (2)電機對零 對零點事電機操作最重要的環(huán)節(jié)之一,在步進(jìn)電機進(jìn)行點位控制之前首先必須確定出一個絕對坐標(biāo)系,系統(tǒng)就將對零點位置作為第一個絕對
54、坐標(biāo)系。上電后首先進(jìn)行歸零操作,電機一開始以順時針(或逆時針)方向任意旋轉(zhuǎn),一旦接受到主控臺傳來的信號就立即控制電機停止運動,并等待接收旋轉(zhuǎn)的數(shù)據(jù),然后開始控制電機的運轉(zhuǎn)。 (3)速度的控制 不但要求電機能夠精確的定位,而且還要求快速的到達(dá)預(yù)定的位置,也就是要求準(zhǔn)確的控制步進(jìn)電機的轉(zhuǎn)動速率。步進(jìn)電機的速率控制方法主要是通過改變每個脈沖信號的時間間隔,可以采用設(shè)置定時器的初始時間來獲得延時時間,也可以采用改變程序中的延時時間來滿足。假如轉(zhuǎn)動方向變化比較大時,如果點擊還是按照恒定的轉(zhuǎn)速進(jìn)行工作,那么轉(zhuǎn)動的時間就會比較長。因為步進(jìn)電機的響應(yīng)頻率fs比較低(100步/秒-250步/秒
55、),而電機的啟動頻率還要低于最高空載的啟動頻率,當(dāng)電機啟動后,在進(jìn)入穩(wěn)態(tài)時工作頻率又會遠(yuǎn)遠(yuǎn)的大于啟動頻率。由此可見,一個靜態(tài)的不進(jìn)電機是不可能馬上達(dá)到較高穩(wěn)定工作頻率,而要求在啟動電機的瞬間采取加速措施來完成,一般我們會在起步的時候采用升頻的方式,時間范圍約為0.1-1秒;反之,從高速運轉(zhuǎn)到停止的時候有件減速的措施,而且減速時的加速度的絕對值要比加速時的加速度要大,這樣所需的時間就會變短。為了解決快速而不失步的問題,對電機提出了相應(yīng)的要求,如下“低速啟動接著高速運轉(zhuǎn),然后降低速度,最后停止”。這種三段允許頻率方式我們利用程序的延時來完成。 利用高耐壓,大電流的達(dá)林頓陳列ULN2003
56、直接與負(fù)載電機相連接,并驅(qū)動步進(jìn)電機,電機的轉(zhuǎn)動速度由機械設(shè)計和單片機程序進(jìn)行控制。由該芯片在5V的工作電壓下與TTL信號和CMOS電路直接相連,保證負(fù)載電流的供給,同時也減少了其他驅(qū)動芯片容易被燒的事故。 2 電機與控制模塊連接的實物圖如圖2.14 圖2.14 電機與控制模塊連接的實物圖 單片機上用P3.0、P3.1、 P3.2、P3.3四個輸出口與圖中驅(qū)動芯片的1B、2B、3B、4B四個引腳相連,作為信號的輸入,從而控制步進(jìn)電機作相應(yīng)的運轉(zhuǎn)。其中電機的四根控制線有電流通過時,指示燈不斷的閃爍。 第三章 汽車自動雨
57、刷控制系統(tǒng)軟件的設(shè)計 系統(tǒng)軟件的設(shè)計包括有主程序的設(shè)計,電機轉(zhuǎn)速設(shè)置程序設(shè)計和各中斷服務(wù)等程序的設(shè)計。 3.1 主程序設(shè)計 本次設(shè)計單片機的控制程序采用51匯編語言編寫的,在編寫過程中,使用結(jié)構(gòu)化、模塊化的形式編寫,整個程序的清單見附錄II。本章將對本系統(tǒng)的程序做下具體的分析。 首先我來分析主程序的流程,其主程序程序流程圖如圖3.1所示 圖3.1 主程序程序流程圖 用兩個定時計數(shù)器,Timer0用中斷方式(每定時10ms中斷一次);Timer1用查值方式,用來計數(shù)(Timer0每中斷一
58、次,就來讀取他的一次值,并作出 相應(yīng)的處理) 3.1.1主程序的初始化內(nèi)容 如圖3.1顯示,本設(shè)計的主程序設(shè)計比較簡單。程序首先送初值,即給AT89S52送取一個占空比為50%的數(shù)據(jù)。(當(dāng)然也可送其它占空比數(shù)據(jù),這里為了更好的展示,根據(jù)不同系統(tǒng)的需要,其值是可變)。接著對數(shù)據(jù)和中斷進(jìn)行初始化。MCS-51系列單片機復(fù)位后,(PC)=0000H,而0003H~002BH分別為各中斷源的入口地址。所以,編程的時候應(yīng)在0000H處寫一條跳轉(zhuǎn)指令。當(dāng)CPU接收到中斷請求信號并做出響應(yīng)后,CPU會把當(dāng)前的PC內(nèi)容壓入堆棧中進(jìn)行保護(hù),然后跳轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序入口執(zhí)行相應(yīng)的中斷程序。一般會
59、在相應(yīng)的中斷服務(wù)程序入口處寫一條跳轉(zhuǎn)指令,并以跳轉(zhuǎn)指令的目標(biāo)地址作為中斷服務(wù)程序的其實地址進(jìn)行編程。 MCS-51系列單片機復(fù)位后,除了SP為07H,P0~P3口為FFH外,其余給內(nèi)存單元內(nèi)容均為00H,所以應(yīng)對IE、IP進(jìn)行初始化編程,用來開放CPU的中斷,允許某些中斷源中斷設(shè)置中斷優(yōu)先級等。 3.1.2 代碼轉(zhuǎn)換程序 人們?nèi)粘A?xí)慣用十進(jìn)制的數(shù),而計算機鍵盤的輸入和輸出以及顯示常采用二進(jìn)制編碼的十進(jìn)制數(shù)或ASCII碼。因此,在程序設(shè)計中經(jīng)常需要進(jìn)行代碼的轉(zhuǎn)換。各種代碼之間轉(zhuǎn)換十分有用,除了對硬件邏輯轉(zhuǎn)換外,程序設(shè)計中還會采用算法處理和查表方式。 3.2 中斷服務(wù)程序
60、 中斷服務(wù)的程序是一種具有特定功能的獨立程序段。它為中斷源所需要的特定要求而服務(wù),以中斷返回指令而結(jié)束。由于工序操作和計數(shù)請求響應(yīng)采用中斷處理方式,所以中斷服務(wù)程序設(shè)計是本系統(tǒng)軟件設(shè)計的核心。在中斷響應(yīng)過程中,斷點的保護(hù)和恢復(fù)主要由單片機內(nèi)部的電路來實現(xiàn)。在編寫中斷服務(wù)程序時,必須要考慮是否有需要保護(hù)的現(xiàn)場,也就是說在主程序中用到的寄存器、存儲單元等,同樣在中斷程序中也要使用。如果有,應(yīng)該注意不要遺漏;在恢復(fù)現(xiàn)場時,需要注意壓棧與出棧指令必須成對使用,先入棧的內(nèi)容應(yīng)該后彈出。另外,還要及時清除需要用軟件清除的中斷標(biāo)志。 3.2.1中斷服務(wù)程序的設(shè)計 本次設(shè)計中采用的
61、是工序操作中斷服務(wù)程序,此程序中用延時表示工序操作的處理過程。其程序流程圖如圖3.2所示 圖3.2 工序操作程序流程圖 3.3檢測脈沖及電機運行程序的設(shè)計 檢測出雨量傳感器輸出的脈沖是實現(xiàn)本系統(tǒng)的關(guān)鍵步驟,通過對雨量大小的檢測的信息能準(zhǔn)確控制步進(jìn)電極的運行。實現(xiàn)檢測的程序流程圖如下圖3.3所示 Timer0 保護(hù)現(xiàn)場 關(guān)閉Timer0 Timer1 讀取Timer1 判斷Timer1的值 調(diào)用小雨程序處理方案 調(diào)用中雨程序處理方案 調(diào)用大雨程序處理方案 Timer0 Timer1清零 中斷返回 開啟 Timer0 Timer1
62、 大于160 大于等于80小于等于160 小于80 圖3.3 實現(xiàn)檢測的程序流程圖 第四章 汽車自動雨刷控制系統(tǒng)調(diào)試 本次總體硬件設(shè)計結(jié)束后,隨后完成了實驗板的焊接工作。在這硬件都完成之后,然后對軟件進(jìn)行調(diào)試工作。 4.1 調(diào)試單片機最小系統(tǒng) 首先在單片機的P2.0引腳接個閃燈(電源 發(fā)光二極管 電阻和電容串聯(lián)接入單片機引腳P2.0引腳),然后通過實驗板上的下載口向單片機內(nèi)下載閃燈程序,下載完成后發(fā)現(xiàn)閃燈沒有進(jìn)行閃燈,進(jìn)過對比最小程序電路圖,發(fā)現(xiàn)單片機第31個引腳沒有接電源。出現(xiàn)了一些連線的錯誤,經(jīng)改正后,閃燈能夠按照程序理想的進(jìn)行閃燈工作
63、。 因此,可以斷定單片機的最小系統(tǒng)的接線沒有問題,最小系統(tǒng)調(diào)試完成。 4.2 問題分析及雨滴感應(yīng)模塊調(diào)試 當(dāng)最小系統(tǒng)調(diào)試完成之后,接下來向單片機內(nèi)下載步進(jìn)電機驅(qū)動程序,電機無法工作,接通電源一段時間,步進(jìn)電機出現(xiàn)發(fā)熱現(xiàn)象。出現(xiàn)這種現(xiàn)象考慮到問題可能有以下幾種情況: 1,雨滴感應(yīng)模塊除了問題,沒能夠傳送出感應(yīng)信號 2,系統(tǒng)程序編程出現(xiàn)了錯誤,對信號的接收和處理不到位 3,步進(jìn)電機驅(qū)動模塊可能沒法接收信號 接下來對雨滴感應(yīng)模塊做了具體的分析,用萬能表檢查,當(dāng)沒有雨滴的時候雨滴模塊輸出電壓接近電源電壓,為高電平信號;當(dāng)有雨滴的時候輸出為低
64、電壓,接近于0V,為低電平,輸出為有效信號。同樣檢測單片機接收引腳的時候同樣如此,由此可以的斷定在雨滴感應(yīng)信號的發(fā)出與接收這塊是沒有問題的。 4.3 步進(jìn)電機驅(qū)動模塊調(diào)試 如果步進(jìn)電機要是沒有問題的話,直接向單片機內(nèi)下載電機驅(qū)動程序的話,步進(jìn)電機應(yīng)該會做相應(yīng)的相應(yīng)。有了這個想法之后,在網(wǎng)上直接下載了電機的驅(qū)動程序,做了相應(yīng)的改動和轉(zhuǎn)換格式之后下載到單片機內(nèi),完成之后,電機能夠做相應(yīng)的正轉(zhuǎn)與反轉(zhuǎn)。 電機的轉(zhuǎn)動,證實了,電機驅(qū)動模塊工作正常。接下來的問題那邊是單片機的程序問題。 4.4 系統(tǒng)軟件調(diào)試 上面幾步對系統(tǒng)的硬件做了相應(yīng)的調(diào)試之后,基本上能夠把問題之所在控
65、制在了軟件錯誤。 由于對電機的調(diào)試,控制程序能夠控制步進(jìn)電機做正反轉(zhuǎn),便引出了一個想法,那就是如果在步進(jìn)電機驅(qū)動程序中加入雨滴感應(yīng)信號的檢測程序,然后在做相應(yīng)的變動那便是一個自動雨滴控制程序。本次設(shè)計只采用了一塊雨滴感應(yīng)模塊,則雨滴感應(yīng)信號也就只有一個輸入,程序簡單易懂。 根據(jù)觀察調(diào)試,把電機正反轉(zhuǎn)系統(tǒng)編譯改成如下程序 //**********************正向旋轉(zhuǎn)相序表***************************** unsigned char code FFW[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};
66、 //**********************反向旋轉(zhuǎn)相序表***************************** unsigned char code REV[8]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08}; 重新下載到單片機后,問題又出現(xiàn)了,步進(jìn)電機有時候一直正傳,有時候電機正傳結(jié)束后,停止一段時間接著正傳。問題便出在了反轉(zhuǎn)程序的編輯和調(diào)用上。對反轉(zhuǎn)程序做了進(jìn)一步修改,完成后再次下載到單片機內(nèi),這時步進(jìn)電機的現(xiàn)象是:步進(jìn)電機做正傳之后,停止一段時間,接下來有時會做反轉(zhuǎn)相應(yīng),有時候不動,然后緊跟著又做起了正轉(zhuǎn)相應(yīng)。這里對電機發(fā)熱的現(xiàn)象做了有效的改進(jìn)。 通過上面的現(xiàn)象,對延時程序做了修正如下 //***********************延時子程序******************************** void delay(unsigned int t) { unsigned int k; while(t--) {
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024《增值稅法》全文學(xué)習(xí)解讀(規(guī)范增值稅的征收和繳納保護(hù)納稅人的合法權(quán)益)
- 2024《文物保護(hù)法》全文解讀學(xué)習(xí)(加強對文物的保護(hù)促進(jìn)科學(xué)研究工作)
- 銷售技巧培訓(xùn)課件:接近客戶的套路總結(jié)
- 20種成交的銷售話術(shù)和技巧
- 銷售技巧:接近客戶的8種套路
- 銷售套路總結(jié)
- 房產(chǎn)銷售中的常見問題及解決方法
- 銷售技巧:值得默念的成交話術(shù)
- 銷售資料:讓人舒服的35種說話方式
- 汽車銷售績效管理規(guī)范
- 銷售技巧培訓(xùn)課件:絕對成交的銷售話術(shù)
- 頂尖銷售技巧總結(jié)
- 銷售技巧:電話營銷十大定律
- 銷售逼單最好的二十三種技巧
- 銷售最常遇到的10大麻煩