摘 要: 針對傳統的音樂噴泉系統控制采用有線通信方式的局限性,提出了一種基于WiFi網絡的音樂噴泉表演系統的解決方案。采用嵌入式WiFi控制芯片AX22001完成了音樂噴泉控制系統下位機控制器的軟、硬件設計。該系統具有結構靈活、可靠性高、擴展性好、成本低等優勢,并在實際工程項目測試中取得了良好的控制效果。
關鍵詞: 音樂噴泉;WiFi;AX22001
音樂噴泉作為一種富有生命力的理想城市景觀,其載歌載舞的水型表演、絢麗多彩的燈光變化、優雅磅礴的藝術氛圍,給緊張、忙碌的現代人帶來清新愉悅的心情。隨著經濟社會的發展和人們對建立綠色城市的向往,音樂噴泉的市場發展十分迅速。
WiFi基于IEEE 802.11協議,用于組建無線寬帶局域網,其信號熱點覆蓋范圍達100~300 m,數據傳輸率高(目前普遍采用的802.11a/g標準可以達到54 Mb/s),費用低廉,在實時性和傳輸多媒體信息等大數據量方面具有明顯的優勢[1]。
目前,多數中小型音樂噴泉以單片機、工業控制計算機及PLC可編程控制器作為主控制器,對各控制點使用集中控制方式。這種控制方法耗費大量電纜,成本較高,不易維護,只適用于控制點集中分布且數目不多的場合,而且表演形式固定且不夠豐富,系統擴展和軟硬件升級困難[2]。
針對以上情況,本文提出的基于WiFi的音樂噴泉控制系統,采用PC機或智能移動終端作為上位機實現系統整體協調控制,下位機部分采用具有WiFi網絡接口的控制器,兩者通過WiFi網絡進行通信。這種分布式控制方式不僅節省了電纜,降低了成本,而且采用WiFi寬帶網絡通信方式,在保證了系統的實時性前提下,也大大增加了系統的可擴展性,并且方便與Internet集成。
目前應用WiFi網絡的系統大多采用WiFi信號收發模塊與MCU控制模塊相分離的解決方案,這就使終端控制器集成度不高,降低了系統可靠性。本方案以AX22001嵌入式WiFi單芯片MCU為核心,設計現場控制器,并作為WiFi網絡的智能控制節點,軟件內含基本表演程序供上位機調用。采用這種分布式控制方法減輕了主控系統的負擔,提高了系統效率。
1 系統設計
本文設計的音樂噴泉控制系統從結構上分為4個部分:中央控制部分、無線交換機、現場控制器,執行機構及其電氣驅動部分。系統總體結構如圖1所示。
(1)中央控制部分:由PC機或智能終端作為上位機,運行音樂噴泉控制專用軟件,實現人機界面和系統的整體協調控制。該部分首先對音樂信號進行預處理,提取音樂元素生成控制文件,再將音樂文件和控制文件同步播放,并將音頻數據流和控制數據流通過WiFi網絡發送到現場WiFi無線音響設備和現場控制器,從而實現音樂噴泉的現場音樂播放和水型表演。
(2)無線交換機:由無線交換機作為網絡中心節點搭建WiFi局域網。
(3)現場控制器:根據音樂噴泉的表演形式和現場不同的執行機構,分類設計開發出4種音樂噴泉現場 控制器。①WiFi音頻傳輸控制器,負責現場音樂播放;②模擬量輸出控制器,連接變頻器,負責水泵的調速;③開關量輸出控制器,負責對噴泉電磁閥、彩燈、照明燈的控制;④數碼噴頭控制器,負責對噴泉多維搖擺噴頭的控制。
這些現場控制器均作為子節點連接到由無線交換機搭建的WiFi網絡,每個子節點有一個唯一的標識(IP),分別通過WiFi網絡獲得上位機控制指令,然后按照控制協議對上位機控制命令進行解析,實現對執行機構的程序控制,從而產生不同的水型、燈光和音樂的組合效果。
(4)執行機構及其電氣驅動部分:包括驅動電路,以及噴泉多維噴頭、變頻調速器、電磁閥、潛水泵,噴頭照明燈,彩燈等執行機構,變頻器采用0~10 V的模擬量控制,電磁閥和潛水泵等設備通過24 V DC的開關量控制。
2 硬件設計
本系統現場控制器的硬件設計,針對音樂噴泉現場控制點的不同類型,分類設計AX22001控制器的外圍控制電路,完成無線通信、數據處理和外圍執行機構控制功能。
AX22001是亞信電子開發的一種雙核8051/80390微控制器(最高主頻80 MHz),內置TCP/IP和802.11 WLAN MAC/基帶,包含豐富的外圍接口資源。其中MCPU主要用來運行應用程序及TCP/IP協議,WCPU用于處理WLAN協議及以太網至無線網封包格式的轉換。該芯片具有用于網絡及外設數據快速傳輸的DMA引擎及專門的內存架構,同時支持TCPIP硬件加速器來提升網絡傳輸帶寬[3]。該芯片的最大優點在于其簡化了以往使用MCU外接WiFi通信模塊的結構,降低了硬件成本。
2.1 WiFi音頻傳輸控制器
硬件結構如圖2所示,AX22001微控制器通過控制接口SPI和數據接口I2S將數字音頻數據發送到立體聲音頻編解碼芯片TLV320AIC,對數字音頻信號進行解碼后,再通過音頻電纜向功放音響設備傳送模擬音頻信號[4-5]。
2.2 開關量輸出控制器
音樂噴泉開關量輸出控制點數成百上千,本方案設計的開關量輸出控制器提供64路開關量輸出,采用8255A可編程并行I/O接口芯片擴展AX22001芯片的I/O接口[6]。
2.3 模擬量輸出控制器
音樂噴泉模擬量輸出控制點數較多,本方案設計的模擬量輸出控制器具有12路模擬量輸出,采用數模轉換芯片DAC0832擴展AX22001芯片的模擬量輸出控制點[7]。
2.4 數碼噴頭控制器
音樂噴泉的數碼噴頭通常由兩個步進電機控制,一個稱為平臺電機,為噴頭的水平平臺提供旋轉,另有一水平平臺上的步進電機,控制噴頭在豎直平面內的旋轉,這種兩自由度的數碼噴頭可以向任何方向噴水。控制步進電機的輸入脈沖個數和速率,即可控制步進電機的運轉角度和運轉速度,從而控制數碼噴頭的方向坐標和搖擺速度。
本方案設計的數碼噴頭的步進電機控制電路(以驅動兩相混合式步進電機為例)主要由Intel8253可編程定時/計數器芯片、L297步進電機專用控制器、L298步進電機專用驅動芯片組成。兩組8253+L297+L298分別驅動兩個平臺的步進電機[8]。8253通過數據總線和地址總線與AX22001芯片連接,L297的控制引腳與AX22001芯片的P1口連接。部分參考電路如圖3所示(在實際應用中,AX22001芯片和8253定時器芯片與L297芯片之間應進行光耦隔離)。
8253的定時器0和1工作于方式3(方波發生器方式),對時鐘信號進行兩次分頻;定時器2工作于方式0(計數結束中斷方式)。對定時器1和定時器2寫入不同的計數初值,即可控制步進電機的輸入脈沖速率和步進電機的輸入脈沖個數[9]。
3 軟件設計
3.1 軟件系統結構
本軟件系統的結構主要由三大模塊組成:上層應用模塊、網絡模塊和硬件接口驅動模塊,具體的軟件模塊化結構如圖4所示。
上層應用模塊包含實現各種應用的子模塊,該模塊通過網絡模塊發送和接收以太網數據包,通過硬件接口驅動模塊與外圍硬件接口通信。MCPU主模塊是main()主函數,是程序開始執行的地方,實現軟件系統的任務調度。網絡模塊中的TCP/IP模塊在初始化階段,通過使用回調函數來完成對上層應用模塊的TCP/IP服務功能。MAC模塊負責MCPU子系統與WCPU子系統之間數據的傳輸[10]。上層應用模塊中的控制模塊為本軟件系統的應用設計模塊,提供可供上位機調用的控制任務命令接口,實現數字音頻數據接收發送和控制點的程序控制。該軟件系統從WiFi網絡接收到上位機的一系列數據和控制指令,經過各層網絡模塊的傳送,最后由控制模塊進行命令解析,并從基本表演程序庫中調用相應的表演程序,進行所控區域的噴泉表演控制。
3.2 總程序流程圖
總程序流程圖如圖5所示,主函數首先初始化所有的軟件模塊,其中包括硬件接口驅動模塊、網絡模塊、應用程序模塊。接著程序進入一個循環,一些要調用的模塊任務重復執行,實現網絡連接、數據接收發送和控制輸出功能。
3.3 軟件控制模塊的設計
為表現音樂內涵,需要音樂噴泉控制點進行復雜形式的表演,而這些復雜形式的表演是幾類基本表演形式在不同控制點上按空間和時序的組合表演。上層應用模塊中的控制模塊為針對噴泉現場控制的核心設計模塊,實現各控制點的表演控制任務。因此軟件控制模塊的設計,需針對不同的基本表演形式,編寫各種表演控制函數,供軟件控制模塊在控制任務中調用。
現以數碼噴頭控制器為例說明軟件控制模塊的設計。圖6為數碼噴頭控制器軟件控制模塊的一個步進電機控制任務流程圖,其中步進電機的表演方式控制函數用于實現數碼噴頭各種形式的擺動。此控制程序采用中斷方式為8253定時器2賦值來控制步進電機的輸入脈沖個數。
4 實驗測試
圖7為數碼噴頭軟件控制模塊在Proteus仿真軟件中的仿真結果圖。圖中左側示波器顯示屏中第一行為時鐘波形,第三行為步進電機輸入脈沖波形,第四行為步進電機脈沖輸入結束后的中斷信號,右側為步進電機當前運行狀態。
本文現有的噴泉為基于以太網控制的音樂噴泉系統,為了驗證本方案的可行性和實用性,將所設計的控制器加入該系統中,并對各種控制任務進行了測試,結果表明所設計的控制器運行良好,達到了預期的控制要求。經過幾個月的運行,系統穩定可靠,控制效果良好。
本文針對傳統噴泉控制系統的不足,提出了一種基于WiFi控制網絡的音樂噴泉表演系統的解決方案,充分利用嵌入式單芯片AX22001的硬件資源,對4類現場控制器分類進行了軟、硬件設計,實現了與上位機的WiFi網絡通信以及噴泉系統現場控制。實踐證明,該方案在滿足系統良好的控制效果下,具有更好的靈活性和可擴展性,并能有效地節省電纜,降低成本。
參考文獻
[1] 王娟,郭家奇,劉微.WIFI技術的深入探討與研究[J].價值工程,2011(6):80.
[2] 李晨曦,李昌智,胡包鋼.基于以太網的音樂噴泉控制系統的設計與實現[J].計算機測量與控制,2006,14(10):1361-1363.
[3] AX220xx_Datasheet_v101[M/CD].2011.
[4] 李雙勛,歐建平.TLV320AIC23在音頻處理中的應用[J].國外電子元器件,2013(10):16-19.
[5] AX220xx_Product_Introduction_v101[M/CD].2011.
[6] 白莉媛,肖樂,錢進.Intel 8255A微機芯片的應用[J].光盤技術,2006(6):25.
[7] 宋復成,顧明亮,楊增汪.用DAC0832芯片實現32位D/A的高分辨率[J].微計算機信息,2007(20):293-294.
[8] 唐國棟,高云國.基于L297/L298芯片步進電機的單片機控制[J].微計算機信息,2006,22(12-1):134-136.
[9] 李永義,竇滿鋒,劉衛國,等.8253在步進電動機運動控制系統中的應用[J].微電機,2002,35(5):33-35.
[10] AX220xx Upper Protocol Developer′s Guide[M/CD].2011.
[11] AX220xx Software User Guide[M/CD].2011.