進階搜尋


 
系統識別號 U0026-0812200915351373
論文名稱(中文) 利用PC/104+與Linux-RTAI之即時多工控制系統的實現
論文名稱(英文) Implementation of Real-Time Multitasking Control Systems Using PC/104+ and Linux-RTAI
校院名稱 成功大學
系所名稱(中) 工程科學系碩博士班
系所名稱(英) Department of Engineering Science
學年度 97
學期 2
出版年 98
研究生(中文) 陳震豪
研究生(英文) Chen-hao Chen
學號 n9696401
學位類別 碩士
語文別 中文
論文頁數 138頁
口試委員 口試委員-蕭霖癸
口試委員-楊松霈
口試委員-陳信助
口試委員-林鐘烲
指導教授-何明字
中文關鍵字 即時多工 
英文關鍵字 real-time multitasking 
學科別分類
中文摘要 現今的控制系統的發展過程中,針對較簡單的系統,其控制硬體核心,大多採用數位訊號處理器實現。而數位訊號處理器雖具運算速度快之優點,但缺乏作業系統的支援,假使需要處理複雜性較高的控制系統時,將無法根據任務的重要性配給優先權,以實現即時(real-time)多工(multitasking)的性能。
本論文旨在利用PC/104+平台與Linux-RTAI作業系統的環境,發展一個即時多工控制系統。控制任務分別為旋轉型倒單擺系統以及車與桿倒單擺系統之單擺平衡控制,此平衡控制法採用LQR (linear quadratic regulator)。研究中以嵌入式工業電腦PC/104+平台,做為單擺系統之控制核心,並透過PCI匯流排實現即時多工控制系統。而PCI裝置之核心晶片PCI控制器,乃利用複雜型可程式邏輯裝置(complex programmable logic device, CPLD)來實現,並將此PCI控制器結合QEP (quadrature encoder pulse)模組、數位轉類比電路與驅動電路,以實現閉迴路控制系統,並以實驗探討此系統之性能。
英文摘要 In modern control systems, the digital signal processors (DSP) are commonly used to realize the controllers for simple systems. Though computational capability of DSP is powerful, due to lack of the operation system, when DSP is running on the complex control system, it can’t dispatch the priority to the most important task and implement the real-time multitasking.
This thesis is to develop a real-time multitasking control system based on PC/104+ and Linux-RTAI. The control tasks are to realize balance control for the rotary inverted pendulum system and cart-pole system based on the LQR control laws. The system is realized through the PC/104+ platform which carries out the real-time multitasking control through the PCI bus. The PCI controller is implemented through the CPLD. For implementation of the feedback control system, the QEP modules, D/A converter and motor driver are used. Experimental studies are presented to show the effectiveness of the developed system.
論文目次 摘要 I
Abstract II
誌謝 III
目錄 IV
圖表目錄 VIII
第一章 緒 論 1-1
1-1 研究背景及動機 1-1
1-2 研究目的 1-1
1-3 研究方法及步驟 1-3
1-4 相關研究文獻回顧 1-5
1-5 本實驗室之相關成果 1-6
1-6 本文結構 1-6
第二章 即時多工作業系統介紹 2-1
2-1 前言 2-1
2-2 即時系統概念介紹 2-1
2-3 即時作業系統簡介 2-2
2-3-1 軟即時與硬即時系統介紹 2-3
2-3-2 任務(Task)與執行緒(Thread) 2-5
2-3-3 本文切換(Context Switch) 2-7
2-3-4 強取式與非強取式核心 2-7
2-4 即時系統的排程 2-9
2-4-1 優先權先佔式排程(Preemptive Priority Scheduling) 2-10
2-4-2 時間循環排程(Round-robin Scheduling) 2-11
2-5 RTAI與RT-Linux 2-12
2-5-1 RT-Linux 2-12
2-5-2 RTAI 2-14
2-5-3 結論 2-16
第三章 RTAI硬即時系統介紹 3-1
3-1 前言 3-1
3-2 RTAI系統架構簡介 3-1
3-3 RTAI硬即時任務與軟即時任務之介紹 3-2
3-3-1 RTAI於Kernel Space硬即時任務 3-2
3-3-2 RTAI於User Space軟即時任務 3-4
3-4 RTAI模組與功能函式 3-7
3-4-1 即時任務相關函式 3-7
3-4-2 RTAI時間相關函式 3-9
第四章 PCI匯流排系統架構介紹 4-1
4-1 前言 4-1
4-2 PCI匯流排簡介 4-1
4-3 PCI訊號介紹 4-3
4-3-1 系統訊號線 4-4
4-3-2 位址與資料訊號線 4-5
4-3-3 介面控制訊號線 4-7
4-3-4 錯誤回報訊號線 4-8
4-3-5 中斷訊號線 4-8
4-3-6 仲裁訊號線(Bus Masters Only) 4-8
4-4 PCI讀寫傳輸流程 4-8
4-4-1 PCI組態交易流程(PCI Configuration Transactions) 4-9
4-4-2 資料交易流程(Read and Write Transactions) 4-12
4-5 PCI組態空間 (PCI Configuration Space) 4-18
4-5-1 PCI識別資料介紹 4-19
4-5-2 PCI功能資料 4-21
4-5-3 PCI基底位址暫存器(Base Address Registers) 4-23
第五章 PCI軟硬體設計與實作 5-1
5-1 前言 5-1
5-2 PCI控制器設計流程簡介 5-2
5-2-1 相關晶片介紹 5-3
5-3 PCI控制器硬體之設計 5-4
5-3-1 識別資料之設計 5-4
5-3-2 PCI控制器功能接腳之設計 5-6
5-4 PCI控制器交易之設計與流程 5-7
5-4-1 PCI控制器組態交易流程 5-7
5-4-2 PCI控制器資料交易流程 5-9
5-4-3 PCI控制器交易結束交握 5-12
5-5 Linux PCI裝置驅動程式 5-13
5-5-1 Linux PCI裝置驅動程式設計架構 5-13
5-5-2 Linux PCI組態初始化驅動程式之設計 5-14
5-5-2-1 PCI裝置識別 5-15
5-5-2-2 PCI記憶體配置與存取之方法 5-18
5-5-3 Linux PCI字元裝置驅動程式設計 5-23
5-5-3-1 裝置模組節點化 5-23
5-5-3-2 檔案作業(File Operations)之設計 5-25
5-5-3-3 使用者空間與核心空間ioctl之工作流程 5-26
5-6 PCI裝置周邊硬體介面之設計 5-29
5-6-1 本地緩衝介面之設計 5-29
第六章 實驗結果與性能探討 6-1
6-1 前言 6-1
6-2 本文實驗設備介紹 6-2
6-2-1 PC/104+嵌入式平台介紹 6-4
6-2-2 周邊硬體介紹 6-6
6-3 系統延遲測試實驗 6-7
6-4 即時單工任務架構之實驗 6-9
6-4-1 Linux軟即時之計時器處理常式實驗 6-9
6-4-2 DSP處理器與多單擺系統之實驗 6-11
6-4-3 Linux-based PC/104+與單擺系統之實驗 6-14
6-5 即時多工任務架構之實驗 6-19
第七章 結論與未來展望 7-1
7-1 結論 7-1
7-2 未來展望 7-1
參考文獻
自述
參考文獻 [1] PC/104 Embedded Consortium官方網址,http://www.pc104.org/
[2] PCM-3353 User Manual 2nd ed., Advantech, 2006.
[3] AMD GeodeTM CS5536 Companion Device Data Book, Advanced Micro Devices, 2006.
[4] TMS320F281X Digital Signal Processors Data Manual, Texas Instruments Inc., 2001.
[5] NuDAQ/NuIPC 9112 Series Multi-function DAS Cards, Adlink, 2005.
[6] S5935 PCI Product Data Book, Applied Micro Circuits Corporation, 2006.
[7] 翁義清,「全向移動機器人之路徑追蹤控制」,國立成功大學工程科學系碩士論文,民國九十六年七月。
[8] 詹富強,「以數位信號處理器為基礎單板獨立旋轉型倒單擺甩上與平衡控制系統之實現」,國立成功大學工程科學系碩士論文,民國九十三年七月。
[9] 蕭天賜,「以數位訊號處理器為基礎之多功能控制平台的研製」,國立成功大學工程科學系碩士論文,民國九十四年七月。
[10] A. Inoue, M. Deng, and T. Tanabe, “Practical Swing-up Control System Design of Cart-type Double Inverted Pendulum,” Proceedings of the 2006 Chinese Control Conference, pp. 2141-2146, 2006.
[11] C. H. Choi, Y. C. Seo, and S. Kim, “Brushless DC Motor Controller for Tele-operation Using Embedded Real-time Linux,” Proceedings of the 30th IEEE Annual Conference, Vol. 3, pp. 2952-2956, 2004.
[12] Z. Yu, Q. Huang, J. Li, Q. Shi, X. Chen, and K. Li, “Distributed Control System for A Humanoid Robot,” Proceedings of the IEEE International Conference on Mechatronics and Automation, pp. 1166-1171, 2007.
[13] D. Beal, E. Bianchi, L. Dozio, S. Hughes, P. Mantegazza, and S. Papacharalambous, “RTAI: Real Time Applications Interface,” Linux Journal, 2000.
[14] L. Dozio and P. Mantegazza, “Real Time Distributed Control Systems Using RTAI,” The 6th IEEE Int. Symposium on Object-oriented Real-time Distributed Computing (ISORC’03), pp. 11-18, 2003.
[15] R. Bucher, L. Dozio, and P. Mantegazza, Rapid Control Prototyping with Scilab/Scicos and Linux RTAI, http://www.scilab.org, 2005.
[16] G. Quaranta and P. Mantegazza, Using MATLAB-SIMULINK RTW to Build Real Time Control Applications In User Space with RTAI-LXRT, https://www.rtai.org, 1999.
[17] J. Jugo, Real-time Control of A DC Motor Using Scilab and RTAI, http://www.scilab.org, 2004.
[18] M. Chiandone, S. Cleva, R. Menis, and G. Sulligoi, “Industrial Motion Control Applications Using Linux RTAI,” IEEE SPEEDAM 2008, The International Symposium on Power Electronics, Electrical Drivers, Automation and Motion, Taormina, Italy, pp. 528-533, 2008.
[19] R. Sankaran and P. Avirajamanjula “Closed-loop Real-time Speed Control of Single Phase Induction Motor Using A PC,” Journal of the Institution of Engineers (India): Electrical Engineering Division, Vol. 86, No. 12, pp. 177-179, 2005.
[20] W. Mansor, M. Z. Awang, and M. N. Taib, “Software Methodology for Remote Monitoring and Control System,” Proceedings of TENCON 2000, Vol. 3, pp. 509-511, 2000.
[21] T. kikuchi, T. Kenio, and S. Fukuda, “Remote Laboratory for A Brushless DC Motor,” IEEE Transactions on Education, Vol. 44, No. 2, pp. 207, 2001.
[22] 楊志偉,「以視覺伺服為基礎之倒單擺系統平衡控制」,國立成功大學工程科學系碩士論文,民國九十四年七月。
[23] 林鈺翔,「雙連桿倒單擺系統甩上與平衡控制」,國立成功大學工程科學系碩士論文,民國九十一年七月。
[24] 洪介仁,「車與桿倒單擺系統之平衡控制」,國立成功大學工程科學系碩士論文,民國九十二年七月。
[25] 李佳益,「Linux多執行緒即時控制系統之實現」,國立成功大學工程科學系碩士論文,民國九十七年七月。
[26] 胡竹生,尹燕陶,「即時多工核心程式設計」,全華科技圖書,民國八十四年。
[27] C. B. Giorgio, Hard Real-time Computing Systems, Springer, 2005.
[28] P. Raghavan, A. Lad, and S. Neelakandan, Embedded Linux System Design and Development, Auerbach Publications, 2006.
[29] S. Bennett, Real-time Computer Control An Introduction, Prentice Hall, 1994.
[30] A. Silberschatz, P. B. Galvin, and G. Gagne, Operating System Principles 7th ed., John Wiley, 2004.
[31] 黃悅民、陳敬、侯廷偉、陳中和、黃慶祥、林志敏等編著,「嵌入式系統設計」,滄海書局,民國九十五年。
[32] FSMLabs官方網址,http://www.fsmlabs.com/about/profile
[33] RTAI官方網址,https://www.rtai.org/
[34] RTAI API Documentation網址,http://dl.gna.org/rtai/documentation/
[35] T. Shanley and D. Anderson, PCI System Architecture, Addison-Wesley, 1995.
[36] 羅崑崙、朱習悅譯,「PCI系統架構」,碁峰資訊有限公司,民國八十九年。
[37] 李福星、陳柏嘉等編著,「PCI介面原理與實習」,全華科技圖書,民國九十二年。
[38] PC/104-Plus Specification Version 2.0, PC/104 Embedded Consortium, 2003.
[39] PCI-SIG官方網址,http://www.pcisig.com/home
[40] D. Anderson, R. Budruk, and T. Shanley, PCI EXPRESS System Architecture, Addison-Wesley, 2004.
[41] 楊志偉譯,「PCI EXPRESS系統架構」,碁峰資訊有限公司,民國九十六年。
[42] J. Corbet and A. Rubini, Linux Device Driver 2nd ed., O’Reilly, Sebastopol, 2004.
[43] RT-NET官方網址,http://www.rts.uni-hannover.de/rtnet/
[44] 陳建宏,「虛擬實境動態模擬器之嵌入式即時控制系統」,國立交通大學電機與控制工程學系碩士論文,民國九十二年七月。
[45] 劉進雙,「具執行時間保證的即時Linux作業系統」,國立台灣大學資訊工程學系碩士論文,民國九十二年一月。
論文全文使用權限
  • 同意授權校內瀏覽/列印電子全文服務,於2014-08-25起公開。
  • 同意授權校外瀏覽/列印電子全文服務,於2016-08-25起公開。


  • 如您有疑問,請聯絡圖書館
    聯絡電話:(06)2757575#65773
    聯絡E-mail:etds@email.ncku.edu.tw