WH/T 32—2008 DMX512-A燈光控制數(shù)據(jù)傳輸協(xié)議(三)
說明:WH/T 32-2008《DMX512-A燈光控制數(shù)據(jù)傳輸協(xié)議》是中華人民共和國文化行業(yè)標準,由文化部于2008年4月3日發(fā)布,2008年6月1日起實施。
本標準等同采用美國國家標準E1.11-2004《USITT DMX512-A 燈光及附屬設(shè)備控制的異步串行數(shù)據(jù)數(shù)字傳輸標準》,英文名稱:American National Standard E1.11-2004 Entertainment Technology -USITT DMX512-A Asynchronous Serial Digital Data Transmission Standard for Controlling Lighting Equipment and Accessories。
數(shù)據(jù)傳輸采用異步串行格式。DMX512字段應(yīng)被順序傳輸,以第0字段開始,以需傳輸?shù)淖詈笞侄谓Y(jié)束,最多可傳輸512個字段(最大共513字段)。第一個字段傳送前,應(yīng)發(fā)送復(fù)位序列:復(fù)位信號、復(fù)位后標記和起始碼。在零起始碼之后有效的DMX512數(shù)據(jù)字段值應(yīng)為十進制0~255。
數(shù)據(jù)的傳輸格式如表5所示。注意沒有發(fā)送校驗位。
復(fù)位信號表示一個新數(shù)據(jù)包的開始。
發(fā)送器產(chǎn)生的復(fù)位信號被定義為占到空再到占的變化,其中空(低電平)的最小時間由表6給出(圖5中的1)。接收器應(yīng)在表7規(guī)定的最小時間內(nèi)識別復(fù)位信號(圖5中的1),并以此作為新數(shù)據(jù)包的開始。
分隔復(fù)位信號和起始碼的標志定義為復(fù)位后標記(圖5中的2)。所有的DMX512發(fā)送器將產(chǎn)生一個復(fù)位后標記,其最小時間和最大時間見表6中的2。對應(yīng)的接收器應(yīng)在表7規(guī)定的最短時間內(nèi),根據(jù)復(fù)位后標記對數(shù)據(jù)流作出正確響應(yīng)。
注:USITT DMX512標準的1986版本曾規(guī)定了4μs長的復(fù)位后標記。USITT DMX512/1990將該值修改為8μs,并增加了一個選項,如接收器仍能識別4μs長的復(fù)位后標記,可予以標明。復(fù)位后標記仍為4μs的發(fā)送器,將不能與符合本標準的設(shè)備一起工作。
起始碼是復(fù)位后標記之后的第一個字段(字段0),起始碼具有標識數(shù)據(jù)包中后續(xù)數(shù)據(jù)性質(zhì)的功能。
8.5.1 零起始碼
零起始碼用于標識后續(xù)字段為無類型的串行8比特信息。由零起始碼標識的數(shù)據(jù)包是在DMX512網(wǎng)絡(luò)中發(fā)送的默認數(shù)據(jù)包。USITT標準的早期版本曾假設(shè)零起始碼數(shù)據(jù)包只發(fā)送調(diào)光器類數(shù)據(jù)。實際上,零起始碼數(shù)據(jù)包已廣泛地用于其他設(shè)備,本標準認可這一事實。
零起始碼數(shù)據(jù)包中不包括數(shù)據(jù)類型和地址結(jié)構(gòu)。設(shè)備要使用零起始碼數(shù)據(jù)包中的數(shù)據(jù)必須知道數(shù)據(jù)在數(shù)據(jù)包中的位置。
不保證所有零起始碼數(shù)據(jù)包都被傳遞到所有的設(shè)備。使用零起始碼數(shù)據(jù)包的設(shè)備應(yīng)是這樣一種類型,即數(shù)據(jù)包丟失將不會嚴重影響設(shè)備的工作。因此,發(fā)送的數(shù)據(jù)應(yīng)該是一個參數(shù)的當前值,而不是一個執(zhí)行程序的命令。一旦控制器被設(shè)置為一種特定的應(yīng)用,所有的零起始碼數(shù)據(jù)包應(yīng)該有相同的字段數(shù)。
8.5.2 調(diào)光器亮度等級數(shù)據(jù)
調(diào)光器亮度數(shù)據(jù)應(yīng)使用零起始碼數(shù)據(jù)包。有效的調(diào)光器亮度級別應(yīng)該在0~255(十六進制00~FF)之間。0表示調(diào)光器關(guān)閉,255表示調(diào)光器最大輸出。調(diào)光器應(yīng)該對0~255之間的DMX512字段值作出響應(yīng)。DMX512字段值與調(diào)光器輸出之間的精確對應(yīng)關(guān)系不屬于本標準范圍。
注:零起始碼數(shù)據(jù)包是DMX512網(wǎng)絡(luò)發(fā)送的默認數(shù)據(jù)包,可能會含有非調(diào)光器亮度的數(shù)據(jù)。
表5 字段格式
8.5.3 其他起始碼
為了未來的擴展和使用的靈活性,提供了255個非零起始碼(十進制的1~255,十六進制的01~FF),即備用起始碼。當需要通過DMX512數(shù)據(jù)鏈路發(fā)送專用信息時,應(yīng)使用已經(jīng)注冊的備用起始碼。
部分備用起始碼被保留,見附錄D“保留的備用起始碼”。
備用起始碼的注冊規(guī)則見附錄E“備用起始碼,生產(chǎn)商ID和增強功能的注冊”。
8.5.3.1 零起始碼數(shù)據(jù)包的刷新
交替發(fā)送零起始碼數(shù)據(jù)包和備用起始碼數(shù)據(jù)包的DMX512發(fā)送器,每秒至少發(fā)送一次零起始碼數(shù)據(jù)包。
8.5.3.2 備用起始碼數(shù)據(jù)包的時間間隔
為保證中繼設(shè)備不丟失必要的備用起始碼數(shù)據(jù),可以采用下述方法降低備用起始碼數(shù)據(jù)包的最大刷新率。
a.將發(fā)送備用起始碼數(shù)據(jù)包的最短時間提高10%,以增加兩個復(fù)位信號之間的傳輸時間,使之大于8.11定義的最小時間。
b.發(fā)送器可交替發(fā)送非必要的零起始碼數(shù)據(jù)包和備用起始碼數(shù)據(jù)包。
8.5.3.3 中繼設(shè)備對備用起始碼數(shù)據(jù)包的處理
DMX512處理設(shè)備或任何接收并重傳DMX512的設(shè)備應(yīng)在產(chǎn)品手冊中說明其產(chǎn)品處理備用起始碼數(shù)據(jù)包的方法??刹捎玫奶幚矸椒ㄊ牵?/p>
a.阻止所有含有特定備用起始碼的數(shù)據(jù)包。被阻止的起始碼應(yīng)公布(也可以是所有的備用起始碼)。
b.傳輸所有含有特定備用起始碼的數(shù)據(jù)包。允許傳輸?shù)钠鹗即a應(yīng)公布。
c.處理含有特定備用起始碼的數(shù)據(jù)包信息,處理方法應(yīng)詳細說明,供用戶來決定設(shè)備是否滿足其需要。
除非聲明了數(shù)據(jù)的處理算法,DMX512中繼轉(zhuǎn)發(fā)設(shè)備不應(yīng)時而傳輸具有特定備用起始碼的數(shù)據(jù)包,時而又阻止含有同樣備用起始碼的數(shù)據(jù)包。
8.5.4 起始碼的處理
除中繼設(shè)備外的所有接收設(shè)備,都應(yīng)處理起始碼,而且要處理零起始碼與備用起始碼數(shù)據(jù)包之間的差異。不應(yīng)認為接收到的所有數(shù)據(jù)包都是零起始碼數(shù)據(jù)包而忽略對起始碼的處理。
每個數(shù)據(jù)鏈路最多傳送512個數(shù)據(jù)字段。當需要傳送更多字段時,應(yīng)使用多個數(shù)據(jù)鏈路。
在數(shù)據(jù)鏈路上,沒有規(guī)定最小字段數(shù)。只要滿足本標準的最小定時要求(見8.10和圖5),少于512個數(shù)據(jù)字段的DMX512數(shù)據(jù)包都可以發(fā)送。
數(shù)據(jù)包中任何兩個字段間的空閑時間(圖5中的9)可以在表6中9規(guī)定的最小值和最大值之間變化。在所有的空閑時間,數(shù)據(jù)線都應(yīng)保持在占狀態(tài)。
在數(shù)據(jù)鏈路上發(fā)送的任意類型起始碼、任意長度的數(shù)據(jù)包,均應(yīng)以復(fù)位序列(圖5中12)開始,即復(fù)位信號、復(fù)位后標記和起始碼。一個數(shù)據(jù)包最后字段的第2個停止位與下一個數(shù)據(jù)包的復(fù)位信號下降沿之間的時間(圖5中10)可以在最小和最大值之間變化,見表6中的10。在這個時間內(nèi),數(shù)據(jù)線應(yīng)保持占狀態(tài)。因此,發(fā)送器不應(yīng)在數(shù)據(jù)包之間產(chǎn)生多個復(fù)位信號。當數(shù)據(jù)鏈路發(fā)生錯誤產(chǎn)生多個復(fù)位信號時,接收器應(yīng)具有恢復(fù)接收數(shù)據(jù)的能力。
發(fā)送器產(chǎn)生的數(shù)據(jù)包復(fù)位信號下降沿與下一復(fù)位信號下降沿之間的時間應(yīng)不小于表6中13的最小值,且不大于表6中13的最大值。
當接收到的數(shù)據(jù)包其兩個復(fù)位信號之間的時間符合表7中13時,接收器應(yīng)能正常工作。
時間參數(shù)應(yīng)符合時序圖(圖5)和與之相關(guān)的表6和表7的要求。
對于所有接收到的字段,接收器不但要檢查第一個停止位而且應(yīng)檢查第二個停止位,確定它們是否正確。若沒有檢測到正確的停止位,應(yīng)丟棄該字段以及數(shù)據(jù)包中所有后續(xù)字段。
在表7列出的復(fù)位信號間的最大間隔內(nèi),接收器收到前一個復(fù)位序列后未接收到下一個復(fù)位序列(復(fù)位信號、復(fù)位后標記和起始碼),即視為數(shù)據(jù)丟失。
表6 時序圖參數(shù)——發(fā)送器
表7 時序圖參數(shù)——接收器
盡管本標準未規(guī)定丟失數(shù)據(jù)的處理方法,但生產(chǎn)商應(yīng)說明其丟失數(shù)據(jù)的處理方法。
注:在無法確認安全或無替換控制數(shù)據(jù)源的情況下,發(fā)生數(shù)據(jù)丟失時,接收設(shè)備應(yīng)至少維持工作狀態(tài)60 s,等待DMX512信號的恢復(fù)。
當接收連續(xù)發(fā)送的含有任何有效字段數(shù)的數(shù)據(jù)包時,DMX512接收設(shè)備應(yīng)能正常工作。
某些產(chǎn)品可能提供一些特有功能,對各個連續(xù)DMX512數(shù)據(jù)包進行處理或不進行處理。這樣的產(chǎn)品在兩數(shù)據(jù)包之間的數(shù)據(jù)發(fā)生變化時會有一定的延時,生產(chǎn)商應(yīng)該按照第10章的要求予以聲明。
(未完待續(xù))
(編輯 張冠華)