当前位置: 首页 > 专利查询>浙江大学专利>正文

基于CAN的嵌入式软件可靠性测试中的通信方法技术

技术编号:3993428 阅读:224 留言:0更新日期:2012-04-11 18:40
一种基于CAN的嵌入式软件可靠性测试中的通信方法,包括相互通信的宿主机和目标机,所述通信方法采用基于CAD总线协议,采用CAN扩展帧的ID域,PDU域根据ID域的不同进行动态调整宿主机和目标机的三种不同类型的通讯方式。本发明专利技术提供一种实时性良好、可靠性好和灵活性高的基于CAN的嵌入式软件可靠性测试中的通信方法。

【技术实现步骤摘要】

本专利技术属于嵌入式软件可靠性测试
,尤其是一种嵌入式软件可靠性测试 中的通信方法。
技术介绍
软件可靠性测试是指为了保证和验证软件的可靠性要求而对软件进行的测试。软 件可靠性测试的方法从概念上讲是一种面向需求,面向使用的黑盒测试方法。为了暴露软 件在使用过程的缺陷,软件可靠性测试需要运行大量的测试用例。软件可靠性测试是长时 间大规模的测试,对测试数据收发的实时性与确定性有很高的要求。由于嵌入式系统本身资源的限制,目前针对嵌入式软件可靠性测试大都采用宿主 机/目标机的模式,其基本结构如附图说明图1所示。其中宿主机功能分为两部分离线部分和在线 部分。离线部分的功能包括测试用例及测试方案生成,测试脚本编写,测试过程监控,测试 回放,测试结果分析和处理,该部分功能不需要通讯的实时性;在线部分的功能包括解释 测试脚本,驱动目标机测试案例,对数据进行仿真处理,接收测试结果,实时比较,测试结果 实时显示,这部分的对通讯的实时性有严格要求。在一些较严格的嵌入式可靠性测试平台 中将这两部分严格分开,离线部分采用PC机,使用一般的PC桌面系统,如Windows,Linux。 实时处理部分采用工作站或微机,并使用实时操作系统,如VxWorks。目前宿主机的实时处 理部分与目标机大多采用以太网连接。虽然以太网技术较为成熟,但用于嵌入式软件测试 也有其缺点。由于以太网采用的是带有冲突检测的载波侦听多路访问协议(CSMA/⑶),无法 保证数据传输的实时性要求,而且以太网采用超时重发机制,单点的故障容易扩散,造成整 个网络系统的瘫痪。
技术实现思路
为了克服已有的嵌入式软件可靠性测试通信方法的实时性差、可靠性差和灵活性 差的不足,本专利技术提供一种实时性良好、可靠性好和灵活性高的基于CAN的嵌入式软件可 靠性测试中的通信方法。本专利技术解决其技术问题所采用的技术方案是一种基于CAN的嵌入式软件可靠性测试中的通信方法,包括相互通信的宿主机和 目标机,所述通信方法采用基于CAD总线协议,采用CAN扩展帧的ID域,PDU域根据ID域 的不同进行动态调整宿主机和目标机的三种不同类型的通讯方式。进一步,CAN扩展帧的ID域为29位,包括有紧急帧的标志,用1个bit表示,用于 目标机出现异常需要立刻报告给宿主机时使用,以及宿主机发送紧急处理命令时使用;宿 主机以及目标机的ID,用8个bit表示CAN帧是哪个节点发出的;帧结束标志,用1个bit 表示;功能号,用5个bit表示,共32个功能号;其余为保留位,用于扩展。 再进一步,CAN扩展帧的ID域中定义32各功能号分为四组,第一组的功能号为 0 7,暂时保留,作为以后扩展所用;第二组的功能号为8 15,对应的通讯方式为宿主机和目标机一应一答;第三组功能号为16 23,对应的通讯方式为目标机发送,宿主机不 需要应答;第四组功能号为24 31,对应的通讯方式为宿主机发送,目标机不需要应答。本专利技术的技术构思为CAN (ControIler Area Network)是BOSCH公司为现代汽车 应用领先推出的一种多主机局部网,由于其高性能、高可靠性、实时性、灵活性等优点现已 广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部 门本文基于嵌入式软件可靠性测试的特点,在CAN总线协议的基础上提出了一种嵌 入式软件可靠性测试中宿主机和目标机通信的方法。该方法简单易用,并且具有高可靠性, 高实时性,高灵活性的特点。本专利技术的有益效果主要表现在实时性良好、可靠性好 图1是嵌入式软件可靠性测试基本结构图。图2是通信网络结构图。图3是CAN扩展帧的ID域组成示意图。图4是宿主机执行第8号功能的第一帧PDU的示意图。图5是宿主机执行第8号功能的随后的帧PDU的示意图。图6是执行第8号功能目标机的回复帧PDU的示意图。具体实施例方式下面结合附图对本专利技术作进一步描述。参照图1 图6,一种基于CAN的嵌入式软件可靠性测试中的通信方法,包括相互 通信的宿主机和目标机,所述通信方法采用基于CAD总线协议,采用CAN扩展帧的ID域, PDU域根据ID域的不同进行动态调整宿主机和目标机的三种不同类型的通讯方式。CAN扩展帧的ID域为29位,包括有紧急帧的标志,用1个bit表示,用于目标机 出现异常需要立刻报告给宿主机时使用,以及宿主机发送紧急处理命令时使用;宿主机以 及目标机的ID,用8个bit表示CAN帧是哪个节点发出的;帧结束标志,用1个bit表示; 功能号,用5个bit表示,共32个功能号;其余为保留位,用于扩展。CAN扩展帧的ID域中定义32各功能号分为四组,第一组的功能号为0 7,暂时 保留,作为以后扩展所用;第二组的功能号为8 15,对应的通讯方式为宿主机和目标机 一应一答;第三组功能号为16 23,对应的通讯方式为目标机发送,宿主机不需要应答; 第四组功能号为24 31,对应的通讯方式为宿主机发送,目标机不需要应答。本专利技术CAN网络基本结构如图2所示。根据具体情况分配目标机执行测试案例以 最大限度地利用总线。某些情况下我们可能需要对某个测试案例的一些测试数据进行重复 测试,所以本专利技术还提供了分组测试的功能。每个目标机都有ID和组ID,每个目标机的初 始化组ID都为0。根据需要由宿主机分配组ID。如错误!未找到引用源。中节点1和节 点2为同一组CAN本身具有多主/从特点,但为简化通讯控制,本专利技术使用CAN通信需要区分主 从。即宿主机为主,目标机为从。从目标机的角度来说,通讯的方式按两种情况 被动状态一般情况下,目标机处于被动状态。通讯使用主从模式,即宿主机发 送请求,目标机予以答复。 主动状态在特殊情况下,如目标机检测到硬件故障或者操作系统严重错误时, 需要临时迅速地将含有当前状态的紧急报文传送给宿主机,在这种情况下,要求发送的报 文简短而且优先级高,以尽快让宿主机处理。本专利技术使用具有29位CAN_ID的扩展帧,为了提高CAN帧的利用率,需尽可能地利 用CAN_ID、PDU这两部分。其中,CAN_ID既用于表示节点ID,又作为节点发送数据的优先 级,数字越低优先级越高。PDU用于承载有效数据。在29位的CAN_ID中定义了网络中各 ID、帧性质(紧急与否)、帧结束状态(多帧与否)、帧功能号等,同时还保留了部分的位以 便扩展。PDU部分按照CAN2. 0协议的规定使用最多8个字节。CAN_ID域有29个bit,如图3第一行所示。在传送时,按照ID28 IDO的顺序按 位传送。为了处理方便,使用4个byte来表示这29位,如图3第3行所示。其中byteO的 最后3位是无效的。在图3的第二行中,详细定义了各个位的功能。DURG 紧急帧的标志。当所发送的帧是紧急帧时,该位为0,非紧急帧时该位为1。 因为在CAN中,0的优先级高。紧急帧用于目标机出现异常需要立刻报告给宿主机时使用, 以及宿主机发送紧急处理命令时使用。紧急帧应该尽可能短而且少。2)B_ID7 B_ID0 宿主机以及目标机的ID。在CAN里面,不存在源地址和目的地 址。用这8个bit表示CAN帧是哪个节点发出的。任何节点都可以过滤不需要接收的节点 的帧。全0是宿主机ID,体现了宿主机的优先级最高。1 127是目标机ID。3)EOF本文档来自技高网...

【技术保护点】
一种基于CAN的嵌入式软件可靠性测试中的通信方法,包括相互通信的宿主机和目标机,其特征在于:所述通信方法采用基于CAD总线协议,采用CAN扩展帧的ID域,PDU域根据ID域的不同进行动态调整宿主机和目标机的三种不同类型的通讯方式。

【技术特征摘要】

【专利技术属性】
技术研发人员:李红杨国青张翼罗端邓俊胡博
申请(专利权)人:浙江大学
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利