欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機自動窗簾控制系統設計文檔 [打印本頁]

作者: COMK    時間: 2018-5-26 02:04
標題: 單片機自動窗簾控制系統設計文檔
項目  自動窗簾控制系統

摘 要

自動控制屬于電子及信息科學的一個重要分支,并且在現代家居中有著較好的目前發展前景。目前,家庭居住環境的采光及避光問題主要采用的是手動開閉窗簾,手動開閉不僅費力而且很多方面不夠人性化,可能對用戶造成一定的困擾,窗簾控制系統可以解決這些問題。本文綜述了自動窗簾控制系統的設計與制作過程,介紹了設計制作一個完整的窗簾控制系統需要做的理論分析以及其制作過程。自動窗簾控制系統核心采用的是單片機AT89S52,其次利用了光照傳感器、鍵盤顯示接口電路以及信號調理電路等外圍電路,整個系統在各模塊的配合下可實現半自動控制、自動控制、定時控制等功能。該設計在理論層面上,用程序語言驅動各模塊工作,實現系統的內在聯系,在應用層面上則采用Protel軟件進行原理圖設計。

自動窗簾控制系統的構成主要由光照傳感電路、系統主控模塊電路、電源轉換電路、電機控制電路、鍵盤以及顯示電路等組成,重點討論了窗簾自動控制系統的設計過程、硬件選用和軟件調試等問題,通過本系統可實現利用光照強度以及設置時間來控制窗簾自動開閉。



目錄

前  言              1

第1章 緒論              2

1.1 課題研究背景及意義              2

1.2 基本內容安排              2

1.3 設計思想及基本功能              3

第2章 總體電路設計及其原理說明              4

2.1 方案選取              4

2.2 系統總體結構設計              5

    2.2.1系統基本功能              5

    2.2.2系統總體結構設計              6

第3章 硬件分析與設計              7

3.1電源電路設計              7

3.2 89C52單片機及相關電路              8

3.2.189C52單片機概述              8

3.2.2晶振電路              8

3.2.3復位電路              9

3.2.4時鐘電路              10

3.2.5鍵盤電路              12

3.2.6 顯示電路              13

3.2.7 A\D轉換電路              15

3.2.8光敏傳感器              17

3.2.9 步進電機              18

3.2.10信號校正電路              19

第4章 程序分析與設計              21

4.1 主程序設計              21

4.2 主要子程序設計              22

    4.2.1 鍵盤程序設計              22

    4.2.2定時程序設計              24

4.2.3步進電機程序設計              25

總結              26

致謝              27

參考文獻              28

附錄一              29

附錄二              30

1



前  

伴隨著信息化時代的到來,人們的生活速度以及對生活質量的追求也在大幅提高。電子產品智能化速度的加快,也使人們的工作、生活和通訊的關系日益緊密。智能化的產品設計在改變人們工作方式與生活習慣的同時,讓人們對生活質量的提升提出了更高的要求,方便、舒適成了人們所追求的生活方式,在現代家庭生活環境中,居家環境早已不僅僅局限在物理空間上,人們更為關注的是一個安全、方便、舒適的環境。智能化的電子產品以及設計將以前的被動靜止物體轉變為人們能夠方便操控的工具,這些產品具有提供全方位的信息交換的功能,不僅能夠優化人們的生活方式,幫助人們合理的安排時間,增強居家環境的安全性,甚至還可以為各種能源費用節約資金。

在智能化產品中,單片機的應用已經越來越廣泛,單片機以它體積小、質量輕、耗電省、可靠性高、價格低等優點,開始不斷發展,并廣泛應用于儀器儀表、家用電器、醫療設備、航天航空領域、工業專用設備的管理及過程控制等領域,在很多的大中型的電氣設備以及小型的電子產品中也用到了單片機進行控制。

