近年來,發(fā)光二極管(Light Emitting Diodes,LED)由于其全固態(tài)、壽命長、低電壓驅(qū)動、體積小及重量輕等特點(diǎn),使之在民用及工業(yè)領(lǐng)域都得到了廣泛的應(yīng)用。二十世紀(jì)八九十年代,智能樓宇的興起將智能照明控制系統(tǒng)的應(yīng)用引到了一個全新的高度。
調(diào)光網(wǎng)絡(luò)協(xié)議的制定具有劃時(shí)代的意義,這也引起了眾多商家在效仿DMX512 協(xié)議的基礎(chǔ)上設(shè)計(jì)研發(fā)更加出色的調(diào)光協(xié)議,智能照明系統(tǒng)網(wǎng)絡(luò)協(xié)議的研發(fā)領(lǐng)域出現(xiàn)了欣欣向榮、百花爭艷的景象。
DMX512 協(xié)議控制器支持DMX512 協(xié)議接口,可外接DMX512 設(shè)備遠(yuǎn)距離控制。但目前市場上多數(shù)LED 終端控制器生產(chǎn)廠家采用了變異的DMX512 協(xié)議,控制器的接口、協(xié)議五花八門,控制器的功能、質(zhì)量良莠不齊,使得一般的DMX512 協(xié)議控制器無法兼容多個不同廠家的LED 燈具。因此,尋求一種多兼容LED 照明控制器顯得至關(guān)重要。
1、照明控制器分析
1.1 DMX512 協(xié)議控制器的組成
多兼容DMX512 協(xié)議控制器主要由兩部分構(gòu)成:一個是與LED 終端控制器相連的協(xié)議分控制器,另一個是在控制中心的主控制器。
控制器的結(jié)構(gòu)圖如圖1、圖2 所示。
1.2 方案的選擇
方案一:多微處理器芯片
一般微處理器(ARM) 自帶的串口只有1~2 個,通常不會超過4 個。要想實(shí)現(xiàn)多達(dá)16 個串口,如果只用一片微處理器芯片是不夠的;如果用多片微處理器芯片來實(shí)現(xiàn)16 個串口,雖然可以實(shí)現(xiàn)的,但串口之間協(xié)調(diào)性不高;如需同一時(shí)刻發(fā)送數(shù)據(jù),實(shí)時(shí)性不高,而且多片微處理器芯片都需要有各自獨(dú)立的軟件來控制。因此用這個方案,可行性不高。
方案二:I/O 口模擬多串口
一片微處理器芯片,如ARM,雖然只有位數(shù)不多的串口,但有些人提出可以用軟件模擬的方法,把一般的I/O 口做成串口,這樣就可以把ARM 變成很多個串口了。這個方案看起來不錯,但是經(jīng)過實(shí)際的測試,發(fā)現(xiàn)模擬出來的串口穩(wěn)定性不高,而且波特率不能設(shè)置得很高。因此,用軟件模擬的方案也不太可行。
方案三:FPGA(現(xiàn)場可編程門陣列)實(shí)現(xiàn)多串口
上個世紀(jì)末出現(xiàn)的FPGA經(jīng)過二十多年的發(fā)展,由于其具有用戶可編程的特性,已逐漸被市場所接受。使用PLD (可編程邏輯器件) 來開發(fā)數(shù)字電路,可以大大縮短設(shè)計(jì)時(shí)間,減少線路板(PCB)面積,提高系統(tǒng)的可靠性。可以在FPGA 的軟件平臺和硬件平臺下設(shè)計(jì)多串口擴(kuò)展,利用FPGA 實(shí)現(xiàn)串口擴(kuò)展的另一優(yōu)勢在于可利用FPGA 芯片剩余的資源空間, 將其他功能模塊整合在一塊FPGA 上,這樣就很好地節(jié)約了成本,這種優(yōu)勢是其它方案所無法比擬的。
在研究過程中,擬采用FPGA 來實(shí)現(xiàn)16 個串口,ARM收到以太網(wǎng)數(shù)據(jù)后,經(jīng)分析處理就可以通過FPGA的多個串口將DMX512 協(xié)議發(fā)送到各個LED 終端控制器,實(shí)現(xiàn)LED 照明控制。
2、關(guān)鍵技術(shù)
2.1 基于以太網(wǎng)的系統(tǒng)硬件設(shè)計(jì)
本研究課題采用ARM 和FPGA 實(shí)現(xiàn)DMX512 協(xié)議控制,其中ARM 主要負(fù)責(zé)網(wǎng)絡(luò)通信,人機(jī)交換,F(xiàn)PGA 主要實(shí)現(xiàn)DMX512 協(xié)議。在初期的硬件設(shè)計(jì)中,主控制器和分控制器之間的通信采用的是RS485(智能儀表)通信方式,理由是通信方式簡單、易開發(fā)、成本低,所以在第一版硬件設(shè)計(jì)中,采用的就是RS485通信。
后來在調(diào)試時(shí)發(fā)現(xiàn),這種通信方式的帶寬不夠。假如場景速率按照每秒10 幀來計(jì)算,一個分控制器最多可有16 個DMX512 通道,RS485 通信是串行通信方式;所以每秒要在這個串行線上傳輸?shù)膸陀?60個,要想在這一秒內(nèi)傳輸完160 個幀,每幀占用的時(shí)間大約為6ms,相應(yīng)的傳輸位速率為1us,波特率為1Mbps。而采用RS485 通信方式是達(dá)不到這么快的,所以這種方案失敗了。
在第二版的硬件設(shè)計(jì)中,主控制器和分控制器間的通信換成了速率為10M的以太網(wǎng)通信,采用這種通信方式后,速率的瓶頸得以解決,一個主控制器可以帶多個分控制器。
2.2 FPGA 與ARM 的接口設(shè)計(jì)
ARM 是高速處理器,也是串行設(shè)備,可以實(shí)現(xiàn)控制、協(xié)議解析等工作,當(dāng)然也可以產(chǎn)生控制時(shí)序。但DMX512 時(shí)序是一種慢速時(shí)序,用ARM 實(shí)現(xiàn)會大大的降低系統(tǒng)的實(shí)時(shí)性,為此系統(tǒng)利用FPGA 的并行優(yōu)勢,用FPGA 來產(chǎn)生DMX512 控制時(shí)序,再在ARM和FPGA 之間架設(shè)一個數(shù)據(jù)通道,實(shí)現(xiàn)串行處理器與并行處理器的無縫連接。
FPGA 與ARM 之間主要用于傳輸DMX512 亮度數(shù)據(jù),同時(shí)也傳送一些控制命令,狀態(tài)數(shù)據(jù)等,傳送數(shù)據(jù)為8 位。FPGA 連接在ARM 的GPI/O 總線上,如圖3 所示。由于DMX512 設(shè)備為慢速設(shè)備,ARM 為高速處理器,為了提高ARM 的效率,在FPGA 內(nèi)部開辟RAM 空間作為DMX512 亮度數(shù)據(jù)的緩存。一個DMX512 數(shù)據(jù)包為512 字節(jié),共有16 路,所以在FPGA內(nèi)部開辟了512*16B 的空間即可。
2.3 DMX512 模塊
在FPGA 中要實(shí)現(xiàn)16 路DMX512 控制時(shí)序,然后通過RS485 芯片轉(zhuǎn)成差分信號輸出。FPGA 內(nèi)部先實(shí)現(xiàn)一個DMX512 時(shí)序模塊,對于FPGA 來說并行處理是它的最大優(yōu)勢,設(shè)計(jì)好DMX512 模塊后,再實(shí)例化15 個相同模塊即可。FPGA 的DMX512 信號輸出為單一信號,通過MAX485 芯片,將其轉(zhuǎn)化為符合RS485 標(biāo)準(zhǔn)的差分信號。模塊結(jié)構(gòu)圖如圖4 所示。
2.4 協(xié)議破譯
協(xié)議破譯是指拿到燈具以后,能判斷出該燈具所采用的是哪種協(xié)議,進(jìn)而能用本設(shè)計(jì)的控制系統(tǒng)去控制它。
首先查看原廠控制器是采用哪種協(xié)議的,從而可推斷出該燈具是用什么協(xié)議工作的。一般燈具的協(xié)議大多采用的是DMX512 協(xié)議,有區(qū)別的是可能某些字節(jié)的定義存在不同的含義,每個燈具所占的通道數(shù)可能不一樣,RGB(三色模塊)的排列方式也可能不一樣。這就需要通過方法去破解,當(dāng)所有的通道數(shù)和RGB 的排列方式都知道后,就可以編輯場景文件,自由地控制各類變化了。
●破解工具1:示波器(硬件),通過示波器截獲RS485 通信線的電信號,分析通信的波特率,字節(jié)位數(shù),有無奇偶校驗(yàn)位等。
●破解工具2:串口數(shù)據(jù)分析軟件,在破解工具1的基礎(chǔ)上,獲取十六進(jìn)制數(shù)據(jù),進(jìn)一步分析協(xié)議的每一個字節(jié)的定義及其含義。
2.5 場景軟件數(shù)據(jù)的高壓縮
通用場景生成軟件產(chǎn)生的數(shù)據(jù)文件一般有數(shù)兆,解析了此文件的數(shù)據(jù)結(jié)構(gòu),找到一種高效的壓縮方法,使得壓縮文件只有原文件的1%左右,這樣主控制器與分控制器之間的數(shù)據(jù)傳送壓力大為減輕;對網(wǎng)絡(luò)的帶寬要求可以大大降低。分控制器只要對數(shù)據(jù)進(jìn)行解壓縮還原即可,實(shí)現(xiàn)了設(shè)計(jì)的場景變化。
3、技術(shù)的先進(jìn)性
3.1 兼容多種變異的DMX512 協(xié)議
DMX512 協(xié)議控制器支持DMX512 協(xié)議接口,可外接DMX512 設(shè)備遠(yuǎn)距離控制。包含DMX512 解碼器,可設(shè)定地址,可接收標(biāo)準(zhǔn)DMX512 信號。但目前市場上多數(shù)LED 終端控制器生產(chǎn)廠家采用了變異的DMX512 協(xié)議,使得一般的DMX512 協(xié)議控制器無法兼容多個不同廠家的LED 終端控制器。
現(xiàn)研發(fā)成功的DMX512 協(xié)議控制器可支持多個不同廠家的LED 終端,目前已有15 個品種,即15 個不同的DMX512 變異協(xié)議。通過解析這些廠家的LED 終端的通信協(xié)議,將其寫入SD 卡中。DMX512 控制器根據(jù)SD 卡中存儲的通信協(xié)議格式,不用對程序做任何修改,就可以實(shí)現(xiàn)對不同LED 終端的控制。
3.2 基于TCP/IP 的ARM+FPGA 雙處理器架構(gòu)
選擇了一款具備MAC (介質(zhì)訪問控制) 接口的CORTEX-M3 ARM 芯片——LM3S6965,可以實(shí)現(xiàn)TCP/IP 功能。也就是說,即使在異地,主要控制器在本地,且能上網(wǎng),就可以控制本地的LED 終端的場景。
FPGA 由可編程邏輯單元陣列、布線資源和可編程的I/O 單元陣列構(gòu)成,一個FPGA 包含豐富的邏輯門、寄存器和I/O 資源。一片F(xiàn)PGA 芯片就可以實(shí)現(xiàn)數(shù)百片甚至更多個標(biāo)準(zhǔn)數(shù)字集成電路所實(shí)現(xiàn)的系統(tǒng)。
在分控制器中采用FPGA實(shí)現(xiàn)16 個串口的高速數(shù)據(jù)發(fā)送,F(xiàn)PGA 接收ARM 處理器的信息,包括場景信息、通信協(xié)議格式和參數(shù)配置等。
通過FPGA 技術(shù)及ARM 技術(shù)兩者的結(jié)合,全面提升了控制器系統(tǒng)的性能,使整個系統(tǒng)的工作效率、控制實(shí)時(shí)性和系統(tǒng)可靠性得到了提高,且操作方便,又不乏技術(shù)的先進(jìn)性。
3.3 16 個485 串口
DMX512 協(xié)議控制器是通過RS485 總線發(fā)出控制命令的,一個485 串口可以接入512 個地址,“512”之名由此而來。如果一個燈具有8 個RGB 三色模塊,則要占24 個地址,那么一個串口最多只能接21 盞燈。
目前市場上的DMX512 協(xié)議控制器最多只有8 路串口,而現(xiàn)在實(shí)現(xiàn)了16 路串口,也就是說一個分控制器可以接336 盞燈(每個燈具24 個地址)。從8 路串口到16 路串口在技術(shù)上是一突破,因?yàn)檎加梦⑻幚砥鞯馁Y源加倍了,另外還要實(shí)現(xiàn)這16 個串口的同步發(fā)送也非易事。
4、效益優(yōu)勢
4.1 通用性
多兼容LED 照明控制器可以兼容各類DMX512協(xié)議的不同燈具廠家的控制器。那么原本需要N 家控制器才能控制的復(fù)雜景觀照明體系,可以簡化為同一家控制器進(jìn)行控制,實(shí)現(xiàn)了良好的通用性。不但解決了控制器之間的兼容問題,還將有效實(shí)現(xiàn)資源整合的可持續(xù)發(fā)展理念,在科技創(chuàng)新和綠色照明的今天,有著重要的現(xiàn)實(shí)意義。
4.2 節(jié)能性
多兼容LED 照明控制器能夠?qū)崿F(xiàn)各種效果的編輯,可以根據(jù)不同的需求,設(shè)置三大類的效果:節(jié)日模式、平常模式、節(jié)能模式。尤其是節(jié)能模式的設(shè)置,可以通過黑底流星、明暗漸變、交替流水等不同的效果來控制燈具,從而達(dá)到節(jié)能的目的。這種方式不但具有良好的觀賞效果,更能較大程度地節(jié)約能源,符合綠色照明的實(shí)施理念。
4.3 穩(wěn)定性
多兼容LED 照明控制器簡化了元器件的使用,使得故障點(diǎn)大大降低。尤其是照明控制器的統(tǒng)一,弱電線路明顯減少,避免了信號干擾和互相兼容的問題,使得產(chǎn)品在使用過程中的傷害程度降到了最低,穩(wěn)定性大大提高。
5、結(jié)語
多兼容LED 照明控制器的研發(fā)成功,為維修保養(yǎng)節(jié)約了成本,避免因燈具生產(chǎn)廠家的原因而廢棄大量LED 燈具。同時(shí)也規(guī)范了LED 照明控制市場的兼容性,每年僅一個地級城市市場LED 照明控制器(包括主控制器、分控制器)的更換量要達(dá)到幾千臺,推廣至各省乃至全國,銷售規(guī)模更加龐大。再則LED 燈具戶外使用的復(fù)雜性和易損壞性,控制器的更換和使用將是一個長期的持續(xù)性過程,該多兼容LED 照明控制器的推廣前景十分樂觀。