SimForge HSF 案例分享|复杂仿真应用定制——UAVSim无人机仿真APP(技术篇)

导读

    「神工坊」核心技术——「SimForge HSF高性能数值模拟引擎」支持工程计算应用的速开发、自动并行,以及多域耦合、AI求解加速,目前已实现航发整机数值模拟等多个系统级高保真数值模拟应用落地,支持10亿阶+、100w+核心量级的高效求解。其低代码开发能力,可面向复杂装备、中小企业专用仿真场景,快速开发定制仿真应用

    本文将通过“UAVSim无人机仿真APP”案例,带您深入了解「神工坊」团队,如何基于「SimForge HSF」,针对具体场景开发垂直应用,使产品经理也可上手操作无人机数值仿真。

 一、客户需求分析  

    1. 行业背景

    无人机广泛应用于军事侦察、民用航拍、物流配送、农业植保、应急救援等诸多领域,其市场规模呈现出爆发式增长态势。随着应用场景的不断拓展和深化,对无人机的性能、可靠性和安全性提出了越来越高的要求,这使得无人机的研发设计面临着前所未有的挑战。

    2. 客户痛点

    ➢ 精确建模与分析难度大

    在空气动力学方面,精确模拟无人机在不同飞行状态下的气流特性是确保飞行性能的关键。然而,气流与无人机机体及旋翼之间的相互作用极为复杂,受到飞行姿态、速度、环境风等多种因素的影响,准确建模和分析难度极大。

    ➢ 实物试验成本高、代价大

    在研发流程中,传统的设计方法主要依赖实物试验和经验积累。但实物试验成本高昂且耗时费力。

    ➢ 经验设计研发周期长

    经验设计在面对新型无人机的创新设计需求时,缺乏科学依据和理论支持,难以快速准确地确定最优设计方案,导致研发周期延长。

 二、解决方案设计  

    1. 自研网格模块生成自适应网格

目标:

研发可动态调整的网格模块,以满足无人机不同条件下的差异化网格需求。

    技术方案:

    UAVSim 的网络模块基于自研的结构网格自适应技术(SAMR)来生成自适应网格,其具有以下几点优势:

    ①网格自动生成

    SAMR 技术主要基于笛卡尔网格,其网格结构相对简单,天然适合自动生成网格。即使面对复杂的无人机几何形状或存在一定几何缺陷(如轻微不平整、小空洞等)的模型,也能通过适当处理成功生成网格。

    应用场景:

    对于多旋翼无人机复杂的旋翼结构和机身连接部分,模块可以自动识别并生成合适的网格。在边界处,采用脱体网格加密和合适的边界模型(如浸没边界法),确保边界条件的准确性,有效提高了网格生成的效率和质量,降低了对人工前处理的依赖。

    ②高效自适应加密

    SAMR 技术可以使网格能够精准地集中在需要加密的关键区域。

    在无人机飞行过程中,根据实时监测的物理场特征(如气流速度、压力变化等),在气流变化剧烈的区域(如高速飞行时的机翼前缘、旋翼旋转区域等)快速加密网格,而在相对稳定的区域则保持较粗的网格,从而高效利用网格资源。与传统结构化网格相比,它无需按固定维度进行加密,更加灵活;相较于非结构网格,在保持局部结构化优势的同时,利用简单直接的等分和合并规则实现网格重构,速度更快、效率更高。

    应用场景:

    当无人机从平稳飞行进入紊流区域时,网格能迅速在紊流影响区域加密,准确捕捉气流变化。

    ③多尺度特征捕捉

    SAMR 技术能够有效捕捉无人机飞行中的多尺度特征。

    无论是大尺度的气流整体分布,还是小尺度的涡旋、边界层等细节,都能通过自适应加密得到准确模拟。

    同时,由于其局部结构化特征,在适应无人机复杂几何形状的前提下,保证了局部计算效率与传统结构化网格相当。

    ④计算效率提升

    采用笛卡尔网格的 SAMR 还可大幅节约几何描述数据,缓解众核处理器内存带宽瓶颈,有利于在高性能计算平台上运行。

    SAMR 能根据不同的硬件平台(如国产神威超级计算机或传统 X86 架构计算机)特点,调整网格块分辨率,充分发挥硬件性能,进一步提高计算效率。

    应用场景:

    在使用国产神威・太湖之光超级计算机时,通过优化网格配置,实现高效计算。

无人机四旋翼侧网格生成效果图

2. LBM求解器对旋翼机体的数值仿真

目标:

