[发明专利]基于状态机图的无人机飞行模式的C++代码生成方法有效

专利信息
申请号: 202010425423.3 申请日: 2020-05-19
公开(公告)号: CN111596915B 公开(公告)日: 2022-12-02
发明(设计)人: 马建峰;康龙宇;尹文耀;孙聪;张涛;沈玉龙;李亚晖;王中华 申请(专利权)人: 西安电子科技大学;中国航空工业集团公司西安航空计算技术研究所
主分类号: G06F8/35 分类号: G06F8/35;G06F8/41;G05D1/08;G05D1/10
代理公司: 陕西电子工业专利中心 61205 代理人: 陈宏社;王品华
地址: 710071*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 状态机 无人机 飞行 模式 c++ 代码 生成 方法
【说明书】:

本发明提出了一种基于状态机图的无人机飞行模式的C++代码生成方法,用于解决现有技术中存在的代码生成方法不贴合于无人机平台,缺少代码转换方法,导致生成无人机代码的效率不高,生成代码的质量不足的问题。实现步骤为:制定无人机飞行控制系统各飞行模式的工作流程;构建无人机的框架SysML状态机图;基于框架SysML状态机图构建飞行模式mi的子SysML状态机图;获取每个飞行模式mi的XMI文件;制定层次性代码生成规则;基于层次性代码生成规则,获取无人机飞行控制系统的C++代码。

技术领域

本发明涉及软件开发领域,特别是涉及一种基于SysML状态机图的嵌入式系统软件的C++代码生成方法。

背景技术

嵌入式系统是以应用为中心,以现代计算机技术为基础,能够根据用户需求功能、可靠性、成本、体积、功耗、环境等灵活裁剪软硬件模块的专用计算机系统,由于存储空间有限,因而要求软件代码紧凑、可靠,且对实时性有严格要求。目前,在嵌入式系统开发过程中使用的语言种类有很多,但仅有少数的几种语言得到了比较广泛的应用,主要有Ada、C/C++等。由于C++语言既具有汇编语言的效率,又具有高级语言的易编程性,所以是目前使用最广泛的嵌入式系统编程语言。一个优秀的C++代码程序逻辑应该是清晰的,这可以让漏洞难以隐藏,开发周期短并且高度模块化,易于扩展和维护。

现有的C++代码生成方法分为使用文档开发和使用模型驱动开发两种,其中模型驱动开发,其基本思想是让开发中心从编程转移到高级别抽象中去,通过模型转成代码或其他构件来驱动部分或全部的自动化开发。模型驱动拥有开发快、降低成本、提高质量、可维护性高、可重用性好等优点,拥有很好的发展前景。但是如何建立一个贴合设计对象的模型是使用模型驱动开发中要首先考虑的问题。

无人机的飞行控制系统就是一个典型的嵌入式系统,而无人机飞行模式就是飞行控制系统的核心。根据需求的不同,飞行模式分为依赖全球卫星定位系统的模式:Auto、Circle、Drift、Follow Me、Guided、Loiter、PosHold、RTL和Throw模式;不依赖全球卫星定位系统的模式:Acro、Alt Hold、Land、Sport和Stabilize模式。

随着无人机的各项功能趋于完善,无人机飞行控制系统飞行模式作为一种实时控制系统,其复杂性也日益增加,这使得系统建模成为一项巨大的挑战。对于大多数系统,建模必须同时考虑连续时间和离散事件,而创建一个允许这两个因素之间同步和交互的验证环境就成了阻碍飞行控制系统发展的一大障碍。

申请公布号为CN 105242914 A,名称为“基于模型驱动生成代码的方法及系统”c++的专利申请,公开了一种基于模型驱动生成代码的方法及系统,该专利的系统在数据模型层由数据库模型、模型架构以及代码模板三部分构成,在代码生成的过程中,由模型分析模块从数据库模型及操作模型中获取有编程人员所指定的模型对象,通过模板引擎根据这些对象调用对应的代码模板,最后,代码生成器负责清理这些模型对象之间的关系,并根据模板引擎产生最终的基于对象的代码。该发明使用的一种基于模型驱动生成代码的方法及系统积极性的代码生成模式,具有双向推导的代码生成机制,具有插件式的代码生成架构,有效提高了代码的效率和质量,但因为只提出了使用模型驱动生成C++代码的一般流程,不贴合无人机平台;对于使用何种图来进行模型驱动没有进行约束,缺少标准化设计流程;缺少详细的代码转换方法,需要设计者自行设计。这些都导致生成无人机代码的效率不高,生成代码的质量不足。

发明内容

本发明的目的在于克服上述现有技术存在的不足,提出了一种基于状态机图的无人机飞行模式的C++代码生成方法,用于解决现有技术中存在的代码生成方法不贴合无人机平台,缺少标准化设计流程,缺少详细的代码转换方法的问题。

为实现上述目的,本发明采取的技术方案包括如下步骤:

(1)制定无人机飞行控制系统各飞行模式的工作流程:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学;中国航空工业集团公司西安航空计算技术研究所,未经西安电子科技大学;中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010425423.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top