音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

支持Android智能手機(jī)控制的DALI智能照明系統(tǒng)設(shè)計(jì)

出處:電子技術(shù)網(wǎng) 發(fā)布于:2013-08-12 09:01:54

  摘要:首先簡單介紹DALI協(xié)議。在分析整個(gè)智能照明系統(tǒng)的基礎(chǔ)上,設(shè)計(jì)一種基于客戶機(jī)/服務(wù)端(C/S)架構(gòu)的系統(tǒng),在Android操作系統(tǒng)的智能手機(jī)上面開發(fā)客戶端軟件,并在Windows環(huán)境下使用VB6.0開發(fā)服務(wù)器端軟件。客戶端軟件和服務(wù)器軟件在構(gòu)建的局域網(wǎng)中驗(yàn)證通過。

  1引言

  智能照明系統(tǒng)應(yīng)用在智能建筑中,不僅能營造出舒適的生活工作環(huán)境,引入現(xiàn)代化的管理方式,而且還能夠節(jié)約能源。傳統(tǒng)的智能家居系統(tǒng),大多采用Pc做控制終端,并基于Internet的遠(yuǎn)程控制,受到Intemet地域的限制,使用不是很方便。網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展為智能家居提供了強(qiáng)大動(dòng)力,智能手機(jī)作為控制終端已成必然趨勢(shì)。本文設(shè)計(jì)一種將Android操作系統(tǒng)的智能手機(jī)作為控制終端的DALI智能照明系統(tǒng)。

  2 DALI協(xié)議簡介

  數(shù)字可尋址照明接口(DALI,DigitalAddressing Lighting Interface)協(xié)議是目前照明領(lǐng)域的國際標(biāo)準(zhǔn)協(xié)議,也是國際電工委員會(huì)的標(biāo)準(zhǔn)(IEC60929)。DALI系統(tǒng)采用主從式結(jié)構(gòu),系統(tǒng)多可以連接64個(gè)從控模塊,每個(gè)從控模塊都擁有一個(gè)特定的地址,該地址在系統(tǒng)初始化時(shí)設(shè)定,使用過程中根據(jù)需求可修改從控模塊的地址。從控模塊多可分為16組(以組地址區(qū)分),每個(gè)模塊可以設(shè)定16個(gè)場景,組地址和場景都可以根據(jù)需要設(shè)定。主控模塊與從控模塊之間使用兩條信號(hào)線通信,數(shù)據(jù)采集用曼徹斯特編碼方式編碼,信號(hào)上升沿表示“1”,下降沿表示“0”,通信速率為1200baud/s.

  通信的過程中主控模塊使用兩種不同的數(shù)據(jù)幀格式:

  發(fā)送幀(主機(jī)發(fā)送從機(jī))和接收幀(從機(jī)發(fā)送到主機(jī))。主控模塊發(fā)送信息包括一個(gè)起始位,16個(gè)數(shù)據(jù)位(8位地址和8位指令)以及2個(gè)停止位;從控模塊的返回幀包括一個(gè)起始位8個(gè)數(shù)據(jù)位以及兩個(gè)停止位。

  3 系統(tǒng)總體設(shè)計(jì)

  本文設(shè)計(jì)了一種客戶端/服務(wù)器(C/S)架構(gòu)的照明控制系統(tǒng)。手機(jī)客戶端軟件是在目前比較流行的Android操作系統(tǒng)下開發(fā)的。服務(wù)器端軟件是Windows系統(tǒng)下的VB6.0開發(fā)的。客戶端和服務(wù)器端是通過套接字(Socket)來建立連接。Android系統(tǒng)下應(yīng)用程序的編程語言是Java,而Java提供了Socket以及ServerSocket來實(shí)現(xiàn)Socket.y通信。

  Windows系統(tǒng)也提供了Winsock控件。41來支持Socket通信。同時(shí),VB6.0提供MSComm控件來開發(fā)串口通信程序。

  整個(gè)系統(tǒng)的的設(shè)計(jì)簡圖如圖1所示。服務(wù)器端接收到客戶端發(fā)過來控制命令后解析這些命令并調(diào)用相應(yīng)處理程序,然后將控制命令從串口發(fā)送出去。

  RS232.DALI網(wǎng)關(guān)接收到從服務(wù)器串口發(fā)送過來的控制命令后,就會(huì)響應(yīng)從控模塊,整個(gè)過程完成了電平的轉(zhuǎn)換以及控制命令的解析。

  

  4客戶端軟件設(shè)計(jì)

  4.1設(shè)計(jì)簡介

  客戶端軟件的開發(fā)環(huán)境是實(shí)時(shí)版本的Eclipse,JDK以及Android SDK也都是實(shí)時(shí)的版本。軟件設(shè)計(jì)了六個(gè)主要控制界面(如圖2所示)以及一些其他與軟件相關(guān)的界面。主界面(圖2(a))對(duì)應(yīng)一個(gè)主Activity,其他五個(gè)界面分別對(duì)應(yīng)四個(gè)Activity分別實(shí)現(xiàn)從控模塊查詢與控制、場景控制與設(shè)置、組地址設(shè)置、直接命令等功能。這四個(gè)Activity都繼承自主Activity.數(shù)據(jù)的發(fā)送和接收函數(shù)繼承自主Activity.

  4.2主Activity的設(shè)計(jì)

  主Activity是軟件的主界面如圖2(a)所示,兩個(gè)滑動(dòng)條分別完成直接功率調(diào)光和淡光時(shí)間設(shè)置,滑動(dòng)條的每滑動(dòng)將觸發(fā)數(shù)據(jù)發(fā)送的命令,服務(wù)器端監(jiān)聽到控制命令后對(duì)發(fā)送過來的控制命令進(jìn)行解析,完成對(duì)應(yīng)地址的從控模塊直接功率調(diào)光以及淡光時(shí)間的設(shè)置。兩個(gè)地址選擇框用來設(shè)置地址的模式,某個(gè)選擇框的選中代表選擇相應(yīng)地址模式,兩者均未選中表示地址為短地址。地址的選定是通過從文本框手動(dòng)輸入,兩個(gè)按鈕實(shí)現(xiàn)開燈和關(guān)燈的功能。

  主界面是進(jìn)入其他界面的門戶,Android提供專門的菜單鍵,進(jìn)行菜單設(shè)計(jì)。軟件設(shè)計(jì)了兩層菜單,層包括軟件設(shè)置、工具、、幫助四個(gè)菜單。

  設(shè)置菜單包含軟件設(shè)置、從控模塊設(shè)置、退出三個(gè)子菜單;工具菜單包含燈光亮度、場景、組;只包含直接命令一個(gè)子菜單;幫助部分包含軟件的相關(guān)信息。Android提供OnCreateO pcionMenu進(jìn)行菜單設(shè)計(jì),同時(shí)提供了0noptionItemselected處理菜單事件。整個(gè)軟件的流程如圖3所示。

  客戶端與服務(wù)器端是通過Socket建立連接,既有數(shù)據(jù)從客戶端發(fā)送到服務(wù)器端,也有數(shù)據(jù)從服務(wù)器端返回至客戶端,即DALI協(xié)議中的發(fā)送幀與接收幀。前面已經(jīng)提到過Android應(yīng)用程序采用的編程語言是Java.

  Java提供了許多關(guān)于Socket通信的類和函數(shù),文中客戶端使用了客戶端類Socket以及BufferedWriter和DatalnputStream輸入輸出類實(shí)現(xiàn)Socket通信??蛻舳嗽O(shè)計(jì)了兩個(gè)函數(shù),SendCmd(String cmd)和SendRead(String cmd)。SendCmd的發(fā)送單向數(shù)據(jù)沒有返回幀,SendRead既發(fā)送數(shù)據(jù)同時(shí)接收服務(wù)器端返回的數(shù)據(jù)。

  分別設(shè)計(jì)兩個(gè)函數(shù)的原因是因?yàn)镈ataInputStream的readLine方法在沒有數(shù)據(jù)返回時(shí)會(huì)造成Socket阻塞。

  Java的數(shù)據(jù)類型與Vb的數(shù)據(jù)類型存在一定的差異,數(shù)據(jù)類型的轉(zhuǎn)換比較復(fù)雜。本文統(tǒng)一使用字符串實(shí)現(xiàn)客戶端與服務(wù)器端的數(shù)據(jù)交換。將各種發(fā)送數(shù)據(jù)通過特定的符號(hào)組合成字符串,經(jīng)客戶端發(fā)送給服務(wù)器端,服務(wù)器端軟件通個(gè)分隔函數(shù)將字符串分隔成組合前的信息。因此,數(shù)據(jù)發(fā)送和接收函數(shù)不需要因?yàn)閿?shù)據(jù)類型的不同而采取不同的函數(shù),同時(shí)也省去Java與Vb數(shù)據(jù)類型不一致的處理過程。

  

  

  4.3各個(gè)功能模塊的設(shè)計(jì)

  實(shí)現(xiàn)各模塊的類都是主Activity的子類,它們都使用了主Activity的數(shù)據(jù)發(fā)送和接收函數(shù)。各功能模塊的設(shè)計(jì)簡介如下:

  1)從控單元設(shè)置(圖2(b))該模塊能完成從控模塊的亮度、亮度、故障亮度、上電亮度、淡光時(shí)間、淡光速率的設(shè)置和查詢。完成版本號(hào)、設(shè)備類型、功率以及當(dāng)前亮度的查詢。

  2)組控制(圖2(f))該模塊設(shè)計(jì)了16個(gè)選擇框(Checkbox),分別代表十六個(gè)組。通過選擇框的選擇以及設(shè)置和查詢,能夠?qū)崿F(xiàn)組地址的統(tǒng)一設(shè)置和查詢。

  3)場景控制(圖2(C)、(d))該模塊包括場景的選擇、設(shè)置、查詢功能。場景的設(shè)置和查詢部分設(shè)計(jì)了一個(gè)對(duì)話框,這樣設(shè)計(jì)的原因是可以在一個(gè)Activity內(nèi)完成所有的功能。

  4)直接命令(圖2(e))這個(gè)模塊主要為了方便調(diào)試而設(shè)計(jì)的。可以通過對(duì)應(yīng)的文本框發(fā)送自定義的命令,同時(shí)可以回顯從服務(wù)器端返回的數(shù)據(jù),它發(fā)送的命令非常直觀,可以用來調(diào)試RS232-DALI網(wǎng)關(guān)以及從控模塊。

  5服務(wù)器端軟件設(shè)計(jì)

  5.1設(shè)計(jì)簡介

  服務(wù)器端軟件是使用VB6.0開發(fā)的,軟件使用了Windows提供的Winsock和MSComm控件。

  Winsock控件提供了訪問TCP和UDP網(wǎng)絡(luò)服務(wù)的方便途徑。編寫客戶或服務(wù)器應(yīng)用程序,不必了解TCP的細(xì)節(jié)或調(diào)用低級(jí)的Winsock API.通過設(shè)置控件的屬性并調(diào)用其方法就可輕易連接到一臺(tái)遠(yuǎn)程機(jī)器上去,并且還可雙向交換數(shù)據(jù)。MSComm控件通過串行端口傳輸和接收數(shù)據(jù),為應(yīng)用程序提供串行通訊功能。服務(wù)器端支持多個(gè)客戶端,基本服務(wù)器只能接受一個(gè)連接請(qǐng)求。通過創(chuàng)建Winsock控件數(shù)組,使用一個(gè)控件也可以同時(shí)接受多個(gè)連接請(qǐng)求。

  利用這種方法,不需要關(guān)閉連接,而只需創(chuàng)建新的控件實(shí)例(通過設(shè)置其索引屬性),然后在新的實(shí)例上調(diào)用Accept方法。軟件啟動(dòng)后開始監(jiān)聽來自客戶端的Socket請(qǐng)求。當(dāng)監(jiān)聽到從客戶端發(fā)送過來的數(shù)據(jù)以后,然后判斷發(fā)送過來的數(shù)據(jù),再調(diào)用相應(yīng)的數(shù)據(jù)處理函數(shù)。在軟件啟動(dòng)的同時(shí)也開啟了定時(shí)器,循環(huán)檢測(cè)標(biāo)志位,檢測(cè)到以后進(jìn)入對(duì)應(yīng)的命令處理函數(shù)。軟件的流程如圖4所示。

  

  5.2數(shù)據(jù)的分析和處理

  當(dāng)服務(wù)器端接收到從客戶端傳過來的字符串時(shí),使用Split函數(shù)將字符串分隔成數(shù)組。根據(jù)數(shù)組的長度判斷命令的種類。基本控制命令長度為3、組的長度判斷命令的種類?;究刂泼铋L度為3、組控制命令長度為4、從控模塊控制命令長度為9、場景控制命令長度為19.VB6.0提供了一個(gè)Timer控件,通過定時(shí)器來實(shí)現(xiàn)控制命令的循環(huán)監(jiān)聽和處理。

  程序定義了一個(gè)標(biāo)志位來判斷控制命令類型,當(dāng)接收到客戶端數(shù)據(jù)并進(jìn)行分隔,賦值等操作以后相對(duì)應(yīng)的標(biāo)志位被致位,定時(shí)器循環(huán)檢測(cè)標(biāo)志位,當(dāng)檢測(cè)對(duì)應(yīng)標(biāo)志位被置“1”時(shí)便進(jìn)入對(duì)應(yīng)的命令處理程序,處理完以后標(biāo)志位被置零。

  5.3地址設(shè)置

  DALI自動(dòng)分配地址簡介,首先給需要重新分配地址的單元分配一個(gè)24位二進(jìn)制隨機(jī)地址,然后通過尋找隨機(jī)地址的單元并分配短地址,然后重復(fù)尋找直到所有需要設(shè)置短地址的單元都設(shè)置完。

  因?yàn)?4位二進(jìn)制數(shù)比較大,按常規(guī)方法尋找的話,花費(fèi)的時(shí)間比較長。從上面地址分配的原理可以看到,在整個(gè)地址分配的過程中,主要是主機(jī)24位數(shù)據(jù)和DALI設(shè)備24隨機(jī)數(shù)比較的問題。如何才能找到的隨機(jī)數(shù)的設(shè)備,這是解決這個(gè)問題是關(guān)鍵。比較兩個(gè)數(shù)據(jù)的大小方法很多,這里采用是2分算法。實(shí)現(xiàn)步驟如下:

  1)主機(jī)發(fā)送FFFFFF與DALI設(shè)備比較,因?yàn)镈ALI設(shè)備產(chǎn)生的隨機(jī)肯定比FFFFFF要小的,如果總線后,采用2分算法比較主機(jī)數(shù)據(jù)上存在沒有分配地址的設(shè)備,則肯定回答YES.否則NO.

  2)在上一步中得知總線上有沒有分配地址的設(shè)備和隨機(jī)數(shù)。2分法基數(shù)為8、4、2、1,三字節(jié)的數(shù)據(jù)按半字節(jié)劃分為6個(gè)半字節(jié)數(shù),從的半字節(jié),假設(shè)開始時(shí)值Y=8,如果有DALI設(shè)備回答YES,則將現(xiàn)值減去2分法基數(shù)的下一個(gè)數(shù),修改為Y=Y一4,如有DALI設(shè)備回答NO,則將現(xiàn)值加上2分法基數(shù)的下一個(gè)數(shù),修改Y=Y+4,直到2分法基數(shù)的值小于1為止。

  3)找到的隨機(jī)數(shù)的設(shè)備后,使用PROGRAM SHORT ADDRESS命令給這個(gè)設(shè)備分配一個(gè)地址。

  4)完成地址分配后,使用WITHDRAW退出命令,使已分配地址的設(shè)備退出比較命令。

  5)重復(fù)以上步驟,比較找到其他的DALI設(shè)備。直至到發(fā)送FFFFFF都沒有設(shè)備回答YES為止。

  6 結(jié)束語

  隨著智能手機(jī)行業(yè)的發(fā)展,智能手機(jī)在生活當(dāng)中充當(dāng)?shù)慕巧苍絹碓街匾0阉O(shè)計(jì)成智能照明控制終端是一種趨勢(shì),是豐富智能手機(jī)功能的一個(gè)設(shè)計(jì)。本文在Android系統(tǒng)上面開發(fā)客戶端軟件,界面設(shè)計(jì)符合人們的操作習(xí)慣,簡單直觀。同時(shí)開發(fā)了服務(wù)器端軟件,并與DALI網(wǎng)絡(luò)連接調(diào)試通過。

  實(shí)現(xiàn)了文中所述功能。

  總之,這樣一個(gè)設(shè)計(jì)符合人們對(duì)智能家居生活的要求,與此同時(shí)將智能手機(jī)引入到智能照明系統(tǒng)當(dāng)中豐富了智能照明系統(tǒng)的控制終端。

關(guān)鍵詞:支持Android智能手機(jī)控制的DALI智能照明系統(tǒng)設(shè)計(jì)Android智能控制DALI照明系統(tǒng)

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

拆解智能控制延時(shí)電路
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動(dòng)力!意見一經(jīng)采納,將有感恩紅包奉上哦!