基于Matlab 实现螺旋线 轨迹曲线绘制
效果如下:
首先,先设计一个GUI 的界面
在GUI 的界面内可以教导直线点位,然后基于直线的骨架生成螺旋线;
首先我们知道3d 的螺旋线,在某个角度下可以看似成一个很好看的2d 螺旋线,并且在工业上打磨经常会用到类似的路径。
但是由于这个轨迹的方程比较难以表示,其实需要用坐标 ×对应的转换矩阵;
所以索性,直接采用暴力构造的方式:
先上图:
对于这个2D 的图像,可以看作两个方向的叠加,首先Y 方向很简单,就是一个简谐震荡;
如图所示:
然后就是X 方向,X方向可以看作是两个波形的叠加
一个是一次函数,另外一个是一个简谐震荡
因此两个函数叠加便成了X
方程归纳
y=A*sin(B*x);
deltaX=-Ccos(D*x);
绘制范围: xmin xmax
根据上面调试可以得到如下的规律: B和D 属于频率的参数,且要保持相等,图像才会有规律,否则一团混沌。
设计参数:
A 变量 表示曲线的振幅
C 变量表示椭圆的短轴
B和D 相当于频率,其实是用来控制步进的距离
细节处理:
问题1:在规划轨迹中会存在两个点位,如P1(0,0,0), P2=(10,10,0)
一般问题为XY 平面内,不涉及Z 方向
此时,如何保证螺旋线段的起点是P1 终点是P2? 如果无法正好到达需要如何处理?
问题2: 在规划路径时存在多个点位,两条线段交点处的轨迹如何规划?
首先处理问题1:
实现两点之间的螺旋线的规划,这个比较简单,其实之手螺旋线的搬移而已,及 将螺旋线起始点移动到P1点位,将螺旋线按照P1 P2 直线的走向进行旋转。
但是需要注意指定长度时,一定会存在一个问题,长度会受到短轴的影响,同时也会受到相位角的影响。
所以暂时的解决办法时,争取保证每次曲线的形状都如下图:
且保证长度和设定的一样,如果长度无法满足相位角,即做取整,拉伸处理。
问题2 处理:
问题2 为转角的轨迹如果规划,首先,我们知道一件事情,转角有很多种可能实现。
但是我们只是希望转角的地方是 平滑过渡即可,并且平滑后的轨迹可以和原来的轨迹无缝对接。
所以,这里想到的一个办法是使用衰减函数:
从上图种可以看出,虽然使用这个办法可以实现转角的平滑,但是转角处的曲率以及图形轨迹比较难以控制。
因此上面的方式以失败告终:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
推倒从来:
这次的想法是从大局观出发,首先先确定整体路径的骨架,然后按照平滑的参数,在转角的位置使用贝塞尔曲线。
先将骨架变得平滑,然后将骨架拆分成离散的小段线段进行计算轨迹;
点位数得到了,确认线段离散步长,然后转角平滑
接下来就是按照公式,按照每一段生成螺旋线
告辞~
基于Matlab 实现螺旋线 轨迹曲线绘制相关推荐
- matlab一般函数的绘制方法,基于MATLAB的函数图像绘制方法
C DOI:10.16707~.cnki.fjpc.2017.01.084 E 晒 亍嚣 基于 MATLAB的函数图像绘制方法 张笑笑 一,童 键 z (1湖南省长沙市第一中学 湖南 长沙 410() ...
- 基于matlab的列车运行图绘制
部分代码展示 因为涉及到站点,可以参考代码写作 运行图绘制的方法 for i=1:n flagi(i)=0;% ±ê¼Çµ½´ïʱ¿Ì c(i)=1;%³ö¿âÁгµ±ê¼Ç end for j= ...
- 弯曲圆波导matlab_基于MATLAB编程的圆形波导中能流密度分布图仿真
基于 MATLAB 编程的圆形波导中能流密度分布图仿真 王永龙 ; 夏昌龙 ; 刘朋 [期刊名称] <临沂大学学报> [年 ( 卷 ), 期] 2008(030)003 [摘要] 基于 M ...
- 基于matlab的能级_波函数及几率密度图形的绘制,基于MATLAB的能级波函数及几率密度图形的绘制.pdf...
基于MATLAB的能级波函数及几率密度图形的绘制.pdf 第 卷 第 期 大 学 物 理 实 验 年 月 出版 壬 刃协 卫 印 文 章编 号 一 ' 一 一 基 于 的能级 . 波 函数 及 几 率 ...
- matlab绘制磁场图,基于Matlab的电磁场图示化教学
第 26 卷第 3 期 孝感学院学报 VOL. 26 NO. 3 2006 年 5 月 JOURNAL OF XIAOGAN UNIVERSITY MA Y. 2006 基于 Matlab 的电磁场图 ...
- 基于Matlab绘制自定义边长的正多边形
目前基于Matlab绘制正多边形有多种方法. 1.自己编写相应的代码,根据边长,利用绘制圆的方式绘制正多边形(圆可以近似为无穷边的正多边形): 2.2017b版本后matlab官方提供了相应的绘制圆的 ...
- MATLAB怎么样绘制扭转减震器,基于MATLAB的汽车减震系统仿真建模
<基于MATLAB的汽车减震系统仿真建模>由会员分享,可在线阅读,更多相关<基于MATLAB的汽车减震系统仿真建模(11页珍藏版)>请在人人文库网上搜索. 1.问题描述及空间状 ...
- matlab怎么绘制李萨如图形_基于MATLAB图形界面研究李萨如图形及其讨论
龙源期刊网 http://www.qikan.com.cn 基于 MATLAB 图形界面研究李萨如图形及 其讨论 作者:刘斯禹 韩雪 郭天超 来源:<科技资讯> 2016 年第 06 期 ...
- FLAC3D可视化后处理matlab,一种基于Matlab的由Midas导入Flac3D的模型识别方法与流程...
本发明涉及岩土工程的仿真模拟研究领域,具体涉及一种基于Matlab的由Midas导入Flac3D的模型识别方法. 背景技术: 随着我国近几年经济的快速发展和基础设施等的大力投资,涉及复杂地质环境下的岩 ...
最新文章
- php链表笔记:单链表反转
- java数组缓冲,java – 字节数组缓冲图像转换速度慢
- 科大星云诗社动态20201206
- [转载]项目风险管理七种武器-霸王枪
- centos7挂载ntfs文件系统_MacOS读写挂载NTFS磁盘,几行代码就行了
- 【读书笔记】CSS代码规范
- linux socket通信编程之c语言(客户端和服务器程序)
- sql 的 where 和 having 的区别和用法
- 外盘持仓盈亏何时推送---ITapTradeAPINotify::OnRtnPositionProfit
- 储存卡误删都能恢复吗?这个方法大家用了都说好
- 通道和色彩调整——冷色调图片
- a标签下载静态文件 失败-未发现文件
- Baumer工业相机堡盟工业相机如何通过BGAPISDK显示彩色相机和黑白相机的图像(C#)
- 打开EXCEL运行脚本,报无法运行宏问题
- 【雷达波位编排】基于matlab相控阵雷达的波位编排仿真【含Matlab源码 2251期】
- tit-al00 android 6,华为TIT-AL00入网 MTK6735四核全网通手机
- Virtualbox源码分析17 APIC虚拟化2.APIC设备模拟
- 关于Ubuntu下的PDF阅读器
- python基础“猜单词游戏”代码
- 微信提现免手续费,限时!最高 2 万元额度