实现不同工况下旋翼的高保真数值模拟,以提升无人机整体的飞行效率、机动性、稳定性和安全性。

    技术方案:

    LBM(格子玻尔兹曼方法)求解器:基于微观粒子模型,将流体空间离散为规则的格子结构,通过跟踪流体粒子在格子间的碰撞和迁移来模拟流体流动。

    在旋翼机体仿真场景下,LBM 求解器可以实现:

  • 精确描述旋翼和机体的形状和位置

  • 准确获取旋翼表面的压力分布

  • 获取旋翼关键空气动力参数

  • 捕捉气流的紊流特性和涡旋结构

  • 模拟旋翼尾流的发展和传播

  • 模拟尾流与机身等部件的相互作用

    在此技术支持下,UAVSim APP中可以通过调整旋翼的几何参数(如桨叶形状、长度、扭转角等)和飞行工况参数(如飞行速度、姿态角等),进行大量的数值实验,快速评估不同设计方案对旋翼性能的影响,为优化旋翼设计提供全面而准确的数据支持。

3. 操作界面优化

目标:

用户界面与操作流程简化,加强UAVSim APP的易上手性,降低产品经理等非专业仿真工程师的学习成本,提高协同研发效率。

    简洁直观的用户界面与便捷操作流程:

    UAVSim 的用户界面设计采用符合人机工程学的布局。

    功能模块图标直观醒目:

    主界面上,前处理、计算提交、后处理等主要功能模块功能按钮分类清晰且标识明确,用户能迅速定位所需功能入口。

    应用场景:

    在前处理模块,用户仅需简单操作,即可导入无人机几何模型,并轻松输入各旋翼的中心坐标、旋转速度、直径以及前飞速度等关键参数。

 三、总结  

    本篇详细解析了「神工坊」团队针对无人机仿真场景,提供的技术解决方案——「UAVSim无人机仿真APP」通过自研的网格模块,根据无人机真实工况生成自适应网格,进而利用LBM求解器进行计算,实现了对旋翼机体的数值仿真。软件易于操作,界面设计简洁直观,产品经理也可轻松上手,参与高效协同研发。

    关注「神工坊」,第一时间获取“案例分享”专栏最新内容,在即将发布的“操作篇”中,我们将为您展示「UAVSim无人机仿真APP」前处理-求解-后处理全流程作业的具体操作过程,敬请期待!

神工坊 _ 一站式高性能仿真服务商神工坊高性能仿真平台,源自国家超级计算无锡中心(始于2016年),是支持工程仿真应用的开发、定制和在线服务的PaaS+SaaS平台。icon-default.png?t=O83Ahttps://simforge.cn/

推荐阅读

福利放送|用户数突破2000大回馈,即刻解锁体验金福利!

SimForge 功能介绍|如何在仿真作业中实现高效协作?揭秘「在线协同」新革命

仿真科普|CAE技术赋能无人机 低空经济蓄势起飞

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

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

相关文章

揭秘文件上传漏洞之操作原理(Thoughts on File Upload Vulnerabilities)

从上传到入侵:揭秘文件上传漏洞之操作原理 大家好,今天我们来聊一个"老而弥坚"的漏洞类型 —— 文件上传漏洞。虽然这个漏洞存在很多年了,但直到现在依然频频出现在各种漏洞报告中。今天我们就来深入了解一下它的原理和各种校验方…

网络安全 | 云安全与物联网(IoT)

网络安全 | 云安全与物联网(IoT) 一、前言二、云计算与物联网概述2.1 云计算2.2 物联网 三、物联网中的云安全需求与挑战3.1 数据安全3.2 网络安全3.3 身份认证与访问控制3.4 设备安全 四、云安全在物联网中的应对策略4.1 技术层面4.2 管理层面 五、案例…

FFmpeg:详细安装教程与环境配置指南

FFmpeg 部署完整教程 在本篇博客中,我们将详细介绍如何下载并安装 FFmpeg,并将其添加到系统的环境变量中,以便在终端或命令行工具中直接调用。无论你是新手还是有一定基础的用户,这篇教程都能帮助你轻松完成 FFmpeg 的部署。 一、…

基于Redis有序集合实现滑动窗口限流

滑动窗口算法是一种基于时间窗口的限流算法,它将时间划分为若干个固定大小的窗口,每个窗口内记录了该时间段内的请求次数。通过动态地滑动窗口,可以动态调整限流的速率,以应对不同的流量变化。 整个限流可以概括为两个主要步骤&a…

C++——deque的了解和使用

目录 引言 标准库中的deque 一、deque的基本概念 二、deque的常用接口 1.deque的迭代器 2.deque的初始化 3.deque的容量操作 3.1 有效长度和容量大小 3.2 有效长度和容量操作 4.deque的访问操作 5.deque的修改操作 三、deque的应用场景 结束语 引言 在C中&#x…

【蓝桥杯】:蓝桥杯之路径之谜

题目分析 这是一道路径谜题,描述了一个骑士在一个(n\times n)方格组成的城堡中行走的问题。骑士从西北角(入口)走到东南角(出口),可以横向或纵向移动,但不能斜着走,也不能跳跃。每走…

Mybatis 入门

