2017年亚太杯APMCM数学建模大赛B题喷雾轨迹规划问题求解全过程文档及程序
2017年亚太杯APMCM数学建模大赛
B题 喷雾轨迹规划问题
原题再现
喷釉工艺用喷釉枪或喷釉机在压缩空气下将釉喷入雾中,使釉附着在泥体上。这是陶瓷生产过程中一个容易实现自动化的过程。由于不均匀的釉料在烧制过程中会产生裂纹,导致工件报废,因此要求喷涂过程中喷涂的釉料厚度尽可能均匀。
在实际的空气喷涂中,压缩空气通常布置在喷枪嘴的两侧,雾锥被挤压成椭圆锥,漆雾形成的喷雾锥覆盖的平面上的区域是椭圆,半长轴为a,半短轴为b,如图1所示。
它在椭圆分布区域中满足椭圆双β分布模型:
式中:a——喷淋椭圆半长轴(mm);b——喷淋椭圆的半短轴(mm);maxz——漆膜最大厚度;β1−x方向截面β分布指数;β2−y方向截面中β分布的指数。
有研究表明,雾化压力P1、隔膜泵压力P2和喷雾距离h是影响上述参数的主要因素,它们之间的关系如下:
上述模型为单点喷枪喷涂模型。然而,在实践中,喷枪需要沿着计划的路径移动,以便要喷涂的工件表面均匀地覆盖釉,如图2所示。
由于单点喷涂时,雾锥区域厚度中间偏大,两侧偏薄,为保证喷涂表面均匀,雾锥将在图3中相邻路径重叠。
基于上述背景,我们尝试探讨以下四个问题:
1、根据以上资料,如果喷枪的喷涂方向始终保持不变(如图4所示),请计算平面内喷涂的累积情况,找出喷枪轨迹的合适重叠间隔(P1和P2取0.2Mpa,h取225mm)。
2、对于曲面z=−x~2+x−xy(−10≤x≤10,−10≤y≤10),确定问题1中计算的喷涂间隔是否适用。如果没有,请重新规划喷枪轨迹,并计算重叠间隔,使釉面厚度差小于10%(不同轨迹的间隔可以不同,P1和P2取0.2Mpa,h可根据实际需要选择)。
3、喷涂过程中,如果喷枪的喷涂方向始终是雾锥中心(如图5所示)喷涂点的法线方向,其他条件不变,请重新计算问题2的结果。
4、问题3的结果是否适用于任何曲面z=f(x,y)?喷涂路径规划是否有通用解决方案
整体求解过程概述(摘要)
机器人上釉作为提高陶瓷生产过程自动化程度的一种新方法,对提高上釉效率有一定的作用。因此,探索机器人釉料在不同工件表面条件下的自动轨迹规划对提高陶瓷工艺现代化水平具有重要意义。
平面釉料自动轨迹规划:首先,将微积分法与椭圆双β分布模型相结合,建立以釉料厚度均匀性为目标的平面釉料轨迹优化模型。最后,对不同横截面的釉膜厚度模型进行仿真分析,验证了模型的正确性。
曲面(垂直于水平方向)施釉轨迹规划:首先,采用投影法对椭圆双β分布模型进行修正,得到施釉方向垂直于水平方向时曲面的釉膜厚度分布模型
确定方向。然后,建立曲面轨道优化模型,对最小釉厚差进行优化。最后证明了问题1的重叠区间不适用于问题2的曲面,问题2的重叠区间d的最优解为89.36~95.05mm。
曲面(沿喷点法向)施釉轨迹规划:首先采用投影法修正平面椭圆双β分布模型,建立喷釉方向为雾锥中心喷点法向时的釉膜厚度分布模型。然后,基于切片算法,以涂层均匀性为优化目标,建立了表面喷釉轨迹优化模型。最后证明了曲面重叠间隔d的最优解为80.26~90.53mm。
任意曲面釉面轨迹规划:首先利用β角、θ角、喷枪高度等参数描述不同曲面之间的差异。通过改变不同的地面观测参数,重复发射装置的参数。最后,采用黄金分割迭代法求出d值,并编制了任意面釉轨迹规划程序。通过MATLAB仿真验证了模型的正确性,结果符合标准。
模型假设:
➢ 边缘厚度对喷涂层厚度分布模型没有影响。
➢ 喷涂机器人喷涂一定高度,不改变。
➢ 机器人在涂布过程中的速度恒定,没有突变。
问题重述:
问题背景
喷釉是陶瓷生产工艺的重要组成部分,由于釉面不均匀在烧成过程中会产生裂纹,导致零件报废,因此喷釉工艺要求喷釉尽可能厚,同时也降低了效率。
机器人上釉的出现为提高上釉效率提供了一条新途径,对提高陶瓷生产过程的自动化具有重要意义。
我们的工作
➢ 分析了机器人喷釉的平面釉厚度分布,设计了平面釉自动轨迹优化方案。
➢ 探讨了机器人搪瓷上釉方向与水平方向垂直时曲面上釉膜厚度的分布情况,建立了该条件下曲面上釉的自动轨迹优化方案。
➢ 研究了沿锥体法向喷涂的锥体曲面上釉膜厚度的分布。建立了该条件下表面施釉自动轨迹的优化方案。
➢ 探究工件表面是否为任意曲面,是否有通用的自动喷釉机器人优化方案来解决喷釉路径规划问题。
模型的建立与求解整体论文缩略图
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可
程序代码:
部分程序如下:
[x,y]=meshgrid(-10:1:10);
z=-x.^2+x-x.*y;
mesh(x,y,z);
title('curved surface z')
xlabel('X');
ylabel('Y');
zlabel('Z');
[x,y]=meshgrid(-10:1:10);
z=-x.^2+x-x.*y;
mesh(x,y,z);
title('curved surface z')
xlabel('X');
ylabel('Y');
zlabel('Z');
hold on
ezmesh('0')
A=[129.8665 -55.2435 1.7436 -297.3908;52.5130 -5.7480 0.7394 -128.6368;59.7245 393.9655 -0.1244 150.0184;-7.0125 34.5045 0.0284 -9.5229;-4.6130 18.3620 0.0113 -0.3924];
B=[0.2 0.2 225 1];
C=A*B'
a=C(1);
b=C(2);
Zmax=C(3);
beta1=C(4);
beta2=C(5);
Zmin1=Zmax*(1-(a^2/b^2))^(beta2-1);
y1=sqrt((b^2)*(1-exp((1/(beta2-1))*log((Zmax-Zmin1)/Zmax))));
d1=abs(a-y1);
Zmin2=Zmax*(1-b^2/a^2)^(beta1-1);
x2=sqrt((a^2)*(1-exp((1/(beta1-1))*log((Zmax-Zmin2)/Zmax))));
d2=abs(b-x2);
A=[129.8665 -55.2435 1.7436 -297.3908;52.5130 -5.7480 0.7394 -128.6368;59.7245 393.9655 -0.1244 150.0184;-7.0125 34.5045 0.0284 -9.5229;-4.6130 18.3620 0.0113 -0.3924];
B=[0.2 0.2 225 1];
C=A*B';
a=C(1);
b=C(2);
Zmax=C(3);
beta1=C(4);
beta2=C(5);
Zmin1=Zmax*(1-(a^2/b^2))^(beta2-1);
y1=sqrt((b^2)*(1-exp((1/(beta2-1))*log((Zmax-Zmin1)/Zmax))));
d1=abs(a-y1);
Zmax=C(3);
Z1=Zmax
z=-1+1-(a-d1+1);
h1=0-z;
h=B(3)+h1;
B1=[0.2 0.2 h 1];
C1=A*B1';
a1=C1(1);
b1=C1(2);
Zmax=C1(3);
beta1=C1(4);
beta2=C1(5);
Z2=Zmax*(1-1/a1^2)^(beta1-1)*(1-(a-d1+1)^2/(b1^2*(1-1/a1^2)))^(beta2-
1);
if Z1==Z2fprintf('the overlap interval is suitable')
elsefprintf('the overlap interval isn’t suitable')
end
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可
相关文章:

