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