应用案例 | 船舶海洋: 水下无人航行器数字样机功能模型构建

水下无人航行器数字样机功能模型构建

一、项目背景

为响应水下装备系统研制数字化转型及装备系统数字样机建设的需要,以某型号水下无人航行器(Underwater Unmanned Vehicle,UUV)为例,构建UUV数字样机1.0功能模型。针对以往研制流程中存在的任务指标分解缺失、重原理设计而轻运行分析、专业协调性差、综合集成能力低等问题,应用基于模型的系统工程MBSE方法,开展对UUV模型研制数字化的探索,在已有UUV研制成果的基础上构建数字样机设计中的需求模型与功能模型。通过UUV数字样机研制过程中的设计要求追溯、行为功能分析、系统架构设计、指标参数与运行场景仿真验证等环节,实现 UUV数字样机研制过程中验证与设计的快速迭代,明确各环节所需模型的表达方式,形成兼顾设计规范性和科研创新性的UUV数字样机研发的范例。

二、解决方案

基于完全自主知识产权的系统设计建模软件工具M-Design及MBSE的RFLP过程框架,结合UUV领域知识可建立与设计要求模型关联追溯的UUV数字样机的功能模型。在UUV装备系统架构设计方案模型的基础上开展功能模型的逻辑仿真,实现设计方案与功能逻辑的实时交互验证,为后续与多学科性能模型的联合仿真验证以及数字样机模型的数据传递打下基础。

2.1 设计要求追溯

设计要求模型是从任务书中提取并分解形成的层级化结构的(总体、分系统、组部件)需求模型。针对不同层级需求,在装备系统架构上构建相应的层级化指标体系并建立关联追溯关系,以多种视图(需求图、追溯图、追溯矩阵等)的方式进行呈现,便于后续开展的影响变更分析。

分析设计要求示意图

2.2 行为功能分析

基于已有的UUV各分系统、组部件的工作原理将用例进行展开,以活动图中的动作次序来表征其工作流程并形成相应的功能描述,以便后续仿真验证设计原理的逻辑和搭建UUV的功能架构。

通过明晰各层级的工作原理以及不同的运行状态,采用状态机图表征各分系统、组部件在不同任务场景、不同限制条件下的运行状态,以便后续仿真验证设备在不同场景中的运行逻辑。

运行逻辑示意图

2.3 系统架构设计

系统架构模型旨在承载已有的设计成果,通过模型固有的统一性来规范引导设计的表达。针对专业协调性差、综合集成能力低的研制现状,通过层级划分出清楚的系统架构。基于模型的数据统一性,开展装备系统接口以及通信协议的梳理,同时承载任务要求指标体系并与需求形成关联追溯。架构也可被转化为模型库支持复用,成为数字样机后续各类模型数据传递的规范性通道。

内部模块建模示意图

2.4 场景仿真验证

仿真验证阶段的任务是在行为功能与架构设计的基础上,验证系统设备的工作原理以及各种设备在不同场景与限制条件下的运行状态,为后续进一步开展UUV详细设计的论证提供基础。

仿真界面图

三、案例成效

基于M-Design系统建模软件工具搭建了UUV装备系统数字样机1.0中的设计要求模型和功能模型,通过集成仿真验证了装备系统的原理逻辑与不同场景下的运行逻辑,实现了设计方案的模型化与仿真验证的快速迭代,形成了UUV数字样机1.0的研制范例,为后续数字样机多模型集成与验证奠定了可靠的基础。

-END-


*本文为原创,最终解释权归杭州华望系统科技所有。未经授权,严禁复制或转载。

*了解更多应用案例,可浏览【华望应用案例】栏目,欢迎点赞|评论|收藏

*关注【杭州华望MBSE】将推送更多精彩有趣的文章,期待与你同行!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/63288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【NIPS2024】Unique3D:从单张图像高效生成高质量的3D网格

背景(现有方法的不足): 基于Score Distillation Sampling (SDS)的方法:从大型二维扩散模型中提取3D知识,生成多样化的3D结果,但存在每个案例长时间优化问题/不一致问题。 目前通过微…

手机LCD分区刷新技术介绍

分区刷新也称为分区变频,LCD分区刷新功能的目的是将屏幕分为上下半区,分区显示不同帧率,上方区块High Frame Rate,下方区块Low Frame Rate。使用者可以动态自定义上方高刷显示区的结尾位置。 当前的智能手机屏幕上,显示…

NLP算法具备技能

摘要:好久不看理论,最近把自己学过以及用到过的东西都列了出来,主要是这个大纲体系,详细的内容部分是使用LLM来辅助编写的。 一、大模型 1.1 常用大模型 1.1.1 Qwen ‌Qwen大模型‌是由阿里巴巴开发的系列大语言模型&#xff…

学习日志022 -- python事件机制

