張春宇,游 霞,袁 勇
(1.攀枝花學院 計算機學院,攀枝花 617000;2.成都九洲電子信息系統(tǒng)有限責任公司,成都 610031)
隨著人們生活水平的不斷提高,觀眾對文化藝術的要求隨之增長,因此,對舞臺電子技術的發(fā)展提出了更高的要求。除了劇本內容豐富外,舞臺美術也要追求新意。因此,需要燈光、音響、舞臺機械等舞美技術手段的配合以及不斷按照觀眾的需求創(chuàng)新,從而在舞臺上展現(xiàn)出新的天地。目前發(fā)達國家舞臺技術產業(yè)飛速發(fā)展,發(fā)達的歐洲舞臺機械很復雜,臺上有:吊桿、吊點、燈光渡橋、燈光吊籠、防火幕;臺下有:升降臺、車臺、轉臺、升降樂池、升降臺等等。轉臺有多種形式:有的升降臺中套轉臺,有的轉臺中合有升降臺。最先進的舞臺機械都由微機系統(tǒng)或計算機加PLC組成的系統(tǒng)進行控制。本文通過對多臺單片機協(xié)作控制,在功能和性能上達到了國外的先進水平。本論文是作者長期從事舞臺控制系統(tǒng)開發(fā)的科研成果。國內對舞臺控制系統(tǒng)研究的相關文獻報道較少,因此,本文對我國舞臺控制系統(tǒng)的發(fā)展起到了一定的指導作用。
本系統(tǒng)組成有操作臺、輸出控制柜、信號收集選路柜、手持式遙控器。系統(tǒng)設計為分布控制系統(tǒng)(DCS),主控單元由一片89C52完成,數(shù)據(jù)采集和信號檢測單元由多片89C52完成,其中還有一個選路模塊有一片F(xiàn)PGA加一片89C2051控制,輸出單元由一片89C52為核心完成50路吊桿的上下輸出。主機發(fā)出各種控制命令并對反饋數(shù)據(jù)進行分析、判斷、管理,從機接受主機來的命令控制舞臺吊桿的驅動電機完成吊桿的升降停等。
系統(tǒng)主要是對各路吊桿的位置控制,吊桿以及各類舞臺控制臺的升降停等都是由電機的正轉、反轉實現(xiàn),位置反饋傳感器采用光電編碼器,限位傳感器采用行程開關,故系統(tǒng)的輸入輸出量為數(shù)字量和開關量。結合用戶的需求,本系統(tǒng)設計為分布控制系統(tǒng)。其硬件組成框圖如圖1所示。
整個舞臺控制系統(tǒng)的結構設計為主從式樹型。根據(jù)系統(tǒng)功能劃分的主機單元、分機單元及外圍電路組成。系統(tǒng)硬件部分以AT89C51單片機為控制中心,其外圍部件從功能上可以劃分為串行通信接口、輸入接口和輸出接口三大部分。系統(tǒng)硬件組成框圖如圖2所示。
圖2 系統(tǒng)硬件組成框圖
數(shù)控吊桿系統(tǒng)控制對象眾多,100路輸出以驅動50臺電機的正反轉、停(對應于吊桿的升、降、停),而輸入的需要處理的位置信號、限位信號共有150路,僅靠單機系統(tǒng)難以勝任,所以選用分布式控制系統(tǒng)。為減少子系統(tǒng)之間的連線,子系統(tǒng)以通信方式傳遞信息,主機、分機模塊功能由89C52或89C2051為核心的控制板完成,通信網絡為總線方式,整個系統(tǒng)信息數(shù)據(jù)由主機掌握,集中管理,分機收集處理子系統(tǒng)信息并及時告知主機,主機發(fā)送的消息可以被各從機接收,而各臺單片機只能對PC機發(fā)送信息,從機之間不互相通信[1]。
系統(tǒng)各模塊劃分的原則是在保證系統(tǒng)功能和運行可靠的前提下,使操作者感到使用方便、操作靈活自如,在小小的控制室里,對系統(tǒng)的運行情況一目了然。而在功能實現(xiàn)上,各子機模塊責任獨立,沒有任務交叉。主機模塊掌管全局對運行過程集中管理,各模塊均有處理本職責內異常情況的能力,分機上報信息給主機,信息由主機分派顯示。
操作臺是本系統(tǒng)的人機接口,此處包含主機模塊、十個功能相同的吊桿監(jiān)控判斷模塊,一個吊桿點動監(jiān)控判斷模塊;輸出控制柜遠離操作臺,設置一個輸出控制子模塊,對控制對象進行直接控制;信號集中分配柜,收集整個系統(tǒng)的輸入信號,設置一個信號分配子模塊用以篩選當前有用信息[2]。
1)主機模塊
主機模塊處于系統(tǒng)的頂端,協(xié)調系統(tǒng)的整個工作。具體為負責系統(tǒng)工作模式切換,并告知各分機模塊做好相應準備;主機還負責存儲預置的場次信息、停止后收集當前吊桿運行數(shù)據(jù),并存儲;選定場次后發(fā)送選中吊桿的位置信息,或預置信息給操作面板的吊桿監(jiān)控模塊,通知信號分配子模塊,把需要的硬件傳感信息送達相應的監(jiān)控子模塊;啟動后,通知輸出模塊啟動選中吊桿,并啟動監(jiān)控模塊的運行監(jiān)控。
2)吊桿監(jiān)控判斷模塊是在系統(tǒng)中對吊桿位置信號進行監(jiān)控,根據(jù)限位情況或預置數(shù)據(jù)與實際位置比較,做出上升、下降、停的判斷。該模塊設置有12只7段LED合二只發(fā)光二極管,用以指示被選中吊桿,以及吊桿的實際位置和預置位置、運行狀態(tài);還設置一些按鍵,供操作人員選擇需運行吊桿并改變預置數(shù)據(jù);它和主機模塊共同組成系統(tǒng)人機接口。它配合主機完成場次數(shù)據(jù)的預設;并實時監(jiān)控當前吊桿的情況,對信號進行處理,得出結果后告知主機,由主機分類處理。監(jiān)控模塊并不是時時使能,它的工作需要主機根據(jù)當前運行要求激活,一旦吊桿監(jiān)控模塊被主機選中,該模塊便進入工作狀態(tài)。
3)輸出控制模塊控制系統(tǒng)的執(zhí)行單元,按主機要求做出相應輸出控制對象的動作。
4)信號分配子模塊是為了減少系統(tǒng)的連線,做到在控制級連線復用。在數(shù)控吊桿系統(tǒng)應用中,其特點是每次運行的吊桿數(shù)最多不超過10桿,而系統(tǒng)所有50根吊桿的信號包括100個上下限信號和50個脈沖信號,如全部接入控制系統(tǒng)則連線過多,加入分配子模塊后每次僅是當前選中吊桿信號輸入,信號輸入線可減少80%,這樣控制簡單,降低了成本。
本系統(tǒng)軟件主要是針對單片機的應用程序,由匯編語言編寫,根據(jù)系統(tǒng)子模塊,整個程序由主機程序、吊桿面板程序、輸出單元程序、選路程序組成。選路單元硬件還包含一塊FPGA,由VHDL語言編寫的時序邏輯程序實現(xiàn)50選1或10的信號輸出。
因為該系統(tǒng)是一個工業(yè)控制系統(tǒng),程序控制是核心內容,控制輸出的重要依據(jù)是位置量的比較和輸出的對象。系統(tǒng)各個模塊通過硬件支持,軟件實現(xiàn)分工協(xié)作最終達到既定的控制目的。控制模式分集控、手動、點動,集控包含三種模式的共性。與集控相比,手動少了預制數(shù)據(jù)的存儲,點動僅是按鍵不帶自鎖,及按鍵按下為啟動,松開為停止,所以從集控程序介紹子模塊間的配合情況,對各子模塊的軟件編程,也是基于完成這樣的配合。
集控分為預置、選場、啟/停三大塊,預置流程圖如圖3所示。
圖3 預置流圖
在預置過程中,通訊還有握手信號傳遞,并加有重發(fā)機制,保證信息交流成功。從圖中可看出,預置僅在兩個模塊中完成。
場次預置好后,進入吊桿運行準備狀態(tài),應首先選定場次,主機從存儲器中調出該場信息,包括該場桿數(shù)、有那些吊桿、對應吊桿的實際位置、預制位置和各吊桿將運行的方向,通知需要配合的模塊完成準備工作。負責數(shù)據(jù)顯示的吊桿監(jiān)控判斷模塊,收到數(shù)據(jù)后,就顯示出當前吊桿的桿號、實際位置、預制位置,并等待啟動信號后開始上計數(shù)或下計數(shù);信號分配模塊收到選路信息后,把選中吊桿的傳感信號,放到對應監(jiān)控模塊上。啟動或停止鍵按下后,主機通過群發(fā)指令,各模塊執(zhí)行各自功能,流程如圖4所示。
圖4 選場確認流圖
吊桿運行位置的確定是靠脈沖計數(shù)間接計算得出,編碼器根據(jù)吊桿行程產生相應數(shù)量的脈沖,所以脈沖的個數(shù),再加上行走方向信息,可判斷出吊桿行程[3,4]。
脈沖計數(shù)程序由計數(shù)器T0中斷進入,在中斷程序中,除了做計數(shù)外,還通過實時比較實際值和預置值,判斷吊桿是否到達預置位置,做出是否通知主機對輸出控制模塊下達停止改吊桿運行的命令。計數(shù)脈沖中斷流程圖如圖5所示。程序根據(jù)光電碼盤脈沖個數(shù)和吊桿當前運行方向計算當前吊桿的運行位置。步進電機實現(xiàn)一次(一個齒部)分度。由于在n的取值范圍中,具有使表達式[(2×360°)÷(A°/N)]÷n存在余數(shù)的值。如果不對余數(shù)進行科學處理,那么在最后一個分度位和第一個分度位之間必然產生累積誤差,從而影響分度精度。因此在輸出分度脈沖的編程設計中,每進行一次分度,將余數(shù)累加一次;在下一個分度之前,先將累加值與撥碼開關設定值n進行比較,當累加值大于n時,將累加值減去n,同時將輸出脈數(shù)加一后再進行輸出分度;若累加值小于n值,Y0輸出原有脈沖個數(shù)進行分度,同時仍將余數(shù)累加一次。以此使均勻分度中任意相鄰兩分度位的誤差小于步進電機的一個步距角,如果希望分度的精度較高,可以選用步距角較小的步進電機。
PLC通用數(shù)據(jù)寄存器D1、D0中,讀入撥碼開關設定分度位數(shù)n;將整體需輸出的脈沖總數(shù)(2×360°)÷(A°/N)值,存入通用數(shù)據(jù)寄存器D11、D10中;利用PLC的功能指令FNC23(除法指令(D)DIV)進行除法運算。如圖6所示,其商送到通用數(shù)據(jù)寄存器D5、D4,余數(shù)送到通用數(shù)據(jù)寄存器D7、D6。余數(shù)的累加單元使用通用數(shù)據(jù)寄存器D9、D8,它在開始分度之前處于清零的狀態(tài)。
此單齒感應淬火自動控制技術,運用于風力發(fā)電裝置中的回轉支撐零件內、外齒輪單齒感應淬火中,通過對現(xiàn)場生產產品進行檢驗,完全滿足生產要求,大大提高了產品質量,使用效果良好。
[1] 王兆義.可編程序控制器教程[M].北京:機械工業(yè)出版社,1995.
[2] 金仁貴.PLC原理與應用[M].合肥:合肥工業(yè)大學出版社,2009.
[3] 三菱公司.微型可編程控制器編程手冊[Z].日本:三菱公司,2002.