技术论坛

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

返回主题列表
作者 主题
渔明鱼工
至圣

经验值:21152
发帖数:1928
精华帖:69
楼主    2020-08-20 15:19:17
主题:工艺部要我实现在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



网鱼能够改善伙食,还能释放工作中的压力。
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。