摘要: 主要針對一些中小型表演劇場中使用到的舊式媒體設(shè)備時效性差、可靠性低、穩(wěn)定性弱、通信范圍小、魯棒性差等特點(diǎn),設(shè)計了一種基于云服務(wù)平臺的設(shè)備控制系統(tǒng),硬件系統(tǒng)以STM32F103ZET6作為主控單元,與機(jī)智云配置使用,從而實現(xiàn)設(shè)備與互聯(lián)網(wǎng)的連接,讓工作人員可以對設(shè)備進(jìn)行遠(yuǎn)程控制,提高了便捷性和時效性。
近年來,新型技術(shù)不斷涌現(xiàn),利用云服務(wù)平臺實現(xiàn)對硬件設(shè)備的實時高效控制,由此實現(xiàn)了物質(zhì)世界、網(wǎng)絡(luò)世界和人類認(rèn)識世界的聯(lián)通。本文由機(jī)智云開發(fā)者設(shè)計了一款適用于中小型環(huán)境的基于機(jī)智云服務(wù)平臺的媒體設(shè)備控制系統(tǒng)。
1, 系統(tǒng)總體設(shè)計 目前,基于云服務(wù)平臺進(jìn)行媒體設(shè)備方面的智能硬件開發(fā)需要以下幾部分:媒體設(shè)備、云服務(wù)平臺和手機(jī)APP。基于云的媒體設(shè)備控制系統(tǒng)如圖1所示。
利用可靠的硬件設(shè)備模擬媒體產(chǎn)品可以準(zhǔn)確地反映本設(shè)計要實現(xiàn)的燈光控制以及音樂播放控制等功能。云端服務(wù)器選用機(jī)智云云服務(wù)平臺,用于轉(zhuǎn)發(fā)手機(jī)軟件下發(fā)的控制指令,然后將控制指令下發(fā)至硬件設(shè)備。
圖一,基于云的媒體設(shè)備控制系統(tǒng)
2 系統(tǒng)硬件設(shè)計 2.1 燈光設(shè)備模塊
一場完美的演出需要一整套智能高效的燈光控制系統(tǒng)。針對劇院舞臺燈光控制系統(tǒng),本設(shè)計采用STM32F103ZET6試驗板上的LED燈來模擬燈光設(shè)備,模擬燈光設(shè)備的原理圖如圖2所示。其中PWR是設(shè)備電源指示燈,為藍(lán)色,LED0(DS0)和LED1(DS1)分別為紅色和綠色,LED0與STM32的PB5相連。
圖二,模擬燈光設(shè)備原理圖
2.2音響設(shè)備模塊
針對劇院舞臺音響控制系統(tǒng),本設(shè)計采用STM32F103ZET6試驗板上的SD卡模塊、音頻處理模塊、音頻功率放大模塊以及小喇叭來模擬音響設(shè)備。
本設(shè)計需要提前將要播放的歌曲存放在一張SD卡中,通過試驗板上的卡槽將SD卡與主控芯片相連接,SD卡接口與STM32F103ZET6連接的原理圖如圖3所示。
SD卡中的音樂文件需要經(jīng)過音頻處理以及功率放大才可以通過擴(kuò)音器進(jìn)行播放,則音頻處理模塊電路原理圖如圖4所示。圖4中,MP3_LEFT/MP3_RIGHT兩個引腳用作VS1053B的音頻輸出接口。SPK_CTRL連接在VS1053B的GPIO4上,用于控制HT6872工作狀態(tài),從而控制小喇叭出聲,要讓小喇叭發(fā)聲,必須通過APP控制VS1053B的GPIO4輸出高電平,否則小喇叭關(guān)閉。VS_RST是VS1053B的復(fù)位信號線,低電平有效。VS_DREQ是一個數(shù)據(jù)請求信號,用來通知主機(jī)VS1053B能否接收數(shù)據(jù)。
圖3 SD卡接口與STM32F103ZET6連接原理圖 圖4音頻處理模塊原理圖
音頻功率放大模塊電路原理圖如圖5所示。
圖5中,SPK_IN就是HT6872的音頻輸入,然后SP+和SP-分別連接喇叭的正負(fù)極。重點(diǎn)看SPK_CTRL,這個信號控制著HT6872的工作模式,該信號由VS1053B的36引腳(GPIO4)控制,當(dāng)SPK_CTRL引腳為低電平時,HT6872進(jìn)入關(guān)斷模式,也就是功放不工作了,當(dāng)SPK_CTRL引腳為高電平時,HT6872進(jìn)入正常工作模式,此時喇叭可以播放SPK_IN輸入的音頻信號。這樣,通過SPK_CTRL就可以控制喇叭的開關(guān)了。播放音樂以后,采用TFTLCD模塊顯示模擬音響設(shè)備在運(yùn)行過程中的播放信息。
系統(tǒng)軟件設(shè)計
系統(tǒng)能夠正常運(yùn)行必須有軟件程序的設(shè)計開發(fā),本文的控制系統(tǒng)軟件設(shè)計主要分為兩部分:一是模擬媒體設(shè)備STM32F103ZET6MCU端程序的編寫,包括LED燈初始化及控制程序設(shè)計、音樂播放部分的初始化及控制程序設(shè)計、WiFi初始化等程序;
二是智能手機(jī)的應(yīng)用程序,主要是在機(jī)智云Aiot開發(fā)平臺進(jìn)行產(chǎn)品創(chuàng)建、虛擬設(shè)備功能實現(xiàn)、程序移植以及智能手機(jī)APP的下載安裝。系統(tǒng)軟件設(shè)計整體框圖如圖6所示。 圖5音頻功率放大模塊電路原理圖
圖6系統(tǒng)軟件設(shè)計整體框圖
整個系統(tǒng)的軟件設(shè)計包括LED燈、LCD顯示屏以及VS1053B等芯片外設(shè)的初始化程序設(shè)計,WiFi模塊的固件安裝、WiFi初始化,硬件配網(wǎng)及控制主界面程序設(shè)計,云平臺APP控制功能程序設(shè)計以及程序移植。模擬媒體設(shè)備程序設(shè)計主要使用Keil5 MDK開發(fā)環(huán)境,采用C語言開發(fā)。
3.1 開發(fā)環(huán)境搭建及開發(fā)平臺選擇 3.1.1 MDK開發(fā)環(huán)境
軟件設(shè)計采用Keil MDK5開發(fā)平臺,對比以前的版本,Keil MDK5有非常大的優(yōu)勢,新版本的器件包與編譯器是分離開的,也就是說在使用時需要哪種器件就下載相應(yīng)的器件包即可,無需下載其他器件包,從而節(jié)省存儲資源、節(jié)約開發(fā)成本。
3.1.2 機(jī)智云(Gizwits )AIoT開發(fā)及云服務(wù)平臺 選用的是目前為止在物聯(lián)網(wǎng)開發(fā)領(lǐng)域具有相當(dāng)大優(yōu)勢的機(jī)智云云服務(wù)(Gizwits)平臺,提供了自助式在線工具與開放的IoT云端服務(wù),只需少量代碼,甚至只需進(jìn)行拖拉拽,就能開發(fā)一款A(yù)pp或語音控制智能設(shè)備。有助于加快開發(fā)速度,縮短開發(fā)周期。
3.2 GAgent嵌入式固件系統(tǒng)
GAgent是一種用于數(shù)據(jù)轉(zhuǎn)發(fā)的嵌入式固件系統(tǒng),硬件設(shè)備需要依靠GAgent才能接入機(jī)智云服務(wù)平臺,GAgent接入機(jī)智云,需要經(jīng)過以下幾個步驟: (1) GAgent獲取設(shè)備信息,首先GAgent通過串口向MCU發(fā)出請求設(shè)備信息指令,MCU在接收到請求指令后將設(shè)備信息以同種方式發(fā)送給GAgent,如果此時設(shè)備正常工作,則MCU需要回復(fù)GAgent發(fā)出的心跳包 (2) 設(shè)備配置入網(wǎng)有airlink、softAP兩種方式可供選擇:airlink方式主要通過手機(jī)端發(fā)送包含路由器賬號和密碼的特定UDP廣播,設(shè)備的WiFi模塊接收到后根據(jù)廣播包含的信息連接到路由器上;softAP方式則是將設(shè)備作為一個AP,將手機(jī)APP連接到WiFi模塊的熱點(diǎn)上。 (3) 前者可以實現(xiàn)遠(yuǎn)距離的控制指令下發(fā)接收,而后者只能用于近距離的相關(guān)配置,無法實現(xiàn)遠(yuǎn)距離通信。根據(jù)設(shè)計的要求,選擇airlink方式進(jìn)行配網(wǎng)。airlink配網(wǎng)流程如圖7所示。
圖7 Airlink方式配置入網(wǎng)
(4) 智能手機(jī)APP控制設(shè)備之前必須先綁定設(shè)備,本設(shè)計采用WiFi方式對設(shè)備進(jìn)行綁定,WiFi技術(shù)安全健康,在實際工作中,它的發(fā)射功率大約在60~70mW之間,所以說該技術(shù)相對來說是比較安全健康的[11],搜索并綁定設(shè)備流程如圖8所示。
3.3 設(shè)備數(shù)據(jù)的上報與下發(fā) 上報設(shè)備數(shù)據(jù)一般是指設(shè)備主動上報當(dāng)前運(yùn)行狀態(tài),MCU通過串口上報設(shè)備數(shù)據(jù)給GAgent,GAgent將數(shù)據(jù)上報給云端,云端將數(shù)據(jù)下發(fā)至APP;而下發(fā)數(shù)據(jù)一般是指智能手機(jī)APP或者云端控制硬件設(shè)備,APP端上報數(shù)據(jù)到云端,云端將其下發(fā)至GAgent,進(jìn)而通過串口下發(fā)至MCU。設(shè)備數(shù)據(jù)的上報及下發(fā)流程如圖9所示。
4 系統(tǒng)功能測試 在系統(tǒng)的整體設(shè)計完成以后,對本設(shè)計的功能進(jìn)行了實際測試,即通過手機(jī)APP發(fā)送控制指令,經(jīng)過云端服務(wù)平臺接收并下發(fā)至模擬媒體設(shè)備的WiFi模塊,設(shè)備做出實時響應(yīng)。
圖8 APP通過WiFiI設(shè)備綁定
圖9設(shè)備數(shù)據(jù)的上報與下發(fā)
4.1 設(shè)備配置入網(wǎng) 基于云的媒體設(shè)備控制系統(tǒng)設(shè)計的設(shè)備配置入網(wǎng)測試步驟如下: (1) 給設(shè)備上電,打開K2開關(guān),指示燈PWR亮起,對WiFi模塊進(jìn)行配置,完成硬件外設(shè)的初始化工作。 (2) 給設(shè)備上電,打開K2開關(guān),指示燈PWR亮起,對WiFi模塊進(jìn)行配置,完成硬件外設(shè)的初始化工作。 (3) 將智能手機(jī)連接無線路由器,可以通過無線路由器上網(wǎng),保持網(wǎng)絡(luò)暢通。 (5) 設(shè)備配網(wǎng),通過手機(jī)APP進(jìn)行配置,輸入智能手機(jī)所連接的路由器賬號和密碼、選擇WiFi模組類型并將設(shè)備設(shè)置為待連接狀態(tài),通過串口助手調(diào)試軟件可以觀察到設(shè)備當(dāng)前的網(wǎng)絡(luò)狀態(tài)。 (6) 設(shè)備配網(wǎng)完成之后,智能手機(jī)APP界面將會顯示出設(shè)備名稱,設(shè)備配網(wǎng)成功實物如圖10所示。
圖10 設(shè)備配網(wǎng)成功實物圖
4.2控制功能測試
完成設(shè)備配置入網(wǎng)后,將手機(jī)的網(wǎng)絡(luò)由連接路由器切換為4G網(wǎng)絡(luò),手機(jī)便可以隨時隨地訪問云端服務(wù)器并發(fā)送指令至模擬媒體設(shè)備,使之實現(xiàn)燈光開關(guān)以及音頻播放等功能。當(dāng)手機(jī)LED開關(guān)打開時,設(shè)備下端的紅色LED燈DS0亮起,開關(guān)關(guān)閉時,LED燈滅。 接下來測試模擬音響設(shè)備功能,當(dāng)手機(jī)player開關(guān)打開時,設(shè)備播放音樂并在LCD屏上顯示當(dāng)前播放歌曲的名稱、時長、音量以及存儲的音頻文件總數(shù)等詳細(xì)信息。以上便是云端控制系統(tǒng)功能測試內(nèi)容,經(jīng)過測試,登錄機(jī)智云IoT開發(fā)平臺查看設(shè)備運(yùn)行日志,可以了解具體指令下發(fā)過程。
基于當(dāng)前物聯(lián)網(wǎng)技術(shù)高速發(fā)展這一大背景,設(shè)計了基于云服務(wù)平臺的媒體設(shè)備控制系統(tǒng),已經(jīng)完成的主要工作以及系統(tǒng)的優(yōu)勢總結(jié)如下:選擇了高性能且低成本的STM32模擬媒體設(shè)備,在一定范圍內(nèi)基本能夠?qū)崿F(xiàn)對燈光、音響設(shè)備的控制功能,極大提高了系統(tǒng)的有效性和可靠性;為了使觀眾、聽眾能夠獲得更好的視聽體驗,設(shè)計了功能實現(xiàn)顯示界面,主要在音響設(shè)備控制模塊增加了LCD,用以顯示當(dāng)前播放歌曲的具體信息。
由于時間、成本等多方面因素的限制,還存在著許多不足之處,等待后續(xù)作進(jìn)一步改進(jìn):為了節(jié)約系統(tǒng)設(shè)計的成本,系統(tǒng)中選取的燈光控制模塊由LED燈模擬實現(xiàn),音響設(shè)備控制模塊由板載小喇叭模擬實現(xiàn),系統(tǒng)僅對劇院環(huán)境下的媒體設(shè)備做了模擬處理,后續(xù)還需要針對實際設(shè)備作進(jìn)一步改進(jìn);系統(tǒng)設(shè)計中選取的功能模塊比較少,無法完整體現(xiàn)劇院媒體設(shè)備的全部功能,后續(xù)還可以增添多種功能模塊,例如幕布控制、舞臺升降等。
|