數(shù)字化舞臺布光燈具控制器的設計
摘要:介紹了舞臺布光系統(tǒng)中的重要部件——數(shù)字化燈具控制器的設計思想和實現(xiàn)方案,采用流行的CAN總線實現(xiàn)了分布式控制,利用模糊控制算法實現(xiàn)了燈具各自由度的穩(wěn)定的位置伺服。
本文引用地址:http://m.butianyuan.cn/article/161766.htm隨著廣播電視事業(yè)的不斷發(fā)展,電視節(jié)目的制作越來越多樣化,對演播廳的功能及技術(shù)要求也越來越高。舞臺布光系統(tǒng)是演播設備的重要組成部分,它的作用是通過對垂直吊桿、機械化燈具的多動作控制,利用聚光燈、柔光燈等設備進行大面積的燈光投射,制造滿足攝像機光度要求的背景光線。
綜藝演播廳的規(guī)模目前正逐步擴大,從600m2增加到了1000m2、1500m2,直至2000m2。一個1000m2的演播廳需要500~600盞各式燈具。如果采用集中式控制,勢必造成控制電腦重負,現(xiàn)場布線混亂,因此新型的布光系統(tǒng)均采用分布式控制,燈光師在控制臺前操作,控制臺利用現(xiàn)場總線將控制信息下發(fā),提升機控制器和燈具控制器接收指令后自動運行到設定的位置和角度,完成位置伺服。 本文主要介紹舞臺布光系統(tǒng)中的重要部件--基于現(xiàn)場總線的數(shù)字化燈具控制器的設計思想和實現(xiàn)方案。
1 整體方案
本文介紹的燈具控制器具備5個自由度的控制能力:水平、俯仰、調(diào)焦、左扉和右扉(左扉、右扉指燈具前方用于遮擋光路的扉頁),同時具備過流檢測、超速檢測、傳感器失效檢測等功能,并且可以與控制臺進行雙向通訊,接收控制臺發(fā)來的指令或上報燈具狀態(tài)。
燈具控制器主要由位置測量、電機驅(qū)動、CAN總線通信接口等功能模塊組成,整體方案如圖1所示。它采用基于8051內(nèi)核、內(nèi)置A/D轉(zhuǎn)換電路的80C552作為主CPU。
燈具各自由度輸出轉(zhuǎn)軸裝有線性型精密電位器進行位置測量(對于調(diào)焦測量,使用齒輪齒條機構(gòu)將直線位移轉(zhuǎn)換為角度位移)。電位器的活動范圍為270度,使用10bitA/D轉(zhuǎn)換器,最高理論精度為270度/210=0.263度。
CPU將實測位置和控制臺傳來的設定位置進行比較,計算出應如何驅(qū)動伺服電機。
電機的控制電路采用PWM方式,每個電機由一個H橋驅(qū)動,效率高、發(fā)熱小、易于調(diào)試。由于要控制5個直流減速電機,因此需要5組雙相共10路PWM信號,由一片10通道PWM芯片生成。該芯片實際上是由新型的高速AVR單片機AT90s2313構(gòu)成的虛擬外設,通過軟件編程仿真PWM功能。80C552利用串口將各個通道的PWM值發(fā)送給AT90s2313,AT90s2313在內(nèi)存中生成相應的PWM信號序列,定時向外輸出,實測PWM重復頻率為9.8kHz。程序中設計了特定算法,可以保證功率驅(qū)動模塊的某個橋臂關斷后,對側(cè)橋臂要延時一段時間才會開通,避免由于開關速度的影響導致上下橋臂直通。
由于直流電機的啟動電流和換向電流遠大于正常工作電流,過高的啟動電流除了會造成系統(tǒng)成本增加外,還有可能燒毀換向器;另外,直流電機的電磁力矩與電流成正比,過高的啟動力矩也對機械結(jié)構(gòu)的穩(wěn)定不利。因此,在電路中設計了過流斬波裝置來限制啟動電流。
使用現(xiàn)場總線進行分布式控制是本系統(tǒng)的主要特色之一,本方案中選用了CAN總線,燈具對外連線除電源線外,只有一根屏蔽式雙絞線,布線方便、成本低廉、擴展性強。CAN總線接口電路由通信協(xié)議控制芯片SJAi000和總線收發(fā)器82C250等組成。
由于每個燈具要有獨立的CAN總線地址,且每個電機、減速器、機械安裝尺寸均有一定的個體差異,因此不同的燈具上會有不同的控制參數(shù)。在設計中,應盡量減少需要調(diào)整的參數(shù),對于一定要調(diào)整的部分,應將它們存儲在EEPROM中,每次開機讀取。
EEPROM中的參數(shù)關系到燈具控制器能否正常工作,一旦出廠,一股不建議更改。但是為了方便技術(shù)人員進行調(diào)試,在電路中仍設計了開發(fā)人員接口,在現(xiàn)場無需拆下,且無需編程器就可以使用計算機串口讀取、修改EEPROM中的內(nèi)容。
2 CAN總線通信軟件的設計
CAN總線是德國Bosch公司在20世紀80年代初為解決現(xiàn)代汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換問題而開發(fā)的一種串行數(shù)據(jù)通信總線,是最早在我國得到應用的現(xiàn)場總線之一。它實現(xiàn)了ISO/OSI七層模型中的物理層和數(shù)據(jù)鏈路層,總線上任何節(jié)點均可主動向其它節(jié)點發(fā)送信息,數(shù)據(jù)采用短幀結(jié)構(gòu),最長8個字節(jié),不易受干擾,故障節(jié)點可自動脫離總線。
CAN總線通信控制器SJAl000由82C200發(fā)展而來,它兼容82C200的電氣特性和工作模式,并對功能進行了擴展。它集成子CAN協(xié)議的數(shù)據(jù)鏈路層的全部功能,可自動完成數(shù)據(jù)編碼、成幀、沖突檢測、循環(huán)冗余校驗、出錯重傳等工作??偩€收發(fā)器82C250負責竹l電子和CAN總線差分電平之間的轉(zhuǎn)換。
CAN總線軟件包主要包括初始化函數(shù)、發(fā)送函數(shù)和接收中斷函數(shù)。
初始化函數(shù)的主要工作流程見圖2。
SJA1000有兩種工作狀態(tài):復位狀態(tài)和正常狀態(tài)。復位狀態(tài)在上電后直接進入,也可以通過軟件置位進入。SJAl000的所有初始化操作需在復位狀態(tài)完成。其中,接收濾波碼來自EEPROM,每個燈具有不同的接收濾波碼;為配合82C250,輸出模式寄存器設置成推挽模式,正極性輸出。初始化完成后,轉(zhuǎn)入正常狀態(tài),填寫發(fā)送緩沖區(qū),釋放接收緩沖區(qū),即可正常發(fā)送接收。
發(fā)送函數(shù)首先判斷上次發(fā)送是否完成,若完成則在緩沖區(qū)內(nèi)填寫新的數(shù)據(jù),啟動發(fā)送;否則等待直至超時,發(fā)送完成與否由狀態(tài)寄存器指示。
接收函數(shù)采用中斷方式,SJAl000內(nèi)部包含深度為64字節(jié)的接收FIFO緩沖區(qū),芯片無需CPU的干涉就可以自動對收到的信息按先后順序排隊,提供了很強的抗超載能力,因此在主程序中不需要自建接收FIFO,簡化了編程。中斷服務函數(shù)對接收到的數(shù)據(jù)進行簡單的預處理并設置標志位后退出,并在主循環(huán)內(nèi)完成回送數(shù)據(jù)幀等后續(xù)工作。
控制臺與燈具控制器的應用層協(xié)議如下:命令幀由土控臺發(fā)出,返回幀由燈具控制器回送,長度均為五字節(jié)(包括目標地址),其中前兩字節(jié)是地址碼,第三個字節(jié)是命令幀的類型,如設置位置幀、查詢錯誤幀等,最后兩字節(jié)是參數(shù),如位置設置量等。
3 閉環(huán)位置伺服控制
在開發(fā)初期階段,曾經(jīng)使用過分段PID進行閉環(huán)位置伺服控制,通過一定的調(diào)整,可以獲得較好的效果。但是分段PID控制需調(diào)整的參數(shù)較多,對于不同種類和大小的燈具,調(diào)整工作量較大,而且Ki、Kd等系數(shù)的物理意義難于向普通調(diào)試人員解釋,故最終選擇了模糊控制算法。它的適應性好、魯棒性強、調(diào)整少,且中速、比較接近等參數(shù)極易為人理解,實測各參數(shù)均有較大的適應性,不用過多調(diào)整。
典型的模糊控制器分為三個部分:輸入變量模糊化、模糊推理和解模糊化。
燈具模糊控制器的輸入量為位置殘差e和轉(zhuǎn)角速度v,輸出是發(fā)送給電機驅(qū)動模塊的PWM值。如圖3所示,u表示位置設定值,y表示伺服機構(gòu)測量值。
所有輸入變量的模糊隸屬度函數(shù)都采用角形且全交疊,如圖4所示。
e的模糊集合有五個:{大的正值,小的正值,零,小的負值,大的負值},用PB、PS、Z、NS、NB表示。
v的模糊隸屬度函數(shù)如圖5所示。v的模糊集合有三個:{正,零,負},用P、Z、N表示。
最常用的模糊推理方法有Mamdani型和Sugeno 型,兩者在很多方面是相同的,不同的是Mamdani型的模糊推理后件是模糊量,而Sugeno型的模糊推理后件是線性變量或常量。比如推理規(guī)則:If Input1=x and Input2=y,then Output is z=ax+by+c中,Input1和Input2是前件,是模糊變量,z是后件,是確定的值。如果系數(shù)a=b=0,則z=c為常量,稱為0階Sugeno模型。
每條邏輯規(guī)則的輸出z的權(quán)重wi由AND算子決定,wi=AndMethod(F1(x),F2(y)),其中F1,2()是Inputs1和Inputs2的模糊隸屬度函數(shù)。
對于結(jié)論相同的邏輯規(guī)則的輸出,權(quán)重wi由OR算子決定,wi=OrMetod(wi1,wi2)。
Sugeno模型的解模糊過程較簡單,最終的輸出值是各結(jié)論輸出zi的加權(quán)平均值:
Output=∑wi zi/∑wi
伺服電機相關文章:伺服電機工作原理
pid控制器相關文章:pid控制器原理
評論