freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于labview的網(wǎng)上家居控制平臺的設計-資料下載頁

2025-08-20 13:42本頁面

【導讀】時也將面臨著一個如何讓管理更便捷的問題。而互聯(lián)網(wǎng)的發(fā)展給我們帶來了一個四通。八達的網(wǎng)絡環(huán)境,合理利用這個網(wǎng)絡,可以實現(xiàn)遠程對家電網(wǎng)絡的管理和控制。計網(wǎng)上控制平臺界面,并通過通信接口實現(xiàn)家用電器狀態(tài)的監(jiān)控及控制。同時,單片機控制板包括:串行通信口、LED指示燈、家用電器模擬狀態(tài)控制

  

【正文】 瀏覽器之間交換對控件的控制權。 ? Show Last Message:顯示最后的提示信息。 同樣,在瀏覽程序的網(wǎng)頁的左下角也有一個“< V> Server: localhost” 隱藏菜單,如圖 326 所示,它包含以下 5個選項命令: ? Request Control of VI:請求對發(fā)布的遠端程序進行控制。 ? Release Control of VI:釋放對遠端程序的控制權。 ? Show Last Message:顯示最后的提示信息。 ? Show Control Time Remaining:顯示剩余的控制時間。 ? Close Panel:關閉程序的前面板。 1 Viewers 菜單 22 圖 326 瀏覽程序的網(wǎng)頁“ VServer:localhost”菜單 當在 Web瀏覽器的下方執(zhí)行“ Request Control of VI” 命令項后,就可以對 VI程序 進行控制。當在網(wǎng)頁中單擊連續(xù)運行按鈕運行程序,就像在 LabVIEW服務器端運行程序一樣。當 Web 瀏覽器獲得對程序的控制權之后,遠端服務器反而不能控制程序的運行。 單片機控制板設計 硬件主要是以單片機為核心,相系通訊芯片制作出 PCB 控制板。 單片機實現(xiàn)對控制板中信號燈的控制,信號燈作為家居電器的模擬。 單片機把模擬信號與數(shù)字信號互換,可以更好地與 PC機相聯(lián),達到數(shù)模的成功轉(zhuǎn)換,達到監(jiān)察、控制的目的。 串口通過通訊芯片,把 數(shù)據(jù)發(fā)送到單片機,單片機作數(shù)據(jù)的分析,把數(shù)字信號轉(zhuǎn)換為模擬信號,再在信號燈上顯示出來,達到 PC 機對家居的控制。 單片機把信號燈的模擬信號,作分析并轉(zhuǎn)換為數(shù)字信號,再通過串口發(fā)送到 PC機上,實現(xiàn) PC 機對家居的監(jiān)察。 單片機控制板要實現(xiàn)的功能就是可以鍵控 3 個指示燈,利用串口與 PC 機進行通訊,發(fā)送單片機 3 個指示燈的狀態(tài),并且接收 PC 機發(fā)送過來的數(shù)據(jù),根據(jù)數(shù)據(jù)再改變指示燈的狀態(tài)。 單片機 類型:AT89S51,相關連線如圖 327 使用 振與兩個 30P電容組成振蕩電路, 到 3腳連接接 地按鈕,進行低電平觸發(fā)。 到 共3 腳連接三個指示燈,模擬家用電器使用狀態(tài)。 9 腳 SET 與22u極性電容,高電平按鈕和 10K 電阻組成復位電路。 使用 RS- 232C標準芯片MAX232 作為重要通訊器件,圖 328,為 其外圍電路及其連線。 電路還有使用 RS- 232C圖 327 圖 328 23 標準, 9芯串口接線器, USB作為電路電源,外加一個 LED 燈與 1K電阻組成電源指示燈。 本章小結(jié) 本章首先介紹了基于 LabVIEW 的網(wǎng)上家居控制平臺的工作原理、系統(tǒng)可實現(xiàn)的功能,隨后介紹了 LabVIEW 編程的一些特點,再分別講述了 LabVIEW 控制臺的設計、Inter 控制平臺的設計、單片機控制板的設計等各部分的具體內(nèi)容。 24 第 4 章 單片機編程 單片機程序的流程圖 單片機部分采用 C語言編程,由主函數(shù)模塊實現(xiàn)全部功能,其中調(diào)用了多個子程序模塊,包括:定時器中斷程序模塊,讀燈子程序模塊,發(fā)送子程序模塊,串口中斷程序模塊, PC 控燈子程序模塊,手控燈子程序模塊等。流程圖如下圖所示。 從主函數(shù)模塊開始,定義變量 receive_flag=1, send_flag=1 為子程序服務,調(diào)用定時器中斷程序,開定時器。初始化定時器,設置定時器 1作 9600 波特率發(fā)生器,定時器 0 作 10ms 計時滿中斷。開串口中斷。循環(huán)調(diào)用手動控燈子程序,判斷control_led 是否為 1,“是”即調(diào)用 PC 控燈子程序,“否”再循環(huán)運行(如圖 41)。 手動控燈子程序(如圖 42),先是判斷 是否為 0,“是”則調(diào)用延時子程序,再判斷 是否為 0,“是”,就把 LED燈 1狀態(tài)取反。這里主要是判斷按鈕是否按下,按下后,就把相應的燈狀態(tài)改變。先判斷 ,對應按鈕是否按下,如“否”,再判斷 , ,這 樣來實現(xiàn)手動按鈕控燈的功能。 N Y 主函數(shù) 定義變量 開串口中斷 手動控燈子程序 control_led=1?? PC控燈子程序 開定時器 串口初始化 定時器 1 作 9600 波特率發(fā)生器 定時器 0作 10ms 計時滿中斷 圖 41 主函數(shù)模塊 25 當計時器計滿時,程序進入計時器中斷子程序模塊,先關串口中斷, T0 重置新值,定義變量 zdyi 加 1,比較是否為 5,不為 5 返回并等待下次中斷,如“是”就使send_flag=1,判斷 send_flag=1 是否為 1,“是”即調(diào)用發(fā)送子程序,再調(diào)用讀燈子程序,返回后把 send_flag=0,再判斷是否 send_flag=1,開串口中斷,返回主函數(shù)。該程序與 LabVIEW 軟件發(fā) 送與接收程序配合來工作。 Y N Y N 計時器中斷 子程序入口 關串口中斷 T0重新裝值 zdyi+1 send_flag=1 調(diào)用發(fā)送子程序 調(diào)用讀燈子程序 send_flag=0 開串口中斷 圖 43 計時器中斷子程序模塊 zdyi=5 返回 send_flag=1 zdyi= 0 N N N N Y Y Y Y Y Y N N 手控燈子程序入口 ≠ 1 ≠ 1 ≠ 1 延時子程序 延時子程序 延時子程序 ≠ 1 ≠ 1 ≠ 1 LED1 取反 LED2 取反 LED3 取反 返回 圖 42 手控燈子程序模塊 26 讀燈子程序模塊主要負責判斷 到 對應三個 LED燈的狀態(tài),從而把三燈的狀態(tài)用 Temp 的值表示,再把其值以“返回值”返回到發(fā)送子程序。(如圖 44) 發(fā)送子程序模塊主要負責向串口發(fā)送數(shù)據(jù),發(fā)送字符 “返回值”。再返來計時器中斷子程序。(如圖 45) 當發(fā)生串口中斷時,進入串口中斷程序模塊,先初始化串口,直接將數(shù)據(jù)存入預定數(shù)組 astring[1] ,將control_led==1, 開串口中斷,返回主函數(shù)。 從串口中 斷 子 程 序 返 回 時control_led==1,是由主函數(shù)調(diào)用 PC控燈子程序模塊執(zhí)行得到的。該程序把數(shù)組 astring[1]值定義為 X,把 X向左移 5位即把 X的低三位向左移 5位變成高三位,也就是說把接收到的數(shù)據(jù)信息轉(zhuǎn)換為 到 的狀態(tài)。 手控燈子程序模塊調(diào)用的 延時子N Y I+1 Y N 讀燈子程序入口 Temp=P2,i=0 Temp 向右移 1位 Temp 與非 F8 Temp 值取反 I5 發(fā)送子程序入口 Ti=0,發(fā)送‘返回值’ Ti=1 圖 44 讀燈子程序模塊 圖 45 發(fā)送子程序模塊 返回 串口中斷子程序入口 清除接收中斷標志位 關串口中斷 astring[1]=SBUF control_led=1 開串口中斷 圖 46 串口中斷模塊 Y N I=0 X 值取反 PC控燈子程序入口 I< 5, I+1 X 向左移一位 圖 47 PC控燈模塊 P2口= X 27 程序模塊功能主要是使用 CPU 計算指令,達到時間延時的效果。延長時間大約為10 500 2us=10ms。 本章小結(jié) 本章介紹了網(wǎng)上家居控制平臺系統(tǒng)的單片機端的各程序的流程圖, 主要包括: 主函數(shù)模塊、手控燈子程序模塊、計時器中斷子程序模塊、讀燈子程序模塊、發(fā)送子程序模塊、串口中斷模塊、 PC控燈模塊、 延時模塊 等內(nèi)容。 Y N Y N 延時子程序入口 定義 i, j Ia J500 I+1 返回 J+1 圖 48 延時模塊 28 第 5 章 系統(tǒng)調(diào)試 設計調(diào)試 調(diào)試目標: 實現(xiàn) LabVIEW 控制平臺,并與單片機控制板緊密連接,可以實現(xiàn)監(jiān)測、控制功能,從而進行網(wǎng)絡調(diào)試,最終實現(xiàn)網(wǎng)絡控制平臺。 經(jīng)過為期一個多月的軟硬件制作, LabVIEW 軟件編寫程序、單片機 C 語言編程以及硬件單片機 PCB板,總算大致完成,可以進入調(diào)試階段。 調(diào)試應先從最基本做起,軟硬件制作的更要如些,因為硬件的問題直 接影響軟件動作,而且查到問題的時候,修改軟件總比修改硬件要容易、簡單一些。 硬件調(diào)試 主要注意問題: 原理圖是否正確,因為原理圖正確與否,就是 PCB 板的成敗。 由原理圖生成 PCB圖,應仔細檢查是否有漏線,錯線的情況發(fā)生,因為 PCB 連線沒有原理圖的直觀,因此檢查 PCB 圖應仔細對照原理圖,作好連線。 制作 PCB銅板是否成功,直接關系到往后制作。檢查是否有斷線,貼線的現(xiàn)象發(fā)生,為銅板轉(zhuǎn)孔時要認真對準,特別是 IC插槽的焊孔一定要整齊、準確。 對元件的檢測,對一般可測量元件,盡可能測量一遍,以防止元件損壞,而 影響調(diào)試進度。 焊元件后一定要認真檢查,確保無虛焊、漏焊發(fā)生。 還要注意芯片供電問題,主要表現(xiàn)在電流過低,因為沒有設計穩(wěn)壓電路,因此對電源有一定要求, PC 機上的 USB基本上能滿足上述要求。 調(diào)試結(jié)果: 由于腐蝕 PCB板時候沒有完全腐蝕好, MAX232 芯片沒有正常工作,切開相接電路問題解決。 四個按鈕中有一個接觸不良,替換后問題解決。 在畫 PCB圖時,由于 RS232 標準九針接口封裝與真實元件不匹配,串口不能進行通訊。把接錯的線路切斷,使用非線把就接的線路接通。使用串口調(diào)試工具,進行相關數(shù)據(jù)接收、發(fā)送,串口能正 常通訊,問題解決。 軟件調(diào)試 軟件調(diào)試分兩個部分: ? 單片機 C語言編程 ? LabVIEW 可視化語言編程 由于 LabVIEW 是可視化語言編程,相對于其它編程而言非常直觀,因此軟件調(diào)節(jié)階段的首要工作就是了解 LabVIEW 的編程特點。 29 單片機編程的時候,盡可能按照該編程特性,合理編排,盡量做到一次通過。而單片機編程最主要解決的問題就是串口通訊,如何有效、準確、零錯誤地收發(fā)數(shù)據(jù)是該編程的難點。 通過添加數(shù)據(jù)頭,以及數(shù)據(jù)尾,以雙重確認的方式來對數(shù)據(jù)收發(fā)。的確這個方法是最常用,最合理的編程方法。 當單片機程序編好之 后,在調(diào)試過程中,只能發(fā)送數(shù)據(jù),卻不能接收數(shù)據(jù),仔細檢查,以及多方嘗試之后,大體鎖定是串口中斷中,一句簡單的結(jié)構問題,關于 while語句中 for 語句,因為編寫不當,導致發(fā)生死循環(huán)。 明白到錯誤就進行修改,但修改的過程中又發(fā)現(xiàn)另外一個功能不能實現(xiàn),就是當單片機接收數(shù)據(jù)后,不能分析數(shù)據(jù),把 PC 機控制命令反饋到單片機控制板,改變的指示燈狀態(tài)。 經(jīng)過考慮計算,看出單片機不能正常識別串口接收的字符串,是由于計時器中斷與串口中斷之間發(fā)生互相影響,使到串口接收到的數(shù)據(jù)雖然可以判斷數(shù)據(jù)頭,但是跟著接收到的數(shù)據(jù)就會因為中斷而 接收錯亂。使單片機不能識別。 鑒于 LabVIEW 程序發(fā)送是一個單字節(jié)字符,因此只要解決數(shù)據(jù)發(fā)送、接收的完整性,就可以省去數(shù)據(jù)頭與結(jié)束符。 解決方法是通過設置單片機的中斷來實現(xiàn),設置使用中斷方式 1,時間為計時50ms,進入中斷后關串口中斷,返回主函數(shù)。設置中斷 4次后,即 秒發(fā)送一次單片機燈狀態(tài),并開串口中斷,這時單片機串口中斷把 SUBP 中的字符讀入,并把字符轉(zhuǎn)化為燈狀態(tài)。再經(jīng) 秒后把燈狀態(tài)發(fā)送出去。這樣可以避免高速 LabVIEW 不停發(fā)送控制命令,而影響單片機本身手動控制的能力。程序執(zhí)行后, LabVIEW 軟件對單片機實施一次燈信號的控制,先是 秒后單片機相關信號燈狀態(tài)改變,再是 秒后軟件上模擬信號燈狀態(tài)改變。 而 LabVIEW 的設計,主要解決的問題是密碼驗證,數(shù)據(jù)分析到顯示信號中,數(shù)據(jù)串口端發(fā)送接收等。 密碼驗證部分主要是因為結(jié)構語言的問題,試驗左多種方案,最后使用到事件結(jié)構反問題完滿解決。 在數(shù)據(jù)分析到顯示信號的問題上,由于剛開始不熟悉 LabVIEW 編程的特點,因此被布爾量的概念困住,實際就是數(shù)值與布爾量之間轉(zhuǎn)換的問題。最后找到了相關函數(shù)庫,再參考其它資料書,把數(shù)據(jù)分析問題解決。 數(shù)據(jù)接收、發(fā)送 的問題上, LabVIEW 軟件無法識別由串口傳輸上來的字符串, 解決問題的方法無法在 LabVIEW 上找到,就轉(zhuǎn)移到單片機編程上來,因為單片機發(fā)送的字符是以 ASCALL 碼的形式發(fā)送,每一個字符都對應一個 ASCALL 碼,因此只要找到數(shù)字相對的 ASCALL 碼即可解決。于是在讀燈子程序模塊的編程里,在返回值,即讀燈狀態(tài)后,讀出與 LabVIEW 軟件讀燈數(shù)據(jù)相一致的數(shù)值,即 0、 7,而查 ASCALL 碼表后發(fā)現(xiàn)只要使相關數(shù)值加上 48 即可解決。 30 調(diào)試體會 設計前要有充足的準備,只有準備周全,這 樣做設計的時候就不用花額外的時間,去解決突發(fā)情況。 設計、制作和調(diào)試的過程一陣要細心認真,這樣做才是最有效率的做法。 在設計的過程中要注意軟硬件的銜接,不能有一方落后。不然麻煩就是懶惰的結(jié)果。 調(diào)試應從最基本會起,逐步排除問題,而且在認真檢查過后,要有自信,要信得過自己,這樣做才更有效果。 在 LabVIEWR 的調(diào)試過程中,高亮的調(diào)試方法,讓用戶看到數(shù)據(jù)流的走向,了解到程序運行的情況,這對于程序的調(diào)試是有百利而無一害,因為應該大力提倡。 本章小結(jié) 本章主要介紹了網(wǎng)上家居控制平臺系統(tǒng)的軟硬件設計、安裝及 聯(lián)合調(diào)試的過程,及本人在設計與調(diào)試中取得的心得與體會 等內(nèi)容。 31 結(jié) 論 本論文 實現(xiàn)了基于 LabVIEW 的網(wǎng)上家居控制平臺的基本功能,可以在 LabVIEW 的界面下,實現(xiàn) PC 與單片機控制板之間便捷的串口通訊。并且運用 LabVIEW 可以把程序發(fā)布到 Inter 網(wǎng)絡,使用 Web 瀏覽器可以鏈接到應用程序,可以在網(wǎng)頁上對單片機控制板所模擬的家電狀態(tài)進行遠程的監(jiān)測和控制。 本課題還實現(xiàn)了數(shù)據(jù)采集與處理的 LabVIEW 虛擬儀器控制平臺,在此基礎上可以作進一步的拓展,比如:可以通過串口采集低頻的外界信號,調(diào)用 函數(shù)進行信號處理,實現(xiàn)虛擬儀器的某些功能。 另外,由于單片機控制板設計實現(xiàn)控制功能很方便,因此有很大的發(fā)展?jié)摿Γ热纾嚎梢约由蠝囟葯z測,數(shù)碼顯示等部件對控制平臺系統(tǒng)進行功能擴展等等。 32 致 謝 首先感謝我的指導老師成志東老師,是成老師用他的熱情和耐心來指導我完成畢業(yè)設計,也是因為他寬大的胸襟和睿智讓我感到完成畢業(yè)設計的無窮樂趣。在我畢業(yè)設計遇到困難的時候,也是他給與我無限信心。謝謝成老師。 也要感謝從小到大來一直默默支持我的父母,家人。 同時也要感謝大學四年來班導師以及同學們對我的幫助和關心。 33 參考文獻 1 程學慶 ,房曉溪 ,韓薪莘 ,張?。?LabVIEW 圖形化編程與實例應用 [M].中國鐵道出版社,2020. 2 劉君華.基于 LabVIEW 的虛擬儀器設計 [M].電子工業(yè)出版社, 2020. 3 李剛,林凌 . LabVIEW-易學易用的計算機圖形化編程語言 [M].北京航空航天大學出版社, 2020. 4 郁文工作室,侯振鵬 . 嵌入式 C 語言程序設計――使用 MCS- 51[M].人民郵電出版社,2020. 5 David ,. LabVIEW GUI[M]:essential techniques. New York:Mc GrawHill,2020. 34 附錄 1 LabVIEW 設計平臺界面和平臺的編程 附錄11 LabVIEW設計平臺界面 35 附錄附錄12 LabVIEW設計平臺編程 36 2 電路原理圖和電路 PCB 圖 附錄21 電路原理圖 37 附錄22 電路PCB圖 38 附錄 3 單片機端程序 /* XTAL= */ include include /*===============HARD MAP ========================*/ define LED1 P2_5 define LED2 P2_6 define LED3 P2_7 define BUTTON1 P2_0 define BUTTON2 P2_1 define BUTTON3 P2_2 typedef unsigned char uchar。 typedef unsigned int uint。 uchar send_flag,record,control_led。 uchar astring[10]。/*字符數(shù)組數(shù)為 10*/ uchar zdyi=0。 void delay1ms(uchar a) { uchar i。 uint j。 for(i=0。ia。i++) for(j=0。j500。j++) 。 } void serial_initial(void) /*串口初始化 */ /*設置中斷與定時器, 定時器 1 作波特率發(fā)生器,定時器 0 作 10ms計時滿中斷 */ 39 { EA=1。 //CPU 中斷開放標志 PT0=1。 //定時器 T0為低優(yōu)先級控制位; ET0=1。 //定時器
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1