網路化控制實驗室之設計
全文
(2) 軟體,讓原來在單機使用的各種硬體控制程式能應 用於網際網路的環境,而不需改變現有已發展成熟 的這些開發程式。這套程式能讓使用者自遠端看到 伺服器上控制程式的視窗畫面,猶如使用者就坐在 伺服器電腦前面操作設備一樣。除了遠端遙控的功 能之外,這個程式也與 Class Management Center 連線,檢查使用者的授權情形,以及防止遠端使用 者做出破壞系統的行為。 -設備運作結果利用視訊即時傳輸 當實習者設計完控制邏輯,開始書寫程式與執 行時,另一個視訊視窗將會彈跳出來,實習教室的 設備影像將會透過網際網路即時傳輸至使用者的 電腦上,使用者可以透過這個視窗看到實習教室現 場的設備運作影像,更進一步了解程式實際執行結 果。 在查詢階段,可以圖 1 操作流程表示,學生. 圖 2 程式設計/執行流程圖 在以下的第二節我們將介紹與遠距教學相關 的資料,第三節以功能性區分本系統,分別介紹所 使用的技術,我們所實作的成果展示與結論則分別 位於第四節與第五節。. 2. 相關系統. 與 Class Management Center 連線。學生在此階段. Windows XP 也提供遠端控制的功能,讓遠端. 可以查詢可使用的實習設備列表以及使用狀態,並. 使用者能透過網際網路登入另一台電腦,並接管所. 可以預約/取消一段線上操作時間。而如果多人預. 有的控制權。但是 Windows XP 所開放的功能太過. 約同一時段,也可以依預約順序開放候補。. 強大,使用者可輕易的進行越權的操作,而且要使 用這項功能,使用者與伺服器兩端均須安裝 Windows XP。Symantec pcAnywhere 提供類似的功 能,但是與 Windows XP 相同地,管理者並不能有 效的控制遠端連線的安全性。 由於網際網路的可延展性,為數頗多的虛擬 實驗室[1][2][3]、遠距教學[4]、PLC 控制[5]與互助 評量系統[6][7]等相關研究相繼被提出。然而,這 些研究僅能應用於某類用途,例如,在[8]這篇論. 圖 1 課程查詢/預約流程 在程式設計/執行階段的程流程圖,可以圖 2 表示,在這個階段,學生與 device server 連線。學 生首先由課程管理系統登入,確認身份後,再由管 理首頁導向至負責該硬體的主機,進入該部主機 後,學生端即可看到主機端的桌面,並且可操作該 開發環境,如同就在使用該台電腦操作設備一樣。 設計完之後,即可以執行所設計的程式,在執行階 段,另一個設備執行的視窗也會彈跳出來,以即時 視訊傳輸技術,讓學生可以看到設備執行結果。. 文中,作者使用 Microsoft NetMeeting 架構遠端遙 控系統,可是由於 NetMeeting 本身功能性的限 制,整個系統並不能有效的整合,不是一個理想的 應用系統。 在[9]中,提出一個完整的電子電路模擬環 境,可是這個系統無法有效的整合網際網路,只適 合用來做為學生單機實習之用,無法達到遠距教學 的目的。. 3. 系統架構 圖 3 是本系統的架構圖,本系統可區分為兩.
(3) 個部份,左邊是伺服器端,右邊是學生端,我們以. 的桌面上,而這個程式也會把學生輸入的鍵盤與滑. 功能區分為以下數小節說明之。. 鼠指令由學生端的電腦傳送至控制伺服器上。 藉由這個程式,我們就不再需要改寫電路設 計程式,可以直接使用,只要是能在 Windows 系 列下執行的開發環境,圴可與本系統輕易的結合, 對於系統的移植,不但具有彈性,而且學生不用再 另外學習一套介面,降低學習的複雜度。 目前控制伺服器與學生端的連線採 TCP 協 定,在本階段中,最重要的問題是如何有效率的傳 送控制伺服器的視窗畫面影像,由於目前一般開發. 圖 3 系統架構 3.1 Class Management Center 學生與管理伺服器的互動介面以 Web 瀏覽器 為主,所以課程管理系統並不是一個傳統的視窗程 式,而是由 web server 所啟動的 instance,在考慮 了相容性與執行效率後,我們以 CGI(Common Gateway Interface)的方式做為客戶端與管理系統 的連接工具。我們以 C 語言實作 CGI 程式於 Apache 的 web server 上。 當學生登入管理系統後,可以看到目前在管理 之下已開放的實習設備列表以及使用狀態,學生可 以預約一個未被預約的實習設備及時段。 除了學生與管理伺服器之間互動外,控制伺服 器也會與管理系統互相溝通,當學生開始一個實習 課程的操作之前,控制伺服器先與管理系統連線, 確認連線學生的操作權限與時限,然後再正式開始 與學生的操作連線。 3.2 網路控制程式設計 一般而言,實驗室內各種實習設備之單機板的 控制發展程式已經有數年的時間,均已發展成一套 相當完整的套裝軟體,我們並沒有必要再開發另外 一套控制程式,為了達到網路遠端遙控的目的,我 們 所 使 用 的 方 法 是 開 發 出 一 套 類 似 Symantec pcAnywhere 的軟體,這個程式透過 TCP 與管理系 統連線,確認了身份後,就可以正式與學生連線。 這個程式將啟動所指定的設計程式,把控制伺服器 上的設計程式的畫面透過網際網路傳送到使用者. 環境的畫面圴是單一色調,並不像一般自然影像具 有豐富的色彩,所以使用 Run length coding 是一有 效的壓縮方式,我們經過多次模擬,建立一般操作 流程樣本,然後以 Huffman coding 再進一步壓縮 Run-length coding 後的資料,以達到更大的壓縮 比。有關這一部份的實作結果,我們把壓縮比/網 路頻寬等資料於第 4 節實作成果中討論。 由控制伺服器至學生端主要是影像資料,而自 學生端至控制伺服器的主要資料則是學生的輸 入,例如滑鼠的軌跡、滑鼠按鍵動作與鍵盤輸入字 元等,這些資料所佔的頻寬並不高,而且時間間隔 較長,並不需要對這些資料再進行壓縮,因為 TCP 是資料流的傳輸協定,我們只需定義好應用層 (application layer)的通訊協定,控制伺服器端就可 以了解學生所要求完成的動作。單張影像壓縮演算 法可以下面表 1 的 pseudocode 簡示之。. 表 1 單張影像壓縮/解壓縮虛擬碼 PROCEDURE CompressPicture(reference picture, current picture) for(i=0;i<size;){ { first, check the difference to reference buffer, this is pixel base if pixel is the same, count the number encode those pixels as type-1 and length continue to next i round } { second, check the same color in continuous pixel in new picture count the pixels encode those pixels as type-2 and color code and length continue to next i round.
(4) } {. 流並不能佔據所有的頻寬,以免學生發送控制命令 last part, count the spatial different series encode those pixels as type-3, color code and length. } } End of PROCEDURE CompressPicture. 時,封包延遲抵達而發生意外。 除了上述軟體設計的議題之外,另一個在實 作時會遭遇的問題是當遠端的設備由於程式設計 問題而進入錯誤狀態,如果遠端在操作的過程中可 能發生這樣的意外,實習硬體應提供一個可由軟體. PROCEDURE DecompressPicture(previous picture, current picture, length of bits) for(i=0;i<length of bits;){ if this is type-1 tag: copy previous picture pixels to this new picture with encoded length advance the read pointer to next tag if this is type-2 tag: copy the repeated encoded color to the new picture with encoded length advance the read pointer to next tag if this is type-3 tag: copy the encoded color pixels with length to new picture advance the read pointer to next tag } End of PROCEDURE DecompressPicture 3.3 遠端執行. 輸入的強制重置訊號。如果遠端操作時發現異常現 象,可藉由這個功能重置硬體,待硬體重置完成, 即可讓遠端繼續操作。. 4. 實作成果 本節所要介紹的實作成果有控制伺服器畫 面、設計階段遙控畫面、執行階段的視窗畫面、監 控視訊畫面以及控制伺服器端所要控制實習的設 備。 4.1 PLC 設計程式操作示範 當某位同學在校外任何地方,想要進行實習 工廠的實驗時,可以使用 Internet,在網址列登入. 當學生在遠端完成程式設計後,再來就是命令. h ttp ://qr-proj ect.tnit.edu.tw / , 即 可 進 入. 控制程式驅動設備執行所設計的程式,當學生進入. TN IT 網 路 教 學 的 網 頁 , 如 圖 4 所 示 , 於. 這個階段後,除了看得到原來上一階段的開發程式. 登入帳號密碼後,即可進入學習之畫面,. 的畫面外,另外也必需觀察設備實際的運作情況,. 在 這 裡 學 生 可 以 選 擇 所 要 實 習 的 項 目,例. 所以必需開啟另一個視訊流觀看設備的即時視. 如 貨梯、機器手臂或輸送帶等。. 訊。藉由 Windows 作業系統的多媒體功能,我們 可以將這些最新的視訊壓縮標準,例如 H.263 或 MPEG-4,整合於我們的系統中。我們目前使用 Microsoft MPEG-4 即時視訊壓縮 codec,利用 USB CCD 擷取控制設備的視訊畫面,以 MPEG-4 codec 壓縮後,將 MPEG-4 bitstream 包裝成我們定義於 控制伺服器與學生端所使用的封包(packet)格式, 當學生端的視訊接收程式接收到一個完整圖像的 壓縮資料後,即將其解壓縮並呈視於桌面上。 視訊流的傳送方式採控制伺服器主動傳送方 式,每秒檢查一次網路連線品質,動態調整 frame rate。在執行階段,即時性是一重要的考量,如果. 圖 4 虛擬實習教室首頁. 設備在操作過程中發生任何意外情況,那麼就需要. 現在我們以貨梯的實驗為例說明遠端控制實. 及時反應至學生端或由控制伺服器接手控制權,以. 習的方法,學生由圖 4 的網頁中之實習項目選擇貨. 避免實習設備現場發生無法復原的錯誤。所以視訊. 梯實習,其實際設備如圖 5 所示。可連結到控制伺.
(5) 服器的電腦,以啟動我們所設計[遠端控制桌面]的. 設備,因此我們以強制 ON/OFF(FORCE ON/OFF). 功能, 可隨意操作遠端控制伺服器的電腦,當我們. 的方式來使 PLC 的輸入或輸出動作, 如圖 7 所示。. 開啟 PLC 之控制軟體時,就可以以電機控制的動 作邏輯觀念來設計貨梯的動作順序階梯圖,如圖 6 所示就是以遠端遙控畫面設計 PLC 動作控制回路 的情形。. 圖 7 PLC 執行階段與視訊畫面 4.2 影像/視訊傳輸位元率統計圖 圖 8 所示為經過本論文所提出的影像壓縮演 算 法 後 的 位 元 率 (bitrate) 統 計 圖 , 原 始 影 像 是 1024x768,16bits 的桌面影像。這個統計圖表的取 得是由某個學生在網路上遙控操作 PLC 撰寫程 式,某一段時間的位元率,其中 X 軸是影像的張 數,Y 軸是位元數(以 BYTE 為單位)。由這張圖表. 圖 5 控制伺服器端控制教學設備. 可以看出,大部份的操作時間,圴只佔用小量的網 路頻寬。. 25 0k B. bitrate(byte/sec). 20 0k B. 15 0k B. 10 0k B. 5 0k B. kB 0. 10. 20. 30. 40. 50. 60. 70. time(second). 圖 6 以遠端遙控畫面設計 PLC 程式 圖 8 影像壓縮後之位元率 當 PLC 之控制軟體將貨梯的控制回路設計完 成後,我們就可將其化為程式寫入 PLC(write to PLC),然後開始在遠端控制貨梯的動作。因為我 們在遠端無法操控到實習教室內貨梯的輸出/輸入. 80.
(6) 5. 結論與未來工作. [6] Daniel D. Suthers, “Architecture for Computer. 本論文提出一個富有彈性的遠端操作系統,. Supported Collaborative Learning”, Proceedings. 並且能應用於各種教學平台。除了傳統 Web 化的. of IEEE Inter. Conference on. 靜態教材外,我們提供另一種線上的設備操作與監. Learning Technologies, 2001, pp.25-28. 視架構。透過親和的使用者介面,學生可以直接使. Advanced. [7] Kreijns, K., Kirschner, P.A., “The Social. 用原來單機板的應用程式而不須學習新的操作介. Addordances. 面。除了應用於教學環境,我們將進一步應用這些. Collaborative. 技術於工業設備的監視、維設與管理,讓 IT 產業. Proceedings. 與工業控制能結合應用。. Conference, 2001, Vol.1, pp.T1F-12 – T1F-17. Chin-Hwa. Kuo,. Tay-Shen. Wang,. and. Ping-Huang Wu, “Design of Networked Visual Monitoring Systems”, The Tamkang Journal of Science and Engineering, Dec. 1999, Vol. 2, pp. 149-161. [2] Mo Fu, Christopher Yeo, Yuetong Lin and Fei-Yue Wang, “WAVES:Towards Real Times Laboratory Experiment in Cyberspace”, System, Man, and Cybernetics, 2001 IEEE International Conference on. [3]. V.. Ramakrishnan,. Chen,C.C.. Ko,Ben. “Development. of. Y.Zhuang,. S.Y.Hu,J.P.. M.. K.C.. a. Chen,. Web-Based. Tan,. Control. Experiment for a Coupled Tank Apparatus”, Proceedings of the American Conferences, Chicago, Illinis. June 2000. [4] Malgorzata S. Zywno and Diane C. Kennedy, “Student. Attitudes. toward. the. Use. of. Hypermedia Instruction and Web Support in Control Education – a Comparative Study”, Proceedings. of. the. American. Control. Conference, 2002, pp.1652-1657 [5] Dawn Tilbury, Jonathan Luntz, “Controls Education on the WWW: Tutorials for MTLAB and SIMULINK”, Proceedings of the American Conferences, Philadelphia, Pennsylvania. June 1998.. Computer-supported. Learning of. Frontiers. Environments”, in. Education. [8] Nitin Swamy, Ognjen Kuljaca, Frank L. Lewis,. 參考資料 [1]. of. “Internet-Based Educational Control Systems Lab Using NetMeeting”, IEEE Trans. On Education, vol. 45, No.2, May 2002, pp.145-151 [9] Hess Hodge, H. Scott Hinton and Michael Lightner, Proceeding Education. “Virtual of. Circuit. ASEE/IEEE. Conference,. 2000.. Laboratory”, Frontiers. in. pp.T1D-1. –. T1D-6. [10] Christof Rohrig and Andreas Jochheim, “The Virtual Lab for Controlling Real Experiments via Internet”, Proceedings of the 1999 IEEE Inter. Symposium on Computer Aided Control System Design, pp.279-284 [11] Andreas Jochheim and Christof Rohrig, “The Virtual Lab for Teleoperated Control of Real Experiments”, Proceeding of the 38th Conference on Decision & Control, 1999, pp.819-824.
(7)
數據
相關文件
Muraoka, “A Real-time Beat Tracking System for Audio Signals,” in Proceedings of International Computer Music Conference, pp. Goto, “A Predominant-F0 Estimation Method for
[16] Goto, M., Muraoka, Y., “A real-time beat tracking system for audio signals,” In Proceedings of the International Computer Music Conference, Computer Music.. and Muraoka, Y.,
When? Where? What? A Real-Time System for Detecting and Tracking People.’’ Proc. International Conference on Face and Gesture Recognotion, April, pp. Pentland, “Pfinder:
Dragan , “Provably good global buffering using an available buffer block plan”, IEEE International Conference on Computer-Aided Design, pp.. Cong, “Interconnect performance
(1984), “Attractive quality and must-be quality,” Hinshitsu: The Journal of the Japanese Society for Quality Control,
Gu, “Corner Block List: An Effective and Efficient Topological Representation of Nonslicing Floorplan,” IEEE/ACM International Conference on Computer-Aided Design, pp.8–12,
Imamura, “ Fuzzy Decision Analysis on the Development of Centralized Regional Energy Control System,” IFAC Symposium on Fuzzy Information, Knowledge Representation
Sun, “The Application of Role-Based Access Control in Workflow Management Systems”, Proceedings of IEEE International Conference on System, Man and Cybemetics, vol.6, pp.