基于DSL的电化学仪器上下位机通信协议的设计与实现
发布时间:2017-10-31 04:20
本文关键词:基于DSL的电化学仪器上下位机通信协议的设计与实现
更多相关文章: 领域特定语言 上下文无关文法 通信协议 ANTLR 代码生成器
【摘要】:在电化学仪器中,上位机与下位机之间的通信对于数据在上下位机之间的传输起着重要作用。通信协议的研发对上下位机间数据传输的准确性和有效性起着非常重要的作用。本文以开发一整套电化学仪器中上位机与下位机通信协议的编码器和解码器为实验目标,针对领域特定语言(DSL,Domain-Specific Language)这一研究方向,将原本由自然语言描述的电化学仪器通信协议,形式化为上下文无关的协议规则,从而消除了使用自然语言来描述协议所存在的冗余性和二义性等缺陷。同时应用DSL的一种实现方法 ANTLR(Another Tool for Language Recognition)和String Template实现了扫描电化学显微仪器中32种实验方法的128个编码器和解码器的自动生成,提高了代码生成的效率和质量,以及项目最终的可拓展性以及可维护性。本文以通信协议为基础,将不同的电化学实验表示为不同的输入文件。通过ANTLR进行词法分析、语法分析,将实验名称、实验指令、实验参数、参数类型从输入文件里解析出来,保存成层级嵌套的数据结构,通过String Template进行渲染,最终得到上下位机间通信的编码器、解码器和相关测试代码。本文中项目的实现由启动模块、输入模块、解析模块、控制模块、渲染模块构成。启动模块采用不同的脚本技术实现,解决了项目的跨平台需求,其主要作用包括设置环境变量,编译数据定义和控制逻辑的类,并启动入口函数;输入模块以不同实验方法为维度,划分为不同的文件,解决了项目的多实验支持,输入文件依据通信协议设计来组织,提供实验相关数据;解析模块包括词法分析器和语法分析器,是将输入文件的实验数据提取出来并传递给控制模块中的数据定义相关类;控制模块是项目的主要业务逻辑,包括数据定义类、渲染逻辑类等,其作用主要是将解析模块传递过来的实验数据,加载到渲染模块;渲染模块根据控制模块组织好的渲染数据,进行模板的渲染,生成相关源代码。
【关键词】:领域特定语言 上下文无关文法 通信协议 ANTLR 代码生成器
【学位授予单位】:东北师范大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TH832;TP393.04
【目录】:
- 摘要4-5
- Abstract5-8
- 引言8-9
- 第一章 绪论9-12
- 1.1 研究背景9
- 1.2 研究内容9-10
- 1.3 研究意义10
- 1.4 本文结构10-12
- 第二章 上下位机间通信协议相关背景12-18
- 2.1 电化学仪器简介12
- 2.2 上下位机12-14
- 2.2.1 上位机13
- 2.2.2 下位机13-14
- 2.3 上下位机间通信14-15
- 2.3.1 串口通信方式14
- 2.3.2 USB通信方式14
- 2.3.3 TCP/IP通信方式14-15
- 2.4 DSL概述15-18
- 2.4.1 DSL (领域特定语言)15-16
- 2.4.2 领域特定语言的意义16
- 2.4.3 国内外领域特定语言的研究现状16
- 2.4.4 ANTLR与StringTemplate16-18
- 第三章 基于DSL的电化学仪器上位机软件产品线的分析与设计18-29
- 3.1 需求分析18-20
- 3.1.1 多实验支持,,可变参数支持18
- 3.1.2 跨平台支持18-19
- 3.1.3 序列化与反序列化19
- 3.1.4 测试需求19-20
- 3.2 系统总体设计20-21
- 3.3 各模块详细设计21-29
- 3.3.1 输入模块详细设计21-25
- 3.3.2 协议模块详细设计25-26
- 3.3.3 解析模块详细设计26
- 3.3.4 渲染模块详细设计26-27
- 3.3.5 控制模块详细设计27-29
- 第四章 基于DSL的电化学仪器上下位机间通信协议的实现29-33
- 4.1 输入模块实现29-30
- 4.2 启动模块实现30
- 4.3 解析模块实现30-31
- 4.4 控制模块实现31-32
- 4.5 渲染模块实现32-33
- 第五章 总结与展望33-35
- 5.1 总结33-34
- 5.2 展望34-35
- 参考文献35-37
- 附录37-40
- 致谢40-41
- 在学期间公开发表论文及著作情况41
【参考文献】
中国期刊全文数据库 前7条
1 刘爱东;张永强;杨健;王莹;;USB设备互连通信协议设计[J];电光与控制;2011年01期
2 邵元华;扫描电化学显微镜及其最新进展[J];分析化学;1999年11期
3 杜时英;;上位机与下位机的数据传输以及协议小议[J];计算机光盘软件与应用;2012年15期
4 张蓓;;我国电化学测量仪器的现状和发展趋势[J];中国计量;2006年04期
5 杨旭东,孙凌逸,王永军,王俊彪;基于上下位机的拉弯机数控系统研究[J];制造业自动化;2005年04期
6 龙世滔,吴信才,郑晓峰;基于ANTLR的XML解释器的设计与实现[J];现代计算机(专业版);2004年06期
7 梁志锋;解翔;唐小琦;;基于工业以太网的网络数控系统设计及实现[J];现代制造工程;2006年01期
中国硕士学位论文全文数据库 前4条
1 刘三献;基于ANTLR的Gaussian词法分析器和语法分析器的分析与设计[D];兰州大学;2009年
2 赵利君;基于ANTLR的TTCN-3分析器的设计与实现[D];内蒙古大学;2010年
3 刘先毅;基于管道、过滤器的电化学工作站的开发[D];东北师范大学;2012年
4 郑蕊;基于DSL的电化学仪器上位机软件产品线的设计与实现[D];东北师范大学;2014年
本文编号:1120761
本文链接:https://www.wllwen.com/kejilunwen/yiqiyibiao/1120761.html