年初,我們曾通過公眾號與大家分享了北卡羅來納大學威爾明頓分校 (簡稱: UNCW) 全新醫學綜合教學樓 (又稱: Veterans Hall) 的案例。當中重點介紹了校方如何利用 Extron NAV 系統實現整座樓內視音頻信號的分配。今天,我們將繼續探究這一案例,為您揭秘如何用一個控制系統將樓內所有房間系統整合在一起,實現一體化靈活便捷的控制。
項目挑戰
UNCW 的管理層要求為 Veterans Hall 部署清一色的靈活式教學空間,以支持自主學習和混合式遠程教學。面對如此挑戰,學校的技術團隊深知僅憑傳統模式下的大型矩陣切換機柜及單一的控制系統很難滿足此類需求。他們也更加清楚地知道,后續仍有一系列新技術及教學法要面向教師普及和推廣。這些都需要專職技術人員提供個性化的指導,以確保獲得良好的初體驗。為此,他們采用 Extron NAV 系統構建了一套可覆蓋整座大樓的 AVoIP 解決方案。六層樓內的 205 個節點統一由 Navigator 來管理。
解決方案
UNCW 使用 ControlScript (Extron 基于 Python 的腳本語言) 來進行系統編程,以滿足其對大樓內靈活且一體化的系統控制需求。ControlScript 的最大優勢是其能夠直接利用 Button 對象的名稱。在代碼中既可利用 ID,也可使用名稱,通過字典和幫助函數創建具有不用意義的變量名。這些變量名可在樓內多個控制系統當中被靈活地重復使用。其次,ControlScript 能夠讓控制處理器之間建立網絡通信,教室和中心控制室的中控就形成了一種客戶端-服務器 (client-server) 這樣的主從關系。教室狀態及當前有效輸入信息可定期被發送至控制室,控制室亦可回傳控制指令以調整教室的各種系統功能。
ControlScript 事件裝飾符 (@event decorator) 也是該項目編程最關鍵的部分,通過它可創建新的數據對象。和按鍵被按下的事件類似,數據對象中變量的變化也會觸發相應的程序。這樣,client-server 部分的代碼可按需更新變量,事件代碼可直接更改系統功能,而無需再將所有可選數據加載至網絡通信模塊的 ReceiveDatahandler 程序段。
在這些編程技術的支持下,Veterans Hall 的控制室最多只需配備三名技術員即可。且通常情況下,一人完全能夠輕松監控 9 間日常使用頻率最高的教室。這些教室配備有攝像頭、波束形成麥克風、多臺顯示器及 AV 橋接器。一些自主學習空間甚至還包括多臺小組顯示器及 BYOD 無線設備。因有技術人員的實時監控,教師們可集中精力在課堂教學上,無需擔心系統的運行狀況。
UNCW 對復雜系統的需求并不僅僅局限于這 9 間混合式教室。其還有 2 間高端會議室,1 間高級教學實驗室 (大量學生電腦接入室內 AV 系統),1 間康復實驗室 (采用 8 x 4 的滿配矩陣),以及 1 間解剖實驗室 (5 個解剖臺的數字影像全部被路由至兩套小型拼接墻)。但不管如何復雜多變的空間設置,用于控制主用戶界面及整個系統核心 NAV 的基礎代碼始終是一致的。正所謂“以不變應萬變”。
對于控制室、解剖實驗室和康復實驗室,ControlScript 還可為終端用戶創建有意義而直觀的狀態反饋,如通過按鍵的動態文字,或四種不同的按鍵狀態及背光色等方式來反饋當前操作狀態。
能如此便捷地重復調用代碼很大一部分歸功于 ControlScript 項目文件中包含多個不同功能的 Python 文件。入口程序文件 main.py 本身非常簡短,其通過導入 “devices.py” 和 “variables.py” 與各類設備建立連接,從 “InstructorTLP.py” 文件中定義界面對象,并調用功能函數。通常情況下,main.py 僅顯示為 26 行代碼。即使系統最復雜的教室 (包含 12 個自主學習區,且所有設備由控制室集中控制),其代碼也顯示不超過 90 行。而事實上在不計算 Extron 設備模塊代碼的情況下,此類程序實際運行的代碼也僅僅 1000 行。
通過這種按文件區分代碼的方式,系統編程人員可輕松查看各類代碼窗口,確保代碼在整體“思想”上的一致性。需注意的是,變量并非如想象中那樣,可在任何地方進行聲明。它只能在 variables.py 文件中聲明,并由 InstructorTLP 通過 variables.VARNAME 這樣的格式引用。device 程序亦是如此,采用 devices.Navigator 或 devices.SonyProj 這樣的引用方式。在創建不同的系統時,程序員可在 device 或 variable 文件中輕松找到有關 IP 地址、密碼、NAV 輸入/輸出編號有關的變量,并進行微調。
成果反饋
“
沒有 Extron ControlScript 提供的靈活的編程環境,Veterans Hall 的視音頻系統便無法滿足 UNCW 提出的靈活多變的控制需求。
Richard Blaylock, CTS-IAV
系統工程師,綜合教學技術部
UNCW
動態變量、面向對象編程設計、GUI 和代碼的智能化互連,以及對事件處理程序和 TCP/IP client-server 功能的訪問等,所有這些編程要素共同促成了 Veterans Hall 一體化的系統控制,并使得整個系統在過去一年,如此高風險的大環境下依然運行良好。UNCW 已決定將 Extron ControlScript 的應用擴展至校內更多項目,其中包括升級現有的遠程教學控制室、改裝三向可分離式舞廳、主籃球館的音頻控制系統、電影后期制作計算機實驗室乃至全新的 4K 數字影院等。