作业: 1】思维导图 2】完成闹钟 main.py import sysfrom PySide6.QtCore import QTimerEvent, QTime,Qt from PySide6.QtGui import QMovie,QMouseEvent from PySide6.QtWidgets import QApplication, QWidget from Form import Ui_Formclass MyWidget(Ui_Form,Q…

JAVAWeb中的Servlet学习

一 Servlet简介 1.1动态资源和静态资源 静态资源 无需在程序运行时通过代码运行生成的资源,在程序运行之前就写好的资源.例如:html css js img ,音频文件和视频文件 动态资源 需要在程序运行时通过代码运行生成的资源,在程序运行之前无法确定的数据,运行时动态生成,例如Servle…

重生在我在21世纪学C++—赋值操作符、类型转换、单目操作符

一、赋值操作符 在变量创建的时候给一个初始值叫初始化。在变量创建好后,再给⼀个值,这叫赋值。 int a 100 ; //这叫初始化 a 200 ; //这叫赋值, 就是赋值操作符 赋值操作符 是⼀个随时可以给变量(不能是常…

03、Node.js安装及环境配置

1.下载node.js 下载地址:Node.js 2.安装 2.1 自定义安装路径(可以选择默认) 下图根据本身的需要进行,我选择了默认Node.js runtime,然后Next: Node.js runtime :表示运行环境 npm package mana…

【Java】反射简介

框架的核心和架构师的核心 反射和代理是重中之重 反射 反射的作用 在运行的时候由代码获取类的信息 三种获取类信息的方式: 对象.getClass()Class.forName("类的路径")类.class Class :一个用来存储类信息的类 获取类信息是获取的整体的…

Qt入门8——Qt文件

1. Qt文件概述 文件操作是应用程序必不可少的部分。Qt作为⼀个通用开发库,提供了跨平台的文件操作能力。Qt 提供了很多关于文件的类,通过这些类能够对文件系统进行操作,如文件读写、文件信息获取、文件复制或重命名等。 2. 输入输出设备类 在…

常量变量和一些运算符

3.4 变量 常量:!final关键字 final修饰基本类型不可以第二次赋值final修饰的引用类型不可以第二次改变指向final修饰的类不可以被继承final修饰的方法不可以被重写final防止指令重排序,遏制流水线性能优化,保障多线程并发场景下…

内存管理面试常问

为什么要有虚拟内存? 虚拟内存 如果你是电⼦相关专业的,肯定在⼤学⾥捣⿎过单⽚机。 单⽚机是没有操作系统的,所以每次写完代码,都需要借助⼯具把程序烧录进去,这样程序才能跑起来。 另外, 单⽚机的 CPU …

MongoDB分片集群搭建及扩容

分片集群搭建及扩容 整体架构 环境准备 3台Linux虚拟机,准备MongoDB环境,配置环境变量。一定要版本一致(重点),当前使用 version4.4.9 配置域名解析 在3台虚拟机上执行以下命令,注意替换实际 IP 地址 e…

【HarmonyOS】层级轮播卡片效果

【HarmonyOS】层级轮播卡片效果 一、功能效果: 1.上下堆叠由大到小的卡片层叠效果。 2.上层卡片可手势左右滑动,自动左滑动。 3.三层卡片随滑动,内容进行依次切换。 二、开发思路 【完整代码见章节三】 1.最上层使用swiper进行轮播效果…

Python_Flask02

所有人都不许学Java了,都来学Python! 如果不来学的话请网爆我的老师 连接前的准备 安装pymysql 和 flask_sqlalchemy,安装第三下面两个所需要的包才能连接上数据库 pip install pymysql pip install flask_sqlalchemy pymysql是一个Pyth…

实验13 使用预训练resnet18实现CIFAR-10分类

1.数据预处理 首先利用函数transforms.Compose定义了一个预处理函数transform,里面定义了两种操作,一个是将图像转换为Tensor,一个是对图像进行标准化。然后利用函数torchvision.datasets.CIFAR10下载数据集,这个函数有四个常见的…

linux下使用gdb运行程序,查看程序崩溃原因

1.什么是gdb? gdb 是 GNU Debugger 的缩写,是一个功能强大的用于调试程序的开源调试器工具。它可以帮助开发人员诊断和解决程序中的错误、跟踪程序执行过程、查看变量的值等。gdb 支持多种编程语言,包括 C、C、Objective-C、Fortran 等,并可…

鸿蒙arkts怎么打印一个方法的调用堆栈

做鸿蒙开发的时候,也想看一下一个方法到底是哪里调用的,工程太大,断点太麻烦,可以加堆栈日志。 在你的方法中加上这两句,就可以跟到堆栈日志 let err new Error() console.log(>>>>>>err.stack) …

IDE如何安装插件实现Go to Definition

项目背景 框架:Cucumber Cypress 语言:Javascript IDE:vscode 需求 项目根目录cypress-automation的cypress/integration是测试用例的存放路径,按照不同模块不同功能创建了很多子目录,cucumber测试用例.feature文…

如何通过 Windows 自带的启动管理功能优化电脑启动程序

在日常使用电脑的过程中,您可能注意到开机后某些程序会自动运行。这些程序被称为“自启动”或“启动项”,它们可以在系统启动时自动加载并开始运行,有时甚至在后台默默工作。虽然一些启动项可能是必要的(如杀毒软件)&a…

探索自然语言处理奥秘(NLP)

摘要 自然语言处理(NLP)是人工智能领域的一个重要分支,它致力于使计算机能够理解、解释和生成人类语言。这项技术让机器能够阅读文本、听懂语音,并与人类进行基本的对话交流。 通俗理解 自然语言处理(NLP&#xff09…