1、 本科毕业论文 (科研训练、毕业设计 ) 题 目: NMR(核磁共振 ) 仪器控制软件开发 基于 Java 脚本引擎的 Shell 命令解析 姓 名: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 学 号: 指导教师 (校内 ): 职称: 年 月 摘 要 NMR(核磁共振)仪器 控制软件, 作为 500MHz超导核磁共振谱仪系统的随机软 件,将 实现 对谱仪控制,完成 NMR 实验设计及采样、数据的处理及仪器、用户管理 等 。 本 毕设课题的研究重点在 集各模块功能于一体的命令行模块的设计原理和 实现上。 命令行模块 基于 Java 语言的脚本引擎,实现了对 Shell 命令的解
2、析。作为整个 RCP系统的一部分视图,该模块没有明显的独立功能,而是所有系统 功能 操作的命令集结 以及实现 脚本的解析 。 它通过引入 Java 6 中对脚本引擎的支持,来实现引擎运作的底层 机制 。 本文首先对项目的相关背景及需求作了简要介绍,旨在说明课题的研究目的及意义。接下来,本文对 NMR 谱仪控制软件系统的模 块结构,系统运作流程,界面风格以及项目的特色进行总体介绍 ,并让读者对系统的开发环境有个初步了解 。 在接下来两章,是本课题的研究重点,即命令行模块的设计原理,实现方法。由于该模块涉及到的是所有其他模块的功能命令化,因此该模块需要很好的处理好与各模块之间的参数使用 及 代码维
3、护。因此在开发命令行模块之前,对整个系统的数据构成,参数使用,进行了相关说明,以便 知晓如何 深入使用 和 操作。 关键词 : 控制软件 ; Java; 脚本引擎 ; Shell 命令 Abstract Controller software for The NMR (nuclear magnetic resonance) instrument, as the affiliated software of 500MHz superconductivity nuclear magnetic resonance spectrometer system, will achieve the purpo
4、se of spectrometer controlling, NMR experiment designing and sampling, data processing and the management of the user and the instrument. The research key of this topic is the module of command-line which will realize all of the functions of each module. Command-line module, which is based on the sc
5、ript engine of Java language, has realized the analysis of Shell commands. As parts of the views of entire RCP system, this module does not have its own functions obviously, but mass all of the functions of the system by commands. It realizes the operation mechanism by the support of script engine s
6、upplied by Java Version 6. First of all, the article makes a brief introduction to the background and requirements of this project, for the purpose of explaining the goal and the significance of this research. Secondly, this article gives an overall introduction to the module structure, the operatio
7、n flow, the interface style as well as the feature of the project. And whats more, it will give a preliminary understanding to the readers about the development environment. In the coming two chapters, it gives the keystone of this topic, which is about the principle of the design of the command-lin
8、e module and the methods of realization. As the command-line module involves the functions of all other modules, this module should have a good processing to other modules in parameter using and the code maintenance. So in the beginning, I give out a description of the system data constitution and t
9、he parameter using in order to let readers understand how to use them thoroughly. Keywords: Controller software; Java; Script engine; Shell command I 目录 第一章 绪论 . 1 1.1 课题 背景简介 . 1 1.2 NMR 谱仪及控制软件研究现状及其应用 . 1 1.3 课题 的需求说明 . 2 1.4 论文的主要工作和结构 . 3 第二章 NMR 控制软件系统设计 . 4 2.1 系统模块结构 . 4 2.1.1 实验设计模块 . 4 2.1
10、.2 数据处理模块 . 5 2.1.3 用户管理模块 . 5 2.2 系统流程图 . 5 2.3 系统运行界面 . 6 2.4 系统数据处理特色介绍 . 7 第三章 系统的开发环境简介 . 8 3.1 基本开发环境 . 8 3.2 ECLIPSE RCP 介绍 . 8 3.3 ECLIPSE RCP 开发环境 . 9 3.4 主要相关插件介绍 . 11 第四章 命令行模块的数据基础 .13 4.1 数据格式介绍 .13 4.2 系统的参数文件 .13 4.2.1 参数类型和约束 .13 4.2.2 参数树 .14 4.2.3 参数的存储格式 .14 4.2.4 参数的相关操作 .16 II 第
11、五章 命令行模块的设计和实现 .18 5.1 命令行模块的设计目标 .18 5.1.1 功能命令提示符 .18 5.1.2 脚本语言引擎 .19 5.1.3 信息提示 .20 5.1.4 命令缓冲 .20 5.2 命令行模块界面设计 .21 5.3 命令行模块脚本引擎的实现 .24 5.3.1 脚本 API功能介绍 .24 5.3.2 构建脚本引擎 .26 5.3.3 脚本引擎的运行上下文 .28 5.3.4 使用脚本引擎解析脚本 .31 5.3.5 脚本访问 Java 对象方法的高级实现 .32 5.4 命令接口定制 .33 5.4.1 定制接口 .33 5.4.2 功能代码整合 .34 5
12、.5 主要辅助功能的实现 .35 5.5.1 命令辅助提示的设计实现 .35 5.5.2 命令缓冲区的功能实现 .36 5.6 批量脚本执行的性能优化策略 .37 5.6.1 编译脚本策略 .37 5.6.2 使用代理运行脚本 .38 第六章 总结 .39 致谢 .40 参考文献 .41 附录 .42 III Contents Chapter 1 Introduction . 1 1.1 Project Background . 1 1.2 Present situation and application of the hardware and software of NMR . 1 1.3
13、 Requirement of the project. 2 1.4 Main work and structure of the thesis . 3 Chapter 2 Design of the software system . 4 2.1 System module structure . 4 2.1.1 Experiment designing module. 4 2.1.2 Data processing module . 5 2.1.3 User management module. 5 2.2 System flow chart . 5 2.3 Introduction to
14、 the software interface . 6 2.4 Features in the data processing of the system . 7 Chapter 3 Development environment. 8 3.1 Basic environment . 8 3.2 Introduction to Eclipse RCP . 8 3.3 Eclipse RCP Development environment . 9 3.4 Introduction to some plug-ins in use. 11 Chapter 4 Basic data of the co
15、mmand-line module . 13 4.1 Introduction to the format of the data. 13 4.2 Parameters document of the system. 13 4.2.1 Type of parameters and their restriction . 13 4.2.2 Parameters tree . 14 4.2.3 Memory format of parameters . 14 4.2.4 Operation to parameters . 16 IV Chapter 5 Design and realization
16、 of command-line module . 18 5.1 Design purpose of the command-line module . 18 5.1.1 Command interface of function . 18 5.1.2 Engine of the script . 19 5.1.3 Information prompt . 20 5.1.4 Commands buffering . 20 5.2 Interface design of command-line module . 21 5.3 Realization of the script engine .
17、 24 5.3.1 Introduction to script API . 24 5.3.2 Discovery and creation of script engine. 26 5.3.3 Context of the script engine . 28 5.3.4 Running the script by engine . 31 5.3.5 Advanced realization of accessing Java methods by script . 32 5.4 Complements of command-line interface . 33 5.4.1 Making interfaces . 33 5.4.2 Transplanting the code . 34 5.5 Realization to some main affiliate functions. 35 5.5.1 Realization of the prompt of commands . 35 5.5.2 Realization of the commands-buffer. 36 5.6 Optimization strategy of the execution of batch scripts . 37 5.6.1 Compiling the script .
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。