針對人們對智能化的需求以及對舒適生活的追求,窗簾自動控制系統改變了傳統窗簾的劣勢,它可以根據外界光照強度的不同而自動開閉窗簾,也可以根據人們設定的時間來控制窗簾。該系統利用光敏電阻檢測光照強度的變化,并且將光敏檢測模塊的電阻變化轉化為電壓變化,然后將電壓變化的信號送單片機,單片機通過電機驅動模塊控制著步進電機的正反轉實現窗簾的來回移動。本設計正是把利用AT89C52 單片機的優點以及簡單實用性,順利的完成了對智能控制的要求,并且為智能化的家居設備提供了良好的基礎。此外,對該系統進行擴展,比如可以加上防火,防盜,甚至室內煤氣濃度監測等功能,會使該系統更具有實用性,而且也完善了系統。


第1章 緒論
1.1 課題研究背景及意義

21世紀是信息化的時代,知識與科技成為時代的潮流,在它們的推動下,智能化也因此得到了很大的發展,其作用在社會生活中日益得到彰顯。智能控制系統主要利用計算機技術、網絡通信技術、綜合布線技術等現代化技術的有機結合而發揮作用。在通信技術、計算機技術、網絡技術、智能控制技術的迅猛發展潮流下,家庭生活實現了現代化與智能化,居家環境也變得更加舒適與安全。智能化控制的工作原理自然離不開運算和控制單元,而該系統采用的主控器件AT89C52,正是運算與控制單元的集合體。系統的整體主要由硬件和軟件兩部分組成。硬件部分由單片機擴展的外圍電路以及各種實現單片機系統控制功能的接口電路組成;軟件部分主要由單片機系統實現其特定控制功能的各種程序組成。本設計中介紹了自動窗簾控制系統的硬件構成以及軟件設計過程,以盡最大可能滿足不同人對窗簾開閉的不同需求。同時,系統在針對人們一般需求的設計開發外,還提出多種解決方案,在考慮到經濟性和簡便性的前提下,可以供日后對控制系統的功能進行擴展。

1.2 基本內容安排

該設計通過分析電動窗簾的現狀和人們對自動窗簾控制系統的功能的需求,從而對自動窗簾控制器進行總體的設計。系統的總體設計采用以步進電機作為單片機控制元件,執行窗簾開閉的主要任務;以光敏電阻作為檢測元件,以提供單片機外界光照的變化;89C52單片機作為主控制芯片,控制著整個系統的運行,此外,輔助以鍵盤和顯示電路,在各個電路模塊的配合下最終實現了自動窗簾控制系統的智能化要求。

自動窗簾控制系統設計過程主要分為一下幾個章節:

(1)緒論:介紹目前國內外電動窗簾的發展現狀和研究的目的和意義。

(2)總體設計方案:概括自動窗簾控制系統的的總體設計方案選取以及硬件設計的總況。

(3)硬件設計:采用89C52單片機作為控制核心,并且輔助以外圍電路,其中包括電源電路,定時電路,步進電機控制電路,鍵盤/顯示電路等一系列相關電路。

(4)軟件設計:介紹各個功能模塊的的設計流程以及設計思路。

(5)總結:針對設計中的不足進行再思考以及提出自動窗簾控制系統功能的擴展。


1.3  設計思想及基本功能

該系統具有一般的窗簾控制系統的最基本的功能,即通過電動按鈕來開閉窗簾,在此基本功能的前提下,本設計根據需求還設計了可以根據光照強度和設定時間自動開閉窗簾的功能,在選取設計方案和采用元器件方面,該系統本著簡單實用經濟的思想,盡量簡化電路設計,用最簡單的電路布線和選用最經濟實用的器件來達到設計要求。

自動窗簾控制系統具有以下幾個基本功能:

(1)手動控制:該功能是根據用戶的需求通過按鍵進行窗簾的開關,此功能可以使窗簾的開閉處于任何一種狀態;

(2)光照自動控制:系統可以根據用戶設定的光照強度值通過感光器采集光照自動開光窗簾;

(3)時間控制:此功能是根據用戶設定的時間一次性開關窗簾,并顯示當前溫度。


(4)溫度報警系統:可以自行設置溫度報警溫度。

(5)時間顯示及鬧鐘系統:可以自行設置鬧鐘時間。

(6)手動自動控制按鍵隨時切換。


第2章 總體電路設計及其原理說明

