五軸雕刻機(jī)機(jī)電結(jié)構(gòu)設(shè)計(jì)【含CAD圖紙+三維建模+文檔】
五軸雕刻機(jī)機(jī)電結(jié)構(gòu)設(shè)計(jì)【含CAD圖紙+三維建模+文檔】,含CAD圖紙+三維建模+文檔,雕刻,機(jī)電,電機(jī),結(jié)構(gòu)設(shè)計(jì),cad,圖紙,三維,建模,文檔
Proceedings ofthe 2009 IEEE International Conference on Mechatronics and Automation August 9 - 12, Changchun, China Design ofSoftware Architecture for NC Engraving Machine Based on Embedded Linux Junqi Zhao Institute ofAstronautics andAeronautics University ofElectronic Science and Technology ofChina Chengdu, Sichuan Province 610054, China zhao- Abstract - Embedded system has already been applied widely in industry control and many other fields. As the size and complexity of embedded application system increasing, the embedded software system is becoming more and more complexity. It is especially important to design suitable embedded software architecture for a special control object. At the same time, various functional and non-functional requirements of NC (numerical control) engraving are demanded continually. At present, most of the software architectures for NC engraving machine are without operating system support and not be able to meet those requirements. Although a few engraving control system with commercial operating system support, it is expensive and not good for enterprise developing software with independent intellectual property rights. In order to solve the above problems, the new software architecture for NC engraving machine was designed based on embedded Linux and DARTS method in this paper. The system data flow was analyzed by data flow diagram, and then the system was divided into various tasks by the H Gomma principle. Furthermore, the software architecture was put forward. The inter-task synchronization and communication was also analyzed. Finally, the real time analysis was made. By using this software architecture, the software system become simple and clear, and different control component based on different time granularities can be integrated seamlessly. Through practical application, it was proven that various requirements of NC engraving system can be realized with low cost. The flexibility and adaptability of the system are also improved greatly. Index Terms - ARM. Embedded Linux. Engraving. FPGA. Software Architecture. 1. INTRODUCTION As the size and complexity of embedded software system increasing, the importance of software architecture goes beyond the algorithms and data structures of the computation. Designing and specifying the overall system structure emerges as a new kind of problem 1. A good architecture can help ensure that a system will satisfy key requirements in such areas as performance, reliability, portability, scalability, and interoperability. A bad architecture can be disastrous. Architecture design is high-level design for overall system from the system point of view. Different experts will define software architecture on their own. After all, it is a tool to solve practical problems in various domains and contexts, thus various architectural models or definitions have been released. Although various definitions are somewhat different, we can Hui Li and Longfei Peng Institute ofAstronautics andAeronautics University ofElectronic Science and Technology ofChina Chengdu, Sichuan Province 610054, China see a large degree of commonality at the core of all of them witch is the notion that the architecture of a system describes its gross structure. This structure illuminates the top level design decisions, including things such as how the system is composed ofinteracting parts, where are the main pathways of interaction, what are the key properties of the parts. The key step of architecture design is to divide system into some manageable subsystems and design interfaces between the subsystems. Software architecture design should not only consider how to meet the systems functional and performance requirements, but also the non-function, such as reliability, scalability, portability and availability. There is not a unified approach for software architecture, especially in the embedded system. Embedded Linux is referred to tailor standard Linux through the miniaturization treatment and can be stored on non-volatile storage or microcontroller which capacity is only a few hundred KB or a few MB. It is a special Linux operating system that is applied to special embedded system 2. Linux has emerged as a mature, high-performance, stable and reliable alternative to traditional proprietary embedded operating system 3. Linux not only possesses the adaptability, flexibility, and stability but also possesses strong network functions. Moreover Linux is a sort of free software with open source codes 4. At present, most of the software architectures for NC engraving machine are without operating system support and not be able to meet various requirements. Those architectures have a simple structure, but the software development cycle is long, the development cost is expensive, the software quality is not guaranteed as well as the portability and scalability is poor. Although a few with commercial embedded operating system such as Windows CE in NC engraving system, the cost of production is high due to expensive royalties. So, it is not good for enterprise developing software with independent intellectual property rights. But if an embedded Linux operating system with open source is used, cost of production can be reduced because no licensing fee is needed and the cross development tool chain is also free. In addition, there are many other advantages such as reduced development time because of open source device drivers and reusable applications, convenient development environment configuration using module function, file system management and easy resolution of a problem from open source communities and so on 5. On the basis of above, enterprises 978-1-4244-2693-5/09/$25.00 2009 IEEE 2894can develop NC software with independent intellectual property rights and other various requirements can also be satisfied. Embedded Linux has recently become a current research focus in embedded system. II. MODEL OF HARDWARE Model is the abstraction of reality which can make clear description ofthe reality. In order to get the engraving control system model, the main hardware parts of the system are abstracted as shown in Fig. I. Fig. ) Model ofhardware The hardware of the NC engraving controller is provided with the architecture ofARM and FPGA (Field Programmable Gate Array). The master control chip of the controller adopts 32-bit RISC (Reduced Instruction Set Computer) ARM microprocessor chip S3C2440 of Samsung Company which based on ARM920T structure. It has high work efficiency up to 400MHz and many kinds of general interfaces, such as integrated UART for serial port, integrated USB, CEMERA, LCD, VGA and Ethernet controllers etc. Furthermore, it provides on chip memory manage unit (MMU) which is used to realize virtual memory management, so as Linux can be easily ported to ARM. The Cyclone FPGA EPlC6 of Altera Company was adopted as the slave chip to lighten the burden of the master control chip. NAND Flash memory is used for non-volatile program and data storage. Main memory is synchronous dynamic random-access memory (SDRAM) and might contain anywhere from a few megabytes to hundreds of megabytes depending on the application. The main processing flow ofthe system is described as follow: keying information of control panel is sent to ARM through serial port. ARM then process and send the corresponding control data to FPGA or display panel. FPGA is mainly doing front-end processing work of sensor and control information 6. The signals sent by FPGA are transformed and isolated by the adapter panel, and then are sent to the driver which will drive the stepping motor of the engraving machine so as to control the cutting tool path. To realize the functions of homing of engraving and tool changing, the sensor signal of engraving machine will be feed back to FPGA through adapter panel. Information is displayed on display panel which is LCD or VGA. In all, the controller built on embedded technology can reduce the system hardware scale, facilitate application 2895 development, cut down the cost and enhance the systems reliability and real-time performance. III. TASK PARTITION Data flow diagram (DFD) is an important design aid tool in system development, which allows the developer of a system to graphically show the flow of data in the system. DFD describe and analyze system more precisely than any other artifact, specifically in modeling of real time embedded system 7. The ultimate data flow diagram of the engraving machine system is shown as Fig. 2. A task represents the execution ofa sequential program or a sequential component in a concurrent program. Each task deals with one sequential thread of execution; hence no concurrency is allowed within a task. However, overall system concurrency is obtained by having multiple tasks that execute in parallel. The system decomposition by DFD has already been preliminarily analyzed. The dataflow of the system is clearly revealed, thus functions of the system and dataflow between them can be able to recognize conveniently. The next step is how to identify the concurrent tasks in the system by applying the task structuring criteria and the DFD. Here, the DARTS (Design Approach for Real Time System) method was used to decompose the system into smaller and more manageable units with well defined interfaces between them. Its central theme is to address the key aspects of structuring the system into concurrent tasks and define the interfaces between them. DARTS uses a set of task structuring criteria, which be called H Gomma principles for identifying the concurrent tasks in the system as well as a set of guidelines for defining the communication and synchronization interfaces between various tasks. ,. - - - - - - - - -. I I I I Fig. 2 The DFD ofengraving machine The task structuring criteria are a set ofheuristics derived from experience that obtained in the design of concurrent2010M 4 38 8 5 A MACH INE TOOL AaC ; ; O ; e d m s | : TG547null null D S M : Bnull null c I | : 1001- 3881 ( 2010) 8- 008- 3 Design ofFivenullaxisNCMachineTool ZHANG H u im in ( College of E lectrom echanical Engineer ing, Q ingdaoUn iversity of Science and Technology, Q ingdao Shandong 266061, China) Abstract: XTK138 /5 fivenullaxis NC m achine tool has selfnullowned in tellectual property righ ts and m any patents. The overall design of th is m achine too,l the design of AC axis, the design of the driven and control system w ere introduced. Them achine toolw as used in m anufacture and the operating condition was good, the m ach ining precision and efficiency reached the machining level of the im pornull ted m ach ine too.l K eywords: Fivenullax is NC m achine too;l AaC axis; E lectric spindle; Ball screw; Control system null null S / y ? Z , Y e 5 X F , q 1 p b 20 W 60M , B t ? r S E 7 S e 5 b e 5 9 e a ? z F B 8 , V r a w F , + Y F = a= a/ # v w Z + b / 4 v , S = Y e / T B S E 3 ! ! 1 1 S b , Z ? r S E B e / T 1 e g , ? Z S E ? Z v E , y 7 e / 4 S E 8 S i l b u S / , L C E B ! ? ? Z S , 1 M / XTK138/5 e 5 bT 5 + aF ? # P f , S e 5 / y ? Z b 1null 5 9 8 ! 9 1null1null 整體結(jié)構(gòu) XTK138 /5 e 5 1 l , q F b 5 D T , 8 X , l , 1 5 Z_ L E , ? , b 1 Z T , H 5 b ( ! V aV ? b _ ! K e , 5 T V L b 1null2null 主要技術(shù)參數(shù) T j ( z ) 725mm 485mm; H j ( z ) 680mm 300mm 100 mm; T : _ (X ) 600 mm; T _ ( Y ) 400 mm; (Z ) 300 mm; (A ) 360#; (C ) 90#; K l 150 mm; q 2null2 kW; 1 000 2 4000 r/m mi b : X 6N%m; Y 6N%m; Z 11 N%m; A 6 N%m; C 6 N%mb T K v 600 kg; 5 9 4null5 t; 5 j 2 008 mm 1 600 mm 2 480 mmb 2null AaC ! 9 m 2null AC h e 5 3 L P S q w , V 7 L C w F b e 5 T T b T e 5 5 XaYaZ 3 L AaC b T e 5 5 XaYaZ 3 L AaB b T 5 _ 1 , H _ s ( , y 7 R V , B K 2 000 r/m in / b7 T 5 i 1 3 Z _ z ( / a 0 8 l a Y z , l a a q v , V 7 e 5 1 p b 4null e d ! 9 XTK138 /5 e 5 S l a HNCnull22MD e d , ? a V L 7 b T CNC, CNCe s A A U ( 10null4j A U ) B 8 b FSSBa I/OL ink 1 Y , e q L , ? ( S ), y + V L C ; d RISC) , AL , ) e a e a a ? b d a q a I 3 z , P 5 a r q F ? b 5null 5 g P , X F = , 5 , F F r q r g 5 , N g 5 20% 25%b 5 , = , q 3 p 7b 5 ? V , g E , P i n M , g 5 , 5 q ? , B H e 5 ? / L , S 5 4 m b I D : &1 . 5 s ? Z e / J. , 2003( 4) : 44- 46. &2 a .B AC h : S , ZL200720181686. 4 P. 2008- 08- 20. &3 a . . h # : S , ZL200610102244. 6 P. 2008- 10- 15. &4 , B y + .C e 5 M . : ,1 B . e 5 d ! 9 M . : , 2005. 6. &7 a . XTK138 /5 F S / T k R. : Y K , 2008. 5. (上接第 30頁) m 8null ) b 5null T L M asterCAM e 1 I 1 o / , M asterCAM q 1 3 e F V v v 8 I H W , 4 e 5 P r q , h e F p q , 5 3 ? 5 b I D : &1 k . M asterCAM ! 9 M . : 0 , 2004. 6: 151- 169. &2 a. M asterCAM e I L M . : b v , 2000. 12: 49- 200. &3 D . e 5 F 1 I M . :S , 2002. 6: 166- 168. &4 . M asterCAM ) q ) I Z E # J. / / 5 , 2006( 1): 18- 20. %10% 5 A 38 淮 陰 工 學(xué) 院
畢業(yè)設(shè)計(jì)(論文)外文資料翻譯
學(xué) 院:
機(jī)械工程學(xué)院
專 業(yè):
機(jī)械設(shè)計(jì)制造及其自動(dòng)化
姓 名:
趙俊
學(xué) 號(hào):
1081101738
外文出處:
IEEE
(用外文寫)
Proceedings of the 2009 IEEE International Conference on Mechatronics and Automation August 9 - 12, Changchun, China
附 件:
1.外文資料翻譯譯文;2.外文原文。
指導(dǎo)教師評(píng)語:
年
月
日
簽名:
注:請(qǐng)將該封面與附件裝訂成冊(cè)。附件1:外文資料翻譯譯文
基于嵌入式 Linux 的數(shù)控雕刻機(jī)的軟件架構(gòu)設(shè)計(jì)
趙軍奇 李輝和龍飛鵬
航天和航空研究所 航天和航空研究所
中國(guó)電子科技大學(xué) 中國(guó)電子科技大學(xué)
610054,中國(guó)四川省成都市 610054,中國(guó)四川省成都市
zhaojunqi@qq.com kelly.li @ 126.com
摘要 - 嵌入式系統(tǒng)已經(jīng)被廣泛應(yīng)用在工業(yè)控制等諸多領(lǐng)域。隨著嵌入式應(yīng)用系統(tǒng)的規(guī)模和復(fù)雜性不斷提高,嵌入式軟件系統(tǒng)正變得越來越復(fù)雜。對(duì)與一個(gè)特殊的控制對(duì)象來說,設(shè)計(jì)合適的嵌入式軟件架構(gòu)是尤其重要的。同時(shí),NC(數(shù)控)雕刻機(jī)的各種功能和非功能需求的不斷提高。目前,大多數(shù)的軟件架構(gòu)的數(shù)控雕刻機(jī)即沒有操作系統(tǒng)的支持,也無法滿足這些要求。雖然一些有商業(yè)操作系統(tǒng)的支持的雕刻控制系統(tǒng),但是它是昂貴的,而且也不利于企業(yè)發(fā)展具有自主知識(shí)產(chǎn)權(quán)的軟件。為了解決上述問題,文件中基于嵌入式Linux和DARTS方法的新軟件架構(gòu)數(shù)控雕刻機(jī)被設(shè)計(jì)出來。首先是數(shù)據(jù)流圖系統(tǒng)的數(shù)據(jù)流分析,然后系統(tǒng)根據(jù)H Gamma原理被劃分成不同的任務(wù)。此外,軟件架構(gòu)被提出,還分析了任務(wù)間的同步和通信性。最后,進(jìn)行了實(shí)時(shí)分析。使用這種軟件架構(gòu),軟件系統(tǒng)變得簡(jiǎn)單明了,不同的控制元件,根據(jù)不同的時(shí)間粒度可以無縫集成。通過實(shí)際應(yīng)用,它被證明可以實(shí)現(xiàn)低成本的數(shù)控雕刻系統(tǒng)的各種要求。也大大提高了系統(tǒng)的靈活性和適應(yīng)性。
索引術(shù)語-ARM 嵌入式 Linux 雕刻 FPGA軟件架構(gòu)
一、簡(jiǎn)介
隨著規(guī)模和復(fù)雜性的嵌入式的軟件系統(tǒng)增加,軟件架構(gòu)的重要性已經(jīng)超越算法和數(shù)據(jù)結(jié)構(gòu)的計(jì)算。設(shè)計(jì)并指定系統(tǒng)總體結(jié)構(gòu)出現(xiàn)了一種新的問題 [1]。好的體系結(jié)構(gòu)可以幫助確保系統(tǒng)滿足關(guān)鍵性能的要求同時(shí),也能滿足可靠性、可移植性、可擴(kuò)展性、領(lǐng)域和互操作性。壞的體系結(jié)構(gòu)可以是災(zāi)難性的。架構(gòu)設(shè)計(jì)是從系統(tǒng)點(diǎn)視圖到整體系統(tǒng)的高層次設(shè)計(jì)。不同專家對(duì)軟件體系結(jié)構(gòu)有他們自己的定義。畢竟,在不同的領(lǐng)域和環(huán)境中它是一個(gè)解決實(shí)際問題的工具,因此各類建筑模型或定義已發(fā)布。雖然不同的定義有所不同,我們可以看到系統(tǒng)的體系結(jié)構(gòu)描述其總的結(jié)構(gòu)的概念的核心之處有很大程度的通用性。這種結(jié)構(gòu)通過了最高水平設(shè)計(jì)決策,包括諸如系統(tǒng)是由如何相互作用,相互作用的主要途徑在那里,什么是關(guān)鍵性能的部件。關(guān)鍵的一步,建筑設(shè)計(jì)是分到一些管理子系統(tǒng)和子系統(tǒng)之間的接口設(shè)計(jì)。軟件架構(gòu)設(shè)計(jì)不僅應(yīng)考慮如何滿足系統(tǒng)的功能和性能要求,而且也要滿足無功能方面的需求,如可靠性,可擴(kuò)展性,可移植性和可用性。也有不統(tǒng)一方法的軟件架構(gòu),尤其是在嵌入式系統(tǒng)中。
被稱為嵌入式Linux標(biāo)準(zhǔn)Linux裁縫通過小型化處理,并可以存儲(chǔ)在非易失性存儲(chǔ)器或微控制器的容量只有幾百KB或者幾MB。它是一個(gè)特殊的Linux操作系統(tǒng),適用于特定的嵌入式系統(tǒng)[2]。Linux已經(jīng)成為一個(gè)成熟的,高性能,穩(wěn)定可靠,可替代傳統(tǒng)的專有嵌入式操作系統(tǒng)[3 ]。Linux不僅擁有適應(yīng)性,靈活性和穩(wěn)定性,而且還具有強(qiáng)網(wǎng)絡(luò)功能。此外,Linux是一種免費(fèi)軟件開放源碼[4] 。
目前,大多數(shù)的數(shù)控軟件架構(gòu)雕刻機(jī)是沒有操作系統(tǒng)的支持和不能以滿足不同的需求。這些架構(gòu)具有結(jié)構(gòu)簡(jiǎn)單,但軟件開發(fā)周期長(zhǎng),開發(fā)成本是昂貴的,軟件的質(zhì)量不能保證以及可移植性和可擴(kuò)展較差。雖然一些與商業(yè)嵌入式操作系統(tǒng)如Windows CE的數(shù)控雕刻系統(tǒng),系統(tǒng)生產(chǎn)成本高,還有昂貴的專利費(fèi)。因此,它不是良好的企業(yè)發(fā)展與獨(dú)立軟件知識(shí)產(chǎn)權(quán)。但是如果一個(gè)嵌入式Linux使用開源操作系統(tǒng),生產(chǎn)成本可以減少因?yàn)闆]有許可費(fèi)是必要的,交叉開發(fā)工具鏈,也是免費(fèi)的。此外,有等諸多優(yōu)點(diǎn),如縮短開發(fā)時(shí)間又因?yàn)殚_源設(shè)備驅(qū)動(dòng)程序和可重復(fù)使用應(yīng)用程序,方便的開發(fā)環(huán)境配置模塊的功能,文件系統(tǒng)管理和容易解決的問題,從開源社區(qū)等[5]。在以上的基礎(chǔ)上,企業(yè)可以開發(fā)具有自主知識(shí)產(chǎn)權(quán)的數(shù)控軟件財(cái)產(chǎn)權(quán)利和其他各項(xiàng)要求,也可以是滿意。嵌入式Linux已成為當(dāng)前在嵌入式系統(tǒng)的研究重點(diǎn)。
二、硬件模型
模型是對(duì)現(xiàn)實(shí)的抽象,它可以明確對(duì)現(xiàn)實(shí)的描述。為了獲得雕刻控制系統(tǒng)模型,系統(tǒng)的主要硬件部分抽象為圖1
數(shù)控雕刻控制器的硬件與建筑的ARM和FPGA(現(xiàn)場(chǎng)可編程門陣列)??刂破鞯闹骺匦酒捎?2位RISC(精簡(jiǎn)指令集計(jì)算機(jī))ARM三星公司的微處理器芯片S3C2440的基于ARM920T的結(jié)構(gòu)。 它具有很高的工作效率400MHz和多種通用接口,如綜合,集成USB,UART串口CEMERA,液晶,VGA和以太網(wǎng)控制器等。此外,提供片上存儲(chǔ)器管理單元(MMU),這是用來實(shí)現(xiàn)虛擬內(nèi)存管理,使Linux可以很容易地移植到ARM 。
Alter 公司旋風(fēng) FPGA EPlC6 通過作為減輕負(fù)擔(dān)的主控芯片的奴隸芯片。NAND Flash 內(nèi)存用于非易失性的程序和數(shù)據(jù)存儲(chǔ)。主存儲(chǔ)器是同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器 (SDRAM) 和可能包含任意位置從幾Mb到數(shù)百兆字節(jié)取決于應(yīng)用程序。主要處理流系統(tǒng)的說明如下: 鍵控控制面板信息通過串行端口發(fā)送到手臂。臂然后過程和相應(yīng)的控制數(shù)據(jù)發(fā)送到 FPGA 或顯示面板。FPGA 主要做前端處理工作的傳感器和控制信息 [6]。發(fā)送的 FPGA 的信號(hào)都是轉(zhuǎn)換,并且由適配器孤立面板,然后發(fā)送到的驅(qū)動(dòng)程序,將會(huì)推動(dòng)的步進(jìn)電機(jī)的雕刻機(jī),以控制切削刀具路徑。若要實(shí)現(xiàn)歸巢的雕刻和工具更改的功能,將通過適配器泛 FPGA 回飼料的雕刻機(jī)傳感器信號(hào)
總之,建立在嵌入式技術(shù)上的控制器可以減少系統(tǒng)硬件規(guī)模、 促進(jìn)應(yīng)用程序開發(fā)、 減低成本和提高系統(tǒng)的可靠性和實(shí)時(shí)性能。
三、任務(wù)劃分
數(shù)據(jù)流圖(DFD)是一個(gè)重要的輔助設(shè)計(jì)工具在系統(tǒng)的開發(fā),它允許開發(fā)人員系統(tǒng)以圖形顯示系統(tǒng)中的數(shù)據(jù)流。DFD的描述和分析系統(tǒng)比任何更精確其他神器,特別是嵌入式實(shí)時(shí)建模[7]。最終的數(shù)據(jù)流圖的雕刻機(jī)系統(tǒng)(如圖所示2)
任務(wù)表示順序程序執(zhí)行或在并發(fā)程序的順序部分。每個(gè)任務(wù)一個(gè)順序執(zhí)行的線程處理,因此沒有并發(fā)允許范圍內(nèi)的任務(wù)。然而,整個(gè)系統(tǒng)并發(fā)是獲得有多個(gè)任務(wù)的執(zhí)行并行。
已經(jīng)DFD的系統(tǒng)分解初步分析。該系統(tǒng)的數(shù)據(jù)流顯然是透露,因此,系統(tǒng)和數(shù)據(jù)流之間的功能他們可以能夠識(shí)別方便。下一步是如何識(shí)別應(yīng)用系統(tǒng)中的并發(fā)任務(wù)任務(wù)結(jié)構(gòu)標(biāo)準(zhǔn)的DFD。在這里,飛鏢(實(shí)時(shí)系統(tǒng)設(shè)計(jì)方法)方法被用來分解成更小,更易于管理的系統(tǒng)單位與它們之間定義良好的接口。其核心主題是解決構(gòu)建系統(tǒng)的關(guān)鍵環(huán)節(jié)到并發(fā)任務(wù),并定義它們之間的接口。飛鏢采用了一套任務(wù)結(jié)構(gòu)標(biāo)準(zhǔn),這被稱為H Gomma原則確定并發(fā)任務(wù)系統(tǒng),以及一組確定的指導(dǎo)方針通信和同步接口之間各項(xiàng)任務(wù)。
任務(wù)結(jié)構(gòu)標(biāo)準(zhǔn),是一套啟發(fā)式,并發(fā)系統(tǒng)的設(shè)計(jì)中得到的經(jīng)驗(yàn)所得。在確定的任務(wù)主要考慮的是系統(tǒng)內(nèi)的功能的異步性質(zhì)。在H Gomma原則分為三個(gè)單獨(dú)的基于他們協(xié)助在任務(wù)中的使用方式的類別構(gòu)建活動(dòng)。首先是事件的依賴標(biāo)準(zhǔn)。事件依賴關(guān)系準(zhǔn)則處理任務(wù)時(shí)被激活,包括設(shè)備的I/O依賴形成的Y,定期事件,控制功能和用戶界面的依賴等。第二是任務(wù)凝聚力錫安標(biāo)準(zhǔn)。該的凝聚力錫安標(biāo)準(zhǔn)提供的評(píng)估函數(shù)的異步性質(zhì)的手段,從而為確定是否和/或如何的職能應(yīng)到并發(fā)任務(wù),其中包括連續(xù)的凝聚力,時(shí)空的凝聚力和功能的凝聚力相結(jié)合的基礎(chǔ)上。第三是任務(wù)的優(yōu)先級(jí)標(biāo)準(zhǔn),包括時(shí)間關(guān)鍵和計(jì)算密集型[8]。
要實(shí)現(xiàn)這個(gè)目標(biāo)的系統(tǒng)構(gòu)建到并發(fā)任務(wù)中,構(gòu)建 H Gamma原則弧數(shù)據(jù)流圖中所示的函數(shù)的應(yīng)用標(biāo)準(zhǔn)的任務(wù)。基于這些條件,雕刻軟件系統(tǒng)可分為七個(gè)部分的弧,如下所示 (即在圖 2 中的虛線幀)。
(a) 用戶界面任務(wù): 要顯示與坐標(biāo)如用戶交互信息,零件原點(diǎn)和過程進(jìn)展以及其他狀態(tài)信息等。
(b) 鍵盤處理任務(wù): 要從控制面板,如選擇文件、 系統(tǒng)設(shè)置或參數(shù)設(shè)置、 手動(dòng)移動(dòng)等接收控制命令,然后進(jìn)行相應(yīng)的處理。
(c) 文件處理任務(wù): 從 U 盤中讀取文件,然后解釋的 G 代碼或 HPGL 代碼處理文件。結(jié)果將存儲(chǔ)在緩沖區(qū)中。
(d) 數(shù)據(jù)處理任務(wù): 從緩沖區(qū)讀取的數(shù)據(jù)并處理它通過控制廠內(nèi) thm,如治療小行塊 (法官大 S) 的加速和減速控制,插值處理。
(e) 中斷服務(wù)任務(wù): 時(shí)手臂從 FPGA 收到中斷信號(hào)發(fā)送 FPGA 的步進(jìn)電機(jī)控制脈沖。
(f) 擴(kuò)展總結(jié)離子任務(wù): 實(shí)現(xiàn)一些擴(kuò)展功能。這些功能包括更新程序控制、 遙控電子控制、網(wǎng)絡(luò)管理和工具等,運(yùn)動(dòng)的模擬。
(g)FPGA 處理任務(wù): 實(shí)施實(shí)時(shí)功能,例如,將控制脈沖發(fā)送到的步進(jìn)電機(jī)進(jìn)行識(shí)別,接收和處理傳感器信號(hào)等。
任務(wù) (a)-(f) 在因?yàn)锳RM中實(shí)現(xiàn)其強(qiáng)大的計(jì)算能力。(G) 的任務(wù)實(shí)現(xiàn)的FPGA 由于其實(shí)時(shí)處理的能力。
四、結(jié)構(gòu)設(shè)計(jì)
A.軟件體系結(jié)構(gòu)
軟件架構(gòu)通常起著關(guān)鍵作用,要求和實(shí)施之間的橋梁。基于嵌入式Linux的數(shù)控雕刻機(jī)控制器的軟件結(jié)構(gòu)如圖3,每個(gè)架構(gòu)的一部分,也被描述如下。
BSP (板級(jí)支持包)是一個(gè)軟件開發(fā)包之間的硬件層和軟件層。它用于彌補(bǔ)硬件的差異,引導(dǎo)操作系統(tǒng),并提供設(shè)備驅(qū)動(dòng)程序。這是一個(gè)關(guān)鍵內(nèi)含的編輯操作系統(tǒng)和硬件之間的接口。
嵌入式Linux內(nèi)核的版本是2.6,許多新的功能已被添加到支持寬嵌入式系統(tǒng)的申請(qǐng)表格離子。它可以定制和移植基于ARM,以滿足我們的特殊要求數(shù)控雕刻系統(tǒng)。同時(shí),使用嵌入式Linux可以簡(jiǎn)化系統(tǒng)設(shè)計(jì)。復(fù)雜申請(qǐng)一些簡(jiǎn)單的任務(wù),這是程序可分為嵌入式Linux管理。
基于嵌入式Linux內(nèi)核,根文件系統(tǒng)與選定嵌入式圖形用戶界面(GUI)該系統(tǒng)的要求。系統(tǒng)管理接口也由嵌入式 Linux 支持。
YAFFS的(另一個(gè)閃存文件系統(tǒng))是采用根文件系統(tǒng),這也是一種日志結(jié)構(gòu)文件系統(tǒng)像JFFS/JFFS2。它是專為NAND Flash和適合大容量存儲(chǔ)設(shè)備。YAFFS的,因此設(shè)計(jì)不僅要適應(yīng)NAND快閃記憶體的功能,但也是為了更好地使用NAND快閃記憶體的優(yōu)勢(shì),以達(dá)到最佳性能。它使用的日志結(jié)構(gòu),錯(cuò)誤查修正和技術(shù),以提高NAND閃存的健壯性。YAFFS的來臨,使得低成本的NAND閃存芯片的影響伊夫和魯棒性。YAFFS的是高度可移植,可在Linux上運(yùn)行。
Qt/Embedded是著名的商業(yè)嵌入式GUI工具,具有巨大的跨平臺(tái)能力,可以很方便在目前流行的操作系統(tǒng),如嵌入式Linux的應(yīng)用。闕可以直接與I/O設(shè)備進(jìn)行通信。此外,其面向?qū)ο蟮南到y(tǒng)架構(gòu),使得其代碼結(jié)構(gòu)化,重用和運(yùn)行快。闕支持相框緩沖驅(qū)動(dòng)器,可以直接寫入幀緩沖不X-服務(wù)器或支持的X庫。以這種方式,這樣可以節(jié)省內(nèi)存成本和提高應(yīng)用程序的運(yùn)行效率[9]??紤]優(yōu)點(diǎn)上面提一下,本文采用它作為嵌入式輕量級(jí)的GUI組件庫的基本構(gòu)造工具面向工業(yè)監(jiān)控。
提到的部分所提供的服務(wù)的基礎(chǔ)上上面的數(shù)控雕刻(除了在應(yīng)用程序任務(wù)FPGA 處理任務(wù))的胳膊上的開發(fā)。在 FPGA處理任務(wù)將由 FPGA 單獨(dú)開發(fā)開發(fā)工具。
軟件系統(tǒng)是簡(jiǎn)單而明確的分層體系結(jié)構(gòu)設(shè)計(jì),避免整體系統(tǒng)的太大、太復(fù)雜。此外的優(yōu)勢(shì)分層體系結(jié)構(gòu):不同控制組件基于不同時(shí)間可以集成粒度無縫地,同時(shí)它可以輕松同步低級(jí)別的連續(xù)動(dòng)態(tài)之間的協(xié)調(diào)系統(tǒng)和高水平的離散事件系統(tǒng) [10]。
B.任務(wù)界面
FIFO緩沖區(qū)或共享的內(nèi)存可以用來任務(wù)之間進(jìn)行通信。通過訪問的內(nèi)存多個(gè)任務(wù),訪問程序都必須與其他同步數(shù)據(jù)的訪問。這種紙使用文件處理任務(wù)之間進(jìn)行通信的共享的內(nèi)存和達(dá)達(dá)處理的任務(wù),并通過生產(chǎn)者-消費(fèi)者問題解決同步問題的算法。文件表示為生產(chǎn)者,而數(shù)據(jù)處理任務(wù)處理任務(wù)被表示為消費(fèi)者。生產(chǎn)商過程產(chǎn)生數(shù)據(jù)所使用的消費(fèi)者過程。
允許生產(chǎn)者和消費(fèi)者的進(jìn)程運(yùn)行同時(shí),我們必須有一個(gè)可用的有界的緩沖區(qū)的可以填充由生產(chǎn)者并清空的項(xiàng)目,消費(fèi)者。此緩沖區(qū)將駐留在內(nèi)存中的一個(gè)區(qū)域,由生產(chǎn)國(guó)和消費(fèi)進(jìn)程共享。生產(chǎn)商可以生成一個(gè)項(xiàng)目時(shí),消費(fèi)者會(huì)消耗另一個(gè)項(xiàng)目??赡軙?huì)導(dǎo)致對(duì)共享數(shù)據(jù)的并發(fā)訪問數(shù)據(jù)不一致。生產(chǎn)者和消費(fèi)者必須同步,因此,消費(fèi)者不會(huì)嘗試使用項(xiàng)目,但尚未產(chǎn)生。為了解決同步過程中,將使用信號(hào)量。對(duì)于本項(xiàng)目,統(tǒng)計(jì)信號(hào)量的標(biāo)準(zhǔn)將用于空和完整,而不是二進(jìn)制的信號(hào)量,將使用互斥鎖代表互斥體。生產(chǎn)者和消費(fèi)者的身份運(yùn)行單獨(dú)的線程-將移動(dòng)項(xiàng)目,并從該緩沖區(qū)的與這些空,同步全額、 和互斥體結(jié)構(gòu).
允許生產(chǎn)者和消費(fèi)者的進(jìn)程運(yùn)行同時(shí),我們必須有一個(gè)可用的有界的緩沖區(qū)的可以填充由生產(chǎn)者并清空的項(xiàng)目,消費(fèi)者。此緩沖區(qū)將駐留在內(nèi)存中的一個(gè)區(qū)域,由生產(chǎn)國(guó)和消費(fèi)進(jìn)程共享。生產(chǎn)商可以生成一個(gè)項(xiàng)目時(shí),消費(fèi)者會(huì)消耗另一個(gè)項(xiàng)目??赡軙?huì)導(dǎo)致對(duì)共享數(shù)據(jù)的并發(fā)訪問數(shù)據(jù)不一致。生產(chǎn)者和消費(fèi)者必須同步,因此,消費(fèi)者不會(huì)嘗試使用項(xiàng)目,但尚未產(chǎn)生[11]。為了解決同步過程中,將使用信號(hào)量。對(duì)于本項(xiàng)目,統(tǒng)計(jì)信號(hào)量的標(biāo)準(zhǔn)將用于空和完整,而不是二進(jìn)制的信號(hào)量,將使用互斥鎖代表互斥體。生產(chǎn)者和消費(fèi)者的身份運(yùn)行單獨(dú)的線程-將移動(dòng)項(xiàng)目,并從該緩沖區(qū)的與這些空,同步全額、 和互斥體結(jié)構(gòu)。
FIFO,使得模塊內(nèi)的設(shè)計(jì)解耦。FIFO界面很簡(jiǎn)單,減少設(shè)計(jì)時(shí)間。FIFO 很少是瓶頸,以來的寬度和深度可以調(diào)整和非常適合連接自定義直接向嵌入式處理器,硬件和簡(jiǎn)單一個(gè)短的設(shè)計(jì)周期和小代碼的大小與實(shí)施[12]。 乒乓球操作中引入異步 FIFO 的設(shè)計(jì),以使 FPGA 和手臂實(shí)現(xiàn)無縫的緩沖和高速數(shù)據(jù)處理流,以確保 FPGA 的流水處理。顯示了典型的乒乓球操作方法如圖 5 [13]。
數(shù)據(jù)緩沖區(qū)模塊1
數(shù)據(jù)緩沖區(qū)模塊2
輸入的數(shù)據(jù)選擇器單元
2MUX1
輸出的數(shù)據(jù)選擇器單元
2MUX1
數(shù)據(jù)處理模塊
作為后面的 FPGA乒乓球操作的處理流程是: 從ARM的輸入的數(shù)據(jù)首先分配給"數(shù)據(jù)緩沖模塊我"通過"輸入數(shù)據(jù)選擇器單元",然后在下一次切換時(shí),將緩沖輸入的數(shù)據(jù)在"數(shù)據(jù)緩沖模塊 2"。同時(shí),數(shù)據(jù)緩沖在"數(shù)據(jù)緩沖模塊我"最后一次被發(fā)送到"數(shù)據(jù)處理模塊"處理通過"輸出數(shù)據(jù)單位"。在第三個(gè)時(shí),輸入和輸出數(shù)據(jù)交換了又兩個(gè)數(shù)據(jù)緩沖區(qū)模塊。提到的步驟以上將反復(fù)和重復(fù)。數(shù)據(jù)緩沖區(qū)模塊在我們的系統(tǒng)是先進(jìn)先出。數(shù)據(jù)選擇器的的開關(guān)信號(hào)單位是由 FPGA的發(fā)送中斷信號(hào),當(dāng)需要在數(shù)據(jù)。這意味著當(dāng)數(shù)據(jù)緩沖中的兩個(gè)之一已處理的數(shù)據(jù)緩沖區(qū)的模塊,然后將發(fā)送 FPGA ARM 的外部中斷信號(hào)。因此,手臂將發(fā)送數(shù)據(jù)以 FPGA 的中斷服務(wù)程序。FPGA將緩沖區(qū)在此數(shù)據(jù)緩沖區(qū)模塊,接收的數(shù)據(jù)。與此同時(shí),"數(shù)據(jù)處理模塊"仍可處理其他數(shù)據(jù)緩沖區(qū)模塊中的數(shù)據(jù)。乒乓球操作促進(jìn)系統(tǒng)的并發(fā)性。
用來達(dá)到相同的效果,對(duì)于其他任務(wù)的另一種方式是通過消息隊(duì)列,這是為操作系統(tǒng)提供協(xié)作進(jìn)程手段,彼此溝通,如圖 6 中所示。
消息
消息
發(fā)送消息
接收消息
消息隊(duì)列
消息隊(duì)列提供了一種機(jī)制,允許進(jìn)程溝通和同步他們的行動(dòng),而不共享相同的地址空間和中尤其有用分布式的環(huán)境中,溝通流程可能駐留在不同的計(jì)算機(jī)上。消息隊(duì)列設(shè)施提供至少兩個(gè)操作,發(fā)送 (消息) 和接收 (消息)。
在 Linux 系統(tǒng)中,函數(shù)用于創(chuàng)建消息隊(duì)列,功能用于發(fā)送使用消息隊(duì)列和 接收的消息) 函數(shù)從消息隊(duì)列中接收消息。當(dāng)任務(wù)發(fā)送消息到消息隊(duì)列,它首先判斷這是否消息隊(duì)列是完全不是。如果隊(duì)列已滿,則任務(wù)會(huì)一直等待,直到其他任務(wù)得到了來自消息消息隊(duì)列。同樣地,當(dāng)任務(wù)接收從消息消息隊(duì)列,它首先判斷是否該消息隊(duì)列為空。如果消息隊(duì)列為空,則該任務(wù)會(huì)一直等待,直到其他任務(wù)已發(fā)送消息消息隊(duì)列。消息隊(duì)列有五種工作模式,其中分別是一對(duì)一,一到多、 多對(duì)一,很多人為許多和充分的雙面打印??梢允遣煌墓ぷ髂J竭x擇了不同的通信要求基于之間的任務(wù)。
五、實(shí)時(shí)分析
任務(wù)可以是作為實(shí)時(shí)任務(wù)分類和非實(shí)時(shí)根據(jù)不同的實(shí)時(shí)請(qǐng)求的任務(wù)。雕刻機(jī)有三個(gè)耦合生成 XYZ 步進(jìn)電機(jī)運(yùn)動(dòng),每個(gè)電機(jī)已接收兩個(gè)控制其驅(qū)動(dòng)程序發(fā)出信號(hào),其中一個(gè)是脈沖和另一種是方向。它也有三限制傳感器,以確定軸的賽車終結(jié)點(diǎn)。FPGA 的實(shí)時(shí)任務(wù),例如,這樣做主要負(fù)責(zé)的是前端處理工作的傳感器和控制信息。所以,我們的系統(tǒng)中的實(shí)時(shí)任務(wù)是 FPGA 加工(非常高速 vhdl 描述的任務(wù),綜合的電路硬件描述語言)。FPGA 是直接連接到手臂內(nèi)存總線。"它們之間的通信通過閱讀來實(shí)施和書面運(yùn)輸指令和數(shù)據(jù)的內(nèi)存地址。"系統(tǒng)為用戶使用 10 內(nèi)存映射方法操作 FPGA 的空間。除了地址總線、 數(shù)據(jù)總線和控制信號(hào)線,也是一個(gè)外部中斷信號(hào)從 FPGA 相連的手臂。為了得到順利操作和效率,關(guān)鍵的問題在于是否 FPGA 可以不斷將控制信號(hào)發(fā)送到驅(qū)動(dòng)程序。那就是,無論是否FPGA 是缺乏控制信號(hào)。如果在這一條件,步進(jìn)電機(jī)將被阻止。要解決這個(gè)問題,乒乓球操作被通過 FPGA 來處理數(shù)據(jù)。所以,之后 FPGA 已經(jīng)處理了其中一個(gè)問題被轉(zhuǎn)換為,數(shù)據(jù)緩沖區(qū)模塊,手臂 ISR 是否可以響應(yīng)正被其它數(shù)據(jù)緩沖區(qū)模塊期間中斷信號(hào)處理。
條件進(jìn)行分析可以 FPGA 等多久通過使用數(shù)據(jù)緩沖區(qū)的 Linux 中斷響應(yīng)延遲在最壞的情況下的模塊。曾經(jīng)的影響因素在我們的系統(tǒng)了。相關(guān)的參數(shù)顯示如下: 雕刻,這表示為 v 的速度單位是米/分鐘 ;FPGA 中的數(shù)據(jù)大小的緩沖區(qū)模塊表示為 n ;步進(jìn)發(fā)送脈沖的頻率電機(jī)被表示為 f,哪一個(gè)單元是 Hz ;脈搏相當(dāng)于表示為 (5 ; FPGA 可以在的時(shí)間至少等待中斷響應(yīng)延遲表示為T,其單位是它們之間的關(guān)系顯示如下。
v = f ·o (mm / s) = 0.06 · f ·o(m / min) (I)
脈沖當(dāng)量 (在此雕刻機(jī) 5 是0.0025 毫米。 這樣我們能
(3) 繪制表格如圖,
如圖中所示,我們可以知道 FPGA 可以等待ARM 中斷響應(yīng)延遲為 n 的增加較多的時(shí)間。當(dāng)參數(shù) n 固定時(shí)時(shí)間 T 是迅速作為雕刻 v 增加的速度下降。雖然T 的時(shí)間被固定的為了提高雕刻速度,數(shù)據(jù)緩沖區(qū) n 的大小應(yīng)較大。T 的時(shí)間,F(xiàn)PGA 至少可以等待 ARM 中斷響應(yīng)延遲已確認(rèn)時(shí)的最大的雕刻速度 v和數(shù)據(jù)緩沖區(qū)大小 n 固定。比較時(shí)間 T 和武裝中斷響應(yīng)延遲,我們可以判斷這是否設(shè)計(jì)能滿足實(shí)時(shí)的需求。
瞄準(zhǔn)問題提到前的示例實(shí)時(shí)分析作為波紋管。如果發(fā)送的脈沖頻率步進(jìn)電機(jī)受到限制 100 Hz 40000Hz 之間。,是雕刻的速度是之間,限制0.0 l Sm/min-蒂姆/分鐘。數(shù)據(jù)緩沖區(qū)模塊的大小設(shè)置為500.然后 FPGA 發(fā)送一個(gè)中斷后武裝時(shí)信號(hào)它已經(jīng)處理了一個(gè)數(shù)據(jù)緩沖區(qū)模塊,會(huì)有12.5ms-5000ms (即 I2500μs-5000000μS) 的中斷通過使用 (3) 都得到的響應(yīng)延遲。然而,在 Linux 中正常中斷響應(yīng)上肢短潛伏期是在 600μS 內(nèi)[14]。 如你所知,這是完全滿意實(shí)時(shí)的要求。當(dāng)然,保留時(shí)間為中斷延遲也可由數(shù)據(jù)緩沖區(qū)的大小調(diào)整。在 FPGA 的模塊。顯然,數(shù)據(jù)緩沖區(qū)的大小是有限的。如果將添加到嵌入式 Linux 實(shí)時(shí)核心大小不再滿足要求的提高雕刻速度。所以在這種情況下 RT-Linux 將會(huì)適用于因?yàn)槠渲袛囗憫?yīng)延遲是僅在數(shù)萬內(nèi)單位為微秒。這就是改善雙內(nèi)核方法Linux 的實(shí)時(shí)性能。
六、實(shí)際應(yīng)用
在香港專業(yè)教育學(xué)院,這種軟件體系結(jié)構(gòu),它實(shí)際上用于雕刻機(jī)控制器。此控件的硬件平臺(tái)原型系統(tǒng)如圖 8所示。
雕刻示例所示右面,這是刻在上面所示的控制器。
七、結(jié)論
在本白皮書中,擬議的新的軟件體系結(jié)構(gòu)基于數(shù)控雕刻機(jī)控制器嵌入Linux。它方便了應(yīng)用軟件開發(fā)、削減降低開發(fā)成本,縮短了開發(fā)周期和增強(qiáng)了系統(tǒng)的可靠性和實(shí)時(shí)性能。靈活性和適應(yīng)性也是系統(tǒng)的很大的改進(jìn)。這種體系結(jié)構(gòu)的有效已實(shí)際應(yīng)用的確認(rèn)。此外,其他類型雕刻機(jī)控制器,如激光雕刻,可以此外將建立很容易,只要相應(yīng)的功能模塊被修改,以適應(yīng)該雕刻的要求。此外可以添加相應(yīng)的功能模塊到使其適用于不同類型的雕刻。各項(xiàng)要求如更新遠(yuǎn)程控制方案,控制、 網(wǎng)絡(luò)管理與仿真下一步,將輕松滿意工具的運(yùn)動(dòng)。
收藏