Mybatis 入门 一、简介 mybatis 是一个优秀的基于 java 的持久层框架,它内部封装了 jdbc,使开发者只需要关注 sql 语句本身, 而不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。 mybatis 通过 xml 或注解的方式将要…

《Java核心技术 卷II》流的创建

流的创建 Collection接口中stream方法可以将任何集合转换为一个流。 用静态Stream.of转化成数组。 Stream words Stream.of(contents.split("\\PL")); of方法具有可变长参数,可以构建具有任意数量的流。 使用Array.stream(array,from,to)可以用数组…

uniapp:微信小程序文本长按无法出现复制菜单

一、问题描述 在集成腾讯TUI后,为了能让聊天文本可以复制,对消息组件的样式进行修改,主要是移除下面的user-select属性限制: user-select: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms…

UFS供电

UFS device结构图如上所示,可以看到有三路电源:VCC,VCCQ和VCCQ2。定义如下: 这三路电压参数如下: 上电时序如下所示: 但实际使用的UFS device产品,可能与spce略有不同。我看到的几款三星、美光和…

c++类和对象(六个默认成员函数)

文章目录 一.类的六个默认成员函数二.构造函数1.概念2.特性 三.析构函数1.概念2.特性 四.拷贝构造函数1.概念2.特性 五.赋值操作符重载5.1运算符重载5.2 赋值运算符重载 一.类的六个默认成员函数 如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗&#x…

互联网直播点播平台EasyDSS无人机视频推拉流技术实现工地远程监控巡检直播

在建筑行业,施工现场的安全管理和实时监控一直是项目管理中的重点。随着技术的进步,无人机工地直播技术成为了一种新兴的解决方案,它不仅能够提高施工透明度,还能够加强现场安全管理。EasyDSS作为一种先进的流媒体技术平台&#x…

如何使用网络工具进行网络性能评估

网络评估是对IT基础设施的系统评估,以确保它能够很好地满足企业的核心运营需求,确定了基础设施中需要改进的领域,并定义了改进的范围。 网络评估工具分析IT基础设施的各个方面,它通过评估网络设备、网络性能和安全威胁来仔细检查…

【Java项目】基于SpringBoot的【人职匹配推荐系统】

【Java项目】基于SpringBoot的【人职匹配推荐系统】 技术简介:本系统使用采用B/S架构、Spring Boot框架、MYSQL数据库进行开发设计。 系统简介:人职匹配推荐系统分为管理员和用户、企业三个权限子模块。 管理员所能使用的功能主要有:首页、个…

ROS2+OpenCV综合应用--10. AprilTag标签码追踪

1. 简介 apriltag标签码追踪是在apriltag标签码识别的基础上,增加了小车摄像头云台运动的功能,摄像头会保持标签码在视觉中间而运动,根据这一特性,从而实现标签码追踪功能。 2. 启动 2.1 程序启动前的准备 本次apriltag标签码使…

【Vim Masterclass 笔记03】S03L10 + S03L11:Vim 中的文本删除操作以及 Vim 思维习惯的培养(含 DIY 拓展知识点)

文章目录 Section 3:Vim Essentials(Vim 核心知识)S03L10 Vim 核心浏览命令同步练习点评课S03L11 Deleting Text and "Thinking in Vim" 文本的删除及 Vim 思维习惯的培养1 删除单个字符2 删除一个单词2.1 推广1:D HJK…

【时时三省】(C语言基础)动态内存函数calloc

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 calloc calloc函数也用来动态内存分配 原型如下: void* calloc(size_t num, size_t size); 它们两个的区别是 它是需要两个参数…

LeetCode - 初级算法 数组(两个数组的交集 II)

两个数组的交集 II 这篇文章讨论如何求两个数组的交集,并返回结果中每个元素出现的次数与其在两个数组中都出现的次数一致。提供多个实现方法以满足不同场景需求。 免责声明:本文来源于个人知识与公开资料,仅用于学术交流。 描述 给定两个整数数组 nums1 和 nums2,以数…

[react]小技巧, ts如何声明点击事件的类型

很简单, 鼠标放到事件上面就行了 如果想知道点击的是什么元素 ,打印他的nodename就行了 不过得断言为html元素才行 const handleClick (e: React.MouseEvent<HTMLDivElement, MouseEvent>) > {console.log(current, (e.target as HTMLElement).nodeName);}; 为什么…

[创业之路-229]:《华为闭环战略管理》-5-平衡记分卡与战略地图

目录 一、平衡记分卡 1. 财务角度&#xff1a; 2. 客户角度&#xff1a; 3. 内部运营角度&#xff1a; 4. 学习与成长角度&#xff1a; 二、BSC战略地图 1、核心内容 2、绘制目的 3、绘制方法 4、注意事项 一、平衡记分卡 平衡记分卡&#xff08;Balanced Scorecard&…