一种基于模型的面向j1939网络的建模系统的制作方法

文档序号:7647711阅读:347来源:国知局
专利名称:一种基于模型的面向j1939网络的建模系统的制作方法
技术领域
本发明涉及一种通信协议的建模系统,更具体的说,是涉及一种基于模型的面向J1939网络的可视化的建模系统。
背景技术
在汽车工业领域,汽车电子产品在整车价值中占据越来越重要的地位,而汽车电子软件的开发过程也成为汽车工业的核心技术问题。在嵌入式实时操作系统的基础上,汽车网络通信协议能够协同汽车中大量的电子控制单元,使其具备信息交互功能。
SAE J1939通信协议是由美国汽车工程师协会下的控制和通信网络分委员会制定的基于CAN总线之上的高层网络通信协议。它主要用于为重型道路车辆上电子控制单元之间的通信提供标准的体系结构,是目前在大型汽车中应用最广泛的应用层协议。J1939网络是一个高速的通信网络,最高可达到250Kbps的速率。
SAE J1939网络使用的CAN协议允许任何一个ECU在总线空闲的时候向网络发送消息,每一个消息包括了一个用来定义消息优先级、消息的发送源以及消息中包含了什么数据的标识符。标识符同时避免了冲突的产生。这允许在发生竞争的时候高优先级的消息先得到总线的访问权。SAE J1939的网络层定义了网络互联ECU的需求和服务,它们负责不同ECU之间的互联。同时网络层也定义了各种类型的网络互联ECU和它们所提供的功能。
当前的J1939网络系统的应用开发主要以手工编写代码为主,开发者必须对其使用的J1939网络系统的实现十分了解。这种开发模式不仅对工程师的要求很高,要求工程师熟悉内核代码。而且延长了开发的时间,在开发过程中可能会产生很多人为的错误。以手工编写代码为主的开发模式的弊端不断地出现,一些成熟的商用操作系统应用开发已经转向了可视化编程和单独适合自己操作系统的建模开发环境。这种开发模式在不同的实时操作系统之间缺乏兼容性,面向实时操作系统进行设计开发对工程师提出了挑战,增加了开发过程中的错误,拖延了开发时间。
建模的过程是使用高层次的规约来描述软件是如何形成的,最后我们看到的是源代码这种字面的形式。建模实际上是“创建代码”过程中不可分离的一部分。系统工程师偏向集中精力建模,基于模型的开发在软件开发中越来越重要,当前形成了统一的建模语言和标准,比如UML。但是在J1939网络系统的领域,基于模型的设计没有得到充分发展,模型设计都是高层的,模型设计完了之后,就是一堆图纸,除了开头用于项目人员的交流,总体来说对整个开发过程贡献不大。目前在面向J1939网络的开发中虽然有了建模,但主要工作还是在手工编写代码这部分,对开发带来了很大的影响。为了解决上述问题,本发明提出一个面向J1939网络的基于模型的建模方法,极大的方便了工程师在J1939网络领域进行建模设计。