2.1 方案選取

    單片機在各種電子產品中的應用已經越來越廣泛,很多的電子產品利用單片機所取得的便利性得到了人們的好評,針對單片機控制的自動窗簾控制系統的智能化要求,實現其自動控制的方案有兩種:

    方案(一)基于溫度檢測以及聲控檢測器件的自動控制

    方案(二)基于光照強度器件的自動控制

    這二個方案都是基于單片機控制的,采用步進電機控制以及液晶顯示,不同的設計部分在于檢測器件的選取上。

方案(一)的系統框圖如圖2.1:





             圖2.1   方案(一)的原理框圖


方案(二)的系統框圖如圖2.2。

                      圖2.2   方案(二)的原理框圖

    方案(一)與方案(二)的區別主要在于檢測器件的應用,方案(一)采用溫度采集和聲音檢測元件,通過設定的溫度來控制窗簾的開閉,以減少光照對室內的溫度影響,利用聲音控制雖然方便性有所提高,但是其誤差較大。方案(二)采用的時鐘模塊實用性更強。綜合考慮以上因素,系統設計采用方案(二)。

2.2總體方案設計

自動窗簾控制系統總體方案設計是基于滿足設計要求的前提并且根據理論上的可實現性和硬件上的經濟實用性,而進行設計的重要環節。本章從人們對系統功能需求出發,在綜合考慮各種因素的情況下,設計出自動控制系統的總體構架,并且在基本功能需求的基礎上盡可能考慮系統的可擴展性。

2.2.1系統基本功能

隨著人民生活水平的不斷提高,人們對家庭生活舒適性的需求越來越強烈,窗簾作為每個家庭生活中最必須的家居用品之一,自然也需要滿足人民更舒適性的需求。窗簾最基本的作用無非是保護業主的個人隱私以及遮陽擋塵等功能,但傳統的窗簾您必須手動去開關,每天早開晚關也是挺麻煩的,特別是別墅或復式房的大窗簾,比較長,而且重,用時需要很大的力才能開關窗簾,特別不方便;于是電動窗簾應運而生。現有的電動窗簾都可以自動開關閉窗簾,到了時間自動控制窗簾的開關,可以根據光的但是他們也有些缺點。窗簾控制器的自動開關如何讓窗簾能夠開關自如,停機的時間是否到位。

電動窗簾主要有以下幾大功能:(1)手動控制:該功能使電動窗簾具有手動正傳、手動反轉 和手動停止的功能。而且增加了工作狀態指示,電機工作在正傳、反轉和停止狀態的時候,發光二極管管均有不同工作狀態指示。(2)自動控制:根據光照強弱來控制窗簾的打開與關閉。(3)時間控制 “天黑關閉,天亮打開”具有智能管理,不產生誤動作。窗簾的正轉、反轉和停止功能可由單片機輸出電平來控制步進電機的運轉以實現。環境亮度的控制通過光敏電阻和運放組成的電路來控制單片機輸出電平繼而控制電機的正轉和反轉。時間自動控制可以由定時器來控制


2.2.2系統總體結構設計

自動窗簾控制系統設計的總體框圖如圖2.3所示。

圖2.3  電動窗簾控制器結構框圖

根據光照來開閉窗簾主要原理是用光敏電阻采集外界的光強度,從光傳感器采集的信號利用信號校正電路放大,濾波后輸入單片機。傳入的信號由89C52單片機來控制,并且做出響應,以實現電機的正轉、反轉與停止。顯示模塊是用來顯示自動窗簾控制器的各種狀態。鍵盤作為輸入設備,通過不同按鍵來控制單片機進行各種運轉狀態。


第3章 硬件分析與設計3.1 AT89S52單片機及相關電路3.1.1 AT89S52單片機概述

AT89S52的塑封圖如圖3.1所示,它為DIP40雙列直插塑料封裝。AT89S52作

為系統的核心控制元件,只有它能正常工作后才能使其它的元件進入正常工作狀態。因此,下面對AT89S52進行必要的說明,AT89S52的管腳如圖3.2所示。

圖3.1  AT89C52封裝圖                      圖3.2  AT89s52引腳圖

單片機電路在本系統中作為主控芯片首先對外部電路采集到的溫度信號進行反應,發PWM信號給L297,然后通過L298驅動步進電機。同時按鍵掃描實現手動自動控制。

