版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、指導教師評定成績: 審定成績: 重 慶 郵 電 大 學自 動 化 學 院基于藍牙通信和上位機控制的智能風扇設計摘 要 在炎炎夏日,空調便成為了人們的必備武器,可是很多人沒有注意到吹空調的危害,長時間吹空調,人很容易著涼感冒,降低身體的抵抗力??照{房間比擬封閉,空氣流通不好,容易有異味,空調通風處假設不經(jīng)常清理,容易積累灰塵和細菌,從而使人生病。并不是所有的人都適合吹空調,像老人,小孩,孕婦都不易長時間吹空調,對此我們設計了此款智能風扇,它以STC12C5A60S2做主控芯片,分別參加了紅外模塊,溫濕度傳感器模塊,電機調速模塊/測速模塊,總共分為四個功能模塊,分別為自動模式,節(jié)能模式,定速模式,
2、定時模式,這些模式既可以很好地調節(jié)風速,同時也更加節(jié)能,而且增加了藍牙無線模式,在上位機界面可以很輕松的切換以上模式。關鍵詞:智能 藍牙無線 上位機 實用 Abstract in the summer, air conditioning became a necessary weapon for people, but many people do not pay attention to the harm of blow air conditioning, long time blowing air, people are very easy to catch a cold, reduce
3、the bodys resistance. Air conditioning room is closed, the air circulation is not good, easy to have peculiar smell, air conditioning and ventilating place if not often clean, easy to accumulate dust and bacteria, so as to make people sick, not all people are suitable for blowing air, like the elder
4、ly, children, pregnant women are not easy to long time blow air conditioning, to this we design this section intelligent fan, it uses STC12C5A60S2 chip control, respectively, joined the infrared module, temperature and humidity sensor module, motor speed control module / speed module, is divided int
5、o four functional modules, respectively is the automatic mode, the energy-saving mode, constant speed mode, the timing patterns, these patterns can adjust the wind speed is very good, but also more energy, but also increase the Bluetooth wireless mode, can more easily in the mode of host computer in
6、terface.Keywords: intelligent Bluetooth host computer practical目 錄TOC o 1-3 h u HYPERLINK l _Toc8594 一、總體系統(tǒng)設計概述 PAGEREF _Toc8594 1 HYPERLINK l _Toc31273 1.1 系統(tǒng)的設計原理 PAGEREF _Toc31273 1 HYPERLINK l _Toc1188 PAGEREF _Toc1188 1 HYPERLINK l _Toc15217 1.3 系統(tǒng)實現(xiàn)的主要功能 PAGEREF _Toc15217 1 HYPERLINK l _Toc295
7、01 二、 方案選擇與論證 PAGEREF _Toc29501 2 HYPERLINK l _Toc5868 PAGEREF _Toc5868 2 HYPERLINK l _Toc27542 PAGEREF _Toc27542 2 HYPERLINK l _Toc2983 2.3 顯示方案 PAGEREF _Toc2983 3 HYPERLINK l _Toc31158 2.3.1 LCD12864 PAGEREF _Toc31158 3 HYPERLINK l _Toc2931 2.3.2 LCD1602 PAGEREF _Toc2931 3 HYPERLINK l _Toc11886 2.
8、3.3 數(shù)碼管顯示 PAGEREF _Toc11886 4 HYPERLINK l _Toc14618 2.3.4 PC上位機端顯示 PAGEREF _Toc14618 4 HYPERLINK l _Toc2481 2.4 測速及調速模塊 PAGEREF _Toc2481 4 HYPERLINK l _Toc9161 2.4.1 測速方案設計 PAGEREF _Toc9161 4 HYPERLINK l _Toc22746 2.4.2 調速方案設計 PAGEREF _Toc22746 5 HYPERLINK l _Toc31436 2.5 溫度采集方案設計 PAGEREF _Toc31436
9、6 HYPERLINK l _Toc12279 2.6 人體感應模塊 PAGEREF _Toc12279 6 HYPERLINK l _Toc25633 三、系統(tǒng)硬件設計 PAGEREF _Toc25633 7 HYPERLINK l _Toc7823 3.1 顯示模塊 PAGEREF _Toc7823 7 HYPERLINK l _Toc13488 3.2 電動機模塊 PAGEREF _Toc13488 8 HYPERLINK l _Toc897 3.2.1 PWM調速 PAGEREF _Toc897 8 HYPERLINK l _Toc32547 3.2.2 測速 PAGEREF _Toc
10、32547 9 HYPERLINK l _Toc16619 3.3 溫度采集模塊 PAGEREF _Toc16619 9 HYPERLINK l _Toc22204 3.4 無線模塊 PAGEREF _Toc22204 10 HYPERLINK l _Toc19865 3.5 紅外模塊 PAGEREF _Toc19865 10 HYPERLINK l _Toc30681 3.6 PCB設計 PAGEREF _Toc30681 11 HYPERLINK l _Toc12863 四、系統(tǒng)軟件設計 PAGEREF _Toc12863 12 HYPERLINK l _Toc3849 4.1 流程圖設計
11、 PAGEREF _Toc3849 12 HYPERLINK l _Toc28267 4.1.1 單片機設計 PAGEREF _Toc28267 12 HYPERLINK l _Toc25078 4.1.2 上位機 PAGEREF _Toc25078 13 HYPERLINK l _Toc14709 4.2 按鍵掃描設計 PAGEREF _Toc14709 13 HYPERLINK l _Toc9992 4.3 模式控制設計 PAGEREF _Toc9992 14 HYPERLINK l _Toc8909 4.4 溫濕度采集軟件設計 PAGEREF _Toc8909 14 HYPERLINK
12、l _Toc16370 4.5 調速、測速軟件設計 PAGEREF _Toc16370 16 HYPERLINK l _Toc23896 4.5.1 調速軟件設計 PAGEREF _Toc23896 16 HYPERLINK l _Toc29718 4.5.2 測速軟件設計 PAGEREF _Toc29718 16 HYPERLINK l _Toc15031 五、 聯(lián)調效果 PAGEREF _Toc15031 17 HYPERLINK l _Toc32568 PAGEREF _Toc32568 17 HYPERLINK l _Toc32186 5.2 藍牙 PAGEREF _Toc32186
13、18 HYPERLINK l _Toc7828 5.3 按鍵 PAGEREF _Toc7828 18 HYPERLINK l _Toc9621 六、 心得體會 PAGEREF _Toc9621 19 HYPERLINK l _Toc22481 參考文獻 PAGEREF _Toc22481 20 HYPERLINK l _Toc8081 附 錄 PAGEREF _Toc8081 21一、總體系統(tǒng)設計概述1.1 系統(tǒng)的設計原理 本設計的實現(xiàn)分為兩個局部,一是以STC12C5A60S2單片機為主控的下層實現(xiàn),二是以VB語言開發(fā)的上層實現(xiàn)。下層通過溫濕度傳感器獲取室內溫度,由單片機的顯示到LCD128
14、64上,同時通過模式的選擇使電機工作在不同的轉速,實現(xiàn)溫度和轉速的聯(lián)系。此外通過紅外模塊的感知作用,在選擇自動模式時,就可以感知人的存在而使電機工作,實現(xiàn)人來工作,人去靜止的工作,電機驅動模塊為L298芯片,由單片機送出PWM波來實現(xiàn)電機的調速,同時使用了光電門模塊實現(xiàn)系統(tǒng)的測速功能,并且顯示在LCD12864上,更加直觀的觀看調速效果。上層與下層通過兩個串口轉藍牙模塊進行通信,兩個藍牙模塊分別設置為主、從模式,配對密碼和波特率均設置相同。上位機在設置好串口以及波特率后,通過不同的“設置按鍵實現(xiàn)系統(tǒng)模式的切換。1.2系統(tǒng)總體框圖圖1.1 系統(tǒng)總體框圖1.3 系統(tǒng)實現(xiàn)的主要功能 本次課程設計以智
15、能風扇為研究背景,使用STC12C5A60S2單片機做主控芯片,配以相關的傳感器模塊,電機調速/測速模塊,LCD12864模塊,按鍵模塊,以及使用藍牙模塊配合上位機程序,既可以按鍵控制,也可以上位機無線控制,既可以在上位機顯示,也可以在LCD12864上顯示。主要完成以下功能:自動模式 該模式通過紅外模塊的感應功能,一旦感應到有人在感應范圍內活動,就會產(chǎn)生34秒的低電平,單片機的外部中斷0(/INT0)就會發(fā)生中斷,從而使電機以固定速度轉2S后停止,除非重新感應到人的活動。節(jié)能模式 該模式通過溫濕度傳感器DHT11模塊,獲得室內的溫度數(shù)據(jù),在本設計中以上下限溫度為分割點,把電機速度控制在三個等
16、級內,比方大于上限溫度時,以一級速度運轉,在上下限溫度之間,以二級速度運轉,低于下限溫度,以三級速度運轉,這樣就可以實現(xiàn)根據(jù)溫度來調節(jié)轉速。定速模式 該模式使電機工作在固定的三個等級的轉速。4、定時模式 該模式可以實現(xiàn)定時功能,同時必須和以上三個模式的之一結合使用方案選擇與論證 單片機作為系統(tǒng)的主控芯片,其類型眾多,功能豐富,選擇適宜的單片機有利于減少外圍電子器件的數(shù)量。方案一、STC89C52系列單片機。STC89C52系列單片機增強型8051 單片機,6 時鐘/機器周期和12 時鐘/機器周期可以任意 選擇,指令代碼完全兼容傳統(tǒng)8051。8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O
17、 口線,看門狗定時器,內置4KB EEPROM,MAX810復位電路,3個16 位定時器/計數(shù)器,4個外部中斷,一個7向量4級中斷結構兼容傳統(tǒng)51的5向量2級中斷結構,全雙工串行口。方案二、 STC12C5A60S2單片機。STC12C5A60S2是STC生產(chǎn)的單時鐘/機器周期(1T)的單片機,是高速、低功耗、超強抗干擾的新一代8051單片機,指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內部集成MAX810專用復位電路,2路PWM,8路高速10位A/D轉換,針對電機控制,強干擾場合。通用I/O口36個,復位后為:準雙向口/弱上拉。可設置成四種模式:準雙向口/弱上拉,強推挽/強上拉,僅為輸
18、入/高阻,開漏 。每個I/O口驅動能力均可到達20mA,但整個芯片最大不要超過120mA。 STC12C5A60S2內部集成了2路PWM,可用作PWM和PCA捕獲,而且速度更快,I/O口可設置為四種模式,使用更加方便,而且兩者價格相差無幾,所以選用方案二。 無線模塊主要為了實現(xiàn)上位機與單片機的通信,同時防止布線的麻煩,現(xiàn)在比擬實用的無線解決方案是WI-FI,藍牙,紅外,ZigBee,他們之間各有優(yōu)缺點,現(xiàn)列表如下,類型性能WI-FI藍牙紅外ZigBee通信距離300m100m10m3km通信速率54Mbps720Kbps16Mbps250Kbps通信頻率2.4G HZ2.4G HZ38KHZ2
19、.4GHZ(868M,915M)開發(fā)難易難一般一般簡單模塊本錢高一般一般高表2-1 無線模塊方案 在以上四種無線模塊中,他們各有自己的技術架構限值,具有不同的用途,其中ZigBee特點是近距離、低復雜度、自組織、低功耗、低數(shù)據(jù)速率、可組網(wǎng) 。主要適合用于自動控制和遠程控制領域,可以嵌入各種設備。Wi-Fi是一個無線網(wǎng)絡通信技術的品牌,由Wi-Fi聯(lián)盟(Wi-Fi Alliance)所持有。目的是改善基于IEEE802.11標準的無線網(wǎng)絡產(chǎn)品之間的互通性,主要用于 智能 、 HYPERLINK :/baike.baidu /view/74538.htm t :/baike.baidu /view
20、/_blank 平板電腦和 HYPERLINK :/baike.baidu /view/7690.htm t :/baike.baidu /view/_blank 筆記本電腦的無線上網(wǎng)功能。紅外傳輸是一種點對點的傳輸方式,無線,不能離的太遠,要對準方向,且中間不能有障礙物也就是不能穿墻而過,幾乎無法控制信息傳輸?shù)倪M度。藍牙,是一種支持設備短距離通信一般10m內的 HYPERLINK :/baike.baidu /view/19599.htm t :/baike.baidu /view/_blank 無線電技術,傳輸速率較高,對移動設備支持,而且現(xiàn)在市場上有USB轉串口的藍牙模塊,開發(fā)簡單,使用
21、方便。所以我們選用了藍牙作為我們無線通信的方案。2.3 顯示方案 目前比擬常用的顯示方案有LCD12864,LCD1602,數(shù)碼管顯示,以及電腦端的顯示。他們主要的特點如下:2.3.1 LCD12864 帶中文字庫的128X64 是一種具有4 位/8 位并行、2 線或3 線串行多種 HYPERLINK :/baike.so /doc/2376532.html t :/baike.so /doc/_blank 接口方式,內部含有國標一級、二級簡體 中文字庫的點陣圖形 HYPERLINK :/baike.so /doc/5194443.html t :/baike.so /doc/_blank 液
22、晶顯示模塊;其 HYPERLINK :/baike.so /doc/5391683.html t :/baike.so /doc/_blank 顯示分辨率為12864, 內置8192 個16*16 點漢字,和128 個16*8 點ASCII 字符 集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互doc/364593.html t :/baike.so /doc/_blank 圖形界面??梢燥@示84 行162.3.2 LCD1602 1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型 HYPERLINK :/baike.so /doc/44
23、1742.html t :/baike.so /doc/_blank 液晶模塊。它由假設干個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和 HYPERLINK :/baike.so /doc/7271666.html t :/baike.so /doc/_blank 行間距的作用,正因為如此,所以它不能很好地顯示圖形用自定義CGRAM,顯示效果也不好。2.3.3 數(shù)碼管顯示 數(shù)碼管實際上是由七個發(fā)光管組成8字形構成的,加上小數(shù)點就是8個。這些段分別由字母a,b,c,d,e,f,g,dp來表示。當數(shù)碼管特定的段加
24、上電壓后,這些特定的段就會發(fā)亮, 發(fā)光二極管的陽極連接到一起連接到電源正極的稱為共陽數(shù)碼管,發(fā)光二極管的陰極連接到一起連接到電源負極的稱為共陰數(shù)碼管。常用LED數(shù)碼管顯示的數(shù)字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。但是它不能顯示中文字符、圖像以及ASCII 字符。2.3.4 PC上位機端顯示 上位機是指可以直接發(fā)出操控命令的計算機,一般是PC,屏幕上顯示各種信號變化液壓,水位,溫度等,PC上位機顯示需要自己的編程開發(fā),現(xiàn)在常用的開發(fā)語言有C+,VB,C#,JAVA。PC上位機不僅可以顯示底層傳來的數(shù)據(jù),而且可以發(fā)送控制命令到底層單片機。 LCD12864既可以
25、顯示中文字符,也可以顯示ASCII字符,在本設計中需要中文字符的顯示,以及ASCII字符的顯示,所以選LCD12864為底層的顯示器件,此外還需要上位機的數(shù)據(jù)顯示與控制,VB語言簡單易學,功能強大,有專用的SerialPort控件,所以在上層我們使用VB語言在Microsoft Visual Studio 2021 Ultimate旗艦版開發(fā)。2.4 測速及調速模塊2.4.1 測速方案設計 方案一:磁式測速發(fā)電機 永磁式直流測速發(fā)電機是一種將轉子速度轉化為電氣信號的機電式信號元件,是伺服系統(tǒng)中根本元件之一。作為測速、校正,解算元件,他被廣泛應用于各種速度和位置控制系統(tǒng)中。永磁式測速發(fā)電機主要由
26、定子、轉子和電刷部件等組成。一般情況下自動控制系統(tǒng)對其元件的要求主要是高的精確度、靈敏度、可靠性等。因此永磁式直流測速發(fā)電機在電氣性能方面應滿足以下要求:1輸出電壓和轉速成線性關系 2溫度變化對輸出特性影響小2輸出電壓波紋小 4正反轉的輸出特性應該一致方案二:光電編碼器 按照工作原理編碼器可分為增量式和絕對式兩類。增量式編碼器是將位移轉換成周期性的電信號,再把這個電信號轉變成計數(shù)脈沖,用脈沖的個數(shù)表示位移的大小。絕對式編碼器的每一個位置對應一個確定的數(shù)字碼,因此它的示值只與測量的起始和終止位置有關,而與測量的中間過程無關。工作時,光電碼盤安裝在轉子端軸上,隨著電機的轉動,光電碼盤也跟著一起轉動
27、,如果有一個固定光源照射在碼盤上,那么可利用光敏元件來接收到的光的次數(shù)就是碼盤的編碼數(shù)。假設編碼數(shù)為60,測量時間為t,測量到的脈沖數(shù)為N,那么轉速為n=N/(t*60)*60=N/t。方案三:光電對射式采用對射式紅外傳感器。在輪輻面板上均勻刻出槽孔,在輪子兩側固定相對的紅外發(fā)射、接收器件。在過孔處接收器可以接收到信號。從而輪子轉動時可以產(chǎn)生連續(xù)脈沖信號,通過對脈沖的計數(shù)進行車速測量。幾種測速方案比擬:直流測速發(fā)電機光電編碼器光電對射式測量精度高高低開發(fā)難易難難易模塊本錢低高較低表2-2 測速方案比擬 由于本此設計只是簡單測量電機轉速,以方便觀看電機調速效果,故采用光電對射式即可,本錢低,開放
28、簡單,所以采用方案三。2.4.2 調速方案設計 方案一:靜止可控整流器。簡稱V-M系統(tǒng)。 V-M系統(tǒng)是當今直流調速系統(tǒng)的主要形式。它可以是單相、三相或更多相數(shù),半波、全波、半控、全控等類型,可實現(xiàn)平滑調速。V-M系統(tǒng)的缺點是晶閘管的單向導電性,它不允許電流反向,給系統(tǒng)的可逆運行造成困難。它的另一個缺點是運行條件要求高,維護運行麻煩。最后,當系統(tǒng)處于低速運行時,系統(tǒng)的功率因數(shù)很低,并產(chǎn)生較大的諧波電流危害附近的用電設備。方案二:脈寬調速系統(tǒng)。 采用晶閘管的直流斬波器根本原理與整流電路不同的是,在這里晶閘管不受相位控制,而是工作在開關狀態(tài)。當晶閘管被觸發(fā)導通時,電源電壓加到電動機上,當晶閘管關斷時
29、,直流電源與電動機斷開,電動機經(jīng)二極管續(xù)流,兩端電壓接近于零。脈沖寬度調制PulseWidthModulation,簡稱PWM。脈沖周期不變,只改變晶閘管的導通時間,即通過改變脈沖寬度來進行直流調速。 由于PWM調速系統(tǒng)的開關頻率較高,僅靠電樞電感的濾波作用就可以獲得脈動很小的直流電流,電樞電流容易連續(xù),系統(tǒng)的低速運行平穩(wěn),調速范圍較寬。由于電流波形比V-M系統(tǒng)好,在相同的平均電流下,電動機的損耗和發(fā)熱都比擬小,而且STC12C5A60S2內部集成了PWM模塊,所以選用方案二,開發(fā)簡單,調速效果好。2.5 溫度采集方案設計方案一、 采用DS18B20采集溫度。 DS18B20是美國DALLAS
30、公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO一92小體積封裝形式;溫度測量范圍為一55+125,被測溫度用符號擴展的16位數(shù)字量方式串行輸出;其工作電源既可在遠端引人,也可采用寄生電源方式產(chǎn)生;多個DS18B20可以并聯(lián)到3或2根線上,CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路:以上特點使DS18B20非常適合于遠距離多溫度檢測系統(tǒng)中。方案二、使用DHT11ank 數(shù)字溫濕度傳感器。 DHT11 HYPERLINK :/baike.baidu /view/3457800.htm t :/baike.baidu /view/_blank
31、 數(shù)字溫濕度傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器,它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術,確保產(chǎn)品具有極高的可靠性和卓越的長期穩(wěn)定性,而且超低能耗 。DHT11供電電壓:3.35.5V DC,輸 出:單總線數(shù)字信號,測量范圍: 濕度20-90%RH, 溫度050,測量精度:濕度+-5%RH, 溫度正負2,分辨率:濕度1%RH,溫度1。在本設計中,對溫度的精度要求不高,同時作為居家產(chǎn)品,濕度的概念也比擬重要,而且DHT11相對DS18B20價格更廉價,所以本設計采DHT11 HYPERLINK :/baike.baidu /view/3457800.htm t :/baik
32、e.baidu /view/_blank 數(shù)字溫濕度傳感器2.6 人體感應模塊方案一、超聲波感應。 超聲波是一種頻率高于20000 HYPERLINK :/baike.baidu /view/19996.htm t :/baike.baidu /view/_blank 赫茲的聲波,它的方向性好,穿透能力強,易于獲得較集中的 HYPERLINK :/baike.baidu /view/813391.htm t :/baike.baidu /view/_blank 聲能,超聲波可以用于測距,可測出回波和發(fā)射脈沖之間的時間間隔。利用S=C*t/2就可以直接算出距離其中C是超聲波的傳播速度,t為時間間
33、隔,當人體與風扇的距離在規(guī)定的距離內,就可以啟動風扇。方案二、紅外感應。 人體紅外感應模塊是基于紅外線技術的自動控制產(chǎn)品。靈敏度高、可靠性強、超低功耗,超低電壓工作模式,具有溫度補償?shù)淖饔?。廣泛應用于各類自動感應電器設備,尤其是干電池供電的自動控制產(chǎn)品。而且可以全自動感應:人進入其感應范圍那么輸出高電平,人離開感應范圍那么自動延時關閉高電平,輸出低電平??刂品奖?,其觸發(fā)方式和感應時間均可調。在本設計中,需要能夠感應人的走動,超聲波感應具有一定的方向性,限值功能的使用,而紅外感應模塊操作簡單,本錢較低,感應范圍廣,其觸發(fā)方式和感應時間均可調。所以選用紅外作為人體感應模塊。三、系統(tǒng)硬件設計3.1
34、顯示模塊顯示模塊是人機交互的關鍵器件,直接影響用戶的產(chǎn)品體驗和產(chǎn)品的功能,因此應該做到界面簡單而顯示明顯,使設計的功能能夠很好地被用戶觀察和判斷。本設計中選用了帶中文字庫的LCD12864作為底層單片機的顯示,可以顯示4*8個16*16點陣的中文字符,64個16*8點陣的ASCII字符集。LCD12864總共有20個引腳,各個引腳描述如下:引腳號引腳名稱邏輯電平引腳功能描述 = 1 * Arabic * MERGEFORMAT 1Vss0電源地2Vcc+5v電源正3NC空腳4RS(CS)1/0RS=1,選擇數(shù)據(jù)存放器。RS=0,選擇指令存放器。5R/W(STD)1/0R/W=1,E=1,從lc
35、d中讀取數(shù)據(jù)。R/W=0,E=10時,寫數(shù)據(jù)到lcd。6E(SCLK)1/0使能信號714DB0DB71/0三態(tài)數(shù)據(jù)線15PSB1/0PSB=1,并行數(shù)據(jù)。PSB=0,串行數(shù)據(jù)16NC空腳171/0復位端,低電平有效??蓱铱?8NC空腳19AVdd背光電源正端20Kvss背光源負端表3-1 LCD12864引腳圖根據(jù)LCD12864的引腳功能描述,在本設計中最終采用8位并行的工作模式,因此第15引腳直接接高電平即可。圖3-1 LCD12864電路圖3.2 電動機模塊 在本設計中使用DC5V的直流電動機來模擬風扇,不要求正反轉,只要能夠實現(xiàn)PWM調速方案即可。測速時使電機的葉輪置于紅外對射管之間
36、,葉輪轉過,擋住傳感器,單片機的PCA模塊就會捕捉到,從而實現(xiàn)計數(shù),進而計算出電機的速度。3.2.1 PWM調速 L298N是ST公司生產(chǎn)的一種高電壓、大電流電機驅動芯片。該芯片采用15腳封裝。主要特點是:工作電壓高,最高工作電壓可達46V;輸出電流大,瞬間峰值電流可達3A,持續(xù)工作電流為2A;額定功率25W。內含兩個H橋的高電壓大電流全橋式驅動器,可以用來驅動直流電動機和步進電動機、繼電器線圈等感性負載;圖3-2 L298N引腳圖圖3-3 L298N模塊圖3.2.2 測速 對射式光電開光是由一個發(fā)光器和一個收光器組成的光電開關就稱為以射別離式光電開光,模塊圖形如下:圖3-4 對射式光電開光測
37、速時將扇葉置于開關的中間,扇葉由四片組成,當扇葉阻擋了發(fā)射二極管的光線,“OUT引腳就會輸出高電平,沒有阻擋時,輸出低電平。設在1秒的時間內,單片機PCA捕獲模塊獲得M次計數(shù),那么電機轉速表示為S=M/4 r/s。3.3 溫度采集模塊 溫度采集模塊采用DHT11模塊,它既可以獲取溫度數(shù)字信號,也可以獲取濕度的數(shù)字信號。DHT11模塊一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗和。數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)
38、據(jù)所得結果的末8位。 圖3-5 DHT11電路圖3.4 無線模塊 無線模塊采用HC-05無線藍牙主從一體無線串口通信模塊,總共有6個引腳,功能描述如下:引腳描述Vcc電源3.35vGnd地Txd模塊串口發(fā)送引腳不能接RS232電平Rxd模塊串口接收引腳不能接RS232電平Key 高電平進入AT狀態(tài),低電平或懸空正常狀態(tài)Led 配對成功輸出高電平,否那么輸出低電平表3-3 HC-05無線藍牙模塊引腳圖圖3-6 藍牙串口模塊與USB轉串口模塊連接圖3-7 藍牙串口模塊與單片機連接 將模塊上電同時(或者之前),將KEY接高電平,此時指示燈慢閃1秒亮一次,模塊進入AT狀態(tài),此時波特率固定38400。將
39、模塊上電后,將KEY懸空或者接地,此時指示燈快閃1秒2次,表示模塊進入可配對狀態(tài)。此時如果將KEY接高電平,模塊也會進入AT狀態(tài)。但是指示燈依然是快閃1秒2次。假設模塊配對成功,此時STA雙閃一次閃2下,2秒閃一次。3.5 紅外模塊 HC-SR501紅外模塊利用熱釋電紅外傳感器工作,熱釋電紅外是一種能檢測人或動物發(fā)射的紅外線而輸出電信號的傳感器。其具有兩種觸發(fā)方式:L不可重復,H可重復??商€選擇,默認為H。 A 不可重復觸發(fā)方式:即感應輸出高電平后,延時時間一結束,輸出將自動從高電平變?yōu)榈碗娖健?B 可重復觸發(fā)方式: 即感應輸出高電平后,在延時時間段內,如果有人體在其感應范圍內活動,其輸出將
40、一直保持高電平,直到人離開后才延時將高電平變?yōu)榈碗娖?感應模塊檢測到人體的每一次活動后會自動順延一個延時時間段,并且以最后一次活動的時間為延時時間的起始點)。 HC-SR501紅外模塊還具有感應封鎖時間(默認設置:3-4秒):感應模塊在每一次感應輸出后(高電平變?yōu)榈碗娖?,可以緊跟著設置一個封鎖時間,在此時間段內感應器不接收任何感應信號。此功能可以實現(xiàn)(感應輸出時間和封鎖時間)兩者的間隔工作,可應用于間隔探測產(chǎn)品;圖3-8 HC-SR501模塊圖 PCB設計 本設計使用Altium Designer 09版繪制電路原理圖,由于本設計很多是模塊化器件,所以留出很多排針,以供連接使用。 圖3-9
41、總原理圖圖3-10 PCB圖 四、系統(tǒng)軟件設計 4.1 流程圖設計 本次課程設計軟件局部主要分為上位機程序和單片機控制程序,兩者通過無線藍牙模塊互相通信,單片機程序主要完成溫度的采集,紅外信號的處理,LCD12864的顯示,按鍵的輸入處理,還有接收上位機的控制命令。4.1.1 單片機設計圖4-1 單片機端流程圖4.1.2 上位機該局部主要T語言進行開發(fā) HYPERLINK :/baike.baidu /view/2353.htm t :/baike.baidu /view/_blank 微軟.NET Framework之上的 HYPERLINK :/baike.baidu /view/1253
42、70.htm t :/baike.baidu /view/_blank 面向對象的編程語言。其在調試時是以 HYPERLINK :/baike.baidu /view/1233576.htm t :/baike.baidu /view/_blank 解釋型語言方式運作,而輸出為EXE程序是是以 HYPERLINK :/baike.baidu /view/1284280.htm t :/baike.baidu /view/_blank 編譯型語言方式運作??梢钥醋魇荲isual Basic在 HYPERLINK :/baike.baidu /view/18370.htm t :/baike.ba
43、idu /view/_blank .Net Framework平臺上的升級版本,增強了對 HYPERLINK :/baike.baidu /view/125370.htm t :/baike.baidu /view/_blank 面向對象的支持。在.NET Framework 2.0中提供了SerialPort類,該類主要實現(xiàn)串口數(shù)據(jù)通信等。SerialPort 提供了DataReceived事件。當有數(shù)據(jù)進入時,該事件被觸發(fā)。該事件的觸發(fā)由操作系統(tǒng)決定,當有數(shù)據(jù)到達時,該事件在輔助線程中被觸發(fā)。輔助線程的優(yōu)先級比擬低,因此并不能確保每個字節(jié)的數(shù)據(jù)到達時,該事件都被觸發(fā)圖4-2 上位機端流程圖
44、4.2 按鍵掃描設計 按鍵掃描主要用來改變工作模式和輸入其他一些變量。其常用的方法有1.編程掃描,2.定時掃描,3.中斷掃描。定時掃描就是每隔一段時間對鍵盤掃描一次,它利用單片機內部的定時器產(chǎn)生一定時間一般10ms的定時,當定時時間到就產(chǎn)生定時器溢出中斷。CPU響應中斷后對鍵盤進行掃描,并在有鍵按下時識別出該鍵的功能程序。定時掃描有利于減少按鍵消抖所造成的系統(tǒng)時間中斷。程序見附錄。圖4-3 按鍵電路4.3 模式控制設計該系統(tǒng)有4種模式,分別為自動模式,節(jié)能模式,定速模式,定時模式,四種模式既可以通過按鍵控制選擇,也可以通過上位機經(jīng)藍牙無線模塊發(fā)送切換命令。按鍵總共有3個,分別為1.模式鍵,2.
45、加鍵,3.減鍵,模式鍵主要用于模式的切換,四種模式循環(huán)切換。加鍵和減鍵主要配合模式鍵使用,當模式為定速模式時,可通過加鍵,減鍵調節(jié)速度,當模式由定速模式切換到自動模式時,就可以設置定時時長,此時還可以將模式切換到節(jié)能模式和定速模式,分別實現(xiàn)“定時+節(jié)能模式,“定時+定速模式。假設使用上位機設置模式,上位機向單片機發(fā)送一次六個字節(jié)的數(shù)組,通信格式如下所示:第0 Byte第1 Byte第2 Byte第3 Byte第4 Byte第5 Byte 模式控制 定速等級 定時時長 保存 溫度上限 溫度下限表4-1 通信格式4.4 溫濕度采集軟件設計 用戶MCU發(fā)送一次開始信號后,DHT11從低功耗模式轉換到
46、高速模式,等待主機開始信號結束后,DHT11發(fā)送響應信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取局部數(shù)據(jù).從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機發(fā)送開始信號,DHT11不會主動進行溫濕度采集.采集數(shù)據(jù)后轉換到低速模式。圖4-4 DHT11通訊圖1總線空閑狀態(tài)為高電平,主機把總線拉低等待DHT11響應,主機把總線拉低必須大于18毫秒,保證DHT11能檢測到起始信號。DHT11接收到主機的開始信號后,等待主機開始信號結束,然后發(fā)送80us低電平響應信號.主機發(fā)送開始信號結束后,延時等待20-40us后, 讀取DHT11的響應信號,主機發(fā)送開始信號
47、后,可以切換到輸入模式,或者輸出高電平均可, 總線由上拉電阻拉高。 圖4-5 DHT11通訊圖2總線為低電平,說明DHT11發(fā)送響應信號,DHT11發(fā)送響應信號后,再把總線拉高80us,準備發(fā)送數(shù)據(jù),每一bit數(shù)據(jù)都以50us低電平時隙開始,高電平的長短定了數(shù)據(jù)位是0還是1.格式見下面圖示.如果讀取響應信號為高電平,那么DHT11沒有響應,請檢查線路是否連接正常.當最后一bit數(shù)據(jù)傳送完畢后,DHT11拉低總線50us,隨后總線由上拉電阻拉高進入空閑狀態(tài)。數(shù)字0信號表示方法如圖4.6所示: 圖4-6 數(shù)字0信號數(shù)字1信號表示方法.如圖4.7所示: 圖4-7 數(shù)字1信號4.5 調速、測速軟件設計
48、4.5.1 調速軟件設計 在本次綜合設計中使用了STC12C5A60S2單片機,它具有兩路PCA/PWM模塊,分別有四種工作模式,四種工作模式分別是:1.捕獲模式,2.16位軟件定時器模式,3.高速輸出模式,脈寬調節(jié)模式。其中脈寬調節(jié)模式軟件設置如下:void init_pwm() CL=0; CH=0; CMOD|=0X00;/空閑模式,不允許溢出中斷 CCAPM0=0X42;/工作在PWM8位方式 CCAP0L=CCAP0H=0X20;/設置輸出50%的方波 CR=1;圖4-8 PWM模式4.5.2 測速軟件設計 當STC12C5A60S2單片機的PCA/PWM模塊工作在捕獲模式時,可以設
49、置為上升沿捕獲或者下降沿捕獲,或者兩者同時,當P1.3或者P1.4引腳有脈沖輸入時,PCA/PWM模塊就會計數(shù),可在中斷中處理。本次綜合設計采用PCA/PWM模塊1計數(shù),程序設置如下:void init_pca() CMOD|=0X00;/空閑模式,不允許溢出中斷 CCAPM1=0X21;/上升沿捕獲,允許捕獲中斷 CCAP1L=CCAP1H=0; CR=1; 圖4-9 捕獲模式聯(lián)調效果 當軟件和硬件均設置好時,在開放過程中還必須進行軟硬件的調試,正確的調試方法能夠快速的找到軟硬件的設計錯誤,從而更正錯誤,提升開發(fā)速度。 上位機的界面設置如下,選擇好相應的串口號和波特率,電機“翻開串口Butt
50、on,就可以與單片機進行通訊了。然后依次點擊四種模式的“設置Button,結合LCD12864,依次觀察電機的工作情況,假設出現(xiàn)與預期效果不一樣的情況,就對應的在VB程序中修改。圖5-1 上位機界面5.2 藍牙 首先將藍牙模塊工作在AT指令狀態(tài),方法為:將模塊上電同時(或者之前),將KEY接高電平,此時指示燈慢閃1秒亮一次,模塊進入AT狀態(tài),此時波特率固定38400,然后使用串口設置兩個藍牙模塊的波特率為19200bps,AT指令為AT+UART=19200,0,0,然后設置兩個藍牙模塊的密碼一致,以便兩者配對,AT指令為AT+PSWD=1234,最后要將其中一個模塊設置為主模式,AT指令為A
51、T+ROLL=1。 完成以上步驟后,就可以分別把兩個藍牙模塊連接到電腦端和單片機端,使用已編寫好的上位機進行測試,觀看是否通信正常。圖5-2 AT指令設置軟件圖5.3 按鍵 按鍵主要是用來底層的模式設置,依次使用按鍵設置各個功能,觀看LCD12864上的中文提示符,以及電機的工作狀態(tài),根據(jù)問題進行調試程序。心得體會 通過本次綜合設計,鍛煉了自己的編程能力與全局統(tǒng)一意識,大家一起討論任務的要求,在任務一開始就分好每個人的任務,并且規(guī)定每周五大家一起討論,匯報各自的進展。對我而言,我打算利用利用國慶的時間,每天規(guī)定自己必須完成的任務,一步步的實現(xiàn)系統(tǒng)的功能。當然,在開發(fā)過程中也遇到了很多問題,因為
52、以前沒用過藍牙,在藍牙的配置過程中浪費了很多的時間,心情也很煩躁,后來還是靜下心來,仔細閱讀說明文檔,終于成功配對成功!在整個設計期間,小組成員合作非常愉快,大家提出了很多改良措施,使我們的設計更加完美,尤其是東西的最后組裝,大家更是一起奉獻智慧,使得本次綜合設計錦上添花。 最后要感謝李老師的大力支持,無論是技術上還是器件的提供上,都給與了很大的支持,隨著大學學習生活的結束,通過這次綜合設計,感覺自己還是進步了很多,編程技巧方面有所提升。 參考文獻1李江全,張茜等編著,串口通信及測控應用典型實例M,北京:電子工業(yè)出版社,2021年3月第一次印刷2東方人化,Visual Basic.NET范例入
53、門與提高M,北京:清華大學出版社,2003年9月第二次印刷3丁向榮,增強型8051單片機原理與系統(tǒng)開發(fā)M,北京:清華大學出版社,2021年9月第一版4向敏,程安宇等編著,微控制器原理及應用M,北京:人民郵電大學出版社,2021年8月第二次印刷5郭天祥,新概念51單片機C語言教程M,北京:電子工業(yè)出版社,2021年12月第五次印刷附 錄 附錄1 :VB程序Public Class Form1 Dim Open_Or_Close_Ser As Boolean = False Dim Write_Data(6) As Byte Dim Minute As Integer Dim Second As
54、Integer Dim time As Int16 Dim Spend(3) As Byte 以下是變量初始化和控件初始化 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load SerialPort1.DataBits = 8 數(shù)據(jù)位 SerialPort1.StopBits = IO.Ports.StopBits.One 停止位 SerialPort1.Parity = IO.Ports.Parity.None 校驗位 Spend(0) = &H60 Spend(1) = &H70 Spend
55、(2) = &H80 Text_Mode.TextAlign = HorizontalAlignment.Center 居中顯示 Text_Mode.Text = 智能調速 Write_Data(0) = CByte(2) 默認模式為智能模式 Write_Data(1) = CByte(Spend(1) Write_Data(2) = CByte(0) Write_Data(3) = CByte(0) Write_Data(4) = CByte(Val(Temp_High_TextBox.Text) Write_Data(5) = CByte(Val(Temp_Low_TextBox.Text
56、) Spend_2.Checked = True Minute_ComboBox.SelectedIndex = 0 Second_ComboBox.SelectedIndex = 0 End Sub 以下是串口端口號選擇 Private Sub SerLine_SelectedIndexChanged(sender As Object, e As EventArgs) Handles SerialPort1.PortName = SerLine.SelectedItem.ToString 串口名稱 End Sub 以下是波特率選擇 Private Sub Bps_SelectedIndexC
57、hanged(sender As Object, e As EventArgs) Handles SerialPort1.BaudRate = Bps.SelectedItem.ToString 波特率 End Sub 以下是翻開串口初始化 Private Sub Open_Ser_Click(sender As Object, e As EventArgs) Handles Open_Or_Close_Ser = Not Open_Or_Close_Ser If Bps.SelectedIndex = -1 And SerLine.SelectedIndex = -1 Then MsgBox
58、(請選擇正確的串口號和波特率, 0, 提示) Else If Open_Or_Close_Ser Then Try SerialPort1.Open() 翻開串口 Open_Ser.Text = 關閉串口 Catch ex As Exception MsgBox(異常0, 0, 提示) End Try Else Try SerialPort1.Close() 關閉串口 Open_Ser.Text = 翻開串口 Catch ex As Exception MsgBox(異常1, 0, 提示) End Try End If End If End Sub 以下是自動模式控制按鈕 Private Su
59、b Auto_Mode_Click(sender As Object, e As EventArgs) Handles Write_Data(0) = CByte(1) 自動模式 Write_Data(2) = CByte(Val(Time_TextBox.Text) Time_TextBox.Text = 0 If SerialPort1.IsOpen Then Try SerialPort1.Write(Write_Data, 0, 6) Text_Mode.Text = 自動模式 Catch ex As Exception MsgBox(發(fā)送失敗,請重新發(fā)送, 0, Error) End
60、 Try Else MsgBox(請先選擇好串口并且翻開, 0, Error) End If End Sub 以下是智能模式控制按鈕 Private Sub Smart_Mode_Click(sender As Object, e As EventArgs) Handles Write_Data(0) = CByte(2) 智能模式 Write_Data(2) = CByte(Val(Time_TextBox.Text) Write_Data(4) = CByte(Val(Temp_High_TextBox.Text) Write_Data(5) = CByte(Val(Temp_Low_Te
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科技企業(yè)孵化器在崇明生態(tài)島的作用和前景
- 智慧農(nóng)業(yè)助力鄉(xiāng)村振興的策略研究
- 二零二五年度餐飲行業(yè)員工福利保障合同范本3篇
- 遠程辦公對家庭教育心理輔導的影響
- 教育信息化與新聞傳播的深度融合
- 溫州2025年浙江溫州永嘉縣人民醫(yī)院醫(yī)共體永嘉縣婦幼保健院招聘(一)筆試歷年參考題庫附帶答案詳解
- 二零二五年度蟲草收購與品牌戰(zhàn)略咨詢合同3篇
- 2025年度個人醫(yī)療周轉資金延期使用合同3篇
- 河北2025年河北省氣象部門招聘應屆畢業(yè)生2人筆試歷年參考題庫附帶答案詳解
- 2025版兒童服飾品牌線上線下整合營銷合同3篇
- 物業(yè)民法典知識培訓課件
- 2023年初中畢業(yè)生信息技術中考知識點詳解
- 2024-2025學年八年級數(shù)學人教版上冊寒假作業(yè)(綜合復習能力提升篇)(含答案)
- 《萬方數(shù)據(jù)資源介紹》課件
- 醫(yī)生定期考核簡易程序述職報告范文(10篇)
- 第一章-地震工程學概論
- 安全創(chuàng)新創(chuàng)效
- 《中國糖尿病防治指南(2024版)》更新要點解讀
- 初級創(chuàng)傷救治課件
- 交通運輸類專業(yè)生涯發(fā)展展示
- 2024年山東省公務員錄用考試《行測》試題及答案解析
評論
0/150
提交評論