基于Ptolemy Ⅱ的自主飞行器控制系统代码生成及应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
面对自主飞行器控制系统日趋增长的功能需求和系统复杂度,传统的软件开发方法日益彰显其缺陷与不足。针对如何保证软件的正确性、安全可靠性和提高自主飞行器控制系统软件的开发效率,本文在总结和比较基于模型嵌入式软件设计方法和模型驱动软件设计方法,分析传统自主飞行器控制系统软件开发的弊端和不足的基础上,提出了一种基于Ptolemy II自主飞行器控制系统软件开发的方法,实现了从系统模型和通讯模块到代码之间的自动生成,不仅提高了自主飞行器控制系统的开发效率,而且通过将自动生成的代码实施在分布式的计算平台进行控制小型四翼直升机飞行的硬件在环仿真仿真实验,从而验证了设计的正确性。本文的主要内容和贡献包括以下几个方面:
     1)提出研究基于Ptolemy II自主飞行器控制系统软件开发方法,引入基于模型的设计方法解决自主飞行器控制系统软件设计正确性和可靠性的问题,使用适合于控制系统建模的同步数据流计算模型来指导模型中各个模块之间的交互通讯。运用模型集成运算(Model-Integrated Computing,MIC)嵌入式系统开发方法,在GME环境中用UML语言构建CME元模型,基于元模型设计代码解释器和模型转换解释器,代码解释器可以方便地生成用户定制的通讯代码,模型转换解释器可以将CME模型转换到成能被Ptolemy II解析的模型。代码解释器和模型转换解释器具有通用性,能针对不同系统的不同模型迅速完成代码生成和模型转换的功能。
     2)通过开源的系统级异构设计与仿真平台Ptolemy II用于自主飞行器控制系统建模并在改进其代码生成器的一些缺陷的基础上自动生成模型代码,通过基于特定领域建模语言构建的具有通用性的模型代码解释器自动生成通讯代码,提高软件开发效率。
     3)以自主飞行器控制系统控制小型四翼直升机飞行的分布式硬件在环仿真为实例,探索基于Ptolemy II自主飞行器控制系统软件开发方法的可行性和有效性,实验结果验证了基于Ptolemy II的自主飞行器控制系统软件的正确性。
According to the unceasing increment of functional requirement and system complexity of the autonomous vehicles control systems, defect and deficiency of traditional software development methodology is becoming manifest. Given guaranteeing the correctness and safety of autonomous vehicles control systems software and increasing the efficiency of software development, this thesis proposes a kind method of autonomous vehicles control systems software development based on Ptolemy II after summarized and compared M MBD (Model-based Development) with MDD (Model Driven Development), and analyzed the shortcomings of traditional software development methodology. This method realized code generation from system model and communication model, which do increase the e efficiency of autonomous vehicles control systems software development. Further more, this method verified the correctness of design by deploy the generated code onto distributed computation platform performing HILS (Hardware-in-The-Loop Simulation). The main contains and contributions of this thesis are as follows.
     First, we put forward the autonomous vehicle control system software development method based on Ptolemy II. Model-based design methodology is introduced to solve the problem of correctness and dependability in autonomous vehicle control system software design. Synchronous dataflow is a model of computation suitable for modeling control systems. In a synchronous dataflow model, the underlying model of computation governs the interaction and communication of the components in the model. MIC (Model-Integrated Computing)is utilized to build CME meta-model by UML in GME. Based on the CME meta-model, the code interpreter is built for generating communication code, and the model transfer interpreter is built for transferring CME models to models which can be parsed in Ptolemy II simulation environment. Code interpreter and model transfer interpreter have the universal properties of code generation and model transformation form different models of different systems.
     Second, Ptolemy II is used to model autonomous vehicles control system,which is a system level heterogeneous model design and simulation platform. Model code can be g enerated from the Ptolemy II after we improved on some defects of the code generator. The code of communication for fulfills distribution data transformation is automatically generated by CME code interpreter. The autonomous vehicle control system software development method based on Ptolemy II increase of efficiency of software development by automation code generation.
     Third, we take controlling fly the quid-rotor helicopter performing distributed HILS by autonomous vehicle control system as an instance to explore the feasibility and validity of the autonomous vehicle control system software development method. The experimental results validate the correctness of the software designed by the method.