用DS1302時鐘芯片,DS18B20溫度傳感器,以及1602液晶,實現時間、溫度的顯示。以及鬧鐘、溫度報警等功能。

(1)VCC:40腳,供電電壓,一般接+5V電壓。

(2)GND:20腳,接工作地。

(3)P0口:1~8腳,P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。

當訪問外部程序和數據存儲器時,P0口也被作為低8位地址/數據復用。在這種模式下,P0具有內部上電阻。但是P0口在程序校驗作為輸出指令字節時,需要外部加上拉電阻,一般上拉電阻選4.7K~10K為宜。本設計中用5.1K的排阻對P0口進行上拉電平。

(4)P1口:32~39腳,P1口是一個內部具有上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4個TTL門電流。P1端口寫入“1”后,被內部上拉電阻把端口拉高,此時可以作為作輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流。

(5)P2口:20~27腳,P2 口是一個具有內部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅動4 個TTL 邏輯電平。對P2 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。

(6)P3口:10~17腳,P3 口是一個具有內部上拉電阻的8 位雙向I/O 口,P3 輸出緩沖器能驅動4 個TTL 邏輯電平。對P3 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。

(7)RESET:9腳,復位輸入端。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。

(8):30腳,當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于系統校驗。

(9)PSEN:29腳,外部程序存儲器的選通信號。

(10):31腳,訪問外部程序存儲器控制信號。當為低電平時,讀取外部程序存儲器;當端為高電平時,則讀取內部程序存儲器,設計中一般接高電平。

(11)XTAL1:19腳,振蕩器反相放大器和內部時鐘發生電路的輸入端。如采用外部時鐘源時,XTAL1為輸入端。

(12)XTAL2:18腳,振蕩器反相放大器的輸出端。如采用外部時鐘源時,XTAL2應懸空不接。

3.2.2晶振電路

電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產生基準頻率的。通過基準頻率來控制電路中的頻率的準確性。同時,它還可以產生振蕩電流,向單片機發出時鐘信號。

圖3.3是單片機的晶振電路。片內電路與片外器件就構成一個時鐘產生電路,CPU的所有操作均在時鐘脈沖同步下進行。片內振蕩器的振蕩頻率非常接近晶振頻率,一般多在1.2MHz~24MHz之間選取。C1、C2是反饋電容,其值在20pF~100pF之間選取,典型值為30pF。本電路選用的電容為30pF,晶振頻率為12MHz。

振蕩周期=

                      機器周期

                      指令周期T=

XTAL1接外部晶體的一個引腳,XTAL2接外晶體的另一端。在單片機內部,接至上述振蕩器的反相放大器的輸出端。采用外部振蕩器時,對HMOS單片機,該引腳接外部振。在石英晶體的兩個管腳加交變電場時,它將會產生一定頻率的機械變形,而這種機械振動又會產生交變電場,上述物理現象稱為壓電效應。一般情況下,無論是機械振動的振幅,還是交變電場的振幅都非常小。但是,當交變電場的頻率為某一特定值時,振幅驟然增大,產生共振,稱之為壓電振蕩。這一特定頻率就是石英晶體的固有頻率,也稱諧振頻率。石英晶振起振后要能在XTAL2線上輸出一個3V左右的正弦波,以便使MCS-51片內的OSC電路按石英晶振相同頻率自激振蕩。通常,OSC的輸出時鐘頻率fOSC為0.5MHz-16MHz,典型值為12MHz或者11.0592MHz。電容C1和C2可以幫助起振,典型值為30pF,調節它們可以達到微調fOSC的目的。

圖3.3  單片機晶振電路圖

3.2.3復位電路

復位電路的主要功能是使單片機進行初始化,在初始化的過程中需要在復位引腳RST上加大于2個機器周期的高電平。復位后的單片機地址初始化為0000H,然后繼續從0000H單元開始執行程序。在復位電路中提供復位信號,等到系統電源穩定后,再撤銷復位信號。但是為了在復位按鍵穩定的前提下,電源穩定后還要經一定的延時才撤銷復位信號,以防在按鍵過程中引起的抖動而影響復位。圖3.4所示的RST 復位電路可以實現上述基本功能。