2017年亚太杯APMCM数学建模大赛B题喷雾轨迹规划问题求解全过程文档及程序
2017年亚太杯APMCM数学建模大赛 B题 喷雾轨迹规划问题 原题再现 喷釉工艺用喷釉枪或喷釉机在压缩空气下将釉喷入雾中,使釉附着在泥体上。这是陶瓷生产过程中一个容易实现自动化的过程。由于不均匀的釉料在烧制过程中会产生裂纹,导致工件报废࿰…...

柏拉图式爱情是同性之爱,绘画是理念世界的二次模仿
公元前427年,柏拉图出生在雅典。 柏拉图20岁成为苏格拉底的弟子。 有一次,柏拉图问苏格拉底:“什么是爱情?”苏格拉底说:“请穿越麦田,摘一株最大最金黄的麦穗回来。不走回头路,只能摘一次。”…...

【滴滴出行安全应急响应平台DSRC2倍积分卡】
1、使用方法 2、券(记得点个关注,做一下数据)...
HashMap 元素添加流程
在Java 1.8中,HashMap的元素添加流程: 计算键的哈希值:当调用put(key, value)方法时,首先会计算键(key)的哈希值,这个哈希值用来确定元素在内部数组中的位置。确定位置:通过哈希值&…...
甲亢_甲状腺功能亢进_Methimazole甲巯基咪唑
美国医生 Methimazole甲巯基咪唑 is used to treat hyperthyroidism, a condition where the thyroid gland produces too much thyroid hormone. It is also used before thyroid surgery or radioactive iodine treatment. Methimazole is an antithyroid medicine. It wor…...

