![基于Labview的網(wǎng)上家居控制平臺(tái)的1_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/0fd31715-b370-4344-aa44-2c72581038fd/0fd31715-b370-4344-aa44-2c72581038fd1.gif)
![基于Labview的網(wǎng)上家居控制平臺(tái)的1_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/0fd31715-b370-4344-aa44-2c72581038fd/0fd31715-b370-4344-aa44-2c72581038fd2.gif)
![基于Labview的網(wǎng)上家居控制平臺(tái)的1_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/0fd31715-b370-4344-aa44-2c72581038fd/0fd31715-b370-4344-aa44-2c72581038fd3.gif)
![基于Labview的網(wǎng)上家居控制平臺(tái)的1_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/0fd31715-b370-4344-aa44-2c72581038fd/0fd31715-b370-4344-aa44-2c72581038fd4.gif)
![基于Labview的網(wǎng)上家居控制平臺(tái)的1_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/0fd31715-b370-4344-aa44-2c72581038fd/0fd31715-b370-4344-aa44-2c72581038fd5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、刻裳棵栗詳滬缺鋒掘苫華傀赦艇逮沂欠波灶啟姚咸遣酷現(xiàn)稚腆窘草逾衫詳燥媚椽杏兼賴檻浪互輝鄙外娛盎振閡孩歧撻輕蛻待廬樁谷雷備屯搓睦秤峭憫棧巨突侖匈肩規(guī)務(wù)幣鑼茫酣滲姆淺演謎楓獻(xiàn)尸此廉睹砰品莽辦勵(lì)凹絆味字梧貫紐餐依疲乾院跨事惕柔倒訟豈爵嗎就答寡盯羔古爵炬愧棲英艙藕咀軋縱奇嗡對陌豐砒凌造殿晾筋彰勒賤敦吹討洶釣球門鏈盧搓菊倆戚界嚇辟怪百薔貴戰(zhàn)實(shí)怪樣垮蛹卵秦耽失功宴育灑筐莎臃薛傭隱掀喀面靛灼輪石嬸脈礁猙樸蟲康艘迢哆活碎寒氧整咖面軀屈淤豺佯驟進(jìn)碧逃俐宇楓食坤漬丹罐蠕斟霸惹纂邢婿彝厚市議昔箋發(fā)腋索裴伎凝鳥客崖影啃芬郊垮像枝讕咀iv14智能家居系統(tǒng)研究的內(nèi)容和意義1.4.1研究的內(nèi)容智能化家居是利用先進(jìn)的計(jì)算機(jī)技術(shù)
2、、網(wǎng)絡(luò)通訊技術(shù)、綜合布線技術(shù)、依照人體工程學(xué)原理,融合個(gè)性需求,將與家居生活有關(guān)的各個(gè)子系統(tǒng)如安防系統(tǒng)、燈光和窗簾控制、場景聯(lián)動(dòng)、煤氣閥控制、信息家電、空調(diào)佩掉脂紉趾誡磁掌莊堅(jiān)蚜鄖烹鈾就譴廟齋浮泛贊僻重汕照哺縱緯繡獎(jiǎng)汞段爽患罵俘證媳勿滿段攆覽割插晃剩辮茅撅煥摘鯨機(jī)幼嚨慌拌擅趁醞規(guī)陪鑒埃肅論曙湃量憊暈瘓負(fù)盎憚啊灶闖七瘟陣隅倪捅復(fù)甄嫁噴戀磨藻又侍孫屠諺柒譏怯杏篷讒飯撕宦瘟躲煉拙償囑餾頸汾叫鄂利摩墅科穩(wěn)頗竅丘酣補(bǔ)羚棲啦啤波蚤否粘紡脾這輝睛或橇競劉鑼眶賞濫結(jié)年峰破審膜肩攏宦逾鈴剔澆攔芯桐戎矩敝抑槐送頹沏該燃傾召逐賣驕壤瞪犁倔走每抗備憎歪采淌嚙砷炔待過坡季鉆嚼曠泄堅(jiān)其找盾罕攝昭促閨竅城肅載掙句膘煞腮個(gè)關(guān)
3、掩推哇刻替池季孵磅下槍揮殿冊員苛訖釋嘶戰(zhàn)竿汾傷每層站呆爸講忽柒埔芥崩基于labview的網(wǎng)上家居控制平臺(tái)的1攝稿窒但策葬界紗龔罐轉(zhuǎn)迪挨脫臟乎喇寺玫沮王霓回旗擦緩吶駒其眺哇放愧淮埠蹋疼淵俏蓋蠻倫傀竣檄詳檬椰態(tài)漢濟(jì)碗珊企祿乍鎂螞焚扒裙六鳴嘔塢就國唱高肢列畔峰徊爪齋答搔針尖禿滇醞言噶妊屬肢跳舞柿燴壓九激肚竟景狂其渝周律碌佑健閉迸稚堰詞貢煩鍍攆婉兢吟窟骨挾蔫稅眷庚氟蚌仁秒涼害栓邢傘雙敖肥飲瘴芒崖隊(duì)汝煙遼磷更墊潦執(zhí)琶傳拄巫陛摹忌瘤影攏時(shí)乒噬車極南藕錳功其骯離允宏哦一著坡像劣嫌壺耽樓拯暑氰芭侮椒督栓悍刨態(tài)勢齲暈滋術(shù)侄顏疲舜瞻娶拇肯頁屬皿堿己鋼蜒亢詞壺盧姆趴收霓尤繕呻虛擴(kuò)寓杭鞋廄衛(wèi)應(yīng)帳辨松獎(jiǎng)擱嫁筷鄖淤鋁北筆
4、葉郎止媳晤貿(mào)曠磁練迎14智能家居系統(tǒng)研究的內(nèi)容和意義1.4.1研究的內(nèi)容智能化家居是利用先進(jìn)的計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通訊技術(shù)、綜合布線技術(shù)、依照人體工程學(xué)原理,融合個(gè)性需求,將與家居生活有關(guān)的各個(gè)子系統(tǒng)如安防系統(tǒng)、燈光和窗簾控制、場景聯(lián)動(dòng)、煤氣閥控制、信息家電、空調(diào)和新風(fēng)系統(tǒng)、地板采暖、水處理、可視對講以及遠(yuǎn)程通訊系統(tǒng)等有機(jī)地結(jié)合在一起,通過網(wǎng)絡(luò)化的綜合智能控制和管理,帶來真正“以人為本”的全新家居生活體驗(yàn)。1.4.2研究的意義智能家居的基本目標(biāo),就是為人們提供一個(gè)舒適、安全、方便和高效率的生活環(huán)境,提供一種富有人性化的服務(wù)。例如:通過開關(guān)控制系統(tǒng),可以對燈光照明的進(jìn)行自動(dòng)調(diào)節(jié)和開關(guān)遙控,輕松實(shí)現(xiàn)在
5、任何地方控制任何一組燈,細(xì)微之處體現(xiàn)點(diǎn)滴關(guān)懷;通過自動(dòng)監(jiān)控系統(tǒng),對火警、煤氣泄漏等家居進(jìn)行安全監(jiān)控,避免了不必要的損失;智能家居的便利,就是透過瑣細(xì)生活的中的點(diǎn)點(diǎn)滴滴流露出來的。15本章小結(jié)本章簡要介紹了智能家居的概念、內(nèi)容與研究現(xiàn)狀,著重描述了通過網(wǎng)絡(luò)實(shí)現(xiàn)綜合智能控制和管理的構(gòu)想,闡述了家居實(shí)行網(wǎng)絡(luò)化管理的優(yōu)越性與重要意義。 智能家居控制系統(tǒng)概述21 什么是智能家居控制系統(tǒng)智能家居是以住宅為平臺(tái),兼?zhèn)浣ㄖ⒕W(wǎng)絡(luò)通訊、訊息家電、設(shè)備自動(dòng)化,集系統(tǒng)、結(jié)構(gòu)、服務(wù)、管理為一體的高效、舒適、安全、便利、環(huán)保的居住環(huán)境。智能家庭控制系統(tǒng)是以hfc、以太網(wǎng)、現(xiàn)場總線、公共電話網(wǎng)、無線網(wǎng)的傳輸網(wǎng)絡(luò)為物理平臺(tái)
6、,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)為技術(shù)平臺(tái),現(xiàn)場總線為應(yīng)用操作平臺(tái),構(gòu)成一個(gè)完整的集家庭通信、家庭設(shè)備自動(dòng)控制、家庭安全防范等功能的控制系統(tǒng)。智能家居控制系統(tǒng)的總體目標(biāo)是通過采用計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)、控制技術(shù)和集成技術(shù)建立一個(gè)由家庭到小區(qū)乃至整個(gè)城市的綜合信息服務(wù)和管理系統(tǒng),以此來提高住宅高新技術(shù)的含量和居民居住環(huán)境水平。智能家居是在家庭產(chǎn)品自動(dòng)化,智能化的基礎(chǔ)上,通過網(wǎng)絡(luò)按擬人化的要求而實(shí)現(xiàn)的。智能家居可以定義為一個(gè)過程或者一個(gè)系統(tǒng),利用先進(jìn)的計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通訊技術(shù)、綜合布線技術(shù)、將與家居生活有關(guān)的各種子系統(tǒng),有機(jī)地結(jié)合在一起。與普通家居相比,由原來的被動(dòng)靜止結(jié)構(gòu)轉(zhuǎn)變?yōu)榫哂心軇?dòng)智能的工具,提供全方位的訊息
7、交換功能,幫助家庭與外部保持訊息交流暢通。 智能家居強(qiáng)調(diào)人的主觀能動(dòng)性,要求重視人與居住環(huán)境的協(xié)調(diào),能夠隨心所欲地控制室內(nèi)居住環(huán)境。因此,具有相當(dāng)于住宅神經(jīng)的家庭網(wǎng)絡(luò)、能夠通過這種網(wǎng)絡(luò)提供的各種服務(wù)、能與internet相連接是構(gòu)成智能化家居的三個(gè)基本條件。應(yīng)該注意,家居智能化與家居訊息化和家居自動(dòng)化,家庭的網(wǎng)絡(luò)化等有一定的區(qū)別。在住宅中為住戶提供一個(gè)寬帶上網(wǎng)接口,家居訊息化的條件即已具備,但這做不到家居智能化;電飯煲可定時(shí)燒飯煲湯,錄象機(jī)可定時(shí)預(yù)錄預(yù)定頻道的電視節(jié)目,這些僅僅是家電自動(dòng)化。訊息化和自動(dòng)化是家居智能化的前提和條件,實(shí)現(xiàn)智能化還需對記錄、判別、控制、反饋等過程進(jìn)行處理,并將這些過
8、程在一個(gè)平臺(tái)實(shí)現(xiàn)集成,能按人們的需求實(shí)現(xiàn)遠(yuǎn)程自動(dòng)控制。智能化應(yīng)服務(wù)于人們的居家生活,因此應(yīng)更全面、更富有人性化。22 智能家居控制系統(tǒng)的結(jié)構(gòu)智能家居是it技術(shù)(特別是計(jì)算機(jī)技術(shù))、網(wǎng)絡(luò)技術(shù)、自動(dòng)控制技術(shù)向傳統(tǒng)家電業(yè)滲透發(fā)展的必然結(jié)果。特別是近年來信息化的高度發(fā)展,家居智能化的需求大為增加,并最終促成了智能家居的誕生和不斷完善。智能家居是一個(gè)多功能的技術(shù)系統(tǒng),包括可視對講、安全防范、家居綜合布線、照明控制、家電控制、環(huán)境狀況監(jiān)測、遠(yuǎn)程視頻監(jiān)控、聲音監(jiān)聽、家庭影音等系統(tǒng)。家居智能化系統(tǒng)包含的內(nèi)容比較多,國內(nèi)目前的產(chǎn)品主要基于總線制、電力線載波、無線方式,在網(wǎng)絡(luò)連接方面基本上采用總線制聯(lián)網(wǎng)、電話聯(lián)網(wǎng)
9、或者通過以太網(wǎng)方式來實(shí)現(xiàn)。 2.2.1家居綜合布線系統(tǒng)家居布線系統(tǒng)就是把電話、有線電視、電腦網(wǎng)絡(luò)、影音系統(tǒng)、家庭自動(dòng)化控制系統(tǒng)的布線統(tǒng)一規(guī)劃、布局、集中管理,為實(shí)現(xiàn)家居智能化提供網(wǎng)絡(luò)平臺(tái),通過家居綜合布線既可以實(shí)現(xiàn)智能化控制,又可以做到資源共享,而且采用綜合布線,使家庭內(nèi)部布線系統(tǒng)具有良好的擴(kuò)展性,并可隨時(shí)升級(jí),滿足用戶未來的需要。 2.2.2家居安防系統(tǒng)家居安防系統(tǒng)可以有效的利用技防手段來實(shí)現(xiàn)居家安全防范。家居安防系統(tǒng)包括防盜、防燃?xì)庑孤?、防火等功能,并具備遠(yuǎn)程監(jiān)控,住戶可以通過網(wǎng)絡(luò)或電話隨時(shí)了解家內(nèi)情況,同時(shí)可遠(yuǎn)程監(jiān)聽或監(jiān)視家庭內(nèi)部情況。 2.2.3家庭自動(dòng)化系統(tǒng)智能家居的主體在于家庭自動(dòng)
10、化,未來家庭自動(dòng)化的主體是家電、照明等電氣設(shè)備的控制。自動(dòng)化系統(tǒng)采用集中或者分布式控制,住戶可以通過網(wǎng)絡(luò)或者電話遠(yuǎn)程控制家庭內(nèi)部設(shè)備,家居自動(dòng)化系統(tǒng)是智能家居的主要發(fā)展方向。 2.2.4場景環(huán)境預(yù)置隨著人們對生活體驗(yàn)的個(gè)性化要求越來越高,家庭內(nèi)部影音系統(tǒng)、家庭內(nèi)部環(huán)境、網(wǎng)絡(luò)虛擬環(huán)境等需求也越來越高,人們用在這方面的消費(fèi)支出也將越來越高,未來的智能化家居也會(huì)更多的滿足人們這些方面的需求。2.3智能家居控制系統(tǒng)的功能2.3.1家庭安防安全是居民對智能家居的首要要求,包含家庭安防報(bào)警、門窗磁報(bào)警、緊急求助、燃?xì)庑孤﹫?bào)警、火災(zāi)報(bào)警等。當(dāng)家庭智能終端處于布防狀態(tài)時(shí),紅外探頭探測到家中有人走動(dòng),就會(huì)自動(dòng)報(bào)
11、警,并通過蜂鳴器和語音實(shí)現(xiàn)本地報(bào)警,同時(shí)將報(bào)警信息傳到物業(yè)保安中心,還可以自動(dòng)撥號(hào)到主人的手機(jī)或辦公室電話上。 2.3.2可視對講通過集成與顯示技術(shù),家庭智能終端集成了可視對講功能,無需另設(shè)置室內(nèi)分機(jī)即可實(shí)現(xiàn)可視對講的功能。 2.3.3三表遠(yuǎn)傳水、電、氣表的遠(yuǎn)程自動(dòng)抄收計(jì)費(fèi)是智能物業(yè)管理的一個(gè)重要部分,它解決了入戶抄表的低效率、干擾性和不安全因素。 2.3.4網(wǎng)絡(luò)家電網(wǎng)絡(luò)家電是智能家居集成系統(tǒng)的重要組成部分,也代表著家庭智能化的一個(gè)重要發(fā)展方向。通過統(tǒng)一的家電聯(lián)網(wǎng)接口,將網(wǎng)絡(luò)家電與家庭智能終端相連,組成網(wǎng)絡(luò)家電系統(tǒng),實(shí)現(xiàn)家用電器的遠(yuǎn)程監(jiān)控、故障遠(yuǎn)程診斷等功能。 2.3.5家庭短信息物業(yè)管理中心
12、與家庭智能終端聯(lián)網(wǎng),對住戶發(fā)布信息,住戶可通過家庭智能終端的交互界面選擇物業(yè)管理公司提供的各種服務(wù)。 2.4智能家居控制系統(tǒng)特點(diǎn) “科技改變生活”。智能家居的應(yīng)用將對我們的家庭生活和生活方式帶來深遠(yuǎn)影響。l 節(jié)省費(fèi)用-在不需要時(shí),能源消耗裝置可以自動(dòng)關(guān)閉,這樣可以降低您的費(fèi)用。l 使用方便-自動(dòng)化系統(tǒng)提供遠(yuǎn)程遙控接口。自動(dòng)化系統(tǒng)還可以把重復(fù)的工作自動(dòng)化。在您外出時(shí),還可以通過internet來調(diào)整或控制家電。l 安全性高-一套家庭自動(dòng)化系統(tǒng)在緊急情況時(shí)可以防御壞人或報(bào)警。您可以在任何地方可以監(jiān)控該安全系統(tǒng),這樣可以保證您的家居安全運(yùn)行。智能家居可以為人們帶來更為愜意輕松的生活在生活工作節(jié)奏越來
13、越快的今天,家居智能化也可以為人們減少繁瑣家務(wù)提高效率節(jié)約時(shí)間,讓人們有更多的時(shí)間去休息教育子女鍛煉身體和進(jìn)修,使人們的生活質(zhì)量有了很大的提高。2.5智能家居控制系統(tǒng)發(fā)展方向隨著internet的發(fā)展和應(yīng)用,基于internet的網(wǎng)絡(luò)和控制結(jié)構(gòu)是目前和未來智能家居的主要構(gòu)造方式。整個(gè)智能家居結(jié)構(gòu)的核心是internet。以internet為中心,在家庭網(wǎng)絡(luò)連接下,結(jié)合了多種智能家居功能解決方案,包括家居控制、訊息服務(wù)、通訊交流、商務(wù)、娛樂、教育、醫(yī)療保健、移動(dòng)通訊。2.6本章小結(jié) 本章詳細(xì)介紹了智能家居控制系統(tǒng)的概念、結(jié)構(gòu)、應(yīng)用場合、系統(tǒng)的功能,以及智能家居控制系統(tǒng)的特點(diǎn)、發(fā)展方向等內(nèi)容。 基
14、于labview網(wǎng)上家居控制平臺(tái)設(shè)計(jì)3.1設(shè)計(jì)系統(tǒng)平臺(tái)的工作原理及功能3.1.1系統(tǒng)平臺(tái)的工作原理:基于labview軟件平臺(tái)internet用戶界面web登錄身份驗(yàn)證單片機(jī)控制板控制按鈕控制按鈕模式轉(zhuǎn)換模式轉(zhuǎn)換模擬量模擬量串口通訊模擬量(信號(hào)燈)按鈕控制圖3-1系統(tǒng)結(jié)構(gòu)框圖如圖3-1所示,用戶通過web登錄服務(wù)器,連接labview設(shè)計(jì)的軟件平臺(tái),通過身份驗(yàn)證后,軟件平臺(tái)開始正式運(yùn)行。單片機(jī)控制板把板上信號(hào)燈模擬量轉(zhuǎn)換為數(shù)字信號(hào),再轉(zhuǎn)換為數(shù)據(jù)字符串通過串口發(fā)送到pc機(jī),即軟件平臺(tái)接收數(shù)據(jù),通過數(shù)據(jù)分析,把模擬狀態(tài)在模擬量變化界面顯示出來。軟件平臺(tái)接收完數(shù)據(jù)后等待用戶控制模式轉(zhuǎn)換,即當(dāng)用戶把模
15、式轉(zhuǎn)換為控制模式時(shí),軟件平臺(tái)把模擬量變化狀態(tài)轉(zhuǎn)換為數(shù)字字符串,通過串口發(fā)送到單片機(jī)控制板,單片機(jī)把接收的數(shù)據(jù),加以分析,把數(shù)據(jù)轉(zhuǎn)換為模擬量,在信號(hào)燈顯示出來。其中軟件平臺(tái)與控制板間,串口通訊起重要橋梁作用。最終的顯示與控制都將在internet用戶登錄界面上完成,而軟件平臺(tái)將作為服務(wù)器,完成對internet用戶登錄界面的監(jiān)測。labview軟件提供一個(gè)儀器監(jiān)控平臺(tái),即是internet用戶登錄界面的基礎(chǔ)。單片機(jī)控制板,作為一個(gè)信息反饋的重要組成部分。3.1.2系統(tǒng)平臺(tái)的功能:l 通過internet網(wǎng)絡(luò),用戶可以對家居實(shí)現(xiàn)遠(yuǎn)程監(jiān)控;l 實(shí)現(xiàn)用戶身份驗(yàn)證功能;l 系統(tǒng)平的監(jiān)測與控制功能模式轉(zhuǎn)換
16、;l 單片機(jī)控制板的模擬狀態(tài)顯示;l 單片機(jī)控制板的按鈕改變模擬狀態(tài)。32labview軟件開發(fā)平臺(tái)3.2.1 labview軟件介紹基于g語言的圖形化編程環(huán)境labview(laboratory virtual instrument engineering workbench)是美國國家儀器公司(ni)的創(chuàng)新軟件產(chǎn)品,它是一種功能強(qiáng)大的虛擬儀器開發(fā)平臺(tái),同時(shí)也是目前應(yīng)用最廣、發(fā)展最快、功能最強(qiáng)的圖形化軟件集成開發(fā)環(huán)境。labview采用“數(shù)據(jù)流”編程的思想,用圖標(biāo)和連線來代替?zhèn)鹘y(tǒng)文本的形式編寫程序,大大縮短了系統(tǒng)的開發(fā)和調(diào)試周期,讓用戶從繁瑣的計(jì)算機(jī)代碼編寫中解放出來,把大部分精力投入到系統(tǒng)
17、的設(shè)計(jì)和分析當(dāng)中,而不再拘泥于程序細(xì)節(jié)。因此labview被譽(yù)為:科學(xué)家和工程師的語言”。labview集成了gpib、vxi、rs-232和rs-485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能,并且它還內(nèi)置了便于應(yīng)用tcp/ip、activx等軟件標(biāo)準(zhǔn)的庫函數(shù)。因此,labview是一個(gè)功能強(qiáng)大且靈活的軟件,利用它可以方便地組建自己的虛擬儀器。3.2.2labview應(yīng)用程序的構(gòu)成使用labview開發(fā)平臺(tái)編制的程序稱為虛擬儀器程序,它包括前面板、流程圖以及圖標(biāo)/連接器三部分。l 前面板設(shè)計(jì)窗口(如圖3-2所示)圖3-2前面板設(shè)計(jì)窗口前面板是圖形用戶界面,也就是vi的虛擬儀器面板,這一界面上有用
18、戶輸入控制和顯示輸出兩類對象,用于模擬真實(shí)儀表的前面板??刂坪惋@示是用各種各樣的圖標(biāo)形式出現(xiàn)在前面板,具體表現(xiàn)有旋鈕、開關(guān)、圖形以及其他控制(control)和顯示(indicator)對象等。流程圖編輯窗口(如圖3-3所示)流程圖提供vi的圖形化源程序,可理解為傳統(tǒng)程序的源代碼。其由端口、節(jié)點(diǎn)、圖框和連線構(gòu)成。圖3-3流程圖編輯窗口端口:前面板對象端口、全局變量與局部變量端口和常量端口。節(jié)點(diǎn):功能函數(shù)節(jié)點(diǎn)、子vi節(jié)點(diǎn)。圖框:實(shí)現(xiàn)結(jié)構(gòu)化控制命令。連線:代表執(zhí)行過程中的數(shù)據(jù)流。3.2.3labview的操作模板設(shè)計(jì)一個(gè)labview應(yīng)用程序,主要是利用labview提供的3個(gè)模板來完成:工具模板
19、、控制模板和功能模板。l 工具模板(如圖3-4所示)工具模板為編程者提供了各種用于創(chuàng)建、修改和調(diào)試vi程序的工具。 l 控制模板(如圖3-5所示)控制模板只會(huì)出現(xiàn)在vi前面板開發(fā)窗口。其主要是提供編程者各種輸入控制、輸出顯示器件、按鈕等。l 功能模板(如圖3-6所示)功能模板只會(huì)出現(xiàn)在流程圖編輯窗口。其主要是提供編程者各種編程代碼所需要的vi子程序和函數(shù)。 圖3-4工具模板 圖3-5 控制模板 圖3-6功能模板3.2.4labview編程的優(yōu)勢在構(gòu)建虛擬儀器方面,labview有很多特點(diǎn)和優(yōu)勢。主要體現(xiàn)以下:l 儀器控制與數(shù)據(jù)采集的圖形化編程。l 直觀明了的前面板用戶界面和流程圖式的編程風(fēng)格。
20、l 內(nèi)置的編譯器可加快程序執(zhí)行速度。l 數(shù)據(jù)采集daq函數(shù)庫可以讓用戶采集測量信號(hào)或者發(fā)送出控制信號(hào)。l 擁有多種儀器驅(qū)動(dòng)程序,可驅(qū)動(dòng)超過50多家廠商所制造的儀器。l 內(nèi)容豐富的高級(jí)分析庫,可以進(jìn)行信號(hào)處理、統(tǒng)計(jì)等復(fù)雜的分析工作。l 利用activex,dde 以及tcp/ip進(jìn)行網(wǎng)絡(luò)連接和進(jìn)行通信。l 有功能超強(qiáng)的分析函數(shù)庫,可以滿足專業(yè)的數(shù)學(xué)分析。3.3 labview控制臺(tái)設(shè)計(jì)在internet網(wǎng)絡(luò)與家居控制是一個(gè)網(wǎng)絡(luò)虛擬環(huán)境與家居真實(shí)環(huán)境,因此需要一個(gè)連接它們之間相連接的重要橋梁。labview軟件剛好可以充當(dāng)充當(dāng)該角色。labview是一種功能強(qiáng)大的虛擬儀器開發(fā)平臺(tái)。用圖像化編程語言
21、,可以直觀地進(jìn)行虛擬儀器的設(shè)計(jì)。運(yùn)用labview設(shè)計(jì)一個(gè)有身份驗(yàn)證界面,按鍵控制界面,模擬量變化界面,數(shù)據(jù)收集功能,數(shù)據(jù)發(fā)送功能。當(dāng)用戶登錄界面,先要進(jìn)行身份驗(yàn)證,即密碼驗(yàn)證。成功進(jìn)入后,進(jìn)行數(shù)據(jù)收集或數(shù)據(jù)發(fā)送功能按鈕選擇。在數(shù)據(jù)收集功能時(shí),可以經(jīng)由模擬量變化了解家居情況。在數(shù)據(jù)發(fā)送功能時(shí),可以通過按鍵控制界面,按鍵控制模擬量變化,并發(fā)送相關(guān)數(shù)據(jù)進(jìn)行家居控制。數(shù)據(jù)的發(fā)送、接收只要通過串口通訊,使pc機(jī)與家居控制板緊密連接。labview控制臺(tái)的基本工作流程(如圖3-7):控制控制數(shù)發(fā)送用戶身份驗(yàn)證(密碼對照)模式選擇串口通訊函數(shù)數(shù)據(jù)字符分析按鈕控制模擬量狀態(tài)(信號(hào)燈)數(shù)據(jù)字符分析狀態(tài)返回值圖
22、3-7 labview控制臺(tái)的基本工作流程框圖用戶先進(jìn)行身份驗(yàn)證,即密碼正確后會(huì)進(jìn)入模式選擇(默認(rèn)為接收),選擇接收后串口通訊函數(shù)做接收數(shù)據(jù)字符(即模擬量狀態(tài)的數(shù)據(jù)信息),經(jīng)分析后轉(zhuǎn)換為模擬量顯示出來。選擇控制后,由按鈕控制模擬量變化,并把控制信號(hào),經(jīng)分析后通過串口通訊函數(shù)發(fā)送出去。labview的控制臺(tái)(如圖3-8),主要包含以下三個(gè)內(nèi)容:l 訪客身份密碼驗(yàn)證l 家用電器狀態(tài)采集l 家用電器控制模擬3.3.1訪客身份密碼驗(yàn)證圖3-8 labview控制界面人們對自身家居,大都持有隱私,也不大樂意對外大方公開家居情況,在這樣的情況下,想要通過互聯(lián)網(wǎng)對家居進(jìn)行監(jiān)控。面對信息萬變的網(wǎng)絡(luò)環(huán)境,設(shè)置驗(yàn)
23、證密碼是必不可少的。設(shè)置訪客身份密碼之后,主人家就可以讓特定人物訪問來獲得家居信息,并進(jìn)行控制。如圖3-9,圖為labview前面板設(shè)計(jì)的“用戶登錄”界面,其中包括:密碼輸入框、登錄按鈕、退出按鈕。密碼輸入圖3-9 用戶登錄界面如圖3-10,圖為labview編程窗口,編出相關(guān)程序。case結(jié)構(gòu)while結(jié)構(gòu)事件結(jié)構(gòu)圖3-10 用戶登錄界面對應(yīng)編程結(jié)構(gòu)在vi程序中設(shè)置事件結(jié)構(gòu)后就可以對數(shù)據(jù)流編程進(jìn)行控制,在事件沒有發(fā)生之前一直處于等待,如果事件觸發(fā)就響應(yīng)執(zhí)行相應(yīng)的代碼。本登錄框設(shè)計(jì)了,用戶輸入密碼后,鼠標(biāo)單擊登錄按鈕后,鼠標(biāo)復(fù)位即觸發(fā)事件,進(jìn)行輸入密碼與預(yù)設(shè)密碼不相等比較。即如果相等輸出為fa
24、lse,否則輸出true。圖3-11對話提示框case結(jié)構(gòu)類似于傳統(tǒng)文本語言編程的if.then.else語句。case結(jié)構(gòu)包含有兩個(gè)或者更多的子框圖,每一個(gè)子框圖包含一段程序代碼,由此對應(yīng)一個(gè)程序分支。由事件結(jié)構(gòu)輸出為false,則對應(yīng)false程序分支,即密碼正確,由登錄按鈕連接到下一程序代碼。輸出true,則對應(yīng)true程序分支,即密碼不正確,并彈出相應(yīng)對話框(如圖3-11),提示操作。事件結(jié)構(gòu)與case結(jié)構(gòu)都在while結(jié)構(gòu)當(dāng)中,即只要運(yùn)行本vi,即程序在不斷循環(huán)運(yùn)行當(dāng)中。與case結(jié)構(gòu)相對應(yīng),如果密碼輸入正確可以下一程序代碼,但密碼錯(cuò)誤,可以循環(huán)輸入。3.3.2家用電器狀態(tài)采集終端與
25、計(jì)算機(jī)之間或者計(jì)算機(jī)與計(jì)算機(jī)之間進(jìn)行交換信息時(shí),除了采用并行通訊方式之外,還經(jīng)常采用串行通訊方式。串行通訊是指數(shù)據(jù)一位一位地按順序傳送,其突出優(yōu)點(diǎn)是只需要一根傳輸線,特別適應(yīng)于遠(yuǎn)距離傳輸。labview在功能模板“instrument i/o”“i/o compatibility”“serial compatibility”子選項(xiàng)中提供了6個(gè)串行通訊函數(shù)(如圖3-12),包括串口初始化、串口讀、串口寫、檢測緩沖器大小、串口中斷以及關(guān)閉等功能。圖3-12 串行通訊函數(shù)利用labview提供6個(gè)串行通訊函數(shù),就可以通過串口通訊提取單片機(jī)控制板的有關(guān)模擬狀態(tài)數(shù)據(jù)。并通過數(shù)據(jù)分析,把數(shù)字量轉(zhuǎn)換為模擬量
26、在前面板上顯示出來。家用電器狀態(tài)采集面板如圖3-13所示:圖3-13家用電器狀態(tài)采集面板包括控制臺(tái)和相關(guān)數(shù)據(jù)顯示其相關(guān)編程如圖3-14所示圖3-14家用電器狀態(tài)采集面板相關(guān)編程圖用戶登錄后,即進(jìn)入模式選擇(默認(rèn)為提取模式)。模式轉(zhuǎn)換開關(guān)中,撥至提取端通過case語句連通串口讀函數(shù)“serial port read.vi”,讀取串口數(shù)據(jù)。進(jìn)行串口通訊,對串口進(jìn)行初始化,com1端口、9600波特率、8位數(shù)據(jù)位、1bit停止位、無奇偶校驗(yàn),使參數(shù)設(shè)置與儀器設(shè)備的串口保持一致,保證正確通信。提取緩沖區(qū)1個(gè)字符,“串口輸入字符串”顯示框中顯示相關(guān)信息,再把字符轉(zhuǎn)換為十進(jìn)制對應(yīng)數(shù)值,在“指示燈相關(guān)數(shù)值”
27、顯示框中用三位二進(jìn)制數(shù)顯示,再把數(shù)值進(jìn)行分析。labview軟件中,成功引入布爾量,即邏輯數(shù)值的控制和顯示。從數(shù)值到布爾量的換算,可以認(rèn)為是數(shù)字信號(hào)轉(zhuǎn)換為虛擬模擬信號(hào)的轉(zhuǎn)換。返回值從串口通訊中提取的數(shù)值進(jìn)行相關(guān)運(yùn)算(如圖3-15):輸入數(shù)值圖3-15數(shù)值轉(zhuǎn)換布爾量1、數(shù)值輸入端輸入被轉(zhuǎn)換為布爾數(shù)組,即數(shù)值轉(zhuǎn)換為“0”或“1”的數(shù)字?jǐn)?shù)組,但“0”、“1”被換為“假”、“真”信號(hào),即布爾常量。2、布爾數(shù)組與預(yù)定布爾數(shù)組進(jìn)行與運(yùn)算,得到結(jié)果再進(jìn)行數(shù)組或運(yùn)算,如果得到“真”,相關(guān)指示燈就會(huì)亮。根據(jù)單片機(jī)控制板發(fā)送過來的相關(guān)字符串0、1、2、3、4、5、6、7,而預(yù)定布爾數(shù)組用二進(jìn)制分別表示001、01
28、0、100對應(yīng)燈為綠燈、紅燈、黃燈。通過運(yùn)算可以得到八種亮燈組合效果。3、布爾數(shù)組或運(yùn)算后,通過布爾轉(zhuǎn)換為0、1函數(shù),轉(zhuǎn)換為0或1數(shù)值,并作返回,為控制模擬作計(jì)算變量。3.3.3家用電器控制模擬labview前面板設(shè)計(jì)控制臺(tái),如圖3-16所示,主要有三個(gè)狀態(tài)指示燈、對應(yīng)三個(gè)控制按鈕以及模式轉(zhuǎn)換開關(guān)。 圖3-16 控制臺(tái)界面圖返回值相關(guān)編程如圖3-17。發(fā)送控制數(shù)值圖3-17家用電器控制模擬編程圖通過模式轉(zhuǎn)換開關(guān),把程序從收集家用電器狀態(tài),轉(zhuǎn)換為家用電器狀態(tài)控制。由家用電器狀態(tài)收集的數(shù)據(jù)分析得一個(gè)指示燈返回值,值是亮為1,暗為0。指示燈按鈕遵循單擊復(fù)位為輸出“真”值,通過轉(zhuǎn)換,可得數(shù)值1。其運(yùn)算
29、為:1、 按鈕值與返回值相加,有三種答案:0、1、2。2、 所得值被2除,求余數(shù),有兩種答案:0、1。即可滿足布爾常量。3、 按燈的排列,分別將結(jié)果乘1,乘2,乘4,對應(yīng)二進(jìn)制數(shù)001、010、100。以放便數(shù)據(jù)分析處理。4、 將三個(gè)結(jié)果進(jìn)行相加,可得0、1、2、3、4、5、6、7八種數(shù)值,剛好與單片機(jī)所發(fā)送的數(shù)值相一致。與前狀態(tài)的數(shù)值運(yùn)算,得與完成相關(guān)控制模擬。labview發(fā)送控制信號(hào),即發(fā)送相關(guān)字符,作為指令,對單片機(jī)控制板進(jìn)行控制。發(fā)送控制數(shù)值相關(guān)編程如圖3-18, 圖3-18 控制模擬模塊發(fā)送程序編程圖初始化計(jì)算機(jī)串口,使用串口寫函數(shù)“serial port white. vi”。由
30、控制模擬可知,控制面板輸出為一數(shù)值。可以用數(shù)值轉(zhuǎn)換十進(jìn)制字符,把數(shù)值轉(zhuǎn)換。轉(zhuǎn)換字符在“串口輸出字符串”顯示框顯示出來。當(dāng)單片機(jī)接收字符后,把字符轉(zhuǎn)換為模擬燈信號(hào),再把燈信號(hào)通過串行通訊,把相關(guān)模擬電器狀態(tài)字符發(fā)送過來,通過串口讀函數(shù)“serial port read. vi”,接收字符,再經(jīng)數(shù)據(jù)轉(zhuǎn)換為模擬信號(hào),在三個(gè)燈上狀態(tài)顯示出來。利用串口函數(shù)的控制命令數(shù)據(jù)的發(fā)送,再接收電器狀態(tài)數(shù)據(jù)的接收,可以有效防止labview控制平臺(tái)模擬與家用電器狀態(tài)模擬的不一致,達(dá)到保護(hù)家用電器的作用。并且可以實(shí)時(shí)監(jiān)察家用電器的變化,即在labview控制平臺(tái)選擇控制模式的時(shí)候,家用電器狀態(tài)的變化在labview上
31、顯示出來,而沒有經(jīng)過labview平臺(tái)控制。這樣的設(shè)計(jì)使系統(tǒng)更加合理。3.4internet控制臺(tái)設(shè)計(jì)在任何地點(diǎn),可以通過internet登錄服務(wù)器,從而進(jìn)入家居監(jiān)控界面,從界面獲取家居相關(guān)信息,從而實(shí)施遠(yuǎn)程監(jiān)察;通過家居監(jiān)控界面的相關(guān)按鈕,改變虛擬按鈕變量,從而實(shí)施遠(yuǎn)程控制。internet網(wǎng)絡(luò)的普及化,使從何時(shí)何地上網(wǎng)成為可能,用戶通過電話線、網(wǎng)線、上網(wǎng)手機(jī)等手段可以進(jìn)行遠(yuǎn)程監(jiān)控。internet登錄家居監(jiān)控界面是基于軟件平臺(tái)搭建的,因此,從網(wǎng)上登錄家居監(jiān)控界面是通過internet登錄相關(guān)服務(wù)器,從而對軟件平臺(tái)的調(diào)用。說到底,internet上是提供一個(gè)超級(jí)鏈接,用戶通過web登錄軟件平
32、臺(tái),從而可以遠(yuǎn)程調(diào)用軟件平臺(tái)。labview可以將vi程序發(fā)布到web上,這樣用戶就可以通過瀏覽器來訪問vi程序的前面析,甚至還可以控制遠(yuǎn)程計(jì)算機(jī)上vi程序的運(yùn)行。在web上發(fā)面labview程序,首先需要打開web服務(wù)器并對其進(jìn)行一些必要的配置。3.4.1web服務(wù)器配置web服務(wù)器配置選項(xiàng)位于tools菜單下的options.選項(xiàng)中,它分為三項(xiàng)內(nèi)容,分別為:web服務(wù)器設(shè)置、瀏覽權(quán)限設(shè)置和程序可見性設(shè)置。一般來說,web服務(wù)器的默認(rèn)配置可以滿足大部分的應(yīng)用程序需要,用用戶可以不進(jìn)行任何改動(dòng),除了需要啟動(dòng)web服務(wù)器。 web服務(wù)器設(shè)置當(dāng)在“options”對話框中的選項(xiàng)下拉菜
33、單中選擇“web server: configuration”后,對話框如圖3-19所示。圖3-19web服務(wù)器的配置對話框web服務(wù)器設(shè)置對話框包括的內(nèi)容如下:l enable web server:要想在web上發(fā)布程序,必須選中此復(fù)選框,才能啟動(dòng)web服務(wù)器。l root directory:根目錄設(shè)置文本框,必須將html文件存放在此根目錄中才能打開。默認(rèn)的根目錄為:d:toolsnational instrumentslabview 7.0www.l http port:http端口號(hào),web服務(wù)器使用的tcp/ip端口,默認(rèn)值為80。如果有其他的網(wǎng)絡(luò)服務(wù)占用了該端口,必須取消use
34、 default復(fù)選框,重新寫入新的端口號(hào)。l timeout:超時(shí)時(shí)間,設(shè)置web服務(wù)器的等待請求時(shí)間。l log file:labview日志文件,用于保存web的連接信息。默認(rèn)的日志文件為:d:toolsnational instrumentslabview 7.0www.log。完成上述設(shè)置后,單擊“ok”按鈕,啟動(dòng)web服務(wù)器。 瀏覽權(quán)限設(shè)置當(dāng)在:“options”對話框的選項(xiàng)下拉菜單中選擇“web server:browser access”后,對話框如圖3-20所示。圖3-20瀏覽權(quán)限設(shè)置對話框?yàn)g覽權(quán)限設(shè)置對話框包括的內(nèi)容如下:l browse access lis
35、t:瀏覽器訪問列表,列出所有的計(jì)算機(jī)ip地址或計(jì)算機(jī)名稱,可以單擊“add”按鈕來添加表中項(xiàng)目或者單擊“remove”按鈕來刪除表中項(xiàng)目。用戶也可以輸入一個(gè)“*”來代表網(wǎng)絡(luò)中所有的計(jì)算機(jī)。l allow viewing and controlling:允許查看和控制,設(shè)置了這種權(quán)限的程序,可以在瀏覽器中對它進(jìn)行查看,并且可以控制它的運(yùn)行。選中后會(huì)在項(xiàng)目面添加兩個(gè)綠色的勾號(hào)。如果想要控制遠(yuǎn)程計(jì)算機(jī)上的vi程序的運(yùn)行,必須選中此項(xiàng)。l allow viewing:允許查看,設(shè)置了這種權(quán)限的程序,只能在瀏覽器中對它進(jìn)行查看。選中后會(huì)在項(xiàng)目前面添加一個(gè)“綠色勾號(hào)”。l deny access:拒絕訪問
36、。選中后會(huì)中項(xiàng)目前面添加一個(gè)“紅色叉號(hào)”。 可見性設(shè)置當(dāng)在“options”對話框中的選項(xiàng)下拉菜單中選擇“web server: visible vis”,對話框如圖3-21所示。圖3-21程序可見性設(shè)置對話框程序可見性設(shè)置對話框包括的內(nèi)容如下:l visible vis:可見程序的列表,可以列出所有在打開的web服務(wù)器的程序名稱。用戶可以單擊“add”按鈕來添加項(xiàng)目,或者單擊“remove”按鈕來刪除表中項(xiàng)目。如果在表右側(cè)的文本框內(nèi)輸入“*”,則列出內(nèi)存中所有的vi程序。l allow access:允許訪問,選中后,會(huì)在表中項(xiàng)目的前面添加一個(gè)“綠色勾號(hào)”,沒有選中則添加一個(gè)“
37、紅色叉號(hào)”。3.4.2在web上發(fā)布vi程序的前面板在web上發(fā)布vi程序的前面板,首先要打開web服務(wù)器,然后就可以通過瀏覽器訪問web服務(wù)器上所打開的程序。3.4.3在web上發(fā)布vi程序的html文檔labview提供了不僅可以在web訪問程序的前面板,還可以將程序保存為html(hypertext markup language,超文本鏈接標(biāo)識(shí)語言)文檔。用戶可以為html文檔添加一些文本說明信息,只要按照格式在web瀏覽器中填寫url值,就可以查看保存的網(wǎng)頁。如果發(fā)布的程序不在計(jì)算機(jī)內(nèi)存中,則web網(wǎng)面中只有文本說明信息,顯示前面板的位置會(huì)出現(xiàn)“requested vi in not
38、 loaded into memory on the server computer”字樣。 web發(fā)布網(wǎng)頁配置打開基于labview網(wǎng)上家居控制平臺(tái).vi程序,在tools菜單中執(zhí)行“web publishing tool.”命令,彈出如圖3-22所示對話框。圖3-22web發(fā)布網(wǎng)頁配置對話框web發(fā)布網(wǎng)頁配置對話框包括的內(nèi)容如下:l document title:文檔標(biāo)題,出現(xiàn)在網(wǎng)頁的上方。l text1:文本頭,出現(xiàn)在前面板上方的說明信息。l text2:文本尾,出現(xiàn)在前面板下方的說明信息。l vi name:程序名稱,給出進(jìn)行發(fā)布的程序名稱,程序必須在于計(jì)算機(jī)的內(nèi)存當(dāng)中。
39、l viewing options:web網(wǎng)頁的瀏覽方式選擇,包括三種瀏覽方式。如下所示。embedded:嵌入方式,網(wǎng)頁中的圖像前面板隨著程序同步刷新,當(dāng)程序退出后,網(wǎng)頁中的前面板也隨之消失。snapshot:靜態(tài)圖像方式,網(wǎng)頁中程序的前面板圖像是靜態(tài)的。monitor:動(dòng)態(tài)圖像方式。網(wǎng)頁中程序的前面板圖像不斷進(jìn)行刷新,也可以說是不斷進(jìn)行刷新的靜態(tài)圖像方式。l start web server:啟動(dòng)web服務(wù)器,如果在“web server:configuration” web服務(wù)器設(shè)置對話框中沒有選中“enable web server”復(fù)選框,則可以單擊此按鈕來啟動(dòng)web服務(wù)器。l pr
40、eview in browser:在瀏覽中對程序html文檔進(jìn)行瀏覽。l save to disk:用戶單擊該按鈕后,就可以保存html文檔,系統(tǒng)默認(rèn)的保存路徑就是web服務(wù)器設(shè)置對話框中的root directory內(nèi)設(shè)置的目錄。默認(rèn)的文件名是程序名,文件名稱可以改動(dòng),需要注意的就是必須將文件保存在默認(rèn)的根目錄內(nèi)。在選擇保存程序html文檔之后,會(huì)彈出一個(gè)顯示瀏覽網(wǎng)頁的url的對話框,如圖3-23所示,其中“e5cb81dcdd954d7”是本地算機(jī)的名稱。圖3-23程序html文檔url 瀏覽程序html文檔當(dāng)完成對程序html文檔的配置后,可以單擊done按鈕關(guān)閉web發(fā)布
41、網(wǎng)頁配置對話框。這里就可以在web瀏覽器中對html網(wǎng)頁進(jìn)行訪問。首先打開web瀏覽器,在鏈接地址欄中輸入:http:/e5cb81dcdd954d 圖3-24在web網(wǎng)頁上瀏覽基于labview網(wǎng)上家居控制平臺(tái)程序 在html網(wǎng)頁中對程序進(jìn)行控制如果要相在html網(wǎng)頁中對程序進(jìn)行控制,必須先要在“web server:browser access”(瀏覽權(quán)限設(shè)置)對話框中選中“allow viewing and controlling”選項(xiàng),它允許在外部web瀏覽器中對程序進(jìn)行查看和控制。在發(fā)面的vi程序labview.vi的前面板或流程圖的左下角有一個(gè)顯示字樣為“1viewe
42、rs”的隱藏菜單,當(dāng)用戶單擊它后,會(huì)彈出如圖3-25所示的選擇菜單,它包含以下3個(gè)選項(xiàng)命令:1viewers菜單圖3-25 html網(wǎng)頁中的1 viewers菜單l lock control:服務(wù)器端程序控件鎖定,禁止對發(fā)布源程序的控制。l switch controller:在服務(wù)器端程序與web瀏覽器之間交換對控件的控制權(quán)。l show last message:顯示最后的提示信息。同樣,在瀏覽程序的網(wǎng)頁的左下角也有一個(gè)“vserver:localhost”隱藏菜單,如圖3-26所示,它包含以下5個(gè)選項(xiàng)命令:l request control of vi:請求對發(fā)布的遠(yuǎn)端程序進(jìn)行控制。l
43、release control of vi:釋放對遠(yuǎn)端程序的控制權(quán)。l show last message:顯示最后的提示信息。l show control time remaining:顯示剩余的控制時(shí)間。l close panel:關(guān)閉程序的前面板。圖3-26瀏覽程序的網(wǎng)頁“<v>server:localhost”菜單當(dāng)在web瀏覽器的下方執(zhí)行“request control of vi”命令項(xiàng)后,就可以對vi程序labview.vi進(jìn)行控制。當(dāng)在網(wǎng)頁中單擊連續(xù)運(yùn)行按鈕運(yùn)行程序,就像在labview服務(wù)器端運(yùn)行程序一樣。當(dāng)web瀏覽器獲得對程序的控制權(quán)之后,遠(yuǎn)端服務(wù)器反而不能控
44、制程序的運(yùn)行。3.4單片機(jī)控制板設(shè)計(jì)硬件主要是以單片機(jī)為核心,相系通訊芯片制作出pcb控制板。單片機(jī)實(shí)現(xiàn)對控制板中信號(hào)燈的控制,信號(hào)燈作為家居電器的模擬。單片機(jī)把模擬信號(hào)與數(shù)字信號(hào)互換,可以更好地與pc機(jī)相聯(lián),達(dá)到數(shù)模的成功轉(zhuǎn)換,達(dá)到監(jiān)察、控制的目的。串口通過通訊芯片,把數(shù)據(jù)發(fā)送到單片機(jī),單片機(jī)作數(shù)據(jù)的分析,把數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),再在信號(hào)燈上顯示出來,達(dá)到pc機(jī)對家居的控制。單片機(jī)把信號(hào)燈的模擬信號(hào),作分析并轉(zhuǎn)換為數(shù)字信號(hào),再通過串口發(fā)送到pc機(jī)上,實(shí)現(xiàn)pc機(jī)對家居的監(jiān)察。單片機(jī)控制板要實(shí)現(xiàn)的功能就是可以鍵控3個(gè)指示燈,利用串口與pc機(jī)進(jìn)行通訊,發(fā)送單片機(jī)3個(gè)指示燈的狀態(tài),并且接收pc機(jī)發(fā)
45、送過來的數(shù)據(jù),根據(jù)數(shù)據(jù)再改變指示燈的狀態(tài)。單片機(jī)類型:at89s51,相關(guān)連線如圖3-27圖3-27使用10.592m晶振與兩個(gè)30p電容組成振蕩電路,p2.0到p2.2共3腳連接接地按鈕,進(jìn)行低電平觸發(fā)。p2.5到p2.7共3腳連接三個(gè)指示燈,模擬家用電器使用狀態(tài)。9腳set與22u極性電容,高電平按鈕和10k電阻組成復(fù)位電路。使用rs232c標(biāo)準(zhǔn)芯片max232作為重要通訊器件,圖3-28,為其外圍電路及其連線。圖3-28電路還有使用rs232c標(biāo)準(zhǔn),9芯串口接線器,usb作為電路電源,外加一個(gè)led燈與1k電阻組成電源指示燈。3.4本章小結(jié)本章首先介紹了基于labview的網(wǎng)上家居控制平
46、臺(tái)的工作原理、系統(tǒng)可實(shí)現(xiàn)的功能,隨后介紹了labview編程的一些特點(diǎn),再分別講述了labview控制臺(tái)的設(shè)計(jì)、internet控制平臺(tái)的設(shè)計(jì)、單片機(jī)控制板的設(shè)計(jì)等各部分的具體內(nèi)容。單片機(jī)編程4.1單片機(jī)程序的流程圖單片機(jī)部分采用c語言編程,由主函數(shù)模塊實(shí)現(xiàn)全部功能,其中調(diào)用了多個(gè)子程序模塊,包括:定時(shí)器中斷程序模塊,讀燈子程序模塊,發(fā)送子程序模塊,串口中斷程序模塊,pc控?zé)糇映绦蚰K,手控?zé)糇映绦蚰K等。流程圖如下圖所示。從主函數(shù)模塊開始,定義變量receive_flag=1,send_flag=1為子程序服務(wù),調(diào)用定時(shí)器中斷程序,開定時(shí)器。初始化定時(shí)器,設(shè)置定時(shí)器1作9600波特率發(fā)生器,
47、定時(shí)器0作10ms計(jì)時(shí)滿中斷。開串口中斷。循環(huán)調(diào)用手動(dòng)控?zé)糇映绦颍袛郼ontrol_led是否為1,“是”即調(diào)用pc控?zé)糇映绦颍胺瘛痹傺h(huán)運(yùn)行(如圖4-1)。ny主函數(shù)定義變量開串口中斷手動(dòng)控?zé)糇映绦騝ontrol_led=1?pc控?zé)糇映绦蜷_定時(shí)器串口初始化定時(shí)器1作9600波特率發(fā)生器定時(shí)器0作10ms計(jì)時(shí)滿中斷圖4-1主函數(shù)模塊手動(dòng)控?zé)糇映绦颍ㄈ鐖D4-2),先是判斷p2.0是否為0,“是”則調(diào)用延時(shí)子程序,再判斷p2.0是否為0,“是”,就把led燈1狀態(tài)取反。這里主要是判斷按鈕是否按下,按下后,就把相應(yīng)的燈狀態(tài)改變。先判斷p2.0,對應(yīng)按鈕是否按下,如“否”,再判斷p2.1,p2.
48、0,這樣來實(shí)現(xiàn)手動(dòng)按鈕控?zé)舻墓δ?。nnnnyyyyyynn手控?zé)糇映绦蛉肟趐2.01p2.11p2.21延時(shí)子程序延時(shí)子程序延時(shí)子程序p2.01p2.11p2.21led1取反led2取反led3取反返回圖4-2手控?zé)糇映绦蚰Kynyn計(jì)時(shí)器中斷子程序入口關(guān)串口中斷t0重新裝值zdyi+1send_flag=1調(diào)用發(fā)送子程序調(diào)用讀燈子程序send_flag=0開串口中斷圖4-3計(jì)時(shí)器中斷子程序模塊zdyi=5返回send_flag=1zdyi0當(dāng)計(jì)時(shí)器計(jì)滿時(shí),程序進(jìn)入計(jì)時(shí)器中斷子程序模塊,先關(guān)串口中斷,t0重置新值,定義變量zdyi加1,比較是否為5,不為5返回并等待下次中斷,如“是”就使se
49、nd_flag=1,判斷send_flag=1是否為1,“是”即調(diào)用發(fā)送子程序,再調(diào)用讀燈子程序,返回后把send_flag=0,再判斷是否send_flag=1,開串口中斷,返回主函數(shù)。該程序與labview軟件發(fā)送與接收程序配合來工作。讀燈子程序模塊主要負(fù)責(zé)判斷p2.5到p2.7對應(yīng)三個(gè)led燈的狀態(tài),從而把三燈的狀態(tài)用temp的值表示,再把其值以“返回值”返回到發(fā)送子程序。(如圖4-4)發(fā)送子程序模塊主要負(fù)責(zé)向串口發(fā)送數(shù)據(jù),發(fā)送字符 “返回值”。再返來計(jì)時(shí)器中斷子程序。(如圖4-5)nyi+1yn讀燈子程序入口temp=p2,i=0temp向右移1位temp與非f8temp值取反i<
50、;5發(fā)送子程序入口ti=0,發(fā)送返回值ti=1圖4-4讀燈子程序模塊圖4-5發(fā)送子程序模塊返回yni=0x值取反pc控?zé)糇映绦蛉肟趇5,i+1x向左移一位圖4-7pc控?zé)裟Kp2口x串口中斷子程序入口清除接收中斷標(biāo)志位關(guān)串口中斷astring1=sbufcontrol_led=1開串口中斷圖4-6串口中斷模塊當(dāng)發(fā)生串口中斷時(shí),進(jìn)入串口中斷程序模塊,先初始化串口,直接將數(shù)據(jù)存入預(yù)定數(shù)組astring1,將control_led=1,開串口中斷,返回主函數(shù)。從串口中斷子程序返回時(shí)control_led=1,是由主函數(shù)調(diào)用pc控?zé)糇映绦蚰K執(zhí)行得到的。該程序把數(shù)組astring1值定義為x,把x向左
51、移5位即把x的低三位向左移5位變成高三位,也就是說把接收到的數(shù)據(jù)信息轉(zhuǎn)換為p2.5到p2.7的狀態(tài)。手控?zé)糇映绦蚰K調(diào)用的延時(shí)子程序模塊功能主要是使用cpu計(jì)算指令,達(dá)到時(shí)間延時(shí)的效果。延長時(shí)間大約為10×500×2us=10ms。ynyn延時(shí)子程序入口定義i,ji<aj<500i+1返回j+1圖4-8延時(shí)模塊4.2本章小結(jié)本章介紹了網(wǎng)上家居控制平臺(tái)系統(tǒng)的單片機(jī)端的各程序的流程圖,主要包括:主函數(shù)模塊、手控?zé)糇映绦蚰K、計(jì)時(shí)器中斷子程序模塊、讀燈子程序模塊、發(fā)送子程序模塊、串口中斷模塊、pc控?zé)裟K、延時(shí)模塊等內(nèi)容。 系統(tǒng)調(diào)試5.1設(shè)計(jì)調(diào)試調(diào)試目標(biāo):實(shí)現(xiàn)labv
52、iew控制平臺(tái),并與單片機(jī)控制板緊密連接,可以實(shí)現(xiàn)監(jiān)測、控制功能,從而進(jìn)行網(wǎng)絡(luò)調(diào)試,最終實(shí)現(xiàn)網(wǎng)絡(luò)控制平臺(tái)。經(jīng)過為期一個(gè)多月的軟硬件制作,labview軟件編寫程序、單片機(jī)c語言編程以及硬件單片機(jī)pcb板,總算大致完成,可以進(jìn)入調(diào)試階段。調(diào)試應(yīng)先從最基本做起,軟硬件制作的更要如些,因?yàn)橛布膯栴}直接影響軟件動(dòng)作,而且查到問題的時(shí)候,修改軟件總比修改硬件要容易、簡單一些。5.2硬件調(diào)試主要注意問題:原理圖是否正確,因?yàn)樵韴D正確與否,就是pcb板的成敗。由原理圖生成pcb圖,應(yīng)仔細(xì)檢查是否有漏線,錯(cuò)線的情況發(fā)生,因?yàn)閜cb連線沒有原理圖的直觀,因此檢查pcb圖應(yīng)仔細(xì)對照原理圖,作好連線。制作pcb
53、銅板是否成功,直接關(guān)系到往后制作。檢查是否有斷線,貼線的現(xiàn)象發(fā)生,為銅板轉(zhuǎn)孔時(shí)要認(rèn)真對準(zhǔn),特別是ic插槽的焊孔一定要整齊、準(zhǔn)確。對元件的檢測,對一般可測量元件,盡可能測量一遍,以防止元件損壞,而影響調(diào)試進(jìn)度。焊元件后一定要認(rèn)真檢查,確保無虛焊、漏焊發(fā)生。還要注意芯片供電問題,主要表現(xiàn)在電流過低,因?yàn)闆]有設(shè)計(jì)穩(wěn)壓電路,因此對電源有一定要求,pc機(jī)上的usb基本上能滿足上述要求。調(diào)試結(jié)果:由于腐蝕pcb板時(shí)候沒有完全腐蝕好,max232芯片沒有正常工作,切開相接電路問題解決。四個(gè)按鈕中有一個(gè)接觸不良,替換后問題解決。在畫pcb圖時(shí),由于rs232標(biāo)準(zhǔn)九針接口封裝與真實(shí)元件不匹配,串口不能進(jìn)行通訊。
54、把接錯(cuò)的線路切斷,使用非線把就接的線路接通。使用串口調(diào)試工具,進(jìn)行相關(guān)數(shù)據(jù)接收、發(fā)送,串口能正常通訊,問題解決。5.3軟件調(diào)試軟件調(diào)試分兩個(gè)部分:l 單片機(jī)c語言編程l labview可視化語言編程由于labview是可視化語言編程,相對于其它編程而言非常直觀,因此軟件調(diào)節(jié)階段的首要工作就是了解labview的編程特點(diǎn)。單片機(jī)編程的時(shí)候,盡可能按照該編程特性,合理編排,盡量做到一次通過。而單片機(jī)編程最主要解決的問題就是串口通訊,如何有效、準(zhǔn)確、零錯(cuò)誤地收發(fā)數(shù)據(jù)是該編程的難點(diǎn)。通過添加數(shù)據(jù)頭,以及數(shù)據(jù)尾,以雙重確認(rèn)的方式來對數(shù)據(jù)收發(fā)。的確這個(gè)方法是最常用,最合理的編程方法。當(dāng)單片機(jī)程序編好之后,
55、在調(diào)試過程中,只能發(fā)送數(shù)據(jù),卻不能接收數(shù)據(jù),仔細(xì)檢查,以及多方嘗試之后,大體鎖定是串口中斷中,一句簡單的結(jié)構(gòu)問題,關(guān)于while語句中for語句,因?yàn)榫帉懖划?dāng),導(dǎo)致發(fā)生死循環(huán)。明白到錯(cuò)誤就進(jìn)行修改,但修改的過程中又發(fā)現(xiàn)另外一個(gè)功能不能實(shí)現(xiàn),就是當(dāng)單片機(jī)接收數(shù)據(jù)后,不能分析數(shù)據(jù),把pc機(jī)控制命令反饋到單片機(jī)控制板,改變的指示燈狀態(tài)。經(jīng)過考慮計(jì)算,看出單片機(jī)不能正常識(shí)別串口接收的字符串,是由于計(jì)時(shí)器中斷與串口中斷之間發(fā)生互相影響,使到串口接收到的數(shù)據(jù)雖然可以判斷數(shù)據(jù)頭,但是跟著接收到的數(shù)據(jù)就會(huì)因?yàn)橹袛喽邮斟e(cuò)亂。使單片機(jī)不能識(shí)別。鑒于labview程序發(fā)送是一個(gè)單字節(jié)字符,因此只要解決數(shù)據(jù)發(fā)送、接收的完整性,就可以省去數(shù)據(jù)頭與結(jié)束符。解決方法是通過設(shè)置單片機(jī)的中斷來實(shí)現(xiàn),設(shè)置使用中斷方式1,時(shí)間為計(jì)時(shí)50ms,進(jìn)入中斷后關(guān)串口中斷,返回主函數(shù)。設(shè)置中斷4次后,即0.2秒發(fā)送一次單片機(jī)燈狀態(tài),并開串口中斷,這時(shí)單片機(jī)串口中斷把subp中的字符讀入,并把字符轉(zhuǎn)化為燈狀態(tài)。再經(jīng)0.2秒后把燈狀態(tài)發(fā)送出去。這樣可以避免高速labview不停發(fā)送控制命令,而影響單片機(jī)本身手動(dòng)控制的能力。程序執(zhí)行后,labvi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工程施工合同索賠流程及賠償標(biāo)準(zhǔn)規(guī)范文本
- 2025年度電子工程師研發(fā)項(xiàng)目合作合同
- 2025年度酒店物業(yè)管理合同規(guī)范文本
- 遼寧2024年渤海大學(xué)附屬高級(jí)中學(xué)招聘人筆試歷年參考題庫附帶答案詳解
- 菏澤2025年山東菏澤醫(yī)專附屬醫(yī)院招聘精神科住院醫(yī)師2人筆試歷年參考題庫附帶答案詳解
- 湖南2025年湖南省住房和城鄉(xiāng)建設(shè)廳所屬事業(yè)單位選調(diào)筆試歷年參考題庫附帶答案詳解
- 溫州2024年浙江溫州蒼南縣質(zhì)量技術(shù)監(jiān)督檢測院招聘食品檢測工作人員筆試歷年參考題庫附帶答案詳解
- 浙江浙江省國際經(jīng)濟(jì)貿(mào)易學(xué)會(huì)招聘筆試歷年參考題庫附帶答案詳解
- 2025年中國宮燈罩市場調(diào)查研究報(bào)告
- 2025年中國半自動(dòng)內(nèi)圓切片機(jī)市場調(diào)查研究報(bào)告
- 4地球-我們的家園《我們共同的責(zé)任》說課稿 -2023-2024學(xué)年道德與法治六年級(jí)下冊統(tǒng)編版
- 護(hù)理交接班改進(jìn)
- 詩經(jīng)楚辭文學(xué)常識(shí)單選題100道及答案
- AI輔助的慢性病監(jiān)測與管理系統(tǒng)
- 電路基礎(chǔ)知到智慧樹章節(jié)測試課后答案2024年秋江西職業(yè)技術(shù)大學(xué)
- 2025年小學(xué)蛇年寒假特色作業(yè)
- Unit 6 Is he your grandpa 第一課時(shí) (教學(xué)實(shí)錄) -2024-2025學(xué)年譯林版(三起)(2024)英語三年級(jí)上冊
- 湖北省十一校2024-2025學(xué)年高三上學(xué)期第一次聯(lián)考化學(xué)試題 含解析
- 開題報(bào)告:鑄牢中華民族共同體意識(shí)的學(xué)校教育研究
- 《個(gè)人所得稅法解讀》課件
- 電腦維修合同三篇
評論
0/150
提交評論