圖3.4  復位電路圖

3.2.4時鐘電路

DS1302芯片的接口電路如圖3.5所示。

                         圖3.5  時鐘電路圖

本設計使用的實時時鐘電路芯片是美國DALLAS公司生產的一種高性能、低功耗、帶RAM的實時時鐘電路芯片DS1302,時鐘芯片在本系統中除了起到時間的顯示外,還在時間控制中起到重要作用,所以是必不可少的。

其引腳如圖3.14所示。VCC1為后備電源,VCC2為主電源。在主電源關閉的情況下,也能保持時鐘的連續運行。DS1302由VCC1或VCC2兩者中的較大者供電;當VCC2大于VCC1+0.2V時,VCC2給DS1302供電;當VCC2小于VCC1時,DS1302由VCC1供電。X1和X2是振蕩源,外接32.768kHz晶振。是復位/片選線,通過把輸 入驅動置高電平來啟動所有的數據傳送。                       

3.14 DS1302引腳圖

輸入有兩種功能。首先,接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,提供終止單字節或多字節數據的傳送手段。當為高電平時,所有的數據傳送被初始化,允許對DS1302進行操作。如果在傳送過程中置為低電平,則會終止此次數據傳送,I/O引腳變為高阻態。上電運行時在Vcc≥2.5V之前,必須保持低電平。只有在SCLK為低電平時,才能將置為高電平。I/O為串行數據輸入輸出端(雙向),SCLK始終是輸入端。本設計入端。本設計連接圖如圖3.15所示,其中C1和C2起微調晶振的作用。

3.2.5溫度檢測器模塊
溫度是一種最基本的環境參數,人民的生活與環境的溫度息息相關,DS18B20裝置適用于人民的日常生活和工、農業生產用于溫度測量。由半導體公司生產的DS18B20型單線智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器,可廣泛用于工業、民用、軍事等領域的溫度測量及控制儀器、測控系統和大型設備中。它具有體積小,接口方便,傳輸距離遠等特點。

本系統中,DS18B20作為溫度傳感器,在本系統中可以實時的采集環境溫度,并在液晶屏進行顯示。當溫度超過設定的上限時,進行溫度報警。
DS18B20的性能特點:①采用單總線專用技術,既可通過串行口線,也可通過其它I/O口線與微機接口,無須經過其它變換電路,直接輸出被測溫度值(9位二進制數,含符號位),②測溫范圍為-55℃-+125℃,測量分辨率為0.0625℃,③內含64位經過激光修正的只讀存儲器ROM,④適配各種單片機或系統機,⑤用戶可分別設定各路溫度的上、下限,⑥內含寄生電源。
DS18B20內部結構主要由4部分組成:64位光刻ROM,溫度傳感器,非揮發的溫度報警觸發器TH和TL,配制寄存器。DS18B20的管腳排列如圖2所示。
光刻ROM中的64位序列號是出廠前被光刻好的,他可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開始8位(28h)是產品類型標號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環冗余校驗碼(CRC=x8+x5+x4+1)。光刻ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現一根總線上掛接多個DS18B20的目的。

采用數字溫度傳感器DS18B20,與傳統的熱敏電阻相比, 他能夠直接讀出被測溫度并且可根據實際要求通過簡單的編程實現9~12位的數字值讀數方式。可以分別在93.75ms和750ms內完成9位和12位的數字量, 并且從DS18B20讀出的信息或寫入DS18B20的信息僅需要一根口線( 單線接口) 讀寫, 溫度變換功率來源于數據總線, 總線本身也可以向所掛接的DS18B20供電, 而無需額外電源。因而使用DS18B20可使系統結構更趨簡單,可靠性更高,成本更低。測量溫度范圍為~55℃~+125℃。C,在一10℃~+85℃。C范圍內,精度為±0.5℃。DS1822的精度較差為±2℃。現場溫度直接以“一線總線”的數字方式傳輸,大大提高了系統的抗干擾性。其引腳分布如圖2-4所示

圖2-4 DS18B20引腳圖

引腳功能如下:

NC(1 、2 、6 、7 、8腳) :空引腳,懸空不使用。