【Maven】VSCode Java+Maven 环境配置
0x00 前言 没写过 Java,得配个带 Maven 的编码环境,不太明白,试试看顺便记录一下 0x01 配置过程 安装 jdk1.8 后,找到安装位置: (base) dianCD-Ali doraemon % /usr/libexec/java_home -V Matching Java Virtual Ma…...
【目标检测】非极大值抑制NMS的原理与实现
非极大值抑制(Non-Maximum Suppression,NMS)是目标检测中常用的一种技术,它的主要作用是去除冗余和重叠过高的框,并保留最佳的几个。 NMS计算的具体步骤如下: 首先根据目标检测模型输出结果,得…...

应用程序架构是如何演变的
【squids.cn】 全网zui低价RDS,免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 如果您一直在开发或以某种方式参与应用程序架构,那么在过去的几年中您肯定看到了许多变化。有很多不同类型的架构和技术陆续出现然后消失,以至于…...

云原生Docker Cgroups资源控制操作
目录 资源控制 cgroups四大功能 CPU 资源控制 设置CPU使用率上限 进行CPU压力测试 设置50%的比例分配CPU使用时间上限 设置CPU资源占用比(设置多个容器时才有效) 设置容器绑定指定的CPU 对内存使用的限制 限制容器可以使用的最大内存 限制可用的…...

【Java集合类面试二十五】、有哪些线程安全的List?
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:有哪些线程安全的List&a…...

分布式系统的链路追踪,让你轻松解决订单无法查看的问题!
你好,我是积极活泼的小米!今天我要跟大家聊聊分布式系统的链路追踪,这个话题对于我们在技术领域工作的小伙伴们来说,可是非常重要的哦! 背景 昨天,产品大佬丰哥找到了我,他抱怨说分销员的订单…...
基于生产数据测试设计、测试回归
问题背景 QA搬砖日常中,你会不会有这样的问题,测试设计时有些场景没考虑到,上线就因为测试中没覆盖到的场景而导致缺陷溢出。从缺陷分类统计来看,类似这样的例子占比是很高的。 解决措施 仅依靠测试者设置的场景,模拟…...
装了mac os 14.0 sonoma 在腾讯会议投屏时候,无法设置麦克风权限问题
愿意:界面上直接空白的,无法手动或自动弹出要配置授权的软件 解决思路: 给 TCC.db 增加1条权限记录 添加到数据库里 /usr/bin/sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "INSERT INTO main.access (service, cli…...

ARM 汇编指令 orreq 的使用
orreq 阅读代码时,发现有个【组合指令】 orreq, orr 一般是 OR,也就是或操作,后面加个 eq 表示什么呢? 比如下面的代码:前面一个操作, tst,好像没做实际的操作,可能影响…...

Python---练习:for循环 求1-100的和/所有偶数的和
案例: 使用for循环,求1 ~ 100的和 之前用while循环,做过算出1--100的和。 相关链接: Python--练习:使用while循环求1..100的和-CSDN博客 结合着看看for循环怎么实现。 思考: 先把for循环的基本语法写…...

APP逆向基础(APK流程)
APK的基本结构 Android体系结构和APK基本结构-CSDN博客 APK 打包流程 【Android 安装包优化】APK 打包流程 ( 文件结构 | 打包流程 | 安装流程 | 安卓虚拟机 )_adnroid 安装包优化,打指定资源_韩曙亮的博客-CSDN博客 APK安装流程...
Tomcat调试端口被占用解决办法
Tomcat调试端口被占用解决办法 tomcat启动报错: Unable to open debugger port (127.0.0.1:52718): java.net.BindException "Address already in use: NET_Bind"这个错误表明Tomcat服务器在启动时尝试打开调试端口(通常是在调试模式下使用的…...

feign之间相互通信RequestInterceptor拦截器失效
1、问题描述 前段时间碰到一个问题,有两个服务A和服务B,通过feign进行通信。因为feign之间无法直接传递请求头,只能传请求体。因此需要借助RequestInterceptor拦截器获取到请求头。服务B中设置了RequestInterceptor拦截器,但是在A…...

GoLong的学习之路(十)语法之函数
书接上回,上回书说到,结构体,一言之重在于体。一体之重在于经。经之重甚于骨。这张就说go的经络—函数。 文章目录 函数函数如何定义参数可变参数 返回值多返回值 函数类型与变量 高阶函数函数作为参数函数作为返回值匿名函数闭包defer语句底…...

随笔:使用Python爬取知乎上相关问题的所有回答
项目中数据分析的需要自己从知乎某个专门的问题上爬数据,但众所周知,知乎的问题的显示方式有点胃疼(指滑动后下翻加载更多回答,还经常卡住),翻了翻网上的教程发现有的要么就是很老了要么就是付费的…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...

STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...

iview框架主题色的应用
1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题,无需引入,直接可…...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...

Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...

【LeetCode】算法详解#6 ---除自身以外数组的乘积
1.题目介绍 给定一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O…...

Ubuntu系统多网卡多相机IP设置方法
目录 1、硬件情况 2、如何设置网卡和相机IP 2.1 万兆网卡连接交换机,交换机再连相机 2.1.1 网卡设置 2.1.2 相机设置 2.3 万兆网卡直连相机 1、硬件情况 2个网卡n个相机 电脑系统信息,系统版本:Ubuntu22.04.5 LTS;内核版本…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...