在燈具調(diào)光和控制中,人們大量采用了DMX512 的控制協(xié)議,它是由美國劇 場技術(shù)協(xié)會(United State Institute for Theatre Technology,Inc)于1986 年8 月提出的一個能在一對線上傳送512 路可控硅調(diào)光亮度信息的標(biāo)準(zhǔn)。 DMX512 通信方式是采用了異步通信格式,每個調(diào)光點(diǎn)由11 位組成,其中一個 是起始位,8 位調(diào)光數(shù)據(jù),兩個停止位。每一次傳輸能512 個調(diào)光點(diǎn)。
1. DMX512 控制協(xié)議及其改進(jìn)
與DMX512 兼容的燈具一般使用一顆單片機(jī)來實現(xiàn)DMX512 的解碼。如使用8051 或者Microchip 公司的PIC16F628A 等。單片機(jī)內(nèi)部的程序要讀取一組DIP 開關(guān) SDMX5124 APPLICATION NOTES DOC NO:051201設(shè)置的地址,根據(jù)自己的地址,去接收DMX512 數(shù)據(jù)中的第幾個字節(jié),然后來實 現(xiàn)調(diào)光的功能。如果一個燈中要使用多個調(diào)光數(shù)據(jù),該燈要占用多個地址。
DMX512 的接口
DMX512 電氣特性為RS485 接口,物理接口為CANON 三芯或5 芯接口,采 用級聯(lián)方式聯(lián)結(jié)。因此有一個輸入口,一個輸出口。 Pin 1 = signal reference = cable shield Pin 2 = signal inversion = ‘ - ’ Pin 3 = signal = ‘ + ’Pin 4 = optional (e.g. acknowledgment) Pin 5 = optional (e.g. acknowledgment) DMX512 在傳統(tǒng)的舞臺燈光控制應(yīng)用中還是能簡單實用的,但是,面對新型的LED 燈具來講,DMX512 顯的有點(diǎn)力不從心 了。
首先,LED燈具要求每個燈具中要有一個控制器,而每個燈要設(shè)置地址是很 麻煩的,維修更換也不便。其此,異步的傳輸方法效率也不高。
正因為如此,人們也使用LED顯示屏的技術(shù)來控制LED燈具,通常使用S PI移位寄存器的方法來傳送調(diào)光數(shù)據(jù)。這樣作的方法省去了地址的設(shè)定,靠移 位的先后來確定燈的位置,另一方面,它們的傳輸速度能很高。
但是,新的問題又出現(xiàn)了,實現(xiàn)調(diào)光數(shù)據(jù)的移位傳輸,要使用三根線:SSSCK,和SCK 線。這三根信號線如果以RS485 方式傳輸時,就變 成了六根線,輸入和輸出一共要使用12 根線, 這對LED 燈具來講是太多了。左邊是一個使用 這種芯片做的燈。
SDMX5124 APPLICATION NOTES DOC NO:051201 同步DMX512,SDMX5124 芯片使用了一種同步串行傳輸?shù)姆绞?,它吸取了DMX512 和SPI 移 位總線兩者的優(yōu)點(diǎn)。
首先,SDMX512 在電氣特性,數(shù)據(jù)結(jié)構(gòu)方面盡量和DMX512 相同,采用同步 傳輸?shù)姆椒▉韮删€移位傳輸。其次,SDMX512 協(xié)議采取了SPI 移位傳輸?shù)姆椒▉?避免DMX512 協(xié)議中要設(shè)定地址的問題。 SDM512 協(xié)議的速率設(shè)定為128KBPS。 左圖是采用SDMX512 生產(chǎn)的像素?zé)?,可以?出燈與燈之間的連線為四根線, DATA+ DATA- +24V GND。如果燈與燈之間的距離不遠(yuǎn),不使用RS485, 那么,信號線為三根就可以了。
2.SDMX512 燈具的設(shè)計
以SDMX512 芯片設(shè)計的燈具能接收同步DMX512 調(diào)光數(shù)據(jù)的LED 燈具,它由SDMX5124 控制芯片,LED 光源,電源和外殼等附件組成。
在這里我們以一個典型的LED 像素?zé)魹槔榻B以SDMX512 為主的LED 燈具的設(shè)計。
(1) 光源采用***光鼎光電公司的EP2 SMT RGB LED 芯片
?。?) 控制芯片:SDMX5124
(3) 開關(guān)電源芯片
同步DMX512 控制器的設(shè)計
同步DMX512 控制器能根據(jù)LED 燈光控制數(shù)據(jù),產(chǎn)生一路或多路SDMX512 控 制信號,控制一路或者多路同步DMX512 控制線,每一路同步DMX512 控制線能 控制512 個同步DMX512 燈具。
LED 燈光控制數(shù)據(jù)可以存儲在同步DMX512 控制器的FLASH ROM 中,或者在 控制器中增加一個CF 卡或SD 卡,將LED 燈光控制數(shù)據(jù)存儲在其中,同步DMX512 控制器也能夠增加一個上位機(jī)網(wǎng)絡(luò)接口,使PC 上位機(jī)聯(lián)機(jī)控制燈光系統(tǒng)。 同步DMX512 控制器是以一個CPU 為主的嵌入式系統(tǒng),我們推薦的系統(tǒng)如下圖所示:
主處理器
主CPU 使用MicroChip 公司高性能8 位RISC 單片計算機(jī)實現(xiàn),主頻為40Mhz. 外擴(kuò)了16K BYTE 的SRAM 用于存放LED 控制數(shù)據(jù)。 網(wǎng)絡(luò)控制器采用RealTek 公司單片10BASE T 控制器其中,sdmx512 transmitter 采用xilinx 9572 CPLD 實現(xiàn), 控制器軟件的編程。
在SDMX512 參考設(shè)計中,控制器由Microchip PIC18F4525 實現(xiàn),軟件系統(tǒng) 包括了TCP/IP 堆棧軟件,SD 卡文件系統(tǒng)和LED 驅(qū)動部分組成。 主控軟件件的主程序主要完成CPU,TCP/IP,SD 卡程序的初始化,然后進(jìn)入主循環(huán), 如下圖所示:
SDMX512 控制器主程序框圖 TCP/IP 堆棧軟件
SDMX5124 APPLICATION NOTES DOC NO:051201
TCP/IP 堆棧軟件包括了MAC,UDP 層軟件。 SD 卡文件系統(tǒng)
colorPixel 控制器軟件支持一個SD 卡座,SD 卡的文件格式為FAT16 格式。 LED 驅(qū)動程序。
由兩個主要的軟件組成,send_it 和中斷軟件
LED 的控制數(shù)據(jù)存放在SBUF 中,由于Microchip 的sram 內(nèi)存比較小,最大 有6KBYTE,去掉TCP/IP 和SD 文件系統(tǒng)使用的單元,SBUF 的最大長度為6K 左右, SBUF 的大小決定了一根線上最大的燈數(shù), SBUF 長度=4+N*12
使用時鐘信號CLK 的下降延產(chǎn)生PIC18F4525的中斷,每次中端發(fā)送一位數(shù)據(jù)(并 行八路)。每一幀發(fā)送4+N*12+8 位。 時鐘的頻率為128KBPS。前四位是引導(dǎo)碼(0101),N*12 是燈光控制數(shù)據(jù),8 位為停止位。
軟件要控制ENABLE 信號,當(dāng)開始發(fā)送時,ENABLE 為低電平,當(dāng)發(fā)送完4+NX12 位后,ENABLE 為高低電平,延時8 個時鐘周期后,開始發(fā)送下一幀。
Send_it 和中斷程序源碼
Int16 send_max;//sbuf 長度=4+N*12 位
Byte cc;//最后一位的狀態(tài)
void send_it(void)
{
TRISD=0x00;
PORTD=0xff; PORTD 為8 位數(shù)據(jù)口
PORTEbits.RE0=1; // dis rtl8019
LED_CS=1;
send_p=0; SBUF 指針
cc=~ll; send_busy=1;
INTCONbits.INT0IE=1;
INTCONbits.GIEH = 1;//開中斷
while(send_busy){};//等待結(jié)束
}
#pragma code InterruptVectorHigh = 0x08
void
InterruptVectorHigh (void)//中斷矢量
DMX5124 APPLICATION NOTES
DOC NO:051201
{
_asm
goto InterruptHandlerHigh jump to interrupt routine
_endasm
}
#pragma code
#pragma interrupt InterruptHandlerHigh
;中斷處理軟件
void InterruptHandlerHigh ()
{
if (INTCONbits.INT0IF==1 )//判斷是否為外部中斷1
{
INTCONbits.INT0IF=0;//清除中斷標(biāo)志
if (send_p ==(send_max+8) ) {INTCONbits.INT0IE=0;send_busy=0;}
else {if (send_p 》(send_max) ) {ENABLE=1;send_p++;}
else {ENABLE=0;PORTD=cc;
ll=cc; cc=sbuf[send_p++];
}
};//end of if
}
網(wǎng)絡(luò)
對于一個大型的LED 燈光系統(tǒng),可能要使用多個SDMX512 控制器協(xié)同控制, 多個SDMX512 控制器要通過網(wǎng)絡(luò)與PC 機(jī)聯(lián)網(wǎng),在我們介紹的方案中,推薦使用 標(biāo)準(zhǔn)的10 BASE T 網(wǎng),因為采用標(biāo)準(zhǔn)的網(wǎng)絡(luò),能使用大量經(jīng)濟(jì)的標(biāo)準(zhǔn)LAN 產(chǎn)品, 如HUB,交換機(jī)等等,它們比專用設(shè)備便宜的多。
PC 聯(lián)機(jī)控制軟件
PC 機(jī)上的軟件包括三類,
(1) 燈光照明變化的圖形設(shè)計軟件,這部分軟件可以利用WINDOWS 上大量的多媒體設(shè)計軟件來完成, 如 Dreamwave FLASH 動畫設(shè)計軟件。
(2) SDMX512 控制數(shù)據(jù)的轉(zhuǎn)換軟件它將圖形設(shè)計軟件產(chǎn)生的數(shù)據(jù)轉(zhuǎn)換成SDMX512 格式的控制數(shù)據(jù)
?。?) 聯(lián)機(jī)控制軟件。該軟件向SDMX512 控制器實時發(fā)送SDMX512 控制數(shù)據(jù)。
YDS data system 對SDMX512 開發(fā)的支持
(1) colorPixel 像素?zé)粼O(shè)計
見<colorPixel schematic>
?。?) colorPixel 控制器參考設(shè)計
包括了demo 板SDMX5124 APPLICATION NOTES DOC NO:051201 邏輯圖,GERBER 文件 軟件目標(biāo)碼/源代碼
?。?) Windows 控制軟件
colorPixel 控制軟件完成COLORPIXEL 像素?zé)艨刂茢?shù)據(jù)的轉(zhuǎn)換,PC 顯示屏圖像的實時采集,網(wǎng) 絡(luò)實時控制。FONTPlace 吸塑字燈光控制軟件上述兩個軟件使用delphi7 編寫,在WINDOW2000 和WINDOWS/XP 上運(yùn)行。
評論
查看更多