基于ARM的嵌入式數(shù)控車床控制系統(tǒng)的開發(fā)
《基于ARM的嵌入式數(shù)控車床控制系統(tǒng)的開發(fā)》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于ARM的嵌入式數(shù)控車床控制系統(tǒng)的開發(fā)(81頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、最新 精品 Word 歡迎下載 可修改 中圖分類號:TP273 TP391 論文編號:1028705 09-0167 學(xué)科分類號:080202 碩士學(xué)位論文 基于ARM的嵌入式車床數(shù)控系統(tǒng) 研究與開發(fā) 研究生姓名 楊軍 學(xué)科、專業(yè) 機(jī)械電子工程 研究方向 機(jī)電控制工程 指導(dǎo)教師 游有鵬 教授 南京航空航天大學(xué) 研究生院 機(jī)電學(xué)院 二〇〇八年十二月 Nanjing University of
2、 Aeronautics and Astronautics The Graduate School College of Mechanical and Electrical Engineering Research of Embeded CNC for Lathes Based on ARM A Thesis in Mechanical Engineering By YangJun Advised by Prof. You Youpeng Submitted in Partial Fulfillment of the
3、 Requirements for the Degree of Master of Engineering Dec. 2022 承諾書 本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果。盡我所知,除文中已經(jīng)注明引用的內(nèi)容外,本學(xué)位論文的研究成果不包含任何他人享有著作權(quán)的內(nèi)容。對本論文所涉及的研究工作做出貢獻(xiàn)的其他個(gè)人和集體,均已在文中以明確方式標(biāo)明。 本人授權(quán)南京航空航天大學(xué)可以有權(quán)保留送交論文的復(fù)印件,允許論文被查閱和借閱,可以將學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或其他復(fù)制手段
4、保存論文。 (保密的學(xué)位論文在解密后適用本承諾書) 作者簽名: 日 期: 南京航空航天大學(xué)碩士學(xué)位論文 摘 要 傳統(tǒng)的中、低檔數(shù)控車床在結(jié)構(gòu)上往往采用8/16位單片機(jī)加精插補(bǔ)器,以獲得較高的性價(jià)比。隨著嵌入式系統(tǒng)的迅速發(fā)展,高性能的32位CPU已經(jīng)普及,以ARM為代表的32位微處理器速度快、功能強(qiáng)、價(jià)格低,完全可以開發(fā)出具有更高性價(jià)比的嵌入式數(shù)控系統(tǒng)。本文旨在研究和設(shè)計(jì)一種基于ARM7的嵌入式數(shù)控車床控制系統(tǒng)。 本文首先通過對嵌入式技術(shù)和數(shù)控技術(shù)的全面分析,選擇確定了車床嵌入式數(shù)控系統(tǒng)的
5、軟硬件平臺(tái)。硬件平臺(tái)以ARM7系列微處理器LPC2220為核心,基于可編程邏輯器件CPLD實(shí)現(xiàn)精插補(bǔ)器,并配以必要的外圍電路。軟件平臺(tái)以源代碼公開的μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)為基礎(chǔ),開發(fā)系統(tǒng)所需的驅(qū)動(dòng)程序和應(yīng)用軟件。 規(guī)劃設(shè)計(jì)了基于μC/OS-Ⅱ的車床數(shù)控系統(tǒng)控制任務(wù)劃分以及各任務(wù)模塊間的通訊協(xié)調(diào)機(jī)制??刂迫蝿?wù)劃分為7個(gè):主控、液晶顯示、文件系統(tǒng)服務(wù)、數(shù)控程序解釋、速度處理、插補(bǔ)和邏輯控制;利用μC/OS-Ⅱ提供的郵箱、信號量等服務(wù)機(jī)制,有效實(shí)現(xiàn)了任務(wù)與任務(wù)、任務(wù)與中斷之間的通信與同步。 此外,本文還研究了系統(tǒng)程序解釋的實(shí)現(xiàn)方法。首先,基于有限狀態(tài)機(jī)(DFA)的分析策略構(gòu)造了數(shù)控程序解釋的
6、詞法分析器,把程序的字符流轉(zhuǎn)換為內(nèi)部標(biāo)記流,然后對程序進(jìn)行語法和語義分析,最后翻譯成速度處理和邏輯控制所需要的數(shù)據(jù)結(jié)構(gòu)。重點(diǎn)分析了子程序調(diào)用和返回的機(jī)制及其實(shí)現(xiàn)方法。 最后,介紹了系統(tǒng)的軟硬件開發(fā)工具和調(diào)試方法。軟硬件測試表明,該嵌入式車床數(shù)控系統(tǒng)可滿足預(yù)期目標(biāo)。 關(guān)鍵詞:嵌入式車床數(shù)控系統(tǒng),ARM,CPLD,μC/OS-Ⅱ,程序解釋 65 Abstract To gain high cost perfermence, traditional CNC for lathes usually adopts 8-bit or 16-bit mcu and fine inter
7、polator. With the development of the embedded system, high perfermence 32-bit CPU has been popularization. ARM as a typical product of 32 bits processors, being of high speed in computation and function and low costs, can be completely used to develop embedded CNC with higher cost perfermence. In th
8、is papar an Embended CNC for lathes based on ARM is designed and developed. Based on general analysis of embedded systems and NC technology, the hardware and software platform of embedded CNC for lathes are chosed. A 32-bit CPU LPC2220 is used as the kernel of hardware, together with a fine interpo
9、latorimplemented with a CPLD, and some other necessary peripheral modules. The software of the embedded CNC is based on μC/OS–II, a real-time embedded operating system with open source code. Some equipment driver and application program are included in the software. For the development of the embed
10、ded CNC for lathes based on μC/OS–II, control tasks in the system are firstly planed and the communication coordination mechanism among each task is then designed. Seven tasks is involved in the CNC: main control, LCD display, ice, NC program interpretation, ACC/DEC control, interpolation and PLC. U
11、pon the service of mailbox and semaphore provided by μC/OS–II, the communication and synchronization can be efficiently realized among tasks or between task and ISR. In addition, the implementation method of the interpretation of NC program for lathes is investigated. First, a lexical analyzer of N
12、C program is constructed by finite state automaton (DFA) which can transform character streams to inner token streams. Then, syntax and semantic analysis are used for the NC program. Finally, the error-free machining information is stored in a specifical datas tructure which can be received and used
13、 by both the task of ACC/DEC control and PLC. The mechanism and implementation of call and return for subroutines are analyzed and given. Finally, the instruments of debugging and development for hardware and software are introduced. By testing, the embedded CNC for lathes can meet the expected des
14、ign demands. Key Words: embedded CNC for lathes, ARM, CPLD, μC/OS–II, program interpretation 目 錄 第一章 緒論 1 1.1 數(shù)控技術(shù)概況 1 數(shù)控技術(shù)發(fā)展背景 1 國外數(shù)控發(fā)展現(xiàn)狀 2 國內(nèi)數(shù)控發(fā)展現(xiàn)狀 3 數(shù)控技術(shù)的發(fā)展趨勢 3 1.2 嵌入式系統(tǒng)概況 4 1.3 本文研究意義及主要工作 5 研究意義 5 論文主要內(nèi)容 6 第二章 嵌入式數(shù)控車床系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì) 7 2.1 嵌入式數(shù)控系統(tǒng)的總體設(shè)計(jì) 7 2.2 嵌入式數(shù)控系統(tǒng)的硬件組成 7 子系統(tǒng) 8
15、 子系統(tǒng) 8 液晶模塊 8 鍵盤模塊 8 2.3 嵌入式數(shù)控系統(tǒng)軟件的結(jié)構(gòu) 9 人機(jī)界面管理 9 邏輯處理 9 運(yùn)動(dòng)控制 10 數(shù)據(jù)處理控制 10 輔助控制 10 伺服處理 10 2.4 本章小結(jié) 11 第三章 車床數(shù)控系統(tǒng)硬件平臺(tái)設(shè)計(jì) 12 3.1 LPC2220概述 12 簡介 12 微控制器概述及特性 12 3.2 電源、時(shí)鐘及復(fù)位電路設(shè)計(jì) 14 電源電路設(shè)計(jì) 14 時(shí)鐘電路設(shè)計(jì) 15 復(fù)位電路設(shè)計(jì) 16 3.3 LPC2220的外部存儲(chǔ)器設(shè)計(jì) 16 3.4 EPM1270的電路設(shè)計(jì) 17 3.5 人機(jī)界面電路設(shè)計(jì) 18 鍵盤輸入電路設(shè)計(jì) 1
16、8 液晶顯示模塊接口電路設(shè)計(jì) 18 3.6 RS-232串行通信電路 20 3.7 本章小結(jié) 21 第四章 數(shù)控系統(tǒng)軟件平臺(tái)設(shè)計(jì) 22 4.1嵌入式實(shí)時(shí)操作系統(tǒng)簡介 22 Ⅱ簡介 23 、μC/OS-Ⅱ的特點(diǎn) 23 Ⅱ的工作原理 24 Ⅱ的任務(wù)間通訊和同步 25 信號量 25 消息郵箱 26 Ⅱ的中斷機(jī)制 27 4.3 μC/OS-Ⅱ在LPC2220上的移植 29 編寫OS_CPU.H 29 定義不依賴編譯器的數(shù)據(jù)類型 30 和OS_EXIT_CREITICAL()的編寫 30 _STK_GROWTH的編寫 31 函數(shù)的編寫 31 編寫OS_CPU_C.C
17、 31 編寫OS_CUP_A.ASM 33 函數(shù)的編寫 33 函數(shù)的編寫 34 函數(shù)的編寫 34 函數(shù)的編寫 34 4.4 系統(tǒng)的軟件任務(wù)及中斷劃分 34 車床控制系統(tǒng)的任務(wù)劃分 35 車床控制系統(tǒng)任務(wù)優(yōu)先級的確定 36 車床數(shù)控系統(tǒng)中斷的確定 37 車床控制系統(tǒng)中各個(gè)任務(wù)及ISR之間的工作流程 37 4.5 系統(tǒng)驅(qū)動(dòng)程序設(shè)計(jì) 39 液晶驅(qū)動(dòng)設(shè)計(jì) 39 速度匹配 39 地址空間訪問 39 的初始化 40 字符、漢字及圖形的顯示 40 提高界面切換和屏幕刷新速度的措施 42 鍵盤驅(qū)動(dòng)程序的設(shè)計(jì) 42 4.6 本章小結(jié) 45 第五章 車床數(shù)控程序解釋模塊的實(shí)
18、現(xiàn) 46 5.1 程序解釋模塊的總體分析 46 程序解釋模塊的方法 46 程序解釋模塊結(jié)構(gòu)劃分 47 5.2 數(shù)控程序的檢查 48 詞法分析 48 詞法分析器 48 分析方法 48 5.2.2 語法分析 49 語義分析 51 5.3 數(shù)控程序的翻譯 52 一般G代碼的翻譯 52 子程序的研究與實(shí)現(xiàn) 53 代碼的處理 55 重新譯碼的處理 55 5.4 程序解釋模塊的部分測試 56 程序錯(cuò)誤的測試 56 一般G代碼的測試 56 子程序調(diào)用的測試 57 5.5 本章小結(jié) 58 第六章 系統(tǒng)的軟件調(diào)試 59 6.1 系統(tǒng)開發(fā)與調(diào)試的工具 59 集成開發(fā)環(huán)
19、境介紹 59 集成開發(fā)環(huán)境的組成 60 簡介 60 調(diào)試器簡介 61 仿真器的使用 62 6.2 系統(tǒng)的軟件調(diào)試 63 系統(tǒng)的模塊調(diào)試 63 系統(tǒng)聯(lián)調(diào) 64 6.3 本章小結(jié) 65 第七章 總結(jié)展望 66 7.1 論文總結(jié) 66 7.2 課題展望 66 參考文獻(xiàn) 67 致 謝 70 碩士期間發(fā)表的學(xué)術(shù)論文 71 圖表目錄 圖2.1 數(shù)控系統(tǒng)總體結(jié)構(gòu)模型 7 圖2.2 嵌入式數(shù)控硬件結(jié)構(gòu)圖 8 圖2.3 嵌入式數(shù)控軟件結(jié)構(gòu)圖 9 圖3.1 LPC2220功能框圖 13 圖3.2 5V轉(zhuǎn)3.3V電路 14 圖3.3 3.3V轉(zhuǎn)1.8V電
20、路 15 圖3.4 30M有源晶振時(shí)鐘電路 15 圖3.5 11.0592M的無源晶振時(shí)鐘電路 15 圖3.6 SP708-S的復(fù)位電路 16 圖3.7外部RAM擴(kuò)展電路 17 圖3.9 ZLG7290鍵盤電路 18 圖3.10液晶模塊接口電路 19 圖3.11 串口通信電路 21 圖4.1 任務(wù)結(jié)構(gòu) 24 圖4.2 任務(wù)間的狀態(tài)轉(zhuǎn)換 25 圖4.3 任務(wù)、中斷服務(wù)子程序和信號量之間的關(guān)系 26 圖4.4任務(wù)、中斷服務(wù)子程序和郵箱之間的關(guān)系 27 圖4.5 中斷服務(wù)子程序流程圖 28 圖4.6 基于μC/OS-Ⅱ的硬件和軟件體系結(jié)構(gòu)圖 29 圖4.7 任務(wù)堆棧結(jié)構(gòu)
21、32 圖4.8 車床系統(tǒng)中各個(gè)任務(wù)和中斷之間的工作流程 38 圖4.9 CA320240液晶模塊初始化流程 40 圖4.10 按鍵處理流程圖 44 圖5.1 數(shù)控加工過程流程 46 圖5.2 譯碼模塊結(jié)構(gòu)圖 47 圖5.3 確定有窮狀態(tài)自動(dòng)機(jī)(DFA) 49 圖5.4 子程序調(diào)用關(guān)系圖 54 圖5.5 語法檢查結(jié)果 56 圖5.6 一般G代碼測試結(jié)果 57 圖5.7 子程序調(diào)用測試結(jié)果 58 圖6.1 運(yùn)動(dòng)控制器實(shí)物圖 59 表6.1 ADS1.2的組成 60 圖6.2 CodeWarrior IDE集成開發(fā)環(huán)境 61 圖6.3 AXD調(diào)試器 61 圖6.4 測試
22、ARM核 62 圖6.5 測試FLASH 63 圖6.6 系統(tǒng)的打印調(diào)試原理 64 圖6.7 系統(tǒng)自動(dòng)運(yùn)行時(shí)的畫面 65 第一章 緒論 隨著全球經(jīng)濟(jì)競爭日益加劇,制造行業(yè)面臨著產(chǎn)業(yè)升級換代:被加工零件復(fù)雜度的增加,加工單元柔性化、工廠自動(dòng)化的實(shí)現(xiàn)等等。數(shù)控機(jī)床作為一種自動(dòng)化的加工設(shè)備而被廣泛采用。同時(shí),隨著現(xiàn)代機(jī)械制造業(yè)向更高層次的發(fā)展,數(shù)控機(jī)床也成為柔性制造單元(FMC)、柔性制造系統(tǒng)(FMS)以及計(jì)算機(jī)集成制造系統(tǒng)(CIMS)的基礎(chǔ)裝備。數(shù)控技術(shù)是數(shù)控機(jī)床的關(guān)鍵技術(shù),它的迅速發(fā)展和廣泛應(yīng)用,使得普通機(jī)械逐漸被高效率、高精度的數(shù)控機(jī)械所代替,從而形成了巨大的生產(chǎn)
23、力。一個(gè)國家的工業(yè)化水平,很大程度上體現(xiàn)在制造業(yè)的水平,而數(shù)控機(jī)床技術(shù)正是制造技術(shù)中關(guān)鍵性的技術(shù)之一。近年來我國機(jī)床需求旺盛,市場巨大。自2021年來,我國已經(jīng)連續(xù)六年成為世界上最大的機(jī)床消費(fèi)國和進(jìn)口國,其中數(shù)控機(jī)床是機(jī)床消費(fèi)的主流。隨著制造技術(shù),計(jì)算機(jī)技術(shù),微電子技術(shù)等的發(fā)展,數(shù)控機(jī)床必然向更高精度、更高速度、更高可靠性及更完善的功能方向發(fā)展,以提高國家的整體制造業(yè)水平。 1.1 數(shù)控技術(shù)概況 數(shù)控技術(shù)發(fā)展背景 數(shù)控研究的歷史始于20世紀(jì)40年代前后,美國帕森斯公司和麻省理工學(xué)院伺服機(jī)構(gòu)研究所合作,進(jìn)行數(shù)控機(jī)床的研究工作,在1952年研制成功了世界上第一臺(tái)三坐標(biāo)數(shù)控銑床[1]。從此,
24、傳統(tǒng)機(jī)床產(chǎn)生了質(zhì)的變化。近半個(gè)世紀(jì)以來,數(shù)控系統(tǒng)經(jīng)歷了四個(gè)階段、八代的發(fā)展[2-6]。 (1)數(shù)控(NC)階段 早期計(jì)算機(jī)運(yùn)算速度低,這對當(dāng)時(shí)的科學(xué)計(jì)算和數(shù)據(jù)處理影響還不大,但不能適應(yīng)機(jī)床實(shí)時(shí)控制的要求。人們不得不采用數(shù)字邏輯電路“搭”成一臺(tái)機(jī)床專用計(jì)算機(jī)作為數(shù)控系統(tǒng),被稱為硬件連接數(shù)控,簡稱為數(shù)控(NC)。隨著元器件的發(fā)展,這個(gè)階段歷經(jīng)了三代,即 1952年第一代一電子管;1959年第二代一晶體管;1965年第三代一小規(guī)模集成電路。 (2)計(jì)算機(jī)數(shù)控(CNC)階段 到1970年,通用小型計(jì)算機(jī)業(yè)已出現(xiàn)并成批生產(chǎn),其運(yùn)算速度比五、六十年代有了大幅度的提高,這比專門“搭”成的專用計(jì)算機(jī)
25、成本低、可靠性高。于是將它移植過來作為數(shù)控系統(tǒng)的核心部件,從此進(jìn)入了計(jì)算機(jī)數(shù)控(CNC)階段。1970年在美國芝加哥數(shù)控展覽會(huì)上,首次展出了由小型計(jì)算機(jī)為核心的計(jì)算機(jī)數(shù)控系統(tǒng),標(biāo)志著數(shù)控系統(tǒng)進(jìn)入了計(jì)算機(jī)為主體的第四代。至此,原來由硬件實(shí)現(xiàn)的功能逐步改由軟件完成,從此系統(tǒng)進(jìn)入了軟件數(shù)控時(shí)代。 1974年,首次出現(xiàn)了采用微處理器芯片的軟件CNC系統(tǒng),象征著數(shù)控系統(tǒng)進(jìn)入了以微機(jī)為背景的第五代。這一發(fā)展真正實(shí)現(xiàn)了機(jī)電一體化,進(jìn)一步縮小了體積,降低了成本,簡化了編程和操作,使數(shù)控系統(tǒng)達(dá)到了普及的程度。 70年代末、80年代初,隨著超大規(guī)模集成電路、大容量存儲(chǔ)器、CRT的普及應(yīng)用,CNC系統(tǒng)進(jìn)入了第六
26、代。它雖然仍以微處理器為基礎(chǔ),但控制功能更為完備,達(dá)到了多功能的技術(shù)特征,尤其在軟件技術(shù)方面發(fā)展更快,具有了交互式對話編程,三維圖形動(dòng)態(tài)顯示/校驗(yàn),實(shí)時(shí)精度補(bǔ)償?shù)裙δ?。在系統(tǒng)結(jié)構(gòu)上,開始出現(xiàn)了柔性化、模塊化的多處理機(jī)結(jié)構(gòu)。數(shù)控系統(tǒng)產(chǎn)品也逐步實(shí)現(xiàn)了標(biāo)準(zhǔn)化,系列化。 (3)高速高精度CNC的開發(fā)與應(yīng)用階段 進(jìn)入八十年代,為了實(shí)現(xiàn)高速、高精度曲面輪廓精加工,必須提高微輪廓線的解釋處理能力和伺服驅(qū)動(dòng)特性,為保證零件程序的傳送、插補(bǔ)、加工線速度控制等連續(xù)處理,CNC系統(tǒng)應(yīng)具有足夠高的數(shù)據(jù)處理速度和能力。32位CPU以其很強(qiáng)的數(shù)據(jù)處理能力在CNC中得到了應(yīng)用,使CNC系統(tǒng)進(jìn)入了面向高速、高精度的第七代
27、。1986年,三菱電機(jī)公司率先推出了CPU為68020的32位CNC,掀起了32位CNC的熱潮,并逐漸成為當(dāng)今數(shù)控系統(tǒng)的主流。 (4)基于PC的開放式CNC的開發(fā)與應(yīng)用 進(jìn)入九十年代,個(gè)人計(jì)算機(jī)(Personal Computer, PC)的性能已發(fā)展到很高的階段,從8位、16位發(fā)展到32位,可以滿足作為數(shù)控系統(tǒng)核心部件的要求,而且PC機(jī)生產(chǎn)批量很大,價(jià)格便宜,可靠性高。數(shù)控系統(tǒng)從此進(jìn)入基于PC的CNC系統(tǒng)階段。1994年,這種基于PC的CNC控制器在美國首先亮相市場,并在此后獲得了高速發(fā)展。PC的引入,不僅為CNC提供高性能價(jià)格比的硬件資源和極其豐富的軟件資源,更為CNC的開放化提供了基
28、礎(chǔ),使之成為數(shù)控歷史最具影響的發(fā)展。人們常稱這種PC-NC結(jié)構(gòu)為第八代數(shù)控系統(tǒng)。 國外數(shù)控發(fā)展現(xiàn)狀 近年國外數(shù)控技術(shù)發(fā)展呈如下趨勢: (l)國際機(jī)床市場的消費(fèi)主流是數(shù)控機(jī)床 1998年世界機(jī)床進(jìn)口額中大部分是數(shù)控機(jī)床,美國進(jìn)口機(jī)床的數(shù)控化率達(dá)70%,我國為60%。目前世界數(shù)控機(jī)床消費(fèi)趨勢己從初期以數(shù)控電加工機(jī)床、數(shù)控車床、數(shù)控銑床為主轉(zhuǎn)向以加工中心、專用數(shù)控機(jī)床、成套設(shè)備為主[7]。 (2)國外數(shù)控機(jī)床的信息化 世界裝備制造業(yè)市場正在向全面信息化的方向邁進(jìn),技術(shù)發(fā)展主要表現(xiàn)為柔性制造系統(tǒng)、計(jì)算機(jī)集成制造系統(tǒng)的開發(fā)與應(yīng)用,并向制造智能化方向發(fā)展。技術(shù)發(fā)展特征表現(xiàn)為技術(shù)的融合化;產(chǎn)品
29、的發(fā)展特征表現(xiàn)為高附加值化、智能化和系統(tǒng)化;系統(tǒng)管理的發(fā)展特征表現(xiàn)為集成化(包括系統(tǒng)集成、軟件集成、技術(shù)集成和接口集成)和網(wǎng)絡(luò)化。隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)日益普遍運(yùn)用,數(shù)控機(jī)床走向網(wǎng)絡(luò)化、集成化己成為必然的趨勢和方向。從另一角度來看,目前流行的ERP即工廠信息化對于制造業(yè)來說,僅僅局限于通常的管理部門或設(shè)計(jì)、開發(fā)等上層部分的信息化是遠(yuǎn)遠(yuǎn)不夠的,工廠、車間的最底層加工設(shè)備一數(shù)控機(jī)床不能夠連成網(wǎng)絡(luò)或信息化就必然成為制造業(yè)工廠信息化的制約瓶頸。以FANUC和西門子為代表的數(shù)控系統(tǒng)生產(chǎn)廠商己在幾年前推出了具有網(wǎng)絡(luò)功能的數(shù)控系統(tǒng)。在這些系統(tǒng)中,除了傳統(tǒng)的RS232接口外,還備有以太網(wǎng)接口,為數(shù)控機(jī)床聯(lián)網(wǎng)
30、提供了基本條件。 國內(nèi)數(shù)控發(fā)展現(xiàn)狀 我國數(shù)控機(jī)床起步并不晚,大約與日本、德國、前蘇聯(lián)同步。1958年,由北京機(jī)床研究所和清華大學(xué)等單位研制成功第一臺(tái)數(shù)控機(jī)床[7]。但是由于相關(guān)工業(yè)基礎(chǔ)差,尤其是電子工業(yè)薄弱,致使其發(fā)展速度緩慢。但由于歷史的原因,一直沒有取得實(shí)質(zhì)性的成果。數(shù)控機(jī)床的品種和數(shù)量都很少,穩(wěn)定性和可靠性都比較差,只在一些復(fù)雜的、特殊的零件加工中使用。20世紀(jì)80年代以來,在消化吸收國外先進(jìn)技術(shù)的基礎(chǔ)上,我國數(shù)控技術(shù)有了新的發(fā)展,數(shù)控機(jī)床才真正進(jìn)入小批量生產(chǎn)的商品化時(shí)代?!捌呶濉?、“八五”期間的技術(shù)攻關(guān),大大推動(dòng)了我國數(shù)控機(jī)床的發(fā)展,目前我國已經(jīng)能生產(chǎn)100多種數(shù)控機(jī)床。尤其是最
31、近10年來,我國己研制了具有自主版權(quán)的數(shù)控技術(shù)平臺(tái)和數(shù)控系統(tǒng),比如2022年國產(chǎn)機(jī)床展上的大連機(jī)床集團(tuán)的VDW500五軸聯(lián)動(dòng)立式加工中心、華中數(shù)控的LVC600五軸聯(lián)動(dòng)立式加工中心其機(jī)床各項(xiàng)性能指標(biāo)都接近國際先進(jìn)水平[8]。 但從數(shù)控機(jī)床的整體來看,我國的數(shù)控技術(shù)與發(fā)達(dá)國家相比仍有相當(dāng)差距,數(shù)控產(chǎn)業(yè)仍十分薄弱,而且國產(chǎn)數(shù)控絕大部分是中低檔經(jīng)濟(jì)型,高檔數(shù)控仍然被國外發(fā)達(dá)國家技術(shù)封鎖。為了促進(jìn)我國數(shù)控技術(shù)的發(fā)展,國家已經(jīng)在“十一五”繼續(xù)把數(shù)控技術(shù)列為優(yōu)先發(fā)展的技術(shù)之一,使我國的數(shù)控技術(shù)在較短的時(shí)間里加快趕上世界先進(jìn)水平。 數(shù)控技術(shù)的發(fā)展趨勢 隨著微電子技術(shù)、計(jì)算機(jī)技術(shù)、精密制造技術(shù)及檢測技
32、術(shù)的發(fā)展,數(shù)控機(jī)床性能日臻完善,數(shù)控系統(tǒng)應(yīng)用領(lǐng)域日益擴(kuò)大。為了滿足市場和科學(xué)技術(shù)發(fā)展的需要,達(dá)到現(xiàn)代制造技術(shù)對數(shù)控技術(shù)提出的更高的要求,當(dāng)前,世界數(shù)控技術(shù)及其裝備發(fā)展趨勢主要體現(xiàn)在以下幾個(gè)方面: (l)高速度、高精度 機(jī)床向高速化方向發(fā)展,可充分發(fā)揮現(xiàn)代刀具材料的性能,不但可大幅度提高加工效率、降低加工成本,而且還可提高零件的表面加工質(zhì)量和精度。超高速加工技術(shù)對制造業(yè)實(shí)現(xiàn)高效、優(yōu)質(zhì)、低成本生產(chǎn)有廣泛的適用性。精密化是為了適應(yīng)高新技術(shù)發(fā)展的需要,也是為了提高普通機(jī)電產(chǎn)品的性能、質(zhì)量和可靠性,減少其裝配時(shí)的工作量從而提高裝配效率的需要。隨著高新技術(shù)的發(fā)展和對機(jī)電產(chǎn)品性能與質(zhì)量要求的提高,機(jī)床
33、用戶對機(jī)床加工精度的要求也越來越高。現(xiàn)代數(shù)控機(jī)床主軸轉(zhuǎn)速在12000r/min以上較為普及,高速加工中心的主軸轉(zhuǎn)速高達(dá)100000r/min;快速進(jìn)給速度一般機(jī)床都在50m/min以上,有的機(jī)床高達(dá)120m/min。加工的高精度比加工速度更為重要,微米級精度的數(shù)控設(shè)備正在普及,一些高精度機(jī)床的加工精度已達(dá)到0.1um[9]。 (2)高可靠性 高可靠性是指數(shù)控系統(tǒng)的可靠性要高于被控設(shè)備的可靠性在一個(gè)數(shù)量級以上,新型的數(shù)控系統(tǒng)大量采用大規(guī)?;虺笠?guī)模的集成電路,采用專門芯片及混合式集成電路,使線路的集成度提高,元器件數(shù)量減少,功耗降低,提高了可靠性。現(xiàn)代數(shù)控機(jī)床都裝備了計(jì)算機(jī)數(shù)控系統(tǒng)(即CNC
34、系統(tǒng)),只要改變軟件控制程序,就可以適應(yīng)各類機(jī)床的不同要求,實(shí)現(xiàn)數(shù)控系統(tǒng)的模塊化、標(biāo)準(zhǔn)化和通用化。數(shù)控控制軟件的功能更加豐富,具有自診斷及保護(hù)功能。為了防止超程,可以在系統(tǒng)內(nèi)預(yù)先設(shè)定工作范圍(即軟限位)。數(shù)控系統(tǒng)還具有自動(dòng)返回功能(即斷點(diǎn)保護(hù)功能)。 (3)多功能 大多數(shù)數(shù)控機(jī)床都具有CRT圖形顯示功能,可以進(jìn)行二維圖形的加工軌跡動(dòng)態(tài)模擬顯示,有的還可以顯示三維彩色動(dòng)態(tài)圖形;具有豐富的人機(jī)對話功能,“友好”的人機(jī)界面;借助CRT和鍵盤的配合,可以實(shí)現(xiàn)程序的輸入、編輯、修改、刪除等功能。現(xiàn)代數(shù)控系統(tǒng),除了能與編程機(jī)、繪圖機(jī)、打印機(jī)等外設(shè)通信外,還應(yīng)能與其他CNC系統(tǒng)、上級計(jì)算機(jī)系統(tǒng)通信,以實(shí)
35、現(xiàn)FMS的連接要求。 (4)智能化 數(shù)控系統(tǒng)應(yīng)用高技術(shù)的重要目標(biāo)是智能化。如引進(jìn)自適應(yīng)控制技術(shù)、人機(jī)對話自動(dòng)編程、自動(dòng)診斷并排除故障等智能化功能。 (5)復(fù)合化 復(fù)合化是近幾年數(shù)控機(jī)床發(fā)展的模式,它將多種動(dòng)力頭集中在一臺(tái)數(shù)控機(jī)床上,在一次裝夾中完成多種工序的加工。如立臥轉(zhuǎn)換加工中心、車銑萬能加工中心及四軸聯(lián)動(dòng)(X、Y、Z、C)的車削中心等。 1.2 嵌入式系統(tǒng)概況 嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁減,適應(yīng)于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)[10]。隨著社會(huì)的日益信息化,計(jì)算機(jī)和網(wǎng)絡(luò)已經(jīng)全面滲透到日常生活的每個(gè)角落。對于我們每
36、個(gè)人來說,需要的已經(jīng)不再僅僅是那種放在桌上處理文檔、進(jìn)行工作管理和生產(chǎn)控制的計(jì)算機(jī)“機(jī)器”。任何一個(gè)普通人都可以使用嵌入式電子產(chǎn)品,小到MP3、PDA等微型數(shù)字化產(chǎn)品,大到網(wǎng)絡(luò)家電、智能家電、車載電子設(shè)備等。縱觀嵌入式系統(tǒng)的發(fā)展歷程大致經(jīng)歷了4個(gè)階段。 (1)無操作系統(tǒng)階段 是以8位單芯片為核心的可編程控制器形式,執(zhí)行一些單線程程序,具有與監(jiān)測、伺服、指示設(shè)備相配合的功能。這類系統(tǒng)大部分應(yīng)用于一些專業(yè)性強(qiáng)的工業(yè)控制系統(tǒng)中,通過匯編語言編程對系統(tǒng)進(jìn)行直接控制。這一階段系統(tǒng)的主要特點(diǎn)是:系統(tǒng)結(jié)構(gòu)和功能相對單一,處理效率較低,存儲(chǔ)容量較小,幾乎沒有用戶接口。由于這種嵌入式系統(tǒng)使用簡單、價(jià)格低,以
37、前在國內(nèi)工業(yè)領(lǐng)域應(yīng)用較為普遍,但是己經(jīng)遠(yuǎn)不能適應(yīng)高效的、需要大容量存儲(chǔ)的現(xiàn)代工業(yè)控制和新興信息家電等領(lǐng)域的需求。 (2)簡單操作系統(tǒng)階段 20世紀(jì)80年代,隨著微電子工藝水平的提高,集成電路制造商開始把嵌入式系統(tǒng)應(yīng)用中所需的微處理器、I/O接口、串行接口及RAM、ROM等部件集成到一片VLSI中,制造出面向I/O設(shè)計(jì)的微控制器。與此同時(shí),嵌入式系統(tǒng)的程序員也開始基于一些簡單的操作系統(tǒng)開發(fā)嵌入式軟件,縮短了開發(fā)周期,提高了開發(fā)效率。此時(shí)的嵌入式操作系統(tǒng)雖然還比較簡單,但已經(jīng)初步具有了一定的兼容性和擴(kuò)展性。典型的有1981年,Ready System 開發(fā)出世界上第一個(gè)商業(yè)嵌入式實(shí)時(shí)內(nèi)核(VT
38、RX32)。這個(gè)實(shí)時(shí)內(nèi)核包含了許多傳統(tǒng)操作系統(tǒng)的特點(diǎn),包括任務(wù)管理,任務(wù)間通信,同步與互相排斥、中斷支持和內(nèi)存管理等功能。 (3)實(shí)時(shí)多任務(wù)操作系統(tǒng)階段 20世紀(jì)90年代,隨著硬件實(shí)時(shí)性要求的提高,嵌入式系統(tǒng)的軟件規(guī)模也在不斷擴(kuò)大,實(shí)時(shí)內(nèi)核逐漸形成了實(shí)時(shí)多任務(wù)操作系統(tǒng)(RTOS),并開始成為嵌入式系統(tǒng)的主流。這一階段的操作系統(tǒng)實(shí)時(shí)性得到了很大改善,已經(jīng)能夠運(yùn)行在各種不同類型的微處理器上,具有高度的模塊化和擴(kuò)展性。典型的有VxWorks、Palm OS、WinCE,嵌入式Linux等。 (4)面向Internet階段 21世紀(jì)是網(wǎng)絡(luò)時(shí)代,隨著Internet的進(jìn)一步發(fā)展,以及Intern
39、et技術(shù)與信息家電、工業(yè)控制技術(shù)等的結(jié)合日益緊密,嵌入式設(shè)備與Internet的結(jié)合是嵌入式系統(tǒng)未來的發(fā)展趨勢。信息時(shí)代和數(shù)字時(shí)代的到來,為嵌入式系統(tǒng)的發(fā)展帶來了巨大的機(jī)遇。嵌入式技術(shù)與Internet技術(shù)的結(jié)合正推動(dòng)著嵌入式系統(tǒng)的飛速發(fā)展,成為當(dāng)今世界最熱門的技術(shù)之一。1999年,根據(jù)美國EMF(電子市場分析)報(bào)告,嵌入式操作系統(tǒng)全球產(chǎn)值3.62億美元,而相關(guān)的整個(gè)嵌入式開發(fā)工具(包括仿真器、邏輯分析儀、軟件編譯器和調(diào)試器)則高達(dá)9億美元,并預(yù)計(jì)到2022年市場規(guī)模將達(dá)到317億美元。2021年嵌入式系統(tǒng)帶來的工業(yè)年產(chǎn)值已超過了1萬億美元[11]。 1.3 本文研究意義及主要工作 研究意
40、義 一個(gè)國家的工業(yè)水平,很大程度上體現(xiàn)在制造業(yè)的水平上,而數(shù)控機(jī)床技術(shù)正是現(xiàn)代制造技術(shù)中關(guān)鍵性的技術(shù)之一。我國是一個(gè)制造業(yè)大國,但數(shù)控技術(shù)的水平還不是很高,跟歐美、日本還有很大的差距,這嚴(yán)重制約著我國制造業(yè)水平的提高。以PC機(jī)作為基礎(chǔ)的CNC,為我國的NC開發(fā)和應(yīng)用帶來了新的機(jī)遇,使得我國數(shù)控系統(tǒng)開發(fā)商有了一個(gè)趕上世界數(shù)控技術(shù)發(fā)展潮流的機(jī)遇。然而,在我國蓬勃發(fā)展的基于PC的數(shù)控系統(tǒng)也有著不足之處,如基于PC的數(shù)控系統(tǒng)難以裝入體積嚴(yán)格要求的微小型系統(tǒng)內(nèi)。另外,基于PC的CNC往往功能強(qiáng)大,但相對一些功能相對簡單的應(yīng)用場合,成本過高,結(jié)構(gòu)復(fù)雜。 我國現(xiàn)在面臨著制造業(yè)產(chǎn)業(yè)結(jié)構(gòu)的調(diào)整和升級,也面臨
41、幾百萬臺(tái)舊式機(jī)床的改造,其中部分機(jī)床可改造成具有較高性價(jià)比的經(jīng)濟(jì)型數(shù)控;同時(shí)設(shè)計(jì)和生產(chǎn)一些適合本國制造業(yè)需求的經(jīng)濟(jì)型數(shù)控系統(tǒng),則可以顯著的提高經(jīng)濟(jì)效益和社會(huì)效益,減少資源的浪費(fèi)。目前國內(nèi)中小型的數(shù)控系統(tǒng)多采用8/16位單片機(jī)系統(tǒng),其內(nèi)部資源有限,一般需要擴(kuò)展資源,且較多采用匯編編程,沒有操作系統(tǒng)在其上運(yùn)行,程序的修改、升級和維護(hù)都比較困難。嵌入式系統(tǒng)的不斷普及應(yīng)用,可為數(shù)控技術(shù)提供一種靈活方便、能在工業(yè)環(huán)境長期穩(wěn)定可靠工作的微小型廉價(jià)的控制系統(tǒng)。目前,嵌入式系統(tǒng)的推廣應(yīng)用已經(jīng)成為潮流,也成為中、低檔數(shù)控系統(tǒng)的發(fā)展趨勢。數(shù)控車床作為使用最多、功能相對簡單的機(jī)床種類,非常適合采用嵌入式系統(tǒng)。為此,
42、本文以基于ARM的嵌入式車床數(shù)控系統(tǒng)的研究與開發(fā)為目標(biāo),開發(fā)一種低成本、高性價(jià)比的車床數(shù)控系統(tǒng)。 論文主要內(nèi)容 本文主要研究內(nèi)容包括: 1.以32位ARM7內(nèi)核微處理器作為核心,基于嵌入式操作系統(tǒng)μC/OS-Ⅱ,構(gòu)建整個(gè)數(shù)控系統(tǒng)的軟硬件架構(gòu)。 2.完成嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ在ARM硬件平臺(tái)上的移植、系統(tǒng)多任務(wù)的劃分與調(diào)度。編寫數(shù)控系統(tǒng)的串口通訊、液晶顯示、鍵盤輸入等低層驅(qū)動(dòng)程序。 3.研究NC程序解釋的實(shí)現(xiàn)方法,編寫數(shù)控加工程序解釋模塊等相關(guān)應(yīng)用程序。 第二章 嵌入式數(shù)控車床系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì) 本文所要研究的嵌入式車床數(shù)控系統(tǒng)的主要功能包括:能夠給用戶提供一個(gè)良好
43、的人機(jī)界面,支持鍵盤的輸入并實(shí)現(xiàn)機(jī)床加工代碼的編程,能實(shí)現(xiàn)車削加工的高速運(yùn)動(dòng)控制,可以實(shí)現(xiàn)常用的直線插補(bǔ)、圓弧插補(bǔ)和螺紋加工插補(bǔ),能夠?qū)崿F(xiàn)對異常情況的實(shí)時(shí)處理。此外,系統(tǒng)還能夠支持與PC機(jī)的串口通信,上傳和下載數(shù)控文件[12]。 2.1 嵌入式數(shù)控系統(tǒng)的總體設(shè)計(jì) 嵌入式車床數(shù)控系統(tǒng)在結(jié)構(gòu)上由硬件和軟件兩大部分組成。硬件選擇以ARM處理器和復(fù)雜可編程邏輯器件CPLD為核心,并配以系統(tǒng)所需的外圍模塊組成完整的硬件平臺(tái);軟件選擇μC/OS-Ⅱ?qū)崟r(shí)嵌入式操作系統(tǒng),開發(fā)系統(tǒng)所需的底層驅(qū)動(dòng)和應(yīng)用軟件。 嵌入式數(shù)控系統(tǒng)的總體結(jié)構(gòu)模型如圖2.1所示,由硬件層、操作系統(tǒng)層及軟件層三個(gè)層次構(gòu)成。硬件層由AR
44、M處理器硬件構(gòu)架和CPLD可編程邏輯控制器件組成,ARM處理器用來管理調(diào)度,而CPLD芯片用于在較短的時(shí)間內(nèi)完成復(fù)雜的運(yùn)動(dòng)控制。嵌入式數(shù)控系統(tǒng)的操作系統(tǒng)層采用了源代碼公開的嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ,μC/OS-Ⅱ是一款可根據(jù)功能需要裁減,采用可剝奪性實(shí)時(shí)內(nèi)核的多任務(wù)操作系統(tǒng)。采用μC/OS-Ⅱ使得嵌入式數(shù)控系統(tǒng)的控制軟件劃分明確、模塊化,并且使系統(tǒng)具有多任務(wù)處理能力及良好的實(shí)時(shí)性。軟件層主要是數(shù)控系統(tǒng)匹配軟件,包括設(shè)備驅(qū)動(dòng)程序、相關(guān)的API函數(shù)、數(shù)控各任務(wù)模塊等。 圖2.1 數(shù)控系統(tǒng)總體結(jié)構(gòu)模型 2.2 嵌入式數(shù)控系統(tǒng)的硬件組成 系統(tǒng)硬件結(jié)構(gòu)如圖2.2所示。嵌入式微處理器選
45、用ARM7系列的LPC2220,它是32位的高性能、低成本的嵌入式RISC微處理器,具有數(shù)據(jù)處理能力強(qiáng),穩(wěn)定可靠,可支持操作系統(tǒng),低功耗和低成本的特點(diǎn)。在嵌入式數(shù)控系統(tǒng)中主要負(fù)責(zé)數(shù)據(jù)處理、運(yùn)算和對外設(shè)(LCD、RAM、FLASH、鍵盤等)的控制。大規(guī)??删幊踢壿嬁刂破骷﨏PLD主要用作精插補(bǔ)、碼盤反饋和實(shí)現(xiàn)I/O控制[13-16]。 圖2.2 嵌入式數(shù)控硬件結(jié)構(gòu)圖 2.1.1 ARM子系統(tǒng) 設(shè)計(jì)了一個(gè)滿足嵌入式車床數(shù)控性能要求的ARM子系統(tǒng),其資源主要包括LPC2220微處理器,主頻60MHz。1MB的外部RAM、2MB Nor Flash、16MB NandFlash、專用復(fù)位電
46、路、JTAG 凋試接口、實(shí)時(shí)時(shí)鐘等。并且周圍引出了外部擴(kuò)展需要用到的全部數(shù)據(jù)、地址總線、各外設(shè)接口及I/O信號等,能夠作為嵌入式車床控制系統(tǒng)主控模塊使用。 CPLD子系統(tǒng) CPLD子系統(tǒng)采用Altera公司的MAX7000A(AE)系列的EPM1270。它以第二代多陣列矩陣(MAX)結(jié)構(gòu)為基礎(chǔ),是一種高性能CMOS EEPROM 器件;邏輯密度為2000 個(gè)可用編程門電路,128 個(gè)宏單元; 引腳到引腳的邏輯延時(shí)為5.0ns,計(jì)數(shù)器工作頻率可達(dá)到178MHz;有集電極開路選擇,可編程宏單元觸發(fā)器;具有專有的清除、時(shí)鐘、輸出使能控制;包括一個(gè)可編程的程序加密位,全面保護(hù)專利設(shè)計(jì)。能夠很方便
47、實(shí)現(xiàn)嵌入式數(shù)控的精插補(bǔ)、碼盤輸入、I/O控制等功能,同時(shí)對產(chǎn)品可以加密保護(hù)。在本系統(tǒng)中,CPLD器件是掛在ARM的存儲(chǔ)器總線上,這樣通過存儲(chǔ)器映射,ARM可以很方便的訪問CPLD器件。 2.1.3 液晶模塊 液晶(LCD)模塊包括液晶顯示屏液晶顯示控制器。液晶模塊使用CA320240B,其核心是日本SEIKO EPSON公司出品的液晶顯示控制芯片S1D13305,該芯片支持文本(即字符) 顯示、圖形顯示以及文、圖相結(jié)合的顯示模式;LCD 顯示分辨率可達(dá)320 240像素;內(nèi)部掩模有一個(gè)具有160 字符、5 7 像素點(diǎn)陣的字符發(fā)生器ROM;支持在片外設(shè)置一個(gè)具有256 字符、最大達(dá)8 16
48、像素點(diǎn)陣的字符發(fā)生器ROM或RAM。能夠快速響應(yīng)數(shù)控車床系統(tǒng)圖形仿真和實(shí)時(shí)監(jiān)控的需求。與采用彩屏的數(shù)控系統(tǒng)相比,具有價(jià)格功耗上的優(yōu)勢。 鍵盤模塊 鍵盤與ARM 處理器的接口設(shè)計(jì)主要采用專用的鍵盤接口芯片ZLG7290。該芯片采用I2C串行接口,提供鍵盤中斷信號,方便與ARM接口,并且可以支持64個(gè)按鍵消息,滿足了嵌入式數(shù)控車床的要求。采用專用的鍵盤芯片可以采用中斷的方式實(shí)現(xiàn)對鍵碼的讀取,免去對鍵盤的循環(huán)掃描,節(jié)約了CPU 的運(yùn)算資源,同時(shí)節(jié)省了很多任務(wù)切換和內(nèi)部信號量處理時(shí)間。 2.3 嵌入式數(shù)控系統(tǒng)軟件的結(jié)構(gòu) 嵌入式數(shù)控系統(tǒng)軟件由嵌入式實(shí)時(shí)多任務(wù)操作系統(tǒng)μC/OS-Ⅱ及其相應(yīng)的應(yīng)用
49、軟件組成。μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)支持多任務(wù)管理,采用基于占先式的實(shí)時(shí)內(nèi)核,可以把任務(wù)的調(diào)度時(shí)間控制在毫秒級內(nèi),滿足系統(tǒng)實(shí)時(shí)性的要求。但μC/OS-Ⅱ僅提供了一個(gè)任務(wù)調(diào)度的實(shí)時(shí)內(nèi)核,沒有提供相應(yīng)得標(biāo)準(zhǔn)API函數(shù),因而需要自行開發(fā)一系列與系統(tǒng)運(yùn)行相關(guān)的設(shè)備驅(qū)動(dòng)程序、API函數(shù)以及應(yīng)用軟件。嵌入式數(shù)控軟件功能結(jié)構(gòu)如圖2.3所示。數(shù)控系統(tǒng)按功能可劃分為以下六個(gè)部分[17]:(1)人機(jī)界面管理(2)邏輯處理(3)運(yùn)動(dòng)控制(4)輔助控制(5)數(shù)據(jù)處理(6)伺服控制。 圖2.3 嵌入式數(shù)控軟件結(jié)構(gòu)圖 人機(jī)界面管理 該部分主要實(shí)現(xiàn)人機(jī)交互,為數(shù)控車床的工作提供數(shù)據(jù)和信息,反饋機(jī)床的運(yùn)行狀態(tài)
50、,監(jiān)控整個(gè)加工過程。主要功能有以下幾點(diǎn): 1)獲得車床系統(tǒng)當(dāng)前運(yùn)行狀態(tài),比如處于手動(dòng)、自動(dòng)、運(yùn)行還是其它狀態(tài),獲得各種機(jī)床信息,比如當(dāng)前機(jī)床X、Z軸坐標(biāo)、進(jìn)給速率等,并且通過LCD顯示給用戶。 2)實(shí)現(xiàn)與用戶的人機(jī)交互,通過接受用戶的按鍵消息,完成對系統(tǒng)的控制,比如對刀偏值、主軸速率等系統(tǒng)參數(shù)的修改。 3)對NC程序進(jìn)行加工過程中的刀尖軌跡仿真、在LCD上顯示刀具軌跡路徑,用戶可以檢驗(yàn)刀具所走過的軌跡判斷NC程序是否正確。 邏輯處理 邏輯處理主要負(fù)責(zé)主軸的正反轉(zhuǎn),冷卻液的開關(guān),換刀等。由于μC/OS-Ⅱ是個(gè)實(shí)時(shí)多任務(wù)系統(tǒng),邏輯處理的優(yōu)先級很高,一般在幾個(gè)ms,所以能夠滿足數(shù)控車床的
51、需求。 運(yùn)動(dòng)控制 運(yùn)動(dòng)控制主要是對機(jī)床位移、速度、加速度的控制。速度控制主要指的是CNC系統(tǒng)的加減速控制。在CNC裝置中,為了保證機(jī)床在啟動(dòng)或停止時(shí)不產(chǎn)生沖擊、失步、超程或振蕩,必須對進(jìn)給電機(jī)的脈沖頻率或電壓進(jìn)行加減速控制。即在機(jī)床加速啟動(dòng)時(shí),保證加在電機(jī)上的脈沖頻率或電壓逐漸增加;而當(dāng)機(jī)床減速停止時(shí)。保證加在電機(jī)上的脈沖頻率或電壓逐漸減小。加減速算法主要有T型和S型加減速,本系統(tǒng)采用的是T型加減速,在于經(jīng)濟(jì)型數(shù)控車床相對于其它機(jī)床來說,輪廓形狀變化小,加工精度要求不是太高。位移的控制主要由插補(bǔ)來實(shí)現(xiàn)。插補(bǔ)是數(shù)控系統(tǒng)的核心,數(shù)控系統(tǒng)正是通過插補(bǔ)計(jì)算,才能加工出各種復(fù)雜輪廓的零件。并且各種
52、復(fù)雜輪廓的精度也是由插補(bǔ)任務(wù)保證的。本系統(tǒng)采用了數(shù)據(jù)采樣插補(bǔ),并且插補(bǔ)過程分成兩步,由ARM 處理器完成插補(bǔ)運(yùn)算的第一步,即粗插補(bǔ),這里采用時(shí)間分割法。根據(jù)速度控制任務(wù)得到的進(jìn)給速度計(jì)算出每個(gè)插補(bǔ)周期內(nèi)的總進(jìn)給量,放入插補(bǔ)緩沖區(qū)內(nèi)。由CPLD完成精插補(bǔ),通過中斷方式,獲得粗插補(bǔ)的X、Z軸進(jìn)給量,然后通過數(shù)字積分法(DDA)變換成進(jìn)給脈沖序列控制電機(jī)的運(yùn)動(dòng)。 數(shù)據(jù)處理控制 數(shù)據(jù)處理主要完成NC代碼的譯碼和刀具補(bǔ)償。譯碼就是將數(shù)控代碼從文件系統(tǒng)中取出,經(jīng)過語法檢查和語義分析,最后翻譯成系統(tǒng)能識(shí)別的代碼形式,存放在譯碼緩沖區(qū)中。經(jīng)過譯碼后的數(shù)據(jù)段主要分為三部分,分別供速度控制任務(wù)(F指令)、插
53、補(bǔ)任務(wù)(G指令)、邏輯控制(T、S、M指令)使用,常常需要將刀具補(bǔ)償?shù)雀鞣N參數(shù)考慮進(jìn)軌跡計(jì)算的過程中。 輔助控制 這部分功能比較繁瑣,主要有控制面板監(jiān)控、主軸管理、刀庫管理、系統(tǒng)診斷等,主要由微處理器完成控制任務(wù)。 伺服處理 數(shù)控機(jī)床進(jìn)給電機(jī)逐步由原來的步進(jìn)電機(jī)轉(zhuǎn)向采用交流伺服電機(jī),以提高加工速度和精度。這就涉及到伺服控制。伺服控制又可稱為位置控制,主要用于數(shù)控系統(tǒng)的閉環(huán)控制,包括了機(jī)床位置檢測、控制規(guī)則的制定等,涉及到大量的串行的數(shù)學(xué)運(yùn)算。所以伺服算法部分由微處理器完成,信號檢測則由CPLD實(shí)現(xiàn)。 2.4 本章小結(jié) 本章通過對嵌入式數(shù)控車床控制系統(tǒng)的功能需求分析,基于ARM和
54、μC/OS-Ⅱ,提出了實(shí)現(xiàn)系統(tǒng)的軟硬件的架構(gòu),并對系統(tǒng)的總體結(jié)構(gòu)、硬件部分各模塊、軟件部分各模塊的功能和實(shí)現(xiàn)方法分別作了簡要的說明和介紹。 第三章 車床數(shù)控系統(tǒng)硬件平臺(tái)設(shè)計(jì) 嵌入式系統(tǒng)的硬件是嵌入式系統(tǒng)軟件運(yùn)行的基礎(chǔ),一般包括嵌入式微控制器、電源和時(shí)鐘、復(fù)位電路、存儲(chǔ)器、輸入輸出設(shè)備接口和調(diào)試接口等。本數(shù)控系統(tǒng)以飛利浦公司的LPC2220和Altera公司的EPM1270為核心構(gòu)成硬件控制平臺(tái),具有低價(jià)格、低功耗、高性能的特點(diǎn)。 3.1 LPC2220概述 RM簡介 ARM是Advanced RISC Machines的縮寫,是微處理器行業(yè)的一家知名企業(yè),該企業(yè)設(shè)計(jì)了大量廉價(jià)
55、、高性能、低功耗的RISC處理器、相關(guān)技術(shù)和軟件。ARM是全球領(lǐng)先的16/32位RISC(Reduced Instruction Set Computer)微處理器知識(shí)產(chǎn)權(quán)設(shè)計(jì)供應(yīng)商。ARM公司自1990年正式成立以來,在32位RISC CPU開發(fā)領(lǐng)域不斷取得突破,其結(jié)構(gòu)己從V3發(fā)展到V6。ARM公司設(shè)計(jì)的芯核具有低功耗,低成本等顯著優(yōu)點(diǎn),獲得眾多半導(dǎo)體廠家和整機(jī)廠商的大力支持,在32位嵌入式應(yīng)用領(lǐng)域已經(jīng)占有70%以上的產(chǎn)品市場,在低功耗、低成本的嵌入式應(yīng)用領(lǐng)域確立了市場領(lǐng)導(dǎo)地位?,F(xiàn)在設(shè)計(jì)、生產(chǎn)ARM芯片的國際大公司已經(jīng)超過50多家。其中包括國際著名的Intel、IBM、LG半導(dǎo)體、NEC、P
56、HILIPS、SAMSUNG公司等[18]。 目前非常流行的ARM核有ARM7TDMI,ARM9,ARM9E,ARM10、SecureCore和StrongARM。 ARM芯片還獲得了許多實(shí)時(shí)操作系統(tǒng)RTOS(Real Time Operating System)供應(yīng)商的支持,比較有名的有:Windows CE,Linux, VxWorks,μC/OS等。 LPC2220微控制器概述及特性 LPC2220 微控制器是基于一個(gè)支持實(shí)時(shí)仿真和嵌入跟蹤的32/16 位ARM7TDMI-S CPU。對代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16 位Thumb 模式將代碼規(guī)模降低超過30%,而性能的損失
57、卻很小。由于LPC2220 的144 腳封裝、極低的功耗、多個(gè)32 位定時(shí)器、8 路10 位ADC、PWM 輸出以及多達(dá)9 個(gè)外部中斷管腳使它們特別適用于工業(yè)控制、醫(yī)療系統(tǒng)、訪問控制和電子收款機(jī)(POS)。通過配置總線,LPC2220 最多可提供76 個(gè)GPIO。由于內(nèi)置了寬范圍的串行通信接口,LPC2210/2220 也非常適合于通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器、嵌入式軟件調(diào)制解調(diào)器以及其它各種類型的應(yīng)用[19][20]。其功能框圖如圖3.1所示。 圖3.1 LPC2220功能框圖 LPC2220特性: (1)16/32 位ARM7TDMI-S 微控制器,擁有64KB片內(nèi)靜態(tài)RAM,通過外部
58、存儲(chǔ)器控制器可擴(kuò)展4 組,每組的容量高達(dá)16Mb,數(shù)據(jù)寬度為8/16/32 位。 (2)多達(dá)76 個(gè)通用I/O 口(可承受5V 電壓)??墒褂? 個(gè)邊沿或電平觸發(fā)的外部中斷管腳。 (3)多個(gè)串行接口,包括2 個(gè)16C550 工業(yè)標(biāo)準(zhǔn)UART、高速I2C 總線(400 kbit/s)和2 個(gè)SPI 接口。可選擇帶有數(shù)據(jù)緩沖區(qū)和可變長度傳輸?shù)耐酱锌冢⊿SP)來代替一個(gè)SPI。 (4)2 個(gè)32 位定時(shí)器帶4 路捕獲和4 路比較通道、PWM 單元(6 路輸出)、實(shí)時(shí)時(shí)鐘(RTC)和看門狗。8 路10 位A/D 轉(zhuǎn)換器,轉(zhuǎn)換時(shí)間低至2.44μs。 (5)通過可編程的片內(nèi)鎖相環(huán)(PLL)可實(shí)
59、現(xiàn)最大為75 MHz的CPU 操作頻率,設(shè)置時(shí)間為100us。帶外部晶體的片內(nèi)振蕩器頻率范圍:1~30 MHz,外部振蕩器的頻率高達(dá)50MHz。 (6) LQFP144 和TFBGA144兩種封裝。 3.2 電源、時(shí)鐘及復(fù)位電路設(shè)計(jì) 電源電路設(shè)計(jì) 的轉(zhuǎn)換,輸出電流可達(dá)1.5A。SPX1117M3[21]。兩種芯片的電平轉(zhuǎn)換電路如圖3.2、圖3.3所示。 圖3.2 5V轉(zhuǎn)3.3V電路 圖3.3 時(shí)鐘電路設(shè)計(jì) 目前所有的微控制器均含有時(shí)鐘電路,需要時(shí)鐘信號才能正常工作。本系統(tǒng)使用2個(gè)晶振,分別為ARM和CPLD提供時(shí)鐘。其中30M的有源晶振信號作為EPM1270芯片
60、主時(shí)鐘,如圖3.4所示。LPC2220采用內(nèi)部的晶體振蕩器設(shè)計(jì)時(shí)鐘電路,所以外接一個(gè)11.0592M的無源晶振來組成時(shí)鐘電路,如圖3.5所示。 圖3.4 30M有源晶振時(shí)鐘電路 圖3.5 11.0592M的無源晶振時(shí)鐘電路 復(fù)位電路設(shè)計(jì) 微控制器在上電時(shí)狀態(tài)不確定,這會(huì)造成微控制器不能正確的工作。為解決這個(gè)問題,所有的微控制器都需要有一個(gè)復(fù)位信號,它負(fù)責(zé)將控制器初始化為某個(gè)確定的狀態(tài)。一些微控制器自己上電時(shí)會(huì)產(chǎn)生復(fù)位信號,但是多數(shù)控制器需要外部輸入這個(gè)信號,因此它的穩(wěn)定性和可靠性對微控制器的正常工作有重大影響。簡單的阻容復(fù)位電路成本比較低,但它不能保證任何情況產(chǎn)生穩(wěn)定可靠的
61、復(fù)位信號,由于ARM和CPLD芯片的高速、低功耗、低電壓導(dǎo)致噪聲容限低,對電源的紋波、瞬態(tài)相應(yīng)性能、時(shí)鐘源的穩(wěn)定性、電源監(jiān)控可靠性等諸多方面也提出了更高的要求。本系統(tǒng)復(fù)位電路使用了專用芯片SP708-S,在電源上電、掉電以及監(jiān)控系統(tǒng)電源電壓的變化時(shí),產(chǎn)生可靠的電源復(fù)位信號,提高了系統(tǒng)的可靠性[22]。當(dāng)按下復(fù)位按鈕時(shí),該芯片輸出的低電平對微處理器進(jìn)行復(fù)位操作。具體的電路如圖3.6所示。 圖3.6 SP708-S的復(fù)位電路 3.3 LPC2220的外部存儲(chǔ)器設(shè)計(jì) 由于LPC2220本身只有64KB的靜態(tài)RAM,沒有程序存儲(chǔ)器ROM,所以基于LPC2220的嵌入式系統(tǒng)都必須外擴(kuò)存儲(chǔ)器系
62、統(tǒng),才能滿足系統(tǒng)要求。LPC2220自帶了外部存儲(chǔ)器控制器(EMC),可擴(kuò)展4個(gè)存儲(chǔ)器組,每個(gè)存儲(chǔ)器組都支持SRAM、ROM、FLASH、EPROM等,每組的容量高達(dá)16Mb,數(shù)據(jù)寬度為8/16/32 位。由于嵌入式數(shù)控系統(tǒng)的編程代碼量較大,并且數(shù)控加工的NC代碼文件也需要保存在系統(tǒng)FLASH內(nèi),所以本系統(tǒng)外擴(kuò)了兩個(gè)512K的SRAM,2M的NorFlash,16M的NANDFLASH,提供比較豐富的存儲(chǔ)資源。通過CS0片選信號選中相應(yīng)的存儲(chǔ)器作為Bank0。因?yàn)楫?dāng)LPC2220上電或復(fù)位時(shí),Bank0可以引導(dǎo)程序。所以一般在調(diào)試的時(shí)候Bank0為SRAM,bank1為FLASH。最終代碼固化
63、時(shí),Bank0為FLASH,Bank1為SRAM。其中512K的SRAM 61LV51216與LPC2220的接口電路如圖3.7所示,LPC2220的地址總線A1~A19與SRAM相連,為了能對SRAM的字單元進(jìn)行獨(dú)立的字節(jié)操作(如高8位或低8位),所以將LPC2220的BLS0,BLS1 引腳分別接到61LV51216的BHE,BLE上。數(shù)據(jù)線使用了D0~D15。 圖3.7外部RAM擴(kuò)展電路 3.4 EPM1270的電路設(shè)計(jì) 圖3.8 ARM和CPLD接口電路原理圖 EPM1270是Altera公司的MAX7000A(AE)系列的CPLD芯片[23]。它是一種高性能低價(jià)格
64、低功耗的CMOS EEPROM 器件;邏輯密度為2000 個(gè)可用編程門電路,128 個(gè)宏單元; 引腳到引腳的邏輯延時(shí)為5.0ns,計(jì)數(shù)器工作頻率可達(dá)到178MHz;有集電極開路選擇,可編程宏單元觸發(fā)器;具有專有的清除、時(shí)鐘、輸出使能控制。能夠很方便的與ARM等微處理器連接,進(jìn)行數(shù)據(jù)傳輸和控制。在本系統(tǒng)中CPLD主要用于精插補(bǔ)、碼盤輸入、I/O控制等功能。如圖3.8, EPM1270的地址線和數(shù)據(jù)線是掛在LPC2220的存儲(chǔ)器總線上。 3.5 人機(jī)界面電路設(shè)計(jì) 鍵盤輸入電路設(shè)計(jì) 鍵盤是數(shù)控機(jī)床最常用的輸入設(shè)備,其工作原理是用逐行加低電平掃描的方法判斷有無按鍵按下。 本系統(tǒng)采用ZLG7
65、290鍵盤接口芯片設(shè)計(jì)矩陣鍵盤電路(如圖3.9所示),與微處理器通過I2C接口連接。ZLG7290的電源采用3.3V,復(fù)位引腳與復(fù)位信號nRST相連,當(dāng)系統(tǒng)上電復(fù)位或手動(dòng)復(fù)位會(huì)同時(shí)復(fù)位ZLG7290[24]。ZLG7290的鍵盤中斷輸出信號與LPC2220的中斷信號引腳P0.30相連,當(dāng)有按鍵按下時(shí),ZLG7290將會(huì)輸出中斷信號通知LPC2220。 圖3.9 ZLG7290鍵盤電路 液晶顯示模塊接口電路設(shè)計(jì) 液晶顯示是數(shù)控系統(tǒng)中重要的組成部分,在機(jī)床運(yùn)行過程中,數(shù)控系統(tǒng)要隨時(shí)監(jiān)視數(shù)控機(jī)床的工作狀態(tài),通過顯示部件及時(shí)向操作者提供系統(tǒng)工作狀態(tài)和故障情況。 本系統(tǒng)中使用圖形點(diǎn)陣式液
66、晶顯示模塊CA320240B,該模塊采用SED13305作為控制器[25]。SED13305液晶顯示控制器多用于中小規(guī)模的液品顯示器件。它具有自身的時(shí)鐘信號,并提供一套完整的指令系統(tǒng),常被裝配在圖形液晶顯示模塊上,以內(nèi)藏控制器式圖形液晶顯示模塊的形式出現(xiàn)。它能與多種微處理器直接接口,可以圖形方式、字符方式及圖形和字符合成方式進(jìn)行顯示,還可以實(shí)現(xiàn)字符方式下的特征顯示,可執(zhí)行CAD那樣的屏拷貝操作等等。它具有內(nèi)部字符發(fā)生器CGRAM,共128個(gè)字符。SED13305可管理64KRAM作為顯示緩沖區(qū)并可允許微處理器(MPU)隨時(shí)訪問顯示緩沖區(qū)。 圖3.10液晶模塊接口電路 液晶模塊與LPC2220的連接電路如圖3.10所示,其中DB0~DB7為數(shù)據(jù)總線,/RW為寫選通信號,/RD為讀選通信號,CS為片選信號,A0為指令寄存器或數(shù)據(jù)寄存器選擇信號,RESET為復(fù)位信號,F(xiàn)S為背光電源,F(xiàn)G為負(fù)壓,V0為對比度調(diào)節(jié)負(fù)壓,VDD電源電壓,VSS為電源地。在系統(tǒng)中,CA320240B液晶模塊與LPC2220的連接采用總線方式,該模塊沒有地址總線,顯示地址和顯示數(shù)據(jù)均通過DB0-DB7接
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識(shí)競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案