用函数给亲爱的比个心,原谅长期出差没有尽到陪伴责任的工控人 点击:222 | 回复:2



干工控V

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:8帖 | 20回
  • 年度积分:11
  • 历史总积分:172
  • 注册:2016年6月23日
发表于:2021-05-18 09:23:26
楼主

工控人,出差行走各地,大大小小的项目,各种工况的项目现场,足迹遍布大江南北,海内外,海陆空。见过不一样的风土人情,体验过各种各样的客户需求。最遗憾的是时常不能和亲爱的人一起生活,最欣慰再苦再累的时候也有一个人在家等着你回去。

不知是谁给笛卡尔心形线杜撰了浪漫又悲凉的爱情故事,为❤镀了层留洋归来的金,央妈易趁520之际撒狗粮,发行了一波颜值超高心形纪念币,作为工控人,我也用这个特别函数曲线,来献给美丽善良大方聪慧的另一半。

图片

浪漫的心形线的函数不止一个,本文选取其中一个来表达,先用MATLAB仿真验证,再用三菱的GX Work3和GT Designer3模拟展示。

Ⅰ、效果展示

先用两个动图逐帧展示心形线描绘过程,这里用到GT Designer3里面的散点图表功能。

①用直线显示心形

图片

②用点显示心形

图片

Ⅱ、曲线特性

把函数转化成代码格式写入MATLAB,就能得到函数曲线,代码如下:

x = -1.57:0.001:1.57;
y1 = (cos(100.*x).*sqrt(cos(x))+sqrt(abs(x))-0.7).*(4-x.^2).^0.01;
figure
plot(x,y1)

图片

通过观察函数图像,可以看到心形显示在X∈(-2,2),Y∈(-2,1.5)区间内,这个区间值可作为我们图表显示的限位值。

Ⅲ、程序调试

我们设计一个程序,将X轴两极限值500等分,并从小到大分别将X值代入函数计算出Y值,在通过GT Designers3的散点图表功能,逐帧将这些点描绘展示出来。

图片

①初始化程序

//初始赋值
enCache[0]:=E-1.5701;
DFMOV(TRUE,D2100,K20,D0);
//计数清空
wCount:=K0;

②函数图像生成

//X轴坐标
EMOVP(SM415 ANDwCount<K500,E3.14/E500*INT_TO_REAL(wCount)+E-1.57,eXaxis);
//Y轴坐标
EMOVP(SM415 AND wCount<K500,(COS(E100*eXaxis)*SQRT(COS(eXaxis))+SQRT(ABS(eXaxis))-E0.7)*(E4-eXaxis*eXaxis)**E0.01,eYaxis);
//步骤计数
INCP(SM415 ANDwCount<K500,wCount);

③静态展示

//保持延时
OUT_T(wCount>=K500,T0,K50);

在GT Designers3插入散点图表,并进行相应设定

图片

图片

图片

Ⅳ、源码分享

欢迎加下好友,交流工控心得,探讨技术应用🤝



正在下载,请等待……
下载附件需1积分!



楼主最近还看过



海賊王的男人

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 87回
  • 年度积分:0
  • 历史总积分:55
  • 注册:2018年11月07日
发表于:2021-05-19 09:34:15
1楼

多谢分享,很有创意。

铭曦

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:112
  • 注册:2021年2月21日
发表于:2021-05-19 11:07:35
2楼

NB,小白什么时候能达到这水平


热门招聘
相关主题

官方公众号

智造工程师