软件需求说明书
1引言
1.1编写目的
本说明书的编写是为了CANTool的功能需求和性能需求,以标准的语言和表述方式整理项目需求,以便于用户对本项目的理解和认识。
1.2背景
控制器局域网(CAN)是一种最初为汽车工业设计的串行网络,在工业自动化以及其他应用中也成为一种流行的总线。在现代汽车控制技术中,汽车中会使用多个电子控制装置(ECU:Electronic Control Unit)对整车进行控制。而ECU之间的信息交换更多地依赖于CAN(Controller Area Network)总线的网络连接方式来完成。为了检测和控制CAN bus的信息内容,需要使用CAN bus检测设备。CanTool装置是完成CANbus检测的工具。为了实现CAN数据的显示及控制,需要使用本文提出的CanTool软件。
1.3项目意义
本文提出一个接收CAN信息(这些信息是在连接在CAN总线上的CanTool装置采集的)的装置,并且能够将这些信息显示在用户图形界面上。同时在CanTool的界面上还可以设定CAN信息,通过GUI按钮将信息发送给CanTool装置,CanTool装置将按照规定的信息格式,将信息发送的CAN总线上。此外,CanToolApp可以设定CAN总线的通信参数,并通过相应的命令设置CanTool装置的CAN通信参数,以使CanTool装置能够与CAN总线上的其他被测ECU进行正常的通信。
2需求规定
2.1任务概述
该CANTool管理系统主要完成认证连接、参数设置、CAN信息管理、数据库管理四个模块,实现用户接入设备、注销连接、查改CAN信息发送周期、查改CAN速率、查改CAN状态、接收CAN信息、解析转换CAN信息、通过曲线显示实时CAN信息、通过表格和仪表盘显示CAN信息、保存CAN信息、数据库导入导出、通过树状结构显示数据库结构等功能。
2.2功能模块图
2.3对具体功能的规定
(1)认证连接模块
用户能够选择不同的CanTool装置映射到本机的接口(COM口),通过设置相应COM口波特率、数据位数、停止位数等这些参数来进行与装置的连接。并且这些设定内容会自动保存到CanToolApp设定文件中,供下次使用。
(2)参数设置模块
用户可以设置CanTool装置的CAN速率、更改CAN状态(Open or Close)、设置CAN信息的发送周期。并且可以将这些设定内容保存到CanToolApp设定文件中,供下次使用。
(3)CAN信息管理模块
系统可以接收多个CAN信息,通过CAN信息及CAN信号数据库进行解析,还原出真实物理值,并保存数据到数据库。用户可以选择表格或仪表盘形式显示CAN信息原始数据和其包含的物理值(系统会记录用户选择的显示方式,供下次使用),还可以选择某些接收到的CAN信号,显示其变化的实时物理值曲线。
(4)数据管理模块
用户可以选择将系统中的CAN信息和信号数据库另存为xml和JSON (JavaScript Object Notation)格式导出,也可以将已有的xml或Json格式的数据库导入系统,转换为CAN信息和信号数据库格式。系统可以加载用户提供的CAN信息和信号数据库,以树状结构显示。
3运行环境规定
3.1硬件要求
CPU:Intel(R) Core(TM) i5-4200U 及以上版本;
内存(RAM):至少2.00GB;
硬盘 2G以上
3.2支持软件
(1)操作系统:兼容window7/8,Linux系统;
(2)浏览器:IE 9及以上版本。
3.3接口
外部接口 Arduino nano数据访问接口。
内部接口 Data Access Object数据访问接口。
3.4开发环境
开发语言:Java
运行环境:JDK 1.7+Tomcat 7.0.29
数据库:MySQL 5.5
3.5 控制要求
该网站采用目前的SpringMVC技术,后台包含运行两个线程,实现对cantool信息的接受保存以及对实数数据的展示。要求系统启动后线程进入待命状态,系统接入cantool装置后线程启动,系统退出接入后线程在再次进入代码状态。