引文
[1] Edward A. Lee, Alberto Snagiovanni-Vincentelli. A Framework for Comparing Models of Computation [C]. IEEE Transactions on CAD (S0278-0070), Vol. 17, No. 12, December 1998.
    [2] http://www.mathworks.cn/products/simulink/description1.html.
    [3] http://www.esterel-technologies.com/products/scade-suite/.
    [4] Paul Caspi, Adrian Curic, Aude Maignan, Christos Sofronis, Stavros Tripakis, and Peter Niebert. From Simulink to SCADE/Lustre to TTA : a Layered Approach for Distributed Embedded Applications. In Languages, Compilers and Tools for Embeddeed Systems (LCTECS'03), 2003.
    [5] http://ptolemy.berkeley.edu/ptolemyII/.
    [6] Shuvra S. Bhattacharyya, Christopher Brooks, Elaine Cheong, et al. Heterogeous Concurrent Modeling and Design in Java (Volume 1: Introduction to Ptolemy II) [M], pp14-23, University of California at Berkeley, 2007.
    [7] Sandeep Neema, Gabor Karsai, Embedded Control Systems Language for Distributed Processing, ISIS Technical Report, Vanderbilt University, 2004.
    [8] B. Schatz, et al. Model Based Development. Technical Report. TUMI-0402.Technische University Munichen, 2002.
    [9] G. Karsai, J. Sztipanovits, A. Ledeczi, and T. Bapty. Model-Integrated Development of Embedded Software. Proceedings of the IEEE, Vol. 91, No. 1, January, 2003.
    [10] D. Niz, R. Rajkumar. Model-Based Embedded Real-Time Software Development. 2003. 10th IEEE Real-Time and Embedded Technlogy and Applications Symposium(RTAS 2003), Workshop on Model-Driven Embedded Systems (MDES 2003), May 27-30, 2003, Washington DC,USA
    [11] http://vehicle.me.berkeley.edu/mobies
    [12]高志刚.基于模型的汽车电子软件综合方法研究[D].浙江大学博士学位论文, 2008.
    [13]宋柱梅.基于模型集成运算的嵌入式装备控制系统开发方法的研究[D].华南理工大学博士学位论文, 2006.
    [14]杨向忠,安锦文,崔文革.嵌入式自动代码生成技术应用研究[J].弹箭与制导学报. 2008, 06, Vol.28 No.3:250-257.
    [15] http://www.omg.org/mda
    [16] http://www.omg.org/spec/uml
    [17] http://www.omg.org/spec/mof
    [18] http://www.omg.org/spec/ocl
    [19] http://www.omg.org/spec/xmi
    [20] T. Weigert, F. Weil, K. Marth, P. Baker, C. Jervis, P. Dietz, Y. Gui, A. Van Den Berg, K. Fleer, D. Nelson, M. Wells, and B. Mastenbrook,“Experiences in Deploying Model-Driven Engineering”In E. Gaudin, E. Jajm, and R. Reed editors, Design for Dependable Systems, Lect. Notes in Comp. Sci., 4745, Springer Verlag, 35-53, Paris, Sep. 2007.
    [21] G.Bleakley, R.F. Bolt, H.P. Hoffman. Model-Driven Development and Model-Based Design to rapidly develop industrial automation application. 2006. http://www.embedded-computing.com/articles/id/?1979.
    [22] K.Chen, J.Sztipanovits, and S.Abdelwahed. A Semantic Unit for Timed Automata Based Modeling Languages. The 12th IEEE Real-Time and Embedded Technology and Applications Symposium, pp.347-360, 2006.
    [23] Christopher Brooks, Edward A. Lee, Xiaojun Liu, Stephen Neuendorffer, Yang Zhao, Haiyang Zheng. Heterogeous Concurrent Modeling and Design in Java (Volume 3: Ptolemy II Domains) [M], University of California at Berkeley, 2007.
    [24] Christopher Brooks, Edward A. Lee, Xiaojun Liu, Stephen Neuendorffer, Yang Zhao and Haiyang Zheng. Heterogeous Concurrent Modeling and Design in Java (Volume 2: Ptolemy II Software Architecture) [M], University of California at Berkeley, 2007.
    [25] E. A. Lee and S. Neuendorffer. MoML - A Modeling Markup Language in XML Version 0.4. Technical report, University of California at Berkeley, March, 2000.
    [26] Ledeczi A., Maroti M., Bakay A., Karsai G., Garrett J., Thomason IV C., Nordstrom G., Sprinkle J., Volgyesi P., The Generic Modeling Environment, Workshop on IntelligentSignal Processing, Budapest, Hungary, May 17, 2001.
    [27] Pilarski,Cost effectiveness of formal methods in the development of avionics systems at Aerospatiale,Digital Avionics Systems Conference,1998,11(1):C14/1~9
    [28] T. John Koo, Judith Liebman, Cedric Ma, Benjamin Horowitz, Alberto Sangiovanni-Vincentelli, Shankar Sastry. Platform-Based Embedded Software Design for Multi-Vehicle Multi-Modal Systems [C]. Embedded Software Conference, Lecture Notes in Computer Science (S0302-9743), Springer-Verlag, 2002.
    [29] T. John Koo, Yi Ma, and Shankar Sastry. Nonlinear Control of A Helicopter Based Unmanned Aerial Vehicle Model [C]. IEEE Transactions on Control Systems Technology (S1063-6536), January 2002.
    [30] Mark B. Tischler. System Identification Methods for Aircraft Flight Control Development and Validation [M]. Advances in Aircraft Flight Control, October 1995.
    [31] Charles A. Clifton. Hybrid System Based Design for the Coordination and Control of Multiple Autonomous Vehicles [D]. Vanderbilt University, August 2005.
    [32] Edward A. Lee, D.G.Messerschmitt. Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing [C]. IEEE Transactions on Computers (S0018-9162), Vol. 36, No 1, pp9-20, 1987.
    [33] Edward A. Lee, and D. G. Messerschmitt, Synchronous Data Flow [C]. IEEE Proceedings (S0018-9219), September, 1987.
    [34] Edward A. Lee. A Coupled Hardware and Software Architecture for Programmable Digital Signal Processors [D], University of California at Berkeley, June 10, 1986.
    [35]刘国鑫,谭国强,贺也平.同步数据流模型调度的空间优化[J].计算机工程与应用, 2009, 45(3):198-201.
    [36] Neil. D. Jones, Carsten. K. Gomard, Peter. Sestoft. Partial Evaluation and Automatic Program Generation [M]. Prentice-Hall, June 1993.
    [37] Gang Zhou, Man-Kit Leung, and Edward A. Lee. A Code Generation Framework for Actor-Oriented Models with Partial Evaluation [C]. International Conference on Embedded Software and Systems, (S0302-9743) Lecture Notes in Computer Science, pp.786-799, 2007.
    [38]高红雨,廖湖声,王众.一个基于部分求值的Java动态优化系统.计算机科学,2003,Vol.30:145-147.
    [39] http://www.netlib.org/lapack/
    [40] http://www.netlib.org/clapack/
    [41] http://www.netlib.org/blas/
    [42] Haiyang Zheng. The Constrained Modeling Environment. EE290O CLASS Report, Department of Electrical Engineering and Computer Science University of California, Berkeley, 2004.
    [43]伍智锋.分布式飞行仿真技术研究[D].西北工业大学博士论文, 2003.
    [44] http://www.ptiphoenix.com/VZmodels.php/.
    [45]张红亮.分布式系统时钟同步技术的研究与应用.国防科学技术大学硕士论文, 2002.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700