发明内容
本发明的主要目的在于克服现有技术中的不足,提供了一种为J1939网络应用开发的基于模型的建模环境,以模型图为主线,集J1939网络系统建模、离线模拟仿真和代码自动生成于一体的基于模型的面向J1939网络的建模系统。
为了解决上述技术问题,本发明是通过以下技术方案实现的。
一种基于模型的面向J1939网络的建模系统,包括可视化建模、离线仿真模拟和自动代码生成,步骤如下(1)可视化建模提取J1939网络系统的共同特征和接口,以图形视图的表示方式对这些J1939网络系统核心特征进行建模;(2)离线仿真模拟离线仿真模拟功能包括网络初始化地址分配、消息对象的发送以及控制器应用对消息的响应动作的模拟;首先根据用户对控制器应用预定义地址的配置,控制器应用通过申请地址、地址冲突解决等初始化过程,显示出最后成功获得的网络地址或者申请地址未成功的状态,然后根据消息对象的发送属性的设置,用动画表示出消息发送的动作状态,即移动物体从消息源的位置开始一直到目的地的位置结束,这时目的地控制器应用根据收到消息对象后响应动作的配置,继续发送其它消息;(3)自动代码生成自动代码生成用于生成J1939网络系统的配置文件和应用程序文件的代码,完成基于模型的面向J1939网络的建模系统的建模。
作为一种改进,所述的J1939网络系统的共同特征包括电控单元、控制器应用和消息对象;把电控单元、控制器应用和消息对象的核心特征抽象成具有可设置相应属性的独立对象,用户可以对这些独立对象进行建模。
作为一种改进,所述的配置文件是用于根据J1939网络的建模系统中对各对象进行定义和初始化数据配置;所述的应用程序文件是用于对消息的发送属性、控制器应用收到消息后的响应动作的设置,把发送消息的动作封装在嵌入式实时操作系统的任务中,把消息发送的周期、发送时间等发送属性与定时器关联起来,通过定时器来激活任务以达到执行周期性的发送消息的动作的目的。
作为一种改进,所述的电控单元和控制器应用被抽象为在视图中的包含关系,控制器应用与消息对象之间的发送源与目的地的关系被抽象为视图对象间的有向连线。
与现有技术相比,本发明的有益效果是(1)模型的通用性本发明所述的建模系统是面向所有符合J1939网络协议标准系统的,不是特定的为某一个J1939网络系统服务;模型可以在各种芯片和各种J1939网络系统中运用;这种基于模型的面向J1939网络的建模系统的设计方法弥补了在嵌入式领域建模不兼容的缺陷。
(2)模型的完整性本发明从系统配置和应用开发两方面,对面向J1939网络系统的开发进行建模,能够充分的反映一个系统模型的各方面;模型的完整性使得工程师之间的交流更加便利,同时很大的提高了模型的准确性和可行性。
(3)模型的离线仿真模拟本发明可以根据用户的系统建模方案,可以进行离线仿真模拟功能,这样可以使用户及时观察到自己原先建模的网络是否符合预期的要求或者发现设计上的问题,从而可以对其进行及时的修改。
(4)节省开发时间工程师完成面向J1939网络系统的建模,并对仿真模拟的结果满意后,可以根据模型自动生成系统配置代码和应用程序文件代码。这样可以大大减少整个开发过程中编写代码和调试所花费的时间。对于大型的系统和复杂的模型,效果更加明显,可以节省一半以上时间。


图1是本发明实施例中的J1939网络的建模方案示意图。
图2是本发明实施例中控制器应用的属性和响应动作设置示意图。
图3是本发明实施例中消息对象的属性和发送属性设置示意图。
图4是本发明实施例中离线仿真模拟演示示意图。
图中1发动机ECU、2变速箱ECU、3电子制动器ECU、4发动机CA、5变速箱CA1、6变速箱CA2、7制动器CA1、8制动器CA2、9发动机温度、10发动机配置、11速度、12扭矩、13控制指令。
具体实施例方式
结合附图,下面对本发明进行详细说明。
一种基于模型的面向J1939网络的建模系统,通过以下步骤实现(1)可视化建模提取出J1939网络系统的共同特征和接口,用一定的图形视图表示对这些J1939网络系统核心特征进行建模。J1939网络系统的最基本特征包含三个方面电控单元(ECU)、控制器应用(CA)和消息对象(Message)。
把电控单元(ECU)、控制器应用(CA)和消息对象(Message)的核心特征抽象成独立对象,每个对象都有自己的相应的属性,以及对这些属性的设置。用户可以对这些对象进行建模,其中各对象间的视图逻辑关系如图1所示。电控单元包含若干个控制器应用被抽象为在视图中的包含关系,控制器应用与消息对象之间的发送源与目的地址等关系被抽象为视图对象间的有向连线。
在基于模型的可视化建模图中,本发明设计的基于模型的面向J1939网络的建模系统的核心特征和图形表示之间的映射关系如下