VDD(3腳):可選電源腳,電源電壓范圍3~5.5V。

DQ(4腳):數據輸入/輸出腳,漏極開路,常態下高電平。


                                                                3.2.5鍵盤電路

鍵盤在單片機應用系統中能實現向單片機輸入數據,傳送命令等功能,是人工干預單片機的主要手段。本設計中的鍵盤采用獨立鍵盤式。SW1為調整時間以及溫度、鬧鐘的進入、退出按鍵。SW2為選擇調整時間、調整鬧鐘、調整溫度報警上限。SW3為 加1鍵。SW4為 減1 鍵。SW5為窗簾自動、手動控制切換。SW6為手動控制時打開與關閉的控制。

如圖3.6所示。


                         圖3.6 鍵盤接口電路

獲取鍵盤信息的方法有2種,我們經常用到的是掃描法。在掃描法中,所有的行線固定為輸出端口,并依次輸出低電平;所有列線固定為輸入端口,用來檢測按鍵狀態。當全部按鍵均松開時,從列線上檢測不到行線輸出的低電平。當某個按鍵按下時,只有在對應的行線輸出低電平時才能在對應的列線端口檢測到低電平。按鍵的觸點在閉合和斷開時均會產生抖動,這時觸點的邏輯電平是不穩定的,如果不妥善處理,將會引起按鍵命令的錯誤執行或重復執行。一般消除抖動采用軟件方法來解決,將在軟件部分介紹這點。



3.2.6 顯示電路

液晶顯示器以其微功耗、體積小、顯示內容豐富、超薄輕巧的諸多優點,在各種小系統中得到了更廣泛的應用。本設計中使用的液晶顯示模塊是LCD1602。圖3.3所示為本設計LCD1602的連接圖。

                      圖3.3 LCD1602連接圖

LCD1602是一種用5x7點陣圖形來顯示字符的液晶顯示器模塊,它顯示的容量為2行16個字。其實物如圖3.4和圖3.5所示,它的顯示內容豐富、體積小、美觀和易于控制都是本設計選擇作為顯示模塊的原因。其引腳結構圖如圖3.6所示。

圖3.4 LCD1602正面圖

圖3.5  LCD1602反面圖

圖3.6  LCD1602引腳結構圖


3.2.7光敏傳感器

窗簾自動控制系統的光控功能是可以根據光照的強弱來自動控制窗簾的開閉的,因此需要用到光照傳感元器件,在本設計中采用了光敏電阻。

光敏電阻又稱光導管,常用的制作材料為硫化鎘,另外還有硒、硫化鋁、硫化鉛和硫化鉍等材料。這些制作材料具有在特定波長的光照射下,其阻值迅速減小的特性。這是由于光照產生的載流子都參與導電,在外加電場的作用下作漂移運動,電子奔向電源的正極,空穴奔向電源的負極,從而使光敏電阻器的阻值迅速下降。光敏電阻屬半導體光敏器件,除具靈敏度高,反應速度快,光譜特性及r值一致性好等特點外,在高溫,多濕的惡劣環境下,還能保持高度的穩定性和可靠性,可廣泛應用于照相機,太陽能庭院燈,草坪燈,驗鈔機,石英鐘,音樂杯,禮品盒,迷你小夜燈,光聲控開關,路燈自動開關以及各種光控玩具,光控燈飾,燈具等光自動開關控制領域。

應用光控原理工作,天亮窗簾自動打開,天黑窗簾自動關閉。由運放組成比較電路,同向輸入端有兩個電阻分壓得到一個電壓值,作為基準電壓進行比較,而反相輸入端用一個光敏電阻對外部環境的光線進行采集,利用光敏電阻暗時電阻大,亮時電阻小的特點,來確定反向輸入端的電壓值。再兩者進行比較,比較后的信號再送入單片機AT89S52的P1^3口,從而通過單片機來控制電機的正反轉。來實現天亮窗簾自動打開,天黑窗簾自動關閉這一自動控制功能。

光敏電阻連接如圖3.11所示。

                       3.11 光敏傳感器3.2.9 步進電機

