2017年亚太杯APMCM数学建模大赛B题喷雾轨迹规划问题求解全过程文档及程序

本文主要是介绍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题喷雾轨迹规划问题求解全过程文档及程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/281979

相关文章

IDEA中配置Tomcat全过程

《IDEA中配置Tomcat全过程》文章介绍了在IDEA中配置Tomcat的六步流程,包括添加服务器、配置部署选项、设置应用服务器及启动,并提及Maven依赖可能因约定大于配置导致问题,需检查依赖版本... 目录第一步第二步第三步第四步第五步第六步总结第一步选择这个方框第二步选择+号,找到Tomca

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时

Python操作PDF文档的主流库使用指南

《Python操作PDF文档的主流库使用指南》PDF因其跨平台、格式固定的特性成为文档交换的标准,然而,由于其复杂的内部结构,程序化操作PDF一直是个挑战,本文主要为大家整理了Python操作PD... 目录一、 基础操作1.PyPDF2 (及其继任者 pypdf)2.PyMuPDF / fitz3.Fre

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Spring Boot从main方法到内嵌Tomcat的全过程(自动化流程)

《SpringBoot从main方法到内嵌Tomcat的全过程(自动化流程)》SpringBoot启动始于main方法,创建SpringApplication实例,初始化上下文,准备环境,刷新容器并... 目录1. 入口:main方法2. SpringApplication初始化2.1 构造阶段3. 运行阶