通过可视化建模的过程,用户可以直观形象地J1939网络系统各部分特征以及特征间的关系进行描述。在建模过程中,除了建立各J1939网络系统的各个特征之间的关系外,我们还需要对各个特征进行属性配置,如图2、图3所示。从动态的角度,作为应用程序的开发,本发明还提供了对消息对象的发送属性、控制器应用接收到消息后的系列响应动作进行设置,即表达出了消息源控制器应用开始发送消息(可能是周期性的)到目的地控制器应用,以及目的地控制器应用接收到该消息后做反馈响应动作继续发送其他消息。这样就表达出了应用程序开发的设计思路,全面展示了控制器应用间的动态关系。
(2)离线仿真模拟根据可视化建模方案还提供了离线仿真模拟功能。如图4所示,其模拟功能包括网络初始化地址分配、消息对象的发送、以及控制器应用收到消息后的响应动作等模拟。首先根据用户对控制器应用预定义地址的配置,控制器应用通过申请地址、地址冲突解决等初始化过程,显示出最后获得的网络地址或者未成功申请地址的状态。然后根据消息对象的发送属性的设置,用动画表示出消息发送的动作状态,即移动物体从消息源的位置开始一直到目的地的位置结束。这时目的地控制器应用根据接收到消息对象后响应动作的配置,继续发送其他消息。
开发用户可以通过对J1939网络系统的离线仿真模拟功能,能在无需连接硬件的情况下直接观察到J1939网络系统建模方案的运行情况,便于在早期发现设计上的问题,并对建模方案做出及时的调整或修改。
(3)自动代码生成开发用户可以通过自动代码生成功能,生成J1939网络系统的配置文件、应用程序文件的代码。在配置文件中,根据J1939网络的建模方案中的各对象进行定义和初始化数据配置;在应用程序文件中,根据对消息对象的发送属性、控制器应用收到消息后的响应动作的设置,对发送消息的动作封装在嵌入式实时操作系统的任务中,把消息发送的周期、发送时间等发送属性与定时器关联起来,通过定时器来激活任务达到执行周期性发送消息的动作。
下面通过具体实施例来说明本发明本具体实施例是对简化后的汽车发动机、电子制动器和变速箱之间的控制过程进行建模,主要包括发送发动机相关消息、速度和扭矩消息以及控制消息等网络建模。
第一步,如图1所示,用户在可视化环境下进行J1939网络的建模,建模的过程就是画一幅图的过程,工程师根据自己的应用设计画出一幅模型图,建立图形的方式就是利用鼠标进行“拖-放”的操作。如图1所示,所描述的J1939网络模型中由3个电控单元组成,分别是发动机ECU、电子控制器ECU和变速箱ECU。在每个电控单元中又各自由若干个控制器应用组成。发动机CA会发送温度消息给变速箱CA1,还会发送自己的配置消息给制动器CA1;变速箱CA2会发送速度消息给制动器CA1,发送扭矩消息给制动器CA2;制动器CA2会发送控制指令消息给发动机CA。
第二步,用户在可视化环境下对J1939网络的模型进行参数设置。如图2所示,各控制器应用需要设置的属性有名字、类型、预定义地址等。如图3所示,各消息需要设置的属性有参数组号和优先级等。除了对控制器应用和消息对象的静态属性进行设置外,还需要对消息对象的发送属性,控制器应用收到消息后的响应动作进行设置,由图2、图3所示,可以分别看到消息对象的发送属性包括起始时间与周期,控制器应用收到消息后的响应动作为发送哪些消息以及所发送消息的相对起始时间与周期。
第三步,用户完成对J1939网络的建模方案,消息的发送属性和控制器应用收到消息后的响应动作进行设置后,就可以对当前的建模方案进行离线仿真模拟。如图4所示,离线仿真模拟针对网络初始化地址分配,消息对象和控制器应用接收到消息后的响应动作等过程进行仿真模拟。对于成功获得地址分配的控制器应用,我们在其标识符后面显示出地址,否则显示出地址申请失败。消息对象的模拟主要是用移动物体表示,移动物体从消息源视图出发,然后经过消息视图,再到达目的地视图,表示消息的一次发送,如果为周期消息,则会继续每间隔周期时间发送一次。当控制器应用接收到消息的时候,会做出相应的响应动作,即发送其他消息。如果用户对仿真模拟结果不满意的话,可以继续返回第一步,对J1939网络进行建模和设置,直到满意为止。
第四步,当用户对当前J1939网络建模的仿真模拟结果满意后,可以对其进行自动代码生成。
本发明在上述工作的基础上,提出了符合SAE J1939协议的网络系统领域统一建模的思想,在J1939网络领域采用基于模型的建模设计方法,对传统开发设计的提出了挑战并引起深刻变革。
最后,还需要注意的是,以上列举的仅是本发明的一个具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
权利要求
1.一种基于模型的面向J1939网络的建模系统,其特征在于,包括可视化建模、离线仿真模拟和自动代码生成,步骤如下(1)可视化建模提取J1939网络系统的共同特征和接口,以图形视图的表示方式对这些J1939网络系统核心特征进行建模;(2)离线仿真模拟离线仿真模拟功能包括网络初始化地址分配、消息对象的发送以及控制器应用对消息的响应动作的模拟;首先根据用户对控制器应用预定义地址的配置,控制器应用通过申请地址、地址冲突解决等初始化过程,显示出最后成功获得的网络地址或者申请地址未成功的状态,然后根据消息对象的发送属性的设置,用动画表示出消息发送的动作状态,即移动物体从消息源的位置开始一直到目的地的位置结束,这时目的地控制器应用根据收到消息对象后响应动作的配置,继续发送其它消息;(3)自动代码生成自动代码生成用于生成J1939网络系统的配置文件和应用程序文件的代码,完成基于模型的面向J1939网络的建模系统的建模。
2.根据权利要求1所述的基于模型的面向J1939网络的建模系统,其特征在于,所述的J1939网络系统的共同特征包括电控单元、控制器应用和消息对象;把电控单元、控制器应用和消息对象的核心特征抽象成具有可设置相应属性的独立对象,用户可以对这些独立对象进行建模。
3.根据权利要求1所述的基于模型的面向J1939网络的建模系统,其特征在于,所述的配置文件是用于根据J1939网络的建模系统中对各对象进行定义和初始化数据配置;所述的应用程序文件是用于对消息的发送属性、控制器应用收到消息后的响应动作的设置,把发送消息的动作封装在嵌入式实时操作系统的任务中,把消息发送的周期、发送时间等发送属性与定时器关联起来,通过定时器来激活任务以达到执行周期性的发送消息的动作的目的。
4.根据权利要求2所述的基于模型的面向J1939网络的建模系统,其特征在于,所述的电控单元和控制器应用被抽象为在视图中的包含关系,控制器应用与消息对象之间的发送源与目的地的关系被抽象为视图对象间的有向连线。
全文摘要
本发明涉及一种通信协议的建模系统,旨在提供一种基于模型的面向J1939网络的可视化的建模系统。该系统包括步骤如下(1)可视化建模提取J1939网络系统的共同特征和接口,以图形视图的表示方式对这些J1939网络系统核心特征进行建模;(2)离线仿真模拟离线仿真模拟功能包括网络初始化地址分配、消息对象的发送以及控制器应用对消息的响应动作的模拟;(3)自动代码生成自动代码生成用于生成配置文件和应用程序文件的代码,完成基于模型的面向J1939网络的建模系统的建模。采用本发明提供的建模系统,优点如下模型具有通用性、模型具有完整性、模型具有离线仿真模拟功能且节省了模型的开发时间。
文档编号H04L29/06GK101042713SQ20071006660
公开日2007年9月26日 申请日期2007年1月5日 优先权日2007年1月5日
发明者赵民德, 杨国青, 赵坚, 李红, 吕攀, 苏晓龙, 吴朝晖 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1