电工学习网

 找回密码
 立即注册
查看: 1999|回复: 3
打印 上一主题 下一主题

工艺部要我实现在PLC内执行一个计算公式,并把数值在WINCC画面上显示

[复制链接]
跳转到指定楼层
楼主
发表于 2020-8-20 17:11:48 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
工艺部要我实现在plc内执行一个计算公式,并把数值在WINCC画面上显示。
技术要求:
工艺部要我实现在PLC内执行一个计算公式,并把数值在WINCC画面上显示

我看了一下直接回复请他们申请外部供应商来做,这个公式用LAD很难实现,要用SCL来编我不会做这么复杂的。
没办法他们只能请外部服务了。
事情过后,我开始用SCL编程来测试,结果完全可以实现的,我只能闷在心里不说,但我要发到贴子上分享。
FUNCTION FC28 : VOID
VAR_TEMP
    x2_tan:REAL;
    x2_cos:REAL;
   y2_tan:REAL;
   y2_cos:REAL;
   AA:REAL;
   BB:REAL;
   CC:REAL;
   sin_a:REAL;
   cos_a:REAL;
   a_into:REAL;
   kk1:REAL;
   kk2:REAL;
   kk3:REAL;
   mm1:REAL;
   mm2:REAL;
   mm3:REAL;
    END_VAR

    // Statement Section


// Block Parameters
VAR_INPUT
   Mandrel_R:REAL;
   Mandrel_Z0:REAL;
   Mandrel_Z1:REAL;
   Mandrel_a:REAL;// Input Parameters

END_VAR


VAR_OUTPUT
Mandrel_E:REAL; // Output Parameters
Mandrel_x2:REAL;
Mandrel_y2:REAL;
END_VAR
  BEGIN
    a_into:=Mandrel_a*3.1415926/180;
   sin_a:=SIN(a_into);
   cos_a:=COS(a_into);
   mm1:=(Mandrel_R+Mandrel_Z1)*cos_a-(Mandrel_R+Mandrel_Z0);
   mm2:=(Mandrel_R+Mandrel_Z1)*sin_a;
   mm3:=mm1/mm2;
   x2_tan:=ATAN(mm3);
   kk1:=(Mandrel_R+Mandrel_Z0)*(Mandrel_R+Mandrel_Z0);
   kk2:=(Mandrel_R+Mandrel_Z1)*(Mandrel_R+Mandrel_Z1);
   kk3:=2*(Mandrel_R+Mandrel_Z0)*(Mandrel_R+Mandrel_Z1)*cos_a;
   AA:=kk1+kk2-kk3;
   BB:=SQRT(AA);
   CC:=BB/(2*Mandrel_R);
   x2_cos:=ACOS(CC);
  Mandrel_x2:=Mandrel_R*COS(x2_tan-x2_cos);
  Mandrel_y2:=Mandrel_R+Mandrel_Z0+Mandrel_R*SIN(x2_tan-x2_cos);
  Mandrel_E:=SQRT(Mandrel_x2*Mandrel_x2+Mandrel_y2*Mandrel_y2);
END_FUNCTION
工艺部要我实现在PLC内执行一个计算公式,并把数值在WINCC画面上显示
来源:西门子工业技术论坛

回复

使用道具 举报

板凳
发表于 2020-10-19 14:58:34 来自手机 | 只看该作者
厉害,完全看不懂

回复 支持 反对

使用道具 举报

地板
发表于 2020-10-24 13:32:49 来自手机 | 只看该作者
楼主能解说一下吗?

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-20 09:30

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表