吕俊成,莫易敏,袁智军,何 庆,王 峰
(1.武汉理工大学机电工程学院,湖北武汉430070;2.上汽通用五菱汽车股份有限公司 CAE中心,广西柳州540057)
近年来,我国汽车工业得到了迅猛发展,据国家统计局数据显示,截至2012年末,我国民用汽车保有量达到约11 000万辆,未来我国民用汽车的数量将越来越多。随着汽车数量的增加和行驶速度的不断提高,行车安全越来越重要,而在所有汽车事故中,与碰撞有关的事故占90%以上[1],目前汽车安全碰撞研究已经成为汽车研究中的一个重要项目。
汽车安全碰撞结构吸能技术是其中的核心技术之一,它主要包含了碰撞CAE(computer aided engineering)分析、零部件性能控制、流程建设、规范建立、试验开发及优化等全方位的开发能力[2-3]。为了提高汽车碰撞安全结构吸能件的设计质量,减少设计成本,缩短设计周期,实现设计人员之间的信息共享,需要充分利用计算机技术、通信技术及网络技术,实现汽车碰撞结构吸能件的高效开发。笔者对某公司现有的前置后驱车型平台下各种车型(或对标车型)的结构吸能相关参数进行总结,建立基础数据库,并在此基础上比较现有车型设计的优劣势,固化优势车型的设计经验,为碰撞安全目标设定和具体开发提供了有力的决策支持。因此,汽车安全碰撞结构信息系统建设具有重要的现实意义[4]。
系统软件的设计采用模块化的设计思想,同时满足以下两个度量原则:
(1)低耦合性。耦合性是软件系统结构中各模块间相互联系紧密程度的一种度量。模块间耦合高低取决于接口的复杂性、调用的方式及传递的信息。
(2)高内聚性。内聚性是模块功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
一个完整的系统,模块与模块之间,尽可能地相互独立,即让每个模块尽可能地独立完成某个特定的子功能。模块与模块之间的接口尽量少而简单。如果两个模块间的关系比较复杂,最好首先考虑进一步模块划分。这样有利于修改和组合。
应用上述模块化的度量原则,对某公司的FR平台下的多个车型特别是对优秀车型的解析和研究,对数据进行分类处理,最终选定了车型的基本信息、车身结构耐撞性分析数据和试验数据3大类车型信息,这3大类车型信息是碰撞安全性能开发的必备工具和重要基础平台[5]。通过对这3大类数据进行数据录入,从而建立一个信息齐全的庞大数据库,以这个数据库为数据基础,通过对数据信息进行筛选、对比和分析计算等操作来帮助汽车安全碰撞结构设计人员快速高效设计出符合法规、星级要求的汽车安全碰撞结构,为碰撞安全目标设定和具体开发提供有力的决策支持。
汽车安全碰撞结构信息系统主要由安全碰撞信息库、安全碰撞信息分析、纵梁概念开发、安全碰撞知识库和系统管理5大板块组成。其中安全碰撞信息库主要包括原有/对标车辆基本信息模块、车身结构耐撞性分析模块、实验数据模块和安全碰撞信息分析模块;安全碰撞信息分析主要由实验/车身结构耐撞性分析模块组成;纵梁概念开发主要由边界条件搜寻模块、经验计算模块和结果输出模块组成;安全碰撞知识库主要是对设计、实验和仿真等过程中产生的文件进行管理,实现文件的共享,其主要由文件录入模块、文件管理模块和文件下载模块组成;系统管理主要由人员管理模块、权限管理模块和日志管理模块组成,其中人员管理模块主要是对用户的信息进行管理;权限管理模块分为选项管理和用户操作权限管理;日志管理模块主要是记录用户的操作情况,使管理员能了解数据的动态情况,保证数据安全。汽车安全碰撞结构信息系统结构图如1所示。
图1 汽车安全碰撞结构信息系统结构图
该系统采用B/S结构,将系统按功能划分为数据层、功能层和表示层,分别放在数据服务器端、网络应用服务器端和客户端(如图2所示)。3层结构可以将业务逻辑单独剥离出来,使其置于应用服务器上,从而使整个系统的逻辑结构更加清晰。为了网络安全,系统服务器和客户端服务器都需要安装防火墙。
PAC(presentation abstraction control)、FR(forward receiver)、PS(publisher subscriber)、MVC(model view controller)等是目前使用比较多的应用程序开发设计思路。其中MVC是一种非常先进的设计思想,能适用于各种语言,并且可以开发出各种难度的程序。笔者根据MVC软件工程思想对汽车安全碰撞结构信息系统提出了新的设计思想模式[6-7]。
图2 B/S结构
安全碰撞管理系统采用MVC架构,MVC将视图层和业务层分离,这样会使结构更加清晰,当需要更改视图层代码时,不需要重新编译模型和控制器代码;同理也可以单独修改模型和控制器代码而不需要更改其他代码,这使得程序具有低耦合性,给代码的修改提供了很大的便利。MVC模式下多个视图可以共用一个模型,从而减少了程序员编写代码的工作量。MVC模式的开发使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上,从而大大缩减了开发时间,节约了开发成本。MVC模式结构如图3所示。
图3 MVC模式结构
图4 Servlet、JSP、JavaBean实现的 MVC模型图
基于MVC的汽车碰撞安全信息管理系统的整体架构设计如图4所示。该系统由客户端层、表示层、业务层、持久层和数据库层组成。在MVC模型中,视图(View)对象由JSP文件实现,用户图形界面(GUI)由JSP构成,模型(Model)对象由JavaBean实现,JavaBean从后台数据库获取数据,并对数据库作相应处理,再将处理的结果返回给JSP,实现用户界面内容的动态变化。而Servlet充当控制者的角色,负责管理对用户请求的处理,调用相应的JavaBean方法完成用户的任务,也可以创建JSP页需要使用的JavaBean对象,并根据用户的动作决定把哪个JSP页面传给请求者[8];而控制(controller)对象可由 Servlet实现。
汽车安全碰撞结构信息系统主要有数据收集、数据显示、数据处理和数据导出4大功能。数据收集功能主要包括现有/对标车型基础数据的录入、安全碰撞分析数据的录入、实验数据的录入和数据文件的录入与修改。数据显示功能主要显示单个车型基础数据信息报表、某个车型某个工况下的安全碰撞分析数据报表、某个车型某个工况下的实验数据报表、多个车型多个阶段下的数据对比报表、多个车型某个工况下的数据对比报表和通过边界条件搜索后得出的符合条件的数据报表。数据处理功能主要是对经数据筛选所得符合条件的数据进行数据计算处理。数据导出功能主要是导出各种数据报表和数据文件[9]。
首先建立一个信息管理数据库crashinfo用于存放汽车碰撞信息;然后建立诸多JavaBean和JSP等操作文件,如表1所示。基于MVC模式的信息系统管理示意图如图5所示。
图6为基础数据中分析数据的录入界面。汽车的基础数据主要是记录不同车型的基本信息,为数据分析、数据对比等提供最基本的、可靠的数据依据。该界面可以通过切换导航条实现基础数据中其他数据的录入。目前该系统已经在某公司运行,效果良好,达到了预期目的。
(1)安全碰撞管理系统采用MVC架构,通过对复杂度的简化,使应用程序的结构更加清晰、直观,实现了业务代码与视图代码分离,增强了代码的稳定性。
(2)汽车安全碰撞结构信息系统是以CAE仿真分析、试验和零部件性能控制等经验,以及各类材料性能、碰撞结构和碰撞性能等核心数据来建立碰撞安全数据库,并在此基
表1 信息管理数据库相关文件类型
图5 基于MVC模式的信息系统管理示意图
础上实现车型的数据查询及录入等功能。同时,该信息系统可对新产品车型的概念设计参数范围进行确定,并可实现相关概念设计的模型输出。
[1]何银川,朱胜利.基于 ASP.NETMVC的多层架构的OA系统的设计与实现[J].现代计算机,2013(11):58-64.
[2]焦青青,周廷美,黄丰,等.基于SOA的机务段生产调度管理系统研究[J].武汉理工大学学报:信息与管理工程版,2013,35(3):373-377.
[3]吴克刚,曹建明.发动机测试技术[M].北京:人民交通出版社,2001:65-98.
[4]章志明,张正球,余敏.基于MVC思想的科研管理信息平台[J].计算机与现代化,2005(1):63-65.
[5]王燕,吴宇红,徐坤.基于AJAX和Web Services的Web应用框架[J].电子科技,2006(11):60-63.
[6]粱弼.基于MVC的高校科研成果管理系统的设计与实现[J].计算机技术,2011(10):161-163.
[7]许锋,周慧英.JavaWeb整合开发全程指南:基础、进阶(Struts+Spring+Hibemate)、实战[M].北京:电子工业出版社,2009:54-103.
[8]胡春华,吴敏,刘国平.Web服务工作流中基于信任关系的 QoS调度[J].计算机学报,2009(1):42-53.
[9]苏亚娟.Web数据库安全性问题探讨[J].无锡南洋学院学报,2005(3):50-53.