1 研究背景
我们通过火箭姿态姿态控制CAD系统进行控制器设计和仿真计算,然而,这些我们设计的这些控制器结果和仿真计算得出的频域分析结果、时域仿真结果都是重要的仿真数据,都需要有组织地存储起来,以便后期查看、输出技术文档等等。因此设计具有数据管理功能的火箭姿态控制CAD数据管理系统有非常重要的意义。CAD数据管理系统为火箭姿态控制CAD系统提供数据支持。同时,有助于提高设计仿真效率的数据管理系统也是箭姿态姿态控制CAD系统的重要系统组成。
CAD数据管理系统的核心部分是数据库,它不仅要存储历次仿真中积累下来的大量珍贵的仿真数据,还要存储各种纷繁的仿真计算用的方程参数数据。然而要对这些关系纷繁的参数数据进行查看、编辑、分析,单靠数据库管理系统(DBMS)提供的用户界面是很不方便的,因此就需要开发一个数据库前端界面软件,即CAD数据库管理软件。此CAD数据管理系统应具有的一个比较人性化的功能,就是能给用户提供简单易用的手工录入数据界面,以便可以手工设置各别仿真模型的参数。显然,这些参数数据不是记录在文件中的,而是需要人工根据情况输入的,无法用批处理的方法统一导人数据库i3i。此外,通过此CAD数据库管理软件可以向数据库导入仿真任务书中的参数,然后形成统一格式的数据库记录,以便于为姿态控制仿真程序提供计算参数。同样,控制器的设计结果,仿真程序的计算结果也保存在数据库中,以便利用数据管理系统实现结果数据查询、数据分析、技术报表自动生成等功能,为用户提供有关火箭姿态控制器设计方案的性能的重要信息。
同时,还要通过CAD数据管理系统对系统数据库进行维护。用户不必掌握深厚的数据库知识,只需通过CAD数据管理系统进行简单的操作,就可以对用信息户、仿真文件、仿真数据等数据进行管理,也可以对整个数据库的进行多种方式的备份或恢复。
本文主要研究可以满足以上背景需要的火箭姿态控制CAD数据管理系统的设计。此数据管理系统是整个CAD及仿真系统的为支持平台,它是在基于SQL Server 2008数据库的仿真系统数据库基础之上开发的。
2 CAD数据管理系统功能模块设计
2.1 需求分析
要设计一个数据管理系统,首先要做好此系统的需求分析,确定都有哪些功能模块以及每个功能模块都要实现哪些功能。
对于火箭姿态控制CAD数据管理系统,主要的工作流程可以如下描述:用户通过登录模块验证用户身份,登录系统并获得相应的操作权限;通过任务管理模块创建任务、批量导人参数;参数处理模块为用户将要进行的仿真任务提供所需计算参数;设计及仿真任务结束时,将结果保存至数据库,而且用户可以通过数据查询模块,按一定的条件查询历史仿真结果并可以自动输出相应的技术报表;用户通过文档管理模块可以对原始参数数据文件、生成的技术报表文档进行管理;具有系统管理员权限的用户可以通过系统维护模块对系统数据库进行备份、还原等系统维护操作。
2.2 系统功能模块设计
根据以上功能需求描述和实际情况,我们划分出以下几个系统模块.并详尽指出每个模块应实现的功能。
登录模块:利用账户号、密码进行系统登录功能;新用户注册功能;数据库连接配置功能。
任务管理模块:按火箭级数创建仿真任务功能;为任务批量导入、修改、删除仿真参数的功能。
用户管理模块:用户仿真任务的管理功能,包括任务的选择、切换、删除;用户信息的修改、添加和删除功能。
计算参数的处理与提供模块:按照指定的插值方式完成参数的插值计算功能,其中插值方式有线性插值、保持、置零三种方式,对于秒点、阶次的不同所带来的特殊的插值情况,插值程序能够自动识别处理;参数以统一的格式保存在数据库中,为频域分析程序、控制器设计程序、时域仿真计算程序、起飞漂移计算程序供计算参数。
数据查询模块:按用户、时间、技术指标等查询条件对历史仿真结果进行查询功能;导出查询结果并自动生成技术报表功能。查询结果包括频域分析、时域仿真的数值型结果和曲线图型的结果。
文档管理模块:可以完成仿真参数数据文件、仿真结果报告等文档的管理功能。譬如添加、删除、移动、复制等功能。
系统维护模块:系统数据的备份、还原功能,备份的方式包括完全备份和差异备份;根据数据库日志文件的大小,对日志文件定期维护的功能。
每一个功能模块中的所有功能都在一个界面上实现。我们都要对每个功能模块设计相应的界面。界面的设计在本文中暂不讨论。
3 技术方案
3.1 系统架构确定
为了简化研究和设计的复杂性,无论是在看待整个计算机系统的观点上还是在某个具体软件系统的实现中,人们都倾向于采用一种分层结构的思想。在常见的数据管理系统中,模块化的分层设计模型是提高系统可用性和可维护性的主要途径。常见的分层架构有“双层架构模式”和“三层构架模式”。然而,三层构架相比于双层架构有具有结构清晰、耦合度低、可扩展性和可维护性高、容易适应需求变化等优点。这里所说的三层架构,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才有三层架构,三层是指逻辑上的三层。通过引入中间层,将复杂的系统功能从传统的双层结构(Clien-tServer)应用模型中分离出来,并提供了可伸缩、易于访问、易于管理的方法,可以将多种应用服务分别封装部署于应用服务器,同时增强了应用程序可用性、安全性、封装复用性、可扩展性和可移植性,使用户在管理上所花费的时间最小化,从而实现了便捷、高效、安全、稳定的系统应用。
针对本CAD数据管理系统,将利用“三层构架模式”进行设计,进而提高系统的可用性和可维护性。所谓的三层架构就是在表示层、数据访问层之间加入了一个业务逻辑层,它与表示层、数据访问层共同构成三层体系,如图1所示。在本系统中,表示层即为用户界面,业务逻辑层即为设计仿真计算层。
图1 三层构架模式
3.2 数据访问层技术选择
根据不同数据管理系统的工作环境,我们应选择相对适合的通用数据访问技术。
在火箭姿态CAD数据管理系统中,在进行设计或仿真计算时,要获得最佳的数据访问性能,就需要从数据库中读取大量的参数数据并把数据缓存至内存中,以供设计或仿真程序使用。然而,在这么多的通用数据访问方法中,ADO.NET类是唯一的能以断开连接的方式工作的通用数据数据访问技术。利用ADO.NET数据访问技术,用户可以从服务器端访问、下载参数数据,并将所需的大量的参数缓存至内存中,然后就和数据库服务器或数据存储断开连接。而一旦设计或仿真计算程序处理完数据,还能再次连接上原来的数据存储,并将改动的内容更新到数据存储上。
所以,针对本系统的工作特点,我们将选用ADO.NET通用数据访问技术作为系统数据访问层的实现技术。
4 数据库基表设计
数据管理系统的每个界面及其上面的功能都与数据库中的数据一一对应、密切相关。在保证系统功能模块之间低耦合或无耦合的前提下,我们为每个功能模块建立一张能与此功能模块相对应的数据库基表,其中有下划线的字段为其基表的组合主键,数据库采用SQL Server 2008。下面是数据库基表的设计,基表之间的关系如图2所示。
图2 数据库基表关系图
任务信息表:
火箭代号,级数,版本号,任务编号,创建人,起始时间,结束时间,备注。
用户信息表:
用户ID,密码,姓名,性别,是否是管理员,
是否记住密码,上次任务编号,备注
用户任务信息表:
用户ID,任务编号,用户任务结果ID,是否是设计人员(任务类型),……各个通道存储时间字段……,备注,
控制器设计参数表:
用户任务结果ID,控制器类型,秒点,……(各个控制器参数字段)……
参数基表(模型):
任务编号,值类型,值状态,秒点,阶次,……(各个参数字段)……
仿真结果基表(模型):
用户任务结果ID,值状态,秒点,……(各个仿真结果字段)
在以上基表中,任务信息表对应着任务管理模块,存储有系统关任务的属性信息;用户信息表对应着登录模块,存储账户、密码、等用户信息;用户任务信息表存储有关用户各自所做的任务的信息;控制器设计参数表存储用户每个任务设计的控制器参数取值。其中,参数基表具体包括刚体参数、振动参数、晃动参数、控制观测参数、起飞漂移参数、滚动参数表,分别存储每个任务对应参数类型的参数值。仿真结果基表包括时域各个通道的结果状态表,也包括频域分析各个通道的裕度表、结果状态表,分别存储每个任务对应的设计、仿真结果值。数据查询模块就是根据各个仿真结果基表中的数据,完成按条件结果数据查询、技术报表自动输出等功能。
5 结束语
本文给出了相对比较合理的系统模块划分、数据库设计和实现技术的选择,为真正编码实现火箭姿态控制CAD系统打下了全面坚实的技术基础。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:火箭姿态控制CAD数据管理系统设计