步進電動機是一種將電脈沖信號轉換成角位移或線位移的機電元件。步進電動機的輸入量是脈沖序列,輸出量則為相應的增量位移或步進運動。正常運動情況下,它每轉一周具有固定的步數;做連續步進運動時,其旋轉轉速與輸入脈沖的頻率保持嚴格的對應關系,不受電壓波動和負載變化的影響。下圖為步進電機運行原理框圖。



     在步進電機控制電路中,步進控制器的作用是把輸入脈沖轉換成環型脈沖,以控制步進電機的轉向。在實際應用中由軟件代替步進控制器,其優點是使線路簡化,降低成本,可靠性提高。在窗簾控制系統中選用了型號為130HZ308-450的三相反應式步進電機,其優點是力矩大,精度高,其步進角度是1.2°。步進電機電路與單片機的連接如圖3.12。


                     圖3.12  步進電機電路與單片機的連接


第4章 程序分析與設計

系統軟件設計主要有幾部分組成,其中包括顯示子程序,按鍵子程序,定時時鐘程序,步進電機控制程序等。本章介紹了自動窗簾控制系統的主程序以及各主要部分功能程序的設計過程,程序代碼詳見附錄。

4.1 主程序設計

主程序構成無限循環,主要完成單片機初始化,關中斷,菜單顯示內容初始化,按鍵掃描,電機運行,計時等功能。

主程序的流程圖如圖4.1所示。

圖4.1  主程序流程圖

啟動主程序,先關中斷并且設置堆棧,接著初始化寄存器,初始化顯示內容;然后執行按鍵查詢,執行相應的操作。如果是設定鍵,則設定時間,開始計時;到時間后步進電機開始相應的工作,工作完成后停機。如果是電機控制鍵,則也執行相應的工作。如果都不是,則是復位鍵,采取復位操作。

4.2 主要功能子程序設計4.2.1 步進電機程序設計

步進電機程序設計的主要任務是:

★ 判斷旋轉方向;

★ 按順序傳送控制脈沖;

★ 判斷所要求的控制步數是否傳送完畢。


圖4.2.1 步進電機工作流程圖

4.2.2顯示程序

顯示程序開始后,起始地址60H發送到R0,01H發送至顯示位代碼R2,再將位代碼發送到單片機A口,,單片機取顯示數據查表轉換成顯示代碼發送至單片機B口,延時2ms,指針R0加1,然后判斷6顯示是否完成。如果完成則返回,沒完成則位代碼R2左移一位,繼續顯示查表,一直到6位顯示完成后返回。

顯示子程序流程圖如圖4.2.2所示。

圖4.2.2 顯示部分流程圖

4.2.3 鍵盤程序設計

按鍵的觸點在閉合和斷開時均會產生抖動,這時觸點的邏輯電平是不穩定的,如不妥善處理,將會引起按鍵命令的錯誤執行或者重復執行。現在用軟件延時的方法來避開抖動階段。在判斷是否有鍵閉合后都延時5ms,按下鍵后再延時12ms就可以避免鍵盤的抖動。然后鍵碼分析,執行相應的模塊,顯示后返回。

鍵盤子程序如圖4.2.3所示。

圖4.2.3  鍵盤程序流程圖

4.2.4 定時程序設計

定時的主要功能是在設定時間單片機能夠得到中斷信號,從而控制窗簾的開關。時鐘發出50ms的信號給單片機,計數器計數,當計數到20,則過了1秒,秒單元數值加1,當秒單元到達60,分單元數值加1,秒單元清零。當時單元到達24,時單元清零。標志1天時間計滿,把他們的值放到存儲單元的指定單元。圖4.2.4是定時功能流程圖。

圖4.2.4  定時功能流程

4.2.6 DS18B20測溫流程圖

DS18B20的測溫原理如圖2-5所示,圖中低溫度系數晶振的振蕩頻率受溫度影響很小,用于產生固定頻率的脈沖信號送給計數器1。高溫度系數晶振隨溫度變化其振蕩率明顯改變,所產生的信號作為計數器2的脈沖輸入。計數器1和溫度寄存器被預置在-55℃所對應的一個基數值。計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當計數器1的預置值減到0時,溫度寄存器的值將加1,計數器1的預置將重新被裝入,計數器1重新開始對低溫度系數晶振產生的脈沖信號進行計數,如此循環直到計數器2 計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數器1的預置值。DS18B20在正常使用時的測溫分辨率為0.5℃,如果要更高的精度,則在對DS18B20測溫原理進行詳細分析的基礎上,采取直接讀取DS18B20內部暫存寄存器的方法,將DS18B20的測溫分辨率提高到0.1~0.01℃。

圖2-5 測溫流程圖


總結

    本次設計系統地介紹了自動窗簾控制系統的硬件電路設計以及軟件設計。在總體方案設計中以光敏電阻作為傳送信號的傳感器,用步進電機作為信號輸出的執行元件,89C52單片機作為主要的控制元器件,并且應用了按鍵以及和顯示電路。應用89C52單片機的優勢減少了硬件的復雜性,光敏電阻接收外界光照信號,經過A\D轉換后,傳送給單片機一個電信號,單片機經過處理后,控制步進電機做出相應的動作,以控制窗簾的開閉。在實現一般應用的基礎上,又添加了定時元器件電路,使窗簾的自動化性能得到進一步提升。光敏電阻的良好感光性以及步進電機的結構簡單,控制方便的優點使窗簾控制開關更加穩定。

本次設計的整個研究與設計過程包括選題、設計以及完善等。首先,在選題方面查閱了很多與項目有關的資料和課題并且制定設計方案,進行設計的總體規劃,然后將這些方案落實到設計環節中。其次,在制定的方案基礎上運用所學的知識對硬件以及軟件進行設計,并用相關軟件進行仿真設計。最后,對設計內容進一步修繕,以求達到最佳設計結果。雖然設計內容完成了基本的功能,但是其中還是存在一定欠缺,比如在設計中沒有考慮到窗簾工作方式的顯示以及沒有添加類似紅外遙控的設計等。

    此次設計過程中,在完成設計任務之外也讓我系統性地認識和全面地掌握了單片機相關技術,從本次設計中我更加深刻地認識到理念來源于實際的含義。在和同學以及老師的就相關問題的互相討論交流中,我認識到自己的很多不足,但在這些不足中我又學到了很多知識,使我的綜合應用能力有了很大提高。



                      致 謝

經過這么長時間的忙碌,設計和文檔已經接近尾聲。在設計的過程中,由于經驗的缺乏以及知識的局限性,難免有許多考慮不周全的地方,在選題,設計等方面,如果沒有導師的督促指導,沒有同學們的支持和幫助,單獨完成這個設計,其中還是有一定難度的。在文檔完稿之際,我想借此機會對在完成設計期間關心、幫助、支持和鼓勵過我的老師、同學以及朋友們致以最誠摯的謝意和最衷心的祝福!

首先我要感謝的是我的導師老師,在完成整個設計的過程中,老師給我提供了很大的幫助,在選題、設計以及修改文檔的各個環節里老師給我指出了很多錯誤,提出了很多寶貴意見,對于設計中存在的問題也是耐心的回答和指導,讓我能夠順利的完成設計。在此謹向老師致以誠摯的謝意和崇高的敬意。

其次要感謝的是所有在大學四年中教育指導過我的所有老師,你們傳授給我的專業知識是我完成本設計的基礎,也是日后踏入工作崗位的重要基石,對于老師們一絲不茍,兢兢業業的精神表示衷心的感謝。

最后我還要向所有關心和支持我學習的朋友和同學們表示真摯的謝意!感謝你們對我的關心、關注和支持。





附錄一:系統原理圖(截圖過來不知道為什么很不清晰,大家重新用AD畫一下吧)

附錄二:程序(見附件)


以上圖文的Word格式文檔下載(內容和本網頁上的一模一樣,方便大家保存):
基于單片機的自動窗簾控制系統.doc (1.2 MB, 下載次數: 98)



作者: 51hei小明    時間: 2019-2-28 03:24
樓主的原理圖看不清大家去看學習一下我發的這個吧
(煙霧+燈控)的智能窗戶程序+仿真+實物圖詳見:http://www.raoushi.com/bbs/dpj-